Normalizacja

Celem normalizacji jest przekształcanie cech na podobną skalę. Zwiększa to wydajność i stabilność trenowania modelu.

Metody normalizacji w skrócie

Dostępne są 4 często używane techniki normalizacji:

  • skalowanie do zakresu
  • przycinanie
  • skalowanie logów
  • wynik_z

Poniższe wykresy pokazują wpływ każdej metody normalizacji na rozkład nieprzetworzonej funkcji (ceny) po lewej stronie. Wykresy opierają się na zbiorze danych z roku 1985, opracowanym przez firmę Warard's Automotive, która jest częścią portfolio systemów uczących się (UCI) systemów uczących się.

Pięć wykresów: 1. Rozkład nieprzetworzony 2. Rozkład nieprzeskalowany do zakresu, który ma taki sam kształt jak rozkład nieprzetworzony. 3. Przycięty nieprzetworzony rozkład, co eliminuje najwyższe wartości. 4. nieprzetworzony rozkład skalowany według logarytmu, który łączy dane w środku rozkładu. 5. wartość Z dystrybucji, która ma podobny kształt do nieprzetworzonego rozkładu.

Rysunek 1. Podsumowanie metod normalizacji.

Skalowanie do zakresu

Zwróć uwagę na MLCC, że skalowanie oznacza przekształcanie wartości zmiennoprzecinkowych z ich naturalnego zakresu (np. od 100 do 900) w standardowy zakres – zazwyczaj od 0 do 1 (czasem od -1 do +1). Do skalowania do zakresu użyj tej prostej formuły:

\[ x' = (x - x_{min}) / (x_{max} - x_{min}) \]

Skalowanie do zakresu to dobry wybór, jeśli spełnione są oba te warunki:

  • W przypadku Twoich danych znasz przybliżone i dolne wartości graniczne oraz nie ma ich gdzie indziej.
  • Twoje dane są w przybliżeniu równomiernie rozmieszczone w tym zakresie.

Dobrym przykładem jest wiek. Większość przedziałów wiekowych mieści się w zakresie od 0 do 90, a każda część zakresu obejmuje znaczną liczbę osób.

Dla porównania nie należy stosować skalowania dochodu, ponieważ tylko niektóre osoby mają dochody bardzo wysokie. Górna granica skali liniowej dochodu byłaby bardzo wysoka, a większość osób zostanie ściszona przez niewielką część skali.

Przycinanie cech

Jeśli zbiór danych zawiera skrajne wartości odstające, możesz spróbować wykorzystać funkcję przycinania, która ogranicza wszystkie wartości cech powyżej lub poniżej określonej wartości do wartości stałej. Możesz na przykład wyciąć wszystkie wartości temperatury powyżej 40, aby dokładnie wynosić 40.

Możesz zastosować przycinanie cech przed innymi normalizacjami lub po nich.

Formuła: ustaw wartości minimalne/maksymalne, aby uniknąć znacznych odchyleń.

Porównanie dystrybucji natywnej i ograniczenia. W natywnej dystrybucji niemal wszystkie wartości mieszczą się w zakresie od 1 do 4, ale niewielki odsetek wartości mieści się w przedziale od 5 do 55. W ograniczonym zakresie wszystkie wartości pierwotnie powyżej 4 mają teraz wartość 4.

Rysunek 2. Porównanie nieprzetworzonej wersji i jej wersji skróconej.

Inną prostą strategią przycinania jest przycinanie przez wynik z-do +-N➘ (np. ograniczenie do +-3➘). Pamiętaj, że odchylenie standardowe to .

Skalowanie logów

Skalowanie logów oblicza logi wartości, aby skompresować szeroki zakres do wąskiego zakresu.

\[ x' = log(x) \]

Skalowanie logów jest przydatne, gdy kilka wartości ma wiele punktów, a większość pozostałych ma mało punktów. Rozkład danych jest nazywany prawem mocy. Dobrym przykładem są oceny filmów. Na wykresie poniżej większość filmów ma bardzo mało ocen (dane z tyłu), a kilka ocen – dane w nagłówku. Skalowanie logów wpływa na rozkład, co pomaga poprawić wydajność modelu liniowego.

2 wykresy porównujące nieprzetworzone dane z logem nieprzetworzonych danych. Wykres nieprzetworzonych danych pokazuje wiele ocen w nagłówku, po którym znajduje się długi ogon. Wykres logów ma bardziej równomierny rozkład.

Rysunek 3. Porównywanie nieprzetworzonego logu z jego dziennikiem.

Wynik zero

Wynik jakości to odmiana skali, która odzwierciedla liczbę standardowych odchyleń od średniej. Możesz użyć wyniku Z, aby upewnić się, że rozkłady cech mają średnią = 0, a std = 1. Jest to przydatne, gdy występuje kilka wyjątków, ale nie są one tak ekstremalne, jak wymaga się klipu.

Sposób obliczania wyniku Z, x, wygląda tak:

\[ x' = (x - μ) / σ \]

2 wykresy porównujące nieprzetworzone dane z danymi znormalizowanymi z wynikiem Z. Nieprzetworzone dane pokazują przybliżony rozkład Poissona od 5 do 45 000.
Znormalizowane dane pochodzą
od -1 do +4.

Rysunek 4. Porównanie rozkładu nieprzetworzonego z wartością wyniku Z.

Zwróć uwagę, że wynik Z-ścija nieprzetworzone wartości o zakresie od -10 do 40.

Załóżmy, że nie masz pewności, czy wartości odstające są ekstremalne. W takim przypadku zacznij od wyniku Z, chyba że masz wartości cech, których nie chcesz poznać, np. modele są wynikiem błędów pomiarowych lub osobliwości.

Podsumowanie

Metoda normalizacjiFormułaKiedy ich używać
Skalowanie liniowe $$ x' = (x - x_{min}) / (x_{max} - x_{min}) $$ Gdy funkcja jest bardziej lub mniej równomiernie rozmieszczona w określonym zakresie.
Przycinanie Jeżeli x > max, to x' = maks., jeśli x < min, a następnie x' = min Gdy obiekt zawiera nadmiernie skrajne wartości.
Skalowanie logów x' = log(x) gdy funkcja jest zgodna z przepisami zasilania
Wynik Z x' = (x – μ) / 香 Gdy rozkład cech nie zawiera znacznych odchyleń.