Skip to content

TheMariechen/gnod_project

Repository files navigation

Song Recommender Project | Unsupervised Machine Learning

Project Overview

The aim of this project was to build an automated song recommender and is structured in multiple steps:

  1. First, the Top Currently Trending Billboard 100 Songs were webscraped from the respective website and saved to a csv file [BB_Hot100_Webscraping.ipynb].

  2. A 43000 entry dataset [curated_audio_features_dataset_curated.csv] of songs and their respective audio features (such as tempo, loudness, danceability) was the basis for applying unsupervised machine learning to cluster them based on similar song audiofeatures. The best results were achieved through a grouping in the following 7 clusters: 0: "Dancy", 1: "Rocky", 2: "Classy", 3: "Folky", 4: "Electry", 5: "Poppy", 6: "Rappy" and stored in a new CSV file [new_af_clusters_7.csv].

  3. The song recommender function works by asking the user what mood they are in today and offers the predifined clusters options as well as an additional "trendy" category based on the previously scraped top one 100 songs. It the randomly selects and plays one song from the respective cluster/ group. [Song_recommender.ipynb]

About

Song Recommender Project | Unsupervised Machine Learning

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors