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.
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.
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