Inspiration

Everyone in our team loves music - most of us are musicians! Therefore, it was natural for us to take on a music related ML project.

What it does

Our model generates song recommendations based on a user’s Spotify playlist. Our model can help the user discover new songs that reflect their musical tastes.

How we built it

We decided to use the KMeans model to create clusters of songs that have similar features and the K Nearest Neighbours algorithm to find the nearest neighbors of each user song within that cluster. We chose KNN because many similar song recommendation systems use this model, so we thought that it was natural that we also select this model. The clusters were used to narrow our choices.

Challenges we ran into

Since Machine Learning and the Spotify API are relatively new to us, debugging the new algorithms and frameworks was challenging. Besides that, we found it difficult to figure out why our model at first did not perform well at first. For instance, one of the reasons was that we forgot to normalize the values of our song features.

Accomplishments that we're proud of

We are satisfied with the overall recommendations that are generated by the model. Although sometimes it gives some surprising results, this can be a good thing when you are looking for your next new favorite song!

What we learned

Large-scale team project. New ML models and API. Web-development. Source control. Independent research. Greatest code is written at 1 a.m. !

What's next for Mixerify

We would explore how we could take more advantage of Spotify’s dataset of songs and see if we could select a random set of songs per genre released in the most recent year. Since we selected our playlists manually, we do not have an equal representation of each genre and through a random selection, we could increase variety and have a better representation of each genre in our clusters.

Share this project:

Updates