Queuing songs at a party is always a struggle, everyone wants something different and there’s always someone who takes over the playlist. Therefor we built Partify.
What it does
Our solution: generate Spotify playlists automatically using machine learning based on the users favorite tracks sorted by mood select-able by the host.
How we built it
We analyzed songs labelled by their playlists titles to determine what metadata parameters determines the mood and feel of a song, from calm (lounge) to intense (club). The tracks are classified with a Support Vector Machine with regularization in SciKit Learn.
The front-end is built on react, following a Spotify-inspired light theme.
The Backend is built using Python and Flask library. All the data is fetched using the Spotify API.
Challenges I ran into
The most difficult part was to determine what data to analyze and which model to use, since we wanted to determine lounge and club music feel based on Spotify's features-metadata. So far it has an accuracy of approximately 85-90 %, this can be improved using more training data.
What we learned
We have learned a lot about how Spotify API’s work and also gained some new machine learning skills.
What’s next for Partify
Becoming better at classifying tracks and adding more variety of moods to pick from, we had an idea of a triangle/octagon picker instead of a simple slider. Another improvement would be shuffling the users different tracks in a smarter way so they get similar representation in the playlist.