Practice with dictionaries
Some small improvements:


print_dict method: use iteritems()

for key, value in dictionary.iteritems():
print("{} : {}".format(key, value))

You can merge validate and is_integer. There are no benefits here gained by separating them in two different functions. 
For lookup_term, use either:

value = dictionary.get(term)
if value:
    print("{} : {}".format(term, value))
else:
    print("Term does not exist, input 2 to add new term")


Or you could use:

if term in dictionary:
    print("{} : {}".format(term, dictionary[term]))
else:
    print("Term does not exist, input 2 to add new term")


The point I wanted to illustrate was use of dict.get()
In delete_term, you are not validating for input when key is not in dictionary.


Some other things:

Since all functions work with same dictionary, they could have been grouped together under same class with dictionary being shared data member.

Also, your dictionary is case sensitive. Looking at your use-case, this is not something you want.

If at anytime you need to change menu, you would need to change validate function. Maybe there should be easier way to do this? (Instead of else denoting 5 in menu, else could work for something else?)