Closed draganculibrk9 closed 4 years ago
Kako planirate da evaluirate rad rešenja na testnom skupu podataka?
Rad rešenja će se na testnom skupu podataka evaluirati poređenjem dobijene tekstualne predstave muzičkih simbola sa muzičkim simbolima testnog notnog zapisa, a takođe će se dobiti i generisana melodija.
Da li ćete računati neku metriku ili će poređenje biti empirijsko?
Prilikom korišćenja rešenja od strane korisnika, poređenje dobijenih rezultata i korisnikovog, tj. testnog notnog zapisa, će biti empirijsko.
Tema odobrena. Ostavite link ka GitHub repozitorijumu projekta. Srećan rad.
Tim
Definicija problema
Program bi trebalo da čita muzičke zapise, prepoznaje muzičke simbole, generiše njihovu tekstualnu predstavu i melodiju na osnovu tekstualne predstave.
Skup podataka
Za trening i validacioni skup biće korišćeni PrIMuS i Camera-PrIMuS sa https://grfia.dlsi.ua.es/primus/
Test skup će činiti primeri korisnika aplikacije (korisnikove fotografije notnih zapisa).
Metodologija
Koristićemo End-to-end Optical Music Recognition algoritam (detaljnije u radu https://www.researchgate.net/publication/324460067_End-to-End_Neural_Optical_Music_Recognition_of_Monophonic_Scores) koji radi na principu prepoznavanja muzičkih simbola jedne linije notnog zapisa.
Algoritam se sastoji od primene konvolutivne neuronske mreže (CNN), koja služi za izdvajanje vektora feature-a, koji zatim služe kao ulaz u rekurentnu neuronsku mrežu (RNN), koja vrši klasifikaciju simbola uz pomoć Connectionist Temporal Classification (CTC) loss funkcije.
Prilikom primene programa, radiće se izdvajanje linija notnog zapisa uz pomoć neke tehnike computer vision (najverovatnije Hough Transform), zatim će se svaka linija propustiti kroz istrenirane mreže, koje će na izlazu dati tekstualnu predstavu muzičkih simbola, na osnovu koje će biti izgenerisana melodija.
Evaluacija
Kao glavna metrika će se koristiti Connectionist Temporal Classification (https://en.wikipedia.org/wiki/Connectionist_temporal_classification) loss, koji se koristi za treniranje rekurentnih neuronskih mreža, za rešavanje sequence-to-sequence problema gde postoji vremenska zavisnost između svakog dela ulazne sekvence.