-
-
CosineSimilarityPlaylistAudioFeatureBarGraph.png
-
EuclideanDistanceAudioFeatureSelectionRegression.png
-
CosineSimilarity%BreakdownPieChart.png
-
CosineSimilarityUSERAudioFeaturesBarGraph.png
-
ED%BreakdownPieChart.png
-
EuclideanDistance%BreakdownPieChart.png
-
EuclideanDistanceAudioFeatureBarGraph.png
-
CosineSimilarityExample.png
Inspiration
Our inspiration came from the theme of nostalgia and our core memories watching sitcoms of the late 90s and 2000s. Given that music plays such a large part in the lives of people and that there is publicly available APIs such as Spotify, we can harness our patterns of listening to give us a bit more insight and comparison to some of our favorite TV characters.
What it does
This app takes a users most listened to songs and classifies them as one of many sitcom characters from the following shows:
- Friends
- How I Met Your Mother
- The Office The only input needed from the user would be to log into Spotify. ## How we built it With the Spotify API we are able to do two things:
- Pull a user's top 100 tracks
- Pull all tracks from any specific playlist This means that we can create feature vectors for both and compare them using both cosine similarity and euclidean distance. We decided to compare our user tracks with pre-selected playlists on Spotify which are created with a certain tv show character in mind, and from there give classifications. ## Challenges we ran into The Spotify API is a bit challenging to work with because of two things:
- Token and User Authentication
- Given that we are still in development mode (which limits capabilities from the API), any user that would like to login through our app to see which tv show character they are would need to be added to the list of users with access to creating a token. This severely neuters the scope of which we would like our application to be ran.
- Running out of API calls
- The most crippling issue we came across was running out of API calls for our accounts. Through testing and debugging, we would go over our limit which was very small and would have to create a new Spotify account to get a fresh account. This was very time consuming. ## Accomplishments that we're proud of We are very proud of the goals and management we partook throughout the project. Our original idea ended up working exactly as we planned and we are very proud and grateful that it turned out this way. ## What we learned We learned much about not only authorization and tokens for APIs, but also the mathematical nature of recommendation systems as well as the differences between Content-Based Filtering and Collaborative Filtering. Overall the experience was very rewarding and fruitful for us! ## What's next for Our next goal would be to create a nice front end and hopefully ask Spotify for better API access which would allow anyone to use the app and to also use it without running into any limits!
Log in or sign up for Devpost to join the conversation.