Some people say that the world could survive without the arts or humanities and that only hard sciences and engineering are important. However, we think that music plays an important role in our lives, and we want to exploit big data analysis to help people around us.

What it does

We built two Machine Learning models that assist both musicians and listeners: ML Hit vs Non-hit classifier predicts whether a song can be a hit in the current music market. Mood Predictor classifies the songs on either Sad or Happy

How we built it

Used the following dataset: Spotify Dataset 1921-2020, 160k+ Tracks Used the following API: Spotify (Spotify) We preprocessed the data to feed into our models, using normalization for the Mood Predictor model, and not-normalized data for the Hit-non-Hit Predictor. We used NN models for both using Keras and PyTorch.

Challenges we ran into

The HIt-non-Hit predictor had a low accuracy when trained first, it actually did not seem to have any improvement, however, using a smaller learning rate helped to improve it, after that, we reached a very low accuracy, but by using hidden layers, batch normalization, and He initializer we were able to improve the training speed and accuracy. For the mood predictor, we did not have a proper database so we built it from the Spotipy API.

Accomplishments that we're proud of

We are able to predict with a 69% accuracy the success of a song in the current market and predict the mood of a song with 81% accuracy.

What we learned

We were able to learn about music, optimizers, and manage new APIs such as Spotipy

What's next for Mood Swings

The potential for these algorithms is huge. The HIt-non-hit predictor can allow small producers or independent artists to learn what is the rate of success of their songs before actually finishing it or releasing it. Finally, the mood predictor has the potential of predicting more emotions, it can have interesting applications such as knowing when a friend is going through a hard time, rising alerts about mental health, etc...

Built With

Share this project: