WHICH SONGS ARE MOST SIMILAR TO YOUR FAVORITES?
BY: RYAN ZERNACH
SUMMARY — The user is able to create an account, select a couple of songs that he or she likes, and request song recommendations that our predictive model calculates, save/add favorite songs, view album covers, etc.
TECH STACK — Flask, Heroku, Dash Core Components, Scikit-Learn, KNearestNeighbors, Category_Encoders, JSONify, Numpy
TEAM & TIME — Three Data Scientists, Three Web Developers, One Week
PERSONAL CONTRIBUTIONS —
▻ Built a couple of back-end Python API’s to return JSON files of suggested song data to front-end
▻ Connected to Spotify API and conducted data exploration/analysis
REMINDER: This project was less than a week long!
We would have loved to make loads of improvements.
Firstly, we pulled data from Spotify using their API — thus allowing us to retrieve the most up-to-date data from their data warehouse.
Our primary back-end Python post-API for this project receives an integer input. The integer input corresponds to the index number of the song in our dataset for which the user wants to receive recommendations of similar songs!
That song is then fed through our prediction pipeline. Of all the machine learning algorithms from which we could have selected, we decided upon the k-nearest neighbor model. It is essentially predicting which songs are most musically, acoustically similar, and then returns information to the front-end in the form of a JSON object — track name, artist name, and album cover URL.