Je comprends ce que fait Standard Scalar et ce que fait Normalizer, selon la documentation de scikit: Normalizer , Standard Scaler .
Je sais quand Standard Scaler est appliqué. Mais dans quel scénario le Normalizer est-il appliqué? Y a-t-il des scénarios où l'un est préféré à l'autre?
python
scikit-learn
data-cleaning
normalization
Heisenbug
la source
la source
Réponses:
Ils sont utilisés à deux fins différentes.
StandardScaler
change chaque fonction colonne àNormalizer
change chaque échantillon en où pourl1
la norme est,l2
la norme est ,max
la norme est .Pour illustrer le contraste, considérons l'ensemble de données qui est unidimensionnel (chaque point de données a une caractéristique). Après application , l'ensemble de données devient . Après avoir appliqué n'importe quel type de , l'ensemble de données devient , car la seule fonctionnalité est divisée par elle-même. N'a donc aucune utilité pour ce cas. Il n'a également aucune utilité lorsque les caractéristiques ont des unités différentes, par exemple .{ 1 , 2 , 3 , 4 , 5 }
{ - 1,41 , - 0,71 , 0. , 0,71 , 1,41 }
{ 1. , 1. , 1. , 1. , 1. } ( h e i gh t , a ge , i n c o m e )
StandardScaler
Normalizer
Normalizer
Comme mentionné dans cette réponse ,
Normalizer
est surtout utile pour contrôler la taille d'un vecteur dans un processus itératif, par exemple un vecteur de paramètres pendant la formation, pour éviter les instabilités numériques dues à de grandes valeurs.la source
StandardScaler
: Il transforme les données de manière à ce qu'il ait une moyenne de 0 et un écart-type de 1. Bref, il standardise les données . La normalisation est utile pour les données qui ont des valeurs négatives. Il organise les données dans une distribution normale standard . Il est plus utile en classification qu'en régression . Vous pouvez lire mon blog .Normalizer
: Il comprime les données entre 0 et 1. Il effectue la normalisation . En raison de la diminution de la plage et de l'amplitude, les gradients du processus d'entraînement n'explosent pas et vous n'obtenez pas de valeurs de perte plus élevées. Est plus utile en régression qu'en classification . Vous pouvez lire mon blog .la source