Skip to content
Mark Yen edited this page Jul 29, 2021 · 11 revisions

Welcome to the drink-this-backend wiki!

Description

The back-end of the Drink This application is built on a recommender system. It is designed as a collaborative filtering algorithm to capture similarities in 'likeness' of a product among users. Think Netflix, but instead of movies, cocktails are the products. In contrast to collaborative filtering, product-based (or content-based) filtering tries to figure out a particular user's favorite aspects of a product (or products) and recommend based on the attributes of the product(s). This enables the collaborative filtering strategy to obtain a more accurate recommendation algorithm based on user preferences.

Python and Euclidean Distance

Python is generally the go-to language to abstract the vast libraries of formulas that can be utilized in the recommender system. The gems used to access the euclidean_distances method within python are numpy, pandas, sklearn, metrics, and pairwise. Euclidean Distance is the distance between common cocktails among users of similar taste. This method utilized in the backend allows a cocktail recommendation to accurately demonstrate what the user would particularly like based on other users. A challenge to this method, as with any other recommender system (such as Cosine Similarity or Pearson Correlation), is that the database would a large set of data to accurately recommend a cocktail, a shortcoming also known as cold start problem. While this is a challenge, as the user base grows, the Euclidean Distance method would provide an increasingly more accurate recommendation to the user.

This backend application leverages data science concepts derived from various websites that helped empower the algorithm for the recommender system:

https://medium.com/swlh/how-to-build-simple-recommender-systems-in-python-647e5bcd78bd

OAuth with Google

Clone this wiki locally