A machine learning approach to classify music by mood based on song lyrics.
This project is about building a music recommendation system for users who want to listen to happy songs. Such a system can not only be used to brighten up one's mood on a rainy weekend; especially in hospitals, other medical clinics, or public locations such as restaurants, the MusicMood classifier could be used to spread positive mood among people.
- The web application
- The data collection IPython notebook
- The initial model training IPython notebook
- The updated model training with white lists IPython notebook
- Experiments with Random Forests IPython notebook
- An article about my experiences with this project
- A keynote presentation about this project
- A more technical report on arXiv
- A 10,000-song subset was downloaded from the Million Song Dataset.
- Lyrics were automatically downloaded from LyricWikia and all songs for which lyrics have not been available were removed from the dataset.
- An English language filter was applied to detect and remove all non-English songs.
- The remaining songs were randomly subsampled into a 1000-song training dataset and 200-song validation dataset.