[P] Looking for feedback on my project idea (for university)
So over the next 10 weeks or so, I’m doing a project on music genre classification for my MSc (it’s a conversion course as I did Philosophy at undergrad). I’m going to be using Python to classify songs based on their genre. My supervisor has suggested two possible project ideas:
Compare using SVMs with manual feature engineering (extracting features such as zero crossing rate, MFCCs, etc., from audio files), VS using a deep (probably convolutional) neural network that potentially uses some kind of automated feature learning (not sure how to do this), to see which approach is better.
Use a recurrent neural network for the classification, within the ‘reservoir computing’ paradigm. This is something I know much less about, but appanently is relatively new technology, so might be able to do something more novel with this project.
I’m going to mainly be using audio files themselves, but may also be using album artwork as a second form of input if I have time, as some researchers have actually managed to classify albums based on album artwork and use that as an additional set of features that can allow for more accurate classification of an album. I’m aware that music genre classification has been done quite a lot before, which is partly why I thought of adding in the album cover classification as an additional part of the project (as this hasn’t been done as much, so I’d potentially get more marks for originality).
My main question with the first project idea is that I don’t really know how to turn it into a sophisticated project. I have a small dataset of 1000 songs and pre-extracted features (extracted using Librosa) that I used a SVM on (scikit learn) to classify the songs, but the accuracy was only about 0.65. More fundamentally, after the data preprocessing, I only used a few lines of code overall, so to me it just felt really basic. I’ve never written a report like this before so I honestly don’t know how to turn it into something more substantial (or how to make the SVM more accurate). Is part of the low accuracy here potentially down to the dataset being too small?
I also don’t really know how I’d make the neural network part of the project more substantial. Would this involve lots of trial and error – tweaking the hyperparameters, number of layers, activation functions, etc., to get the best result possible?
For the second project idea, I know less about RNNs and even less about reservoir computing, so I don’t know if I’ll have time to learn enough to make it into a substantial, worthwhile project. Does this one have potential?
I would like to get a distinction for the project if I can, so any feedback on my ideas/answers to my questions would be really appreciated. Thanks.