ABOUT

Created By: David Ma, Dejan Savic, Carolyn Johnson, Yonas Michael, Zach Evans and Wendell Killette
We constructed a song recommendation system to help individuals add songs to favorite playlists. Using spotify API and user-friendly Spotipy, machine learning models were created to be the back bone to the recommendation system; a continuously learning model which gets better time.
1. Set up developer account to **access Spotify API credentials**; making API calls to retrieve necessary data.
2. Take into consideration the **data most useful** for our purposes.
3. Make the data API calls to **retrieve your data**.
5. **Clean Data** and remove unnecessary information
6. **Split the data** into training and test sets. You'll use the training set to train your model, and the test set to evaluate its performance.
7. **Extract features from the data**. Making sure the ML models can use the features
8. **Train a machine learning model**. We choose an appropriate model for your data and goals, such as a collaborative filtering model or a content-based recommendation system. You'll then need to train the model using the training data
9. **Evaluate the model's performance**. Use the test data to evaluate the model's performance in terms of metrics such as precision, recall, and F1 score. You may need to adjust the model's hyperparameters or try a different model if the performance is not satisfactory.
10. **Use the model to make recommendations**. Once you have a trained model, you can use it to make recommendations to users based on their input.

References:

Spotify / AICrowd, Million Playlist Dataset (2018), https://www.aicrowd.com/challenges/spotify-million-playlist-dataset-challenge
Spotify, Spotify for Developers, https://developer.spotify.com
plamere, Spotipy documentation, https://spotipy.readthedocs.io/en/2.19.0
plamere, Spotipy Codebase, https://github.com/plamere/spotipy
Google Developers, Content-based Filtering (2021)
A. Roy, Introduction To Recommender Systems- 1: Content-Based Filtering And Collaborative Filtering (2020), on Towards Data Science
M. Thaker, Spotify Recommendation System (2020), on Github
W. Scott, TF-IDF from scratch in python on a real-world dataset. (2019), on Towards Data Science
P. Shah, Sentiment Analysis using TextBlob (2020), on Towards Data Science
Spotipy, spotipy documentation (n.d.)