Chef's Hippocampus

Chef's Hippocampus is a project to generate "good and new" collections of ingredient from existing recipe. Our system values creavity by average and standard deviation of distance between ingredients.

Human brain is good at recognize creativity or find patterns behind a complex relationship. However, its working memory is limited (it is said that we're capable of keeping only 8 numbers in our working memory). This fact suggests there might be millions of good combination that we just don't come up with.

This project aims to enhance human creativity with computational creativity. The input of the system is exisiting collections of ingredient. The output is a "good and new" collection of ingredient. This article describes how to create such collections and a NLP tech that backs the idea.

What is Creativity

"Creativity" is a common word, but not commonly defined. We have a big discussion. However, many artisits and researchers agree that something is "creative" when it is "good and new". The system generates "good and new" collection of food based on this hypotesis. To measure how "good and new", it calculate average (for how good) and standard deviation (for how new) of distance between collected ingredients.

First, the system requires good database that hold good collection of items. We used recipe database. Recipe database is a good collection of ingedients because bad recipes should have been omitted in the long history of cuisine.

Secondly, the system counts how many recipes each two ingredients shares. If two ingredients share a lot of recipe, they are close. In other word, this count is helpful to know how distant these two ingredients are.

If you simply want a good collection of ingredient, the average of distance is useful. If it's low, they're close each other. If it's high, they are distant.

However, we want more interesting combination. If we collects close distant ingredients, they might have harmony, but not interesting. If we add far distant ingredient, then the harmony will be disrupted.

So, the system also thinks about standard deviation. Standard deviation is a measure to know how distributed the distances are. If it's high, the collection has low distant ingredients and high distant ingredients at the same time.

Lastly, it suggests collections with low average and high standard deviation in their distance. Low average and high standard deviation mean, the collection contains interesting pairs in it while keeping harmony.

How to Compute Food

Thanks to the Natural Language Processing advances, we have a powerful tool to caliculate the distance between one ingredient to another. Word2Vec is a technique to "vectorize" a word in a text. If you input a long text, Word2Vec generates a vector (e.g. [0.0, 0.1, 0.4, 0.2, 0.4]) that represents the word. Using it, we can calculate words. For example, "king" - "man" + "woman" = "Queen". Here we can calculate the distance between words using the distance of between vectors (see Cosine similarity).

We applied Word2Vec to recipe data. Here, text is recipe, and word is ingredient. We took cosine similarity as the distance of ingredients.


The idea of Chef's Hippocampus is applicable to various collections such as colors, clothes and items, interiors, where human enumeration capability falls short of the possible combination.

How Can I Use It?

Thank you for being interested, but the project has been suspended as we decided the project will not meet grant's goal. If you have a bigdata send me a message.