Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

Machine à vecteurs de support (SVM)

Découvrez la puissance des machines à vecteurs de support (SVM) pour la classification, la régression et la détection des valeurs aberrantes, avec des applications et des informations concrètes.

La Machine à Vecteurs de Support (SVM) est un algorithme d'apprentissage supervisé puissant et polyvalent utilisé à la fois pour les tâches de classification et de régression. À la base, une SVM trouve un hyperplan optimal ou une limite de décision qui sépare le mieux les points de données en différentes classes. Ce qui rend la SVM particulièrement efficace, c'est son objectif de maximiser la marge—la distance entre l'hyperplan de séparation et les points de données les plus proches de chaque classe. Ce principe, détaillé dans l'article fondateur de Cortes et Vapnik, contribue à améliorer la capacité de généralisation du modèle, le rendant moins sujet au surapprentissage.

Fonctionnement des SVM

L'algorithme fonctionne en traçant chaque élément de données comme un point dans un espace n-dimensionnel (où n est le nombre de caractéristiques). La classification est ensuite effectuée en trouvant l'hyperplan qui crée la meilleure séparation entre les classes.

  • Hyperplan : Il s'agit de la limite de décision. Dans un ensemble de données avec deux caractéristiques, c'est une ligne ; avec trois, c'est un plan. Pour plus de caractéristiques, cela devient un hyperplan.
  • Vecteurs de support : Ce sont les points de données qui se trouvent le plus près de l'hyperplan. Ils sont essentiels car ils définissent la marge, et leur suppression modifierait la position de l'hyperplan. Une excellente visualisation des vecteurs de support se trouve dans les notes de cours CS229 de Stanford.
  • Marge : La marge est l'écart entre les vecteurs de support et l'hyperplan. L'objectif de SVM est de trouver l'hyperplan qui maximise cette marge, créant ainsi la séparation la plus robuste possible.
  • L'astuce du noyau (Kernel Trick) : Pour les données qui ne sont pas linéairement séparables, les SVM utilisent une technique appelée l'astuce du noyau. Cette méthode puissante implique la transformation des données dans un espace de plus grande dimension où un séparateur linéaire peut être trouvé sans calculer explicitement les coordonnées des données dans ce nouvel espace. Les noyaux populaires comme la fonction de base radiale (RBF) peuvent gérer des relations non linéaires très complexes. Vous pouvez consulter un guide sur les noyaux SVM pour plus de détails.

Applications concrètes

Les SVM sont efficaces dans de nombreux domaines, en particulier pour les problèmes avec des données de haute dimension.

  • Bio-informatique : En génomique et en protéomique, les SVM sont utilisés pour classer les protéines et analyser les données d'expression génique. Par exemple, ils peuvent aider à identifier les sous-types de cancer en fonction des données de puces à ADN, une tâche impliquant des milliers de caractéristiques. Cela en fait un outil essentiel de l'IA pour les soins de santé.
  • Classification d'images : Avant la domination des réseaux neuronaux profonds, les SVM étaient un modèle très performant pour la classification d'images. Ils ont été utilisés avec succès pour des tâches telles que la reconnaissance de chiffres manuscrits sur des ensembles de données comme MNIST et la reconnaissance d'objets sur Caltech-101.
  • Classification de texte : En traitement du langage naturel (NLP), les SVM sont efficaces pour des tâches telles que la détection de spam et l'analyse des sentiments. Ils peuvent gérer efficacement les espaces de caractéristiques de haute dimension créés par les méthodes de vectorisation de texte.

SVM vs. autres algorithmes

Comparés aux algorithmes plus simples comme la régression logistique, les SVM visent à maximiser la marge plutôt que de simplement trouver une limite de séparation, ce qui peut conduire à une meilleure généralisation. Contrairement aux méthodes basées sur les arbres telles que les arbres de décision ou les forêts aléatoires, les SVM construisent un seul hyperplan optimal (éventuellement dans un espace de haute dimension). Alors que les modèles modernes d'apprentissage profond comme Ultralytics YOLO excellent dans l'extraction de caractéristiques automatique à partir de données brutes (comme les pixels en vision par ordinateur (CV)), les SVM nécessitent souvent une ingénierie des caractéristiques minutieuse, mais peuvent très bien fonctionner sur des ensembles de données plus petits ou des types spécifiques de données structurées où les caractéristiques sont bien définies. Vous pouvez trouver de nombreux ensembles de données de ce type dans le UCI Machine Learning Repository.

Les implémentations populaires incluent LibSVM et le module SVM dans scikit-learn. Bien que SVM ne soit généralement pas au cœur des frameworks CV modernes comme PyTorch ou TensorFlow, il peut être intégré dans des flux de travail plus larges. L'entraînement et la gestion de ces modèles, ainsi que de divers autres, peuvent être rationalisés à l'aide de plateformes comme Ultralytics HUB, qui simplifie le cycle de vie MLOps de l'annotation des données au réglage des hyperparamètres et au déploiement final du modèle.

Rejoignez la communauté Ultralytics

Rejoignez le futur de l'IA. Connectez-vous, collaborez et évoluez avec des innovateurs mondiaux.

Rejoindre maintenant
Lien copié dans le presse-papiers