Skip to content

Merrimack-Computer-Club/Spotify_NLP_Service

Repository files navigation

Spotify Emotions Analyzer

Overview

Spotify Emotions Analyzer is a research project aimed at analyzing the emotional content of song lyrics from a user's Spotify listening history. Leveraging natural language processing (NLP) techniques and machine learning models, the project provides personalized emotional analysis for music enthusiasts.

Project Structure

---- \argon-design-system-react (react webpage)
---- \server (flask server, along with BERT model code & training/valid data)
---- \SpotifyNLPService.ipynb (Jupyter notebook to be ran in google colab to build the BERT model)
---- \requirements.txt (requirements file for \server python pip)

Authors

  • Derek Costello
  • Alexander Elguezabal
  • Mark Case

Methodology

The core methodology of the project revolves around using a BERT (Bidirectional Encoder Representations from Transformers) Large Language Model (LLM) trained on the Google GoEmotions dataset. This dataset contains human-annotated Reddit comments categorized into various emotional categories, serving as the basis for predicting emotional weights for song lyrics.

Functionality

  • Collects lyrical data directly from the user's Spotify listening history.
  • Predicts emotional weights for sentences extracted from song lyrics using the BERT LLM.
  • Aggregates emotional weight predictions to classify sentences into emotional categories.
  • Presents emotional analysis results through interactive infographics within a React-based web application.
  • Cloud-hosted web application and server for enhanced accessibility and user experience.

Reference

For more information and detailed documentation, please refer to the project repository: Spotify Emotions Analyzer Repository

License

This project is licensed under the MIT License.

About

Spotify Emotions Analyzer is a research project aimed at analyzing the emotional content of song lyrics from a user's Spotify listening history. Leveraging natural language processing (NLP) techniques and machine learning models, the project provides personalized emotional analysis for music enthusiasts.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors