All work

Music Genre Classification

Ten genres, 5,000 tracks each, and a pipeline that spent more time on the features than on the classifier.

University machine-learning coursework. Data preparation, training and exploratory analysis.

Original correlation heatmap of the music dataset features, including energy, loudness and danceability.

The plots came first, as I wanted to see what actually separated the genres before choosing anything, and then the scikit-learn pipeline went in: missing value handling, an artist to genre encoder, one hot encoding, scaling, SelectKBest and PCA, with a stack of random forest, gradient boosting and XGBoost under a logistic regression at the end.

Predictions from the 2024 run are in results.csv, and combined_data.csv is the merged set.

State

Coursework from September 2024, kept with its figures. Running it again means supplying your own test split, as the one it expects isn't in the repo.

All work