Mam pytanie do wykopowych ekspertów #machinelearning ( ͡º͜ʖ͡º) #statystyka Chodzi o normalizację danych wejściowych (feature normalization).
Pracuję nad algorytmem rozpoznawania pisma przy pomocy logistycznej regresji (logistic regression) - cel czysto naukowy - czyli Matlab bez żadnych wbudowanych funkcji.
Minimalizuję funkcję kosztu metodą gradientu prostego (gradient descent). Niestety dane wejściowe (macierz obrazka) są dosyć 'rozbieżne' i Matlab średnio sobie z tym radzi (ref
Zastosowałem więc normalizację i teraz jest git. Ale okazuje się, że wyuczone współczynniki działają tylko dla tych znormalizowanych danych (muszę zapisywać wart. śred/mean i odchylenie standardowe/std.dev).
Czyli zawsze nowe dane muszę też najpierw normalizować? A dopiero potem obliczać i klasyfikować?
Niby normalizacja optymalizuje działanie algorytmu gradientu prostego ale sama też trochę trwa (szczególnie dla obrazka 100x100) i jeżeli ma się to np. odbywać 'online' to trochę słabe rozwiązanie.
Pozwolę sobie zawołać Mirków, którzy już raz mi pomogli z tematem ML, mam nadzieję, że się nie pogniewacie @dziobaki_sa_jadowite @Diego19
@tomek4: Ogólnie tak. Jeśli normalizowałeś wcześniej to teraz też powinieneś. Albo trenujesz od zera, ale wtedy będziesz miał błędy wymienione powyżej. Dziwi mnie tylko wybór metody podstawowej - czemu nie CNN, tensor flow, czy coś takiego?
@dziobaki_sa_jadowite: Nie matlab tylko octave, nie uczelnia tylko dom, po pracy ( ͡°͜ʖ͡°) Studia skończyłem z 15 lat temu, po prostu chciałem się tego nauczyć... Postanowiłem, że użyję właśnie octave/matlab by jeszcze lepiej zrozumieć jak to działa.
Edit: Odnośnie studiów to za moich czasów przedmiot nazywał się chyba "Systemy Ekspertowe i Sieci Neuronowe" i był na to semestr albo dwa. I też nie było matlaba
Ci ludzie promujący CPK a zwłaszcza ci którzy pojawili się dopiero po wyborach wydają się coraz bardziej groteskowi i chyba też zdesperowani próbując utrzymać przekaz. Brakuje tylko husarskich skrzydeł (ʘ‿ʘ)
Chodzi o normalizację danych wejściowych (feature normalization).
Pracuję nad algorytmem rozpoznawania pisma przy pomocy logistycznej regresji (logistic regression) - cel czysto naukowy - czyli Matlab bez żadnych wbudowanych funkcji.
Minimalizuję funkcję kosztu metodą gradientu prostego (gradient descent). Niestety dane wejściowe (macierz obrazka) są dosyć 'rozbieżne' i Matlab średnio sobie z tym radzi (ref
Zastosowałem więc normalizację i teraz jest git.
Ale okazuje się, że wyuczone współczynniki działają tylko dla tych znormalizowanych danych (muszę zapisywać wart. śred/mean i odchylenie standardowe/std.dev).
Czyli zawsze nowe dane muszę też najpierw normalizować?
A dopiero potem obliczać i klasyfikować?
Niby normalizacja optymalizuje działanie algorytmu gradientu prostego ale sama też trochę trwa (szczególnie dla obrazka 100x100) i jeżeli ma się to np. odbywać 'online' to trochę słabe rozwiązanie.
Pozwolę sobie zawołać Mirków, którzy już raz mi pomogli z tematem ML, mam nadzieję, że się nie pogniewacie @dziobaki_sa_jadowite @Diego19
Tak
Jeżeli stosujesz preprocessing na danych uczących,taki sam powinieneś użyć na testowych.
@SikorskiKrzysztof: Bo tylko tę jedną znam, uczę się na kursie z Coursery.
Nie matlab tylko octave, nie uczelnia tylko dom, po pracy ( ͡° ͜ʖ ͡°)
Studia skończyłem z 15 lat temu, po prostu chciałem się tego nauczyć...
Postanowiłem, że użyję właśnie octave/matlab by jeszcze lepiej zrozumieć jak to działa.
Edit: Odnośnie studiów to za moich czasów przedmiot nazywał się chyba "Systemy Ekspertowe i Sieci Neuronowe" i był na to semestr albo dwa. I też nie było matlaba