phyosandarwin / kpop-song-predictor-app

A simple machine learning web project that uses several machine learning classification models to determine a KPOP song's popularity given its input features such as audio properties and artist name.

Home Page:https://kpop-song-predictor-app.streamlit.app/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Kpopular-ML-App

An interactive learning web app to review the data pipeline process and understand the models used to classify a K-pop's song popularity given its features such as audio properties and artist name.

Access the webpage here!

Web App pages

Main page

Outlines my motivations for undertaking this topic, the data pipeline process, performance results of all 5 classification models used.

EDA

Outlines interactive Plotly visualisations I used in my EDA Notebook

Train Model (Playground feature)

Experiment with the parameters of the selected SVM model and explore the various performance metric visualisations (Confusion Matrix, ROC-AUC curve, Precision-Recall curve)

Predict Popularity (Playground feature)

Experiment with the input features and get the result on whether given song is popular or not.

Classification Models used:

  • Logistic Regression
  • Random Forest
  • SVM ✅
  • XGBoost
  • KNN

Further Improvements:

  • Collect a larger dataset of Kpop songs over time to include more data from artists labelled as 'Others'.
  • Consider data cleaning techniques such as removing potential outliers in dataset (more preferred if dataset was large enough) or feature scaling to optimise performance of machine learning algorithms

Acknowledgements

Building Interactive plots on Streamlit: Misra Turp's Streamlit Videos Playlist

About

A simple machine learning web project that uses several machine learning classification models to determine a KPOP song's popularity given its input features such as audio properties and artist name.

https://kpop-song-predictor-app.streamlit.app/


Languages

Language:Jupyter Notebook 99.4%Language:Python 0.6%