Pourquoi la mise à l'échelle est importante pour la classification SVM linéaire?

15

Lors de la réalisation de la classification SVM linéaire, il est souvent utile de normaliser les données d'entraînement, par exemple en soustrayant la moyenne et en les divisant par l'écart type, puis de mettre à l'échelle les données de test avec la moyenne et l'écart type des données d'entraînement. Pourquoi ce processus modifie radicalement les performances de classification?

Qinghua
la source
1
Cette question a déjà reçu une réponse stackoverflow.com/questions/15436367/svm-scaling-input-values
jpmuc
Merci, juampa! Cependant, je ne sais toujours pas très bien pourquoi l'ensemble de test doit être mis à l'échelle avec la moyenne et la norme de l'ensemble d'entraînement au lieu des siennes. Dans certains cas, le dernier semble très bien, voire mieux, lorsque les deux classes d'échantillons sont bien équilibrées dans l'ensemble de test.
Qinghua
1
car alors vous n'êtes pas cohérent. Vous testez différentes données. Imaginez que vous tiriez les échantillons d'un N gaussien (mu, sigma). Vous vous êtes entraîné avec N (0,1) (après centrage et mise à l'échelle) mais vous avez testé avec N (mu, sigma)
jpmuc

Réponses:

12

Je pense que cela peut être plus clair grâce à un exemple. Disons que vous avez deux vecteurs d'entrée: X1 et X2. et disons que X1 a une plage (0,1 à 0,8) et X2 a une plage (3000 à 50000). Maintenant, votre classificateur SVM sera une frontière linéaire située dans le plan X1-X2. Mon affirmation est que la pente de la frontière de décision linéaire ne devrait pas dépendre de la plage de X1 et X2, mais plutôt de la distribution des points.

Maintenant, faisons une prédiction sur le point (0,1, 4000) et (0,8, 4000). Il n'y aura pratiquement aucune différence dans la valeur de la fonction, rendant ainsi SVM moins précis car il aura moins de sensibilité aux points dans la direction X1.

Vineeth
la source
7

SVM essaie de maximiser la distance entre le plan de séparation et les vecteurs de support. Si une entité (c.-à-d. Une dimension dans cet espace) a de très grandes valeurs, elle dominera les autres entités lors du calcul de la distance. Si vous redimensionnez toutes les entités (par exemple en [0, 1]), elles ont toutes la même influence sur la métrique de distance.

jrieke
la source