SVM Principes Essensiels
1. Intoduction
Les machines à vecteurs de support ou séparateurs à vaste marge (en anglais support-vector
machine, SVM) sont un ensemble de techniques d'apprentissage supervisé destinées à
résoudre des problèmes de classification et de régression. Les SVM appartiennent à la famille
des méthodes à noyaux.
Les séparateurs à vaste marge ont été développés dans les années 1990 à partir des
considérations théoriques de Vladimir Vapnik sur le développement d'une
théorie statistique de l'apprentissage : la théorie de Vapnik-Tchervonenkis. Ils ont rapidement
été adoptés pour leur capacité à travailler avec des données de grandes dimensions, le faible
nombre d'hyperparamètres, leurs garanties théoriques, et leurs bons résultats en pratique.
Les SVM ont été appliqués à de nombreux domaines (bio-informatique, recherche
d'information, vision par ordinateur, finance…). Selon les données, la performance des
machines à vecteurs de support est de même ordre, ou même supérieure, à celle d'un réseau de
neurones ou d'un modèle de mélanges gaussiens .
1. Principe Général :
Les SVM (Machines à Vecteurs de Support) sont des modèles d’apprentissage supervisé
utilisés pour :
la classification (ex : spam / non-spam)
la régression
Leur objectif principal : trouver la meilleure frontière de décision qui sépare les données.
2. Cas linéaire (séparable)
On considère des données étiquetées :
Le SVM cherche un hyperplan :
Maximisation de la marge
Au lieu de juste séparer les données, le SVM maximise la marge, c’est-à-dire , la distance entre
l’hyperplan et les points les plus proches (ces points s’appellent Vecteurs de Support)
Problème d’optimisation
sous contrainte
Ainsi Minimiser revient à maximiser la marge . Les Contraintes expriment une bonne
classification.
3. Cas Non linéaire (Données Non séparables)
Dans la réalité, les données ne sont pas parfaitement séparables, on introduit amors des
variables dites de relâchement
Nouveau problème (Soft Margin)
sous contrainte
Sens de (variable de relachement : Slack variables)
Elles mesurent à quel point un point viole la contrainte et donc le niveau d’erreur dans le
classement du point i.
3 Cas possibles :
le point est bien classé et hors marge
Sens de C ( paramètre de pénalisation des erreurs)
Il contrôle le compromis entre : grande marge et erreurs de classification
Si C est GRAND : Les erreurs sont fortement pénalisées vet le modèle veut tout
classer correctement, Ceci implique une marge plus petite et un risque de
surapprentissage.
Si C est PETIT : Les erreurs sont tolérées et le modèle accepte des point mal classés.
Ceci implique une marge plus grande et une meilleure généralisation.
4. Dualité et formulation duale
On remplace le problème primal par un problème Dual grâce aux multiplicateurs de
Lagrange :
Forme duale
Sous contraintes :
L’avantage de cette formulation est qu’elle dépend dépend uniquement de produits scalaires
Kernel Trick (Noyau)
Pour gérer des données non linéaires, on projette dans un espace de dimension plus élevée
ϕ(x), mais sans calculer explicitement cette projection.
Fonction noyau
Le produit scalaire est remplacé par un noyau :
Le noyau permet de rendre les données séparables dans un espace caché
Exemples de noyaux :
Linéaire :
Polynômial : où :
c est un biais (offset) qui contrôle l’importance de :termes d’ordre bas par rapport aux
termes d’ordre élevé.
d est le degré du polynome Plus d est grand, plus la frontière devient complexe et plus le
modèle peut capturer des relations non linéaires mais il y a risque de surapprentissage
s’il est trop grand
RBF (Gaussian) :
En pratique, le choix de est crucial et se fait généralement par recherche par grille (Grid
Search) avec validation croisée, souvent en tandem avec le paramètre de régularisation C.
Courbure
Valeur Portée de de la Complexité
de γ l'influence frontière du modèle
Courte Très Très Risque de
Élevée (Locale) irrégulière complexe Surapprentissage
Longue Risque de
Faible (Globale) Très lisse Simple Sousapprentissage
5. Fonction de décision
Une fois le modèle entraîné :
Seuls les vecteurs de support ont
Pour classer un point à partir de la valeur de la fonction de décision on regarde
simplement le signe du résultat. C'est ce seuil à 0 qui sert de frontière.
Règle de décision standard :
Si > 0: Le point est classé dans la catégorie positive (généralement notée +1).
Si < 0 : Le point est classé dans la catégorie négative (généralement notée -1).
Si = 0 : Le point se situe exactement sur l'hyperplan de séparation. Dans ce cas,
la classification est indéterminée (c'est la zone d'incertitude maximale).
6. Avantages et inconvénients
Avantages
efficace en haute dimension
robuste au surapprentissage (grâce à la marge)
solution unique (optimisation convexe)
Inconvénients
choix du noyau difficile
coût élevé pour grands datasets
peu interprétable
8. Grid Search et Cross validation
Le Grid Search cherche les meilleurs paramètres, tandis que la Cross-Validation s'assure que
ces paramètres sont réellement robustes.
8.1. Grid Search (Recherche par grille)
Le SVM a des hyperparamètres comme C et gamma . Le Grid Search teste toutes les
combinaisons possibles à partir d'une liste à définir.
Exemple de grille :
C = [0.1, 1, 10]
= [0.01, 0.1, 1]
Le Grid Search va tester les 9 combinaisons (3 x3) une par une.
8.2. Validation Croiusée (K Fold Cross validation)
Au lieu de diviser vos données d'entraînement en un seul bloc, on les divise en K morceaux
(appelés "Folds").
Exemple d'une 5-Fold Cross-Validation :
1. On divise le jeu d'entraînement en 5 parts égales.
2. L'entraînement se fait en 5 itérations :
o Itération 1 : On entraîne sur les parts 1, 2, 3, 4 et on teste sur la part 5.
o Itération 2 : On entraîne sur les parts 1, 2, 3, 5 et on teste sur la part 4.
o ... et ainsi de suite.
3. On calcule la moyenne des scores des 5 tests.
Le processus complet :
Grid Search propose une combinaison (ex: C=1, Le processus complet :
1. Grid Search propose une combinaison (ex: C=1, =0.1).
2. Cross-Validation teste cette combinaison 5 fois sur des morceaux différents.
3. On obtient un score moyen pour cette combinaison.
4. On recommence pour la combinaison suivante.
5. À la fin, on garde le couple (C, )$ qui a le meilleur score moyen.