Feature Scaling (úprava měřítka) je proces sjednocení rozsahu hodnot všech vstupních proměnných. Většina algoritmů strojového učení (zejména ty využívající metriky vzdálenosti jako k-NN, SVM nebo PCA) vyžaduje, aby data byla ve stejném měřítku, jinak budou proměnné s většími čísly neoprávněně dominovat modelu.
Normalizace mění měřítko dat tak, aby všechny hodnoty ležely v pevném intervalu, obvykle <0, 1> (nebo ←1, 1>).
Vzorec: $$x_{norm} = \frac{x - x_{min}}{x_{max} - x_{min}}$$
Standardizace transformuje data tak, aby měla průměr 0 a směrodatnou odchylku 1. Výsledné hodnoty nejsou omezeny konkrétním rozsahem.
Vzorec: $$z = \frac{x - \mu}{\sigma}$$
Kde:
| Metoda | Rozsah výstupu | Citlivost na outliers | Typické využití |
|---|---|---|---|
| Normalizace | Fixní (0 až 1) | Velmi vysoká | Image processing, NN |
| Standardizace | Neomezený | Nižší | PCA, Regrese, SVM |
from sklearn.preprocessing import StandardScaler, MinMaxScaler # Inicializace scaler_std = StandardScaler() scaler_norm = MinMaxScaler() # Aplikace standardizace X_train_std = scaler_std.fit_transform(X_train) X_test_std = scaler_std.transform(X_test) # Aplikace normalizace X_train_norm = scaler_norm.fit_transform(X_train)
Související články:
Tagy: ml preprocessing statistika scaling normalization