Skip to content

Using Spotify data to create a recommendation system for The Beatles

License

Notifications You must be signed in to change notification settings

jarred13/The_Beatles_Recommendations

Repository files navigation

The Beatles Recommendations

Overview

This notebook uses unsupervised learning to cluster all the Beatles songs into song types. The data used was a dataset found on Kaggle and it has Spotify's data for all 13 Beatles albumns, which includes 192 songs. The k-means algorithm was applied to create a two dimensional and three dimensional model. The three dimensional model was used to make a simple recommendation system where you provide a Beatles song and the recommender will return a similar song from that cluster! As a Beatles fan, this was a fun notebook to create and I hope you enjoy reading it, just as much as I enjoyed creating it! This notebook is hosted on Kaggle and can be found here:
https://www.kaggle.com/code/jarredpriester/unsupervised-recommendation-system-of-the-beatles

Purpose of this Project

This project was designed to be a starting point for practicing and understanding K-means clustering and unsupervised learning. I wanted to learn how to use the insights from a K-means model to turn those insights into a recommedation system.

What Did I Learn

I learned a great deal about K-means models. I learned how to use the elbow method and the silhouette method in order to choose the optimal number of clusters. I learned how to create a 2 dimensional model as well as a 3 dimensional model. I learned how to create a function in python that could return a recommended song. As well as learning how to plot 3 dimensional plots in the Plotly library.

Dataset Used

This dataset consists of 192 songs from all 13 of the Beatles albums. The dataset was found on Kaggle and has 11 song features for each song.

Files Used

TheBeatlesCleaned.csv - dataset
unsupervised-recommendation-system-of-the-beatles.ipynb - Kaggle Python notebook