Studiuję skalowanie danych, aw szczególności metodę standaryzacji. Zrozumiałem matematykę, która się za tym kryje, ale nie jest dla mnie jasne, dlaczego ważne jest, aby nadać funkcjom zerową średnią i wariancję jednostkową.
Możesz mi wytłumaczyć ?
Studiuję skalowanie danych, aw szczególności metodę standaryzacji. Zrozumiałem matematykę, która się za tym kryje, ale nie jest dla mnie jasne, dlaczego ważne jest, aby nadać funkcjom zerową średnią i wariancję jednostkową.
Możesz mi wytłumaczyć ?
Odpowiedzi:
Pytanie, czy i dlaczego jest ważne, zależy od kontekstu.
Na przykład w drzewach decyzyjnych ze wzmocnieniem gradientu nie jest to ważne - te algorytmy ML „nie przejmują się” monotonicznymi transformacjami danych; po prostu szukają punktów, aby to podzielić.
Na przykład w przypadku predyktorów liniowych skalowanie może poprawić interpretowalność wyników. Jeśli chcesz myśleć o wielkości współczynników jako o pewnym wskaźniku, w jakim stopniu cecha wpływa na wynik, to cechy muszą być w jakiś sposób skalowane do tego samego obszaru.
W przypadku niektórych predyktorów, w szczególności NN, skalowanie, a w szczególności skalowanie do określonego zakresu, może być ważne ze względów technicznych. Niektóre warstwy używają funkcji, które skutecznie zmieniają się tylko w pewnym obszarze (podobnie jak rodzina funkcji hiperbolicznych ), a jeśli cechy są zbyt daleko poza zakresem, może wystąpić nasycenie. Jeśli tak się stanie, pochodne numeryczne będą działać źle, a algorytm może nie być w stanie zbiegać się w dobrym punkcie.
źródło
W przypadku średniej zerowej wynika to z faktu, że niektóre modele uczenia maszynowego nie uwzględniają terminu stronniczości w ich reprezentacji, dlatego musimy przenieść dane wokół źródła przed dostarczeniem go do algorytmu w celu skompensowania braku terminu stronniczości. W przypadku wariancji jednostek, ponieważ wiele algorytmów uczenia maszynowego korzysta z pewnego rodzaju dystansu (np. Euklidesowego) do decydowania lub przewidywania. Jeśli dana cecha ma szerokie wartości (tj. Dużą wariancję), odległość będzie miała duży wpływ na tę cechę, a efekt innych cech zostanie zignorowany. Nawiasem mówiąc, niektóre algorytmy optymalizacji (w tym opadanie gradientu) mają lepszą wydajność, gdy dane są znormalizowane.
źródło
Jednak można tu wątpić, że nawet jeśli funkcje nie są znormalizowane, to wagi przypisane do niego podczas uczenia się mogą pomóc w zbieraniu zestawu danych do oczekiwanych wyników podczas treningu. Problem polega na tym, że szkolenie i osiągnięcie rezultatów zajmie naprawdę dużo czasu.
Dlatego sugeruje się, aby wszystkie funkcje w tej samej skali były na tyle mniejsze, aby łatwo ćwiczyć. Poniższy link omawia również podobną koncepcję. /stats/41704/how-and-why-do-normalization-and-feature-scaling-work
źródło