anthonio9 / penn

Pitch Estimating Neural Networks (PENN)
MIT License
0 stars 0 forks source link

Fully Connected PolyPENN - PolyFCP #11

Open anthonio9 opened 3 months ago

anthonio9 commented 3 months ago

PENN is not implemented as a Fully Convolutional Network, however it is rather easy to convert it to one. The configuration parameter NUM_TRAINING_FRAMES is defining the length of the training sequence, by default set to 1. In the default case the training procedure is provided with unique, independent frames.

anthonio9 commented 3 months ago

FCN option still can't be properly evaluated as multi-pitch metrics are not supporting the new shape of data. Both postprocess_pitch_and_sort and the local expected value need to be fixed to support the FCN output.

anthonio9 commented 3 months ago

Maybe try residual connections recurrent blocks in the last layer? or a hierarchical set of output layers, one for per each string?

Hierarchical: hierarchicalCNN

anthonio9 commented 3 months ago

Sadly, the hierarchical approach does not seem to yield better results, perhaps my approach could have some more polishing, but still it does not seem to be the one. What about the recurrent blocks? Well, that part has to wait a bit as a FCN RNNs are not that obvious to me at the moment. Not true, there was a big bug in the hierarchical approach code (regular PolyPENNFCN was launched instead of the hierarchical variant), now setting this up properly is a bit tough and will take some time.