I love music but since my taste varies so much and I am too lazy to make my own playlists I end up
grouping all my songs in one giant 2000 song playlist. But when I'm in the mood for specific genres it
can get annoying.
So to test out my Python skills I created a ML algorithm that uses numerous clustering techniques (e.g.
Agglomerative Clustering, Affinity Propagation and Spectral Clustering) to split my songs into playlists
based on features spotify has asigned them (e.g. danceability, loudness and rhythm).
After the data is cleaned and fitted the algorithms group the songs into playlist and their performance
is based on how many songs of similar genre are grouped.
The clusters are then automatically converted into playlists using the Spotify API.
I then furthered this project by using Unsupervised Learning to create a song recommendation system,
that would recommend similar songs and gain feedback based on whether I liked it or not.