A desktop application that analyses songs you like to build new playlists for you!
This recommender system works by leveraging the item similarity based collaborative filtering model.
You can use it to find popular or similar songs based as per your preference :)
Item-item filtering approach involves defining a co-occurrence matrix based on a song a user likes. We are seeking to answer a question: for each song, what number of times a user, who has listened to that song, will also listen to another set of other songs?
Considering what you liked in the past, what other similar song that you will like based on what other similar user have liked?
- Popularity based recommendation: You can get any number of popular songs, i.e. those songs who have been played the most times by the highest number of unique users.
- Item similarity based recommendation: You can input any number of songs you like with their title and artist. The system constructs a cooccurance matrix with this list to get you unique recommendations from other users who have also listened to these songs.
- Interface: GUI built using Tkinter library.
- Preprocessing: Done using pandas and numpy libraries to clean and prepare the dataset.
Dataset used | The Million Song Dataset:
The Million Song Dataset is a freely-available collection of audio features and metadata for a million contemporary popular music tracks.
You must have Python 3.6 or higher to run the file.
- Create a new virtual environment for running the application. You can follow the instructions here.
- Navigate to the virtual environment and activate it.
- Install the dependancies using
pip install -r requirements.txt
- Run the
music_gui.py
file withpython music_gui.py
Made with 💖 by Soumya Parekh, Kanksha Pandey and Ankita Shelke.