- The development of a Machine Learning model that guesses the danceability scores of Spotify songs ( (of 140k tracks in Spotify).
- The model uses gradient boosting and hyperparameter optimization to achieve the most accurate results -less than 10% error!
- The project is able to create the playlist on user's own account using the Spotify Python API!
- model.py - Inludes whole model structure. At the end of hyperparameter optimization on 3 different models we got an RMSE score less than 0.1.
- model_ML_Pipeline.py : When you run this on python from cmd, a webapp starts locally on your machine to run the program.
- requirements.txt: Python module dependencies and versions are here.
pip install -r requirements.txt (works better on pycharm virtual environment!)
Go to Spotify for Developers and: Log in with your Spotify account. Open the Dashboard. Create an app. Give it a name, e.g. Spotify Danceability Project. Add a redirect URI, for example: http://127.0.0.1:8888/callback Save the app. Copy your Client ID. Generate/use a Client Secret where the dashboard/API flow provides one.
-
Install dependencies as written below in "Installation" pip install -r requirements.txt on command line
-
Run "model_ML_Pipeline.py" from commandline
-
On command line there is a local address that web app tuns on your machine, click on it to open app. \
-
Enter your spotify userid, client id (from dummy Spotify project above) and client secret (again from dummy Spotify project above) to web app as inputs and hit 'Submit' \n
-
To get your spotify user id:
From "https://open.spotify.com/" on top right click on "Account".
On the new tab click "Edit profile" and there you have your user id! -
Web app runs and gives you the output as "Hello 12345678912 The ML Dance Playlist has been created:
ML Dance Playlist 14_48_time".
