A computer learns about ingredients and recipes What else would you put on a peanut butter sandwich?

Play

Recommendation engines are everywhere. They let Netflix suggest shows you might want to watch. They let Spotify build you a personalised playlist of music you will probably like. They turn your smartphone into a source of endless hilarity and mirth. And, of course, there’s IBM’s Watson, recommending all sorts of “interesting” new recipes. As part of his PhD project on machine learning, Jaan Altosaar decided to use a new mathematical technique to build his own recipe recommendation engine.

The technique is similar to the kind of natural language processing that powers predictive text on a phone, and one of the attractions of using food instead of English is that there are only 2000–3000 ingredients to worry about, instead of more than 150,000 words.

The results so far are fun and intriguing, and can only get better.

Notes

  1. Jaan Altosaar published an article about his work that gives an explanation of how it all works. It also allows you to investigate the food map and use some of the other tools he built.
  2. A scientific report that may have inspired Jaan (and possibly Watson) to take up the challenge is Flavor network and the principles of food pairing.
  3. That paper offers great explanations for why some novel food pairings work, including Heston Blumenthal’s iconic white chocolate and caviar, published in 2002.
  4. The madcap adventures of Chef Watson are everywhere on the internet. The recommendatiuon engine that is me suggests a report from Caitlin Dewey which includes a recipe for the ubiquitous Austrian chocolate burritos (but no explanation of what makes them Austrian. Just the apricot purée?).
  5. The banner shows a small part of the food map, with East Asian ingredients tightly clustered while North American ingredients are all over the shop.

huffduffer icon   Huffduff it

Liked it? Take a second to support me on Patreon!

Leave a Reply

Your email address will not be published. Required fields are marked *