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 du monde réel.
La machine à vecteurs de support (SVM) est un algorithme d'apprentissage supervisé puissant et polyvalent utilisé pour les tâches de classification et de régression. À la base, un SVM trouve un hyperplan optimal ou une frontière de décision qui sépare au mieux les points de données en différentes classes. Ce qui rend le SVM particulièrement efficace, c'est son objectif de maximiser la marge, c'est-à-dire la distance entre l'hyperplan de séparation et les points de données les plus proches de n'importe quelle classe. Ce principe, décrit dans l'article fondateur de Cortes et Vapnik, permet d'améliorer la capacité de généralisation du modèle, ce qui le rend moins enclin à la suradaptation.
L'algorithme fonctionne en représentant chaque donnée comme un point dans un espace à n dimensions (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.
Les SVM sont efficaces dans de nombreux domaines, en particulier pour les problèmes liés à des données de haute dimension.
Par rapport à des algorithmes plus simples comme la régression logistique, les SVM visent à maximiser la marge plutôt qu'à trouver une limite de séparation, ce qui peut conduire à une meilleure généralisation. Contrairement aux méthodes arborescentes telles que les arbres de décision ou les forêts aléatoires, les SVM construisent un seul hyperplan optimal (éventuellement dans un espace à haute dimension). Alors que les modèles modernes d'apprentissage profond comme Ultralytics YOLO excellent dans l'extraction automatique de caractéristiques à partir de données brutes (comme les pixels dans la vision par ordinateur (CV)), les SVM nécessitent souvent une ingénierie minutieuse des caractéristiques, mais peuvent être exceptionnellement performants 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 trouverez 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 le SVM ne soit pas typiquement au cœur des frameworks CV modernes comme PyTorch ou TensorFlow, il peut être intégré dans des flux de travail plus larges. La formation et la gestion de ces modèles, ainsi que d'autres, peuvent être rationalisées à l'aide de plateformes comme Ultralytics HUB, qui simplifie le cycle de vie des MLOps, de l'étiquetage des données à l'ajustement des hyperparamètres et au déploiement final du modèle.