We all use at least one audio-streaming app like Spotify on a daily basis. Isn’t it fascinating that most of the time Spotify is able to recommend songs that we would like to listen to at that moment? After researching more about how the algorithms of audio streaming apps work, I have built Musica: a web app which can give music recommendations based on what the user is currently listening to and the user's song history. The web app makes use of content based filtering using the cosine similarity algorithm to generate recommendations.
Demonstrate through your app the different kinds of algorithms that a web-streaming app (like Netflix) or an audio-streaming app (like Spotify) may use for their Recommendation Engine.
- Status : Accomplised by successfully recommending songs to the user
🔗 Project Demo Video: Click here to watch the video
Cosine similarity is a metric used to measure how similar two items are. Mathematically it calculates the cosine of the angle between two vectors projected in a multidimensional space. Cosine similarity is advantageous when two similar documents are far apart by Euclidean distance(size of documents) chances are they may be oriented close together. The smaller the angle, higher the cosine similarity.
Cosine similarity has been used in the web app to implement content based filtering. Content-based filtering uses item features to recommend other items similar to what the user likes, based on their previous actions or explicit feedback sklearn has the module ‘cosine_similarity’, which we'll use to compute the similarity between two vectors.
- Make a new folder and open the terminal there.
- Write the following command and press enter.
$ git clone https://github.com/dishitarocks/Microsoft_Engage_2022_Project
- Write the following command and press enter to download all required node modules.
pip install -r requirements.txt
- While you are still inside the cloned folder, write the following command to run the website locally.
recommendation_system.py