Closed askoki closed 5 years ago
Vidljivi su problemi kod pogrešne klasifikacije velike sopile. Najviše sumnje imam u pogrešnu klasifikaciju vele u tišinu. Tišina se u svim testnim podacima ubiti svodi na vektor 0, a ukoliko je u nekim slučajevima fft vele premali tada ga možda treshold spusti na 0. To je potrebno daljnje ispitati.
Performanse PCA + RF ne donose na poboljšanju:
PCA sa očuvanjem 95% varijance:
PCA sa očuvanjem 99% varijance:
Kakav je odnos training i testing (odnosno validacijske) pogreške? Imate li osjećaj je li model overfitan?
Morao sam malo prilagoditi kod za testiranje na pravim podatcima (snimke nekih kombinacija) pa da mogu potvrditi da model sa random forest nažalost overfita. Istestirat ću još sa PCA i manjim brojem stabala pa javim konačni zaključak.
Podešavanjem parametara kojima regulirate kompleksnost korištenog modela i odnos pristranost-varijanca možete prilagoditi konačno rješenje pozadinskoj distribuciji u podacima. Normalnim rječnikom, predlažem da probate više različitih kombinacija hiperparametara i da vidite što radi najbolje (Python ima gridsearch za takve stvari - možda je primjenjivo tu). Zanima nas scenarij u kojem dobijemo minimalnu pogrešku validacije, te je pogreška treniranja jako blizu pogrešci validacije.
Pokušao sam s tehnikom opisanom ovdje pronaći raspon pravih parametara. Pritom sam balansirao skup podataka tako da svaka klasa ima jednak broj. Rezultat je isti: oko 95% trening set i 89% test set. Trening služi samo za treniranje i model nigdje ne koristi podatke test seta. Na test setu taj isti model ostvaruje 89% točnosti što je i dalje iznimno dobro. Problem nastaje kada pokušam predvidjeti stvarne snimke. Tada model izgleda kao da nasumično pogađa klase. Možda random forest nije dobar pristup jer se rasponi i vrijednosti amplituda previše razlikuju u stvarnim podatcima od onih korištenih za trening. Nisam siguran što je točno problem, ali sa grid searchom nažalost neće doći do poboljšanja.
Što je "stvarna snimka"? Je li to zvučni zapis izvedbe drugih ljudi na drugom instrumentu (s koncerta, npr.), ili se radi o vašoj izvedbi neke kompozicije? Ako je ovo potonje, onda zaista ne znam u čemu bi mogao biti problem. Je li više instrumenata aktivno istovremeno?
Da stvarne snimke su melodije koje sam ja odsvirao. Npr. zapis 'mala012345' označuje zapis u kojem bi trebali predvidjeti sviranje tonova male sopile od 0 do 5. Amplitude su u oba slučaja skalirane na vrijednosti 0-1.
Kao što je opisano u
issue #11
nova tehnika pretprocesiranja trebala bi izvlačiti značajke iz signala vremenskog okvira od 10 ms. Na njemu se radi fft te se odstranjuju apsolutne amplitude manje od thresholda. Nakon toga se amplitude kvadriraju i normaliziraju po najvećoj vrijednosti.Potrebno je ispitati sljedeće: