Food-Beer Pairing & Visualization

All our team members just love drinking beer and we wanted to build a recommender system to pair the best food with beer, as well as provide the skeleton to publish a website. I further used the data to visualize in a form of calendar.

My Role
Data Processing, Backend Development, Data Visualization

Team
Yujin Ki: Model making, Machine Learning, Subin Kim: Frontend Development

Location
Yonsei Big Data Conference, Seoul, Korea

Time
3 weeks

Deliverables

  • Food-beer pairing algorithm

  • Recommender website

  • Visualization in calendar form

Workflow

Machine Learning

Based on the created data, we were able to set a function where we simply print the ingredients in an ascending order after inputing beer name.

  • Using the co-occurrence data, other recommended ingredients are simultaneously printed.

  • We then finalized the system by calculaing the PMI and omitted those are very low or is negative value. PMI(A,B) = logP(A,B) / (P(A)*P(B))

  • We finally are able to print the ingredients similar to that of the main ingredients (n=84) suited for each beer.

Web Deployment (Django)

  • Although deploying both Django and Node.js is practically impossible, we used two seaparate servers for this case and decided to unite to one of them in future projects.

  • Using cytoscape.js, a mindmap tool based on Node.js, we could visualize the 20 ingredients that best matched the each of the main ingredients paired with the beer, and that prints the results.

  • The size of the first node is proprotional to the pairing score with the berr, while the second node is proportional to each ingredient's pairing score with the main ingredient.

  • When the user hovers over the desired ingredient, the UI is set to emphasize its name and color coded the ingredients hierarchically.

Demonstration

Data Visualization

With the generated data, I have paired each beer to every 12 months of the year, and visualized them in a form of a calendar. For fun. This was inspired by my own project trying to visualize food flavors into a calendar.