Classify piano sound quality by fine-tuned pre-trained CNN models.
conda create -n cnn --yes --file conda.txt
conda activate cnn
pip install -r requirements.txt
git clone git@github.com:monetjoe/Piano-Classification.git
cd Piano-Classification
Assign a backbone(take squeezenet1_1 as an example) after --model
to start training:
python train.py --model squeezenet1_1 --fullfinetune True --fl True
--fullfinetune True
means full finetune, False
means linear probing
--fl True
means using focal loss
After finishing the training, use the below command to plot the latest results:
python plot.py
A demo result of SqueezeNet fine-tuning:
Results | Plots |
---|---|
Loss curve | |
Training and validation accuracy | |
Confusion matrix |
@inproceedings{DBLP:journals/corr/abs-2310-04722,
author = {Monan Zhou and
Shangda Wu and
Shaohua Ji and
Zijin Li and
Wei Li},
title = {A Holistic Evaluation of Piano Sound Quality},
booktitle = {Proceedings of the 10th Conference on Sound and Music Technology (CSMT)},
year = {2023},
publisher = {Springer Singapore},
address = {Singapore},
timestamp = {Fri, 20 Oct 2023 12:04:38 +0200},
bibsource = {dblp computer science bibliography, https://dblp.org}
}