Our inspiration was our desire to merge one of our favorite music apps Spotify and machine learning to expose ourselves to new topics before beginning our large, group project.
What it does
Recommends songs based on mood and genre to user based on song attributes in Spotify database.
How we built it
We reviewed the songs in the Spotify database from 1921 - 2020 from Kaggle and the Spotify API, cleaned the data by removing any duplicates, songs without genre, etc, encoded and randomized the data, split and trained the cleaned data set and then used the K-Nearest Neighbor library to create our prediction model for predicting genre.
Challenges we ran into
Implementing the use of OAuth and Client IDs, the mix of the categorical and numerical data, missing data, changes in how songs have been classified in genres over time and labeling for the K-Nearest Neighbor from the original data set "data with genre" to "data by genre" presented some challenges.
Accomplishments that we're proud of
We're really proud that our app categorizes the genre of nearly 3,000 genres in Spotify database. The reference projects we used only accurately predicted a handful of genres. A secondary recommendation is made based off the valence score AKA the mood the song has.
What we learned
We learned more about wrangling data of mixed types, calling requests with the Spotify API, design, web development, the K-Nearest Neighbor algorithm and algorithm selection.
What's next for Recommendify
Next, if we continued the project, we would like to improve the recommendation further by adding a secondary algorithm, which will scan the text files of text messages and social media posts of the user to further personalize the song recommendations