The Billboard Hot 100 Chart1 remains one of the definitive ways to measure the 🚀success of a popular song. We investigated using machine learning techniques to predict which songs will become Billboard Hot🔥100 Hits.
Data for ~10,000 songs were collected from Bilboard.com and Millions Songs Dataset. Songs were from 1990-2018
<img align="center"src="https://img.icons8.com/nolan/30/musical-notes.png"/>
Danceability : Describes how suitable a track is for dancing based on a combination of musical elements including tempo, rhythm stability, beat strength, and overall regularity.
Energy : Represents a perceptual measure of intensity and activity. Typically, energetic tracks feel fast, loud, and noisy. For example, death metal has high energy, while a Bach prelude scores low on the scale.
Loudness : An attribute of auditory sensation in terms of which sounds can be ordered on a scale extending from quiet to loud.
Speechiness : Detects the presence of spoken words in a track.If the speechiness of a song is above 0.66, it is probably made of spoken words, a score between 0.33 and 0.66 is a song that may contain both music and words (e.g. rap music), and a score below 0.33 means the song does not have any speech.
Acousticness : A confidence measure from 0.0 to 1.0 of whether the track is acoustic. 1.0 represents high confidence the track is acoustic.
Instrumentalness : Predicts whether a track contains no vocals. “Ooh” and “aah” sounds are treated as instrumental in this context. Rap or spoken word tracks are clearly “vocal.” The closer the instrumentalness value is to 1.0,the greater likelihood the track contains no vocal content.
Liveness : This value denotes the probability that the song is recorded with a live audience. According to the official documentation, “a value above 0.8 provides a strong likelihood that the track is live”.
Valence : A measure from 0.0 to 1.0 describing the musical positiveness conveyed by a track. Tracks with high valence sound more positive (e.g. happy, cheerful, euphoric), while tracks with low valence sound more negative.
Tempo : Tempo is how fast or slow a piece of music is performed, while rhythm is the placement of sounds in time, in a regular and repeated pattern.
Genre : A music genre is a conventional category that identifies some pieces of music as belonging to a shared tradition or set of conventions. It is to be distinguished from musical form and musical style.
The Billboard Hot 100 Chart1 remains one of the definitive ways to measure the success of a popular song. We investigated using machine learning techniques to predict which songs will become Billboard Hot 100 Hits.
- The Heatmap showed that there is good positive correlation between Loudness and Energy. While Acoustiness and Energy are negatively correlated. Also there is negative correlation between Loudness and Acoustiness.
- Scatter plot shows that loud songs with High Energy makes up on the billboard Top100.
- Most of the songs on Billboard are of 'Pop' Genre followed by 'Rap'. It may be because songs of these Genre are released mostly. The songs of genre 'Jazz','reggae','alternative','classical','edm' doesnot make up on Billboard.
- After performing basic EDA we moved to modelling part. For building the model we used Danceability, Energy, Loudness, Speechiness, Acousticness, Instrumentalness,Liveness, Valence, Tempo and Genre as our Feature variables. While Top100 is target variable.
-
Balancing the data using SMOTE technique.
-
Scaling the independent features using StandardScalar().
-
Splitting the data in train-test split, 80% for training purpose and 20% for testing purpose.
-
Fitting the train data using KNN algorithm.
-
Model Evaluation using Confusion matrix and ROC-AUC curve.
-
Hyper-parameter tuning to obtain optimized scores.
-
Evaluating the optimized model
Scores of initial model:
-
Accuracy: 76 %
-
Precision: 77 %
-
Recall: 76 %
-
ROC AUC Score: 76.13 %
Scores of optimized model:
-
Accuracy: 80 %
-
Precision: 82 %
-
Recall: 80 %
-
ROC AUC Score: 79.59 %
Finally deployed the model on Heroku using Flask.