Composant Machine à vecteurs de support à deux classes

Cet article décrit un composant dans le concepteur Azure Machine Learning.

Utilisez ce composant pour créer un modèle basé sur l’algorithme de machine à vecteurs de support.

Les machines à vecteurs de support (SVM, support vector machines) représentent une classe bien étudiée de méthodes d’apprentissage supervisées. Cette implémentation particulière est adaptée à la prédiction de deux résultats possibles en fonction de variables continues ou catégorielles.

Après avoir défini les paramètres de modèle, effectuez l’apprentissage du modèle en utilisant les composants de formation et en fournissant un jeu de données avec balises qui inclut une colonne d’étiquettes ou de résultats.

À propos des machines à vecteurs de support

Les machines à vecteurs de support font partie des premiers algorithmes d’apprentissage automatique, et les modèles SVM ont été utilisés dans de nombreuses applications, de la récupération d’informations à la classification de texte et d’images. Les SVM peuvent être utilisées pour les tâches de classification et de régression.

Ce modèle de SVM est un modèle d’apprentissage supervisé qui requiert des données étiquetées. Dans le cadre du processus d’apprentissage, l’algorithme analyse les données d’entrée et reconnaît des modèles dans un espace de caractéristiques multidimensionnel appelé hyperplan. Tous les exemples d’entrée sont représentés sous forme de points dans cet espace et sont mappés aux catégories de sortie de sorte que les catégories soient séparées par un écart aussi large et clair que possible.

Pour la prédiction, l’algorithme SVM attribue les nouveaux exemples dans une catégorie ou dans l’autre en les mappant au même espace.

Comment configurer

Pour ce type de modèle, il est recommandé de normaliser le jeu de données avant de l’utiliser pour effectuer l’apprentissage du classifieur.

  1. Ajoutez le composant Machine à vecteurs de support à deux classes à votre pipeline.

  2. Spécifiez le mode d’apprentissage du modèle en définissant l’option Créer un mode d’apprentissage.

    • Single Parameter (Paramètre unique) : si vous savez comment vous voulez configurer le modèle, vous pouvez fournir un ensemble spécifique de valeurs comme arguments.

    • Plage de paramètres : en cas de doute sur les paramètres à utiliser, vous trouverez les paramètres optimaux avec le composant Ajuster les hyperparamètres d’un modèle. Vous fournissez une plage de valeurs, et le mode d'apprentissage effectue une itération sur plusieurs combinaisons de paramètres pour déterminer la combinaison de valeurs qui produit le meilleur résultat.

  3. Pour Nombre d’itérations, tapez un nombre indiquant le nombre d’itérations utilisées lors de la génération du modèle.

    Ce paramètre peut être utilisé pour contrôler le compromis entre la précision et la vitesse de formation.

  4. Pour Lambda, tapez une valeur à utiliser en tant que poids de la régularisation L1.

    Ce coefficient de régularisation permet d’ajuster le modèle. Des valeurs plus élevées pénalisent les modèles plus complexes.

  5. Sélectionnez l’option Normalize features (Normaliser les caractéristiques) si vous souhaitez normaliser les caractéristiques avant la formation.

    Si vous appliquez la normalisation, avant l’apprentissage, les points de données sont centrés sur la moyenne et mis à l’échelle de façon à présenter une unité d’écart type.

  6. Sélectionnez l’option Project to the unit sphere (Projeter sur la sphère d’unité) pour normaliser les coefficients.

    La projection des valeurs vers un espace d’unité signifie qu’avant l’apprentissage, les points de données sont centrés sur 0 et mis à l’échelle de façon à présenter une unité d’écart type.

  7. Sous Random number seed (Valeur de départ aléatoire), tapez une valeur entière à utiliser comme valeur de départ si vous souhaitez garantir la reproductibilité entre les exécutions. Sinon, une valeur d’horloge système est utilisée comme valeur de départ, ce qui peut entraîner des résultats légèrement différents entre les exécutions.

  8. Connectez un jeu de données étiqueté et entraînez le modèle :

    • Si vous définissez Create trainer mode (Créer un mode d’apprentissage) sur Single Parameter (Paramètre unique), connectez un jeu de données balisé au module Entraîner le composant.

    • Si vous définissez Créer un mode d’entraînement sur Plage de paramètres, connectez un jeu de données avec balises et entraînez le modèle en utilisant Optimiser les hyperparamètres du modèle.

    Notes

    Si vous transmettez une plage de paramètres à Entraîner le modèle, elle utilise uniquement la valeur par défaut dans la liste de paramètres unique.

    Si vous transmettez un seul ensemble de valeurs de paramètre au composant Ajuster les hyperparamètres d’un modèle, il ignore les valeurs et utilise les valeurs par défaut de l’apprenant quand il attend une plage de paramètres pour chaque paramètre.

    Si vous sélectionnez l’option Plage de paramètres et que vous entrez une valeur unique pour un paramètre, cette valeur unique que vous avez spécifiée est utilisée tout au long du balayage, même si d’autres paramètres changent sur une plage de valeurs.

  9. Envoyez le pipeline.

Résultats

Une fois l’apprentissage terminé :

  • Pour enregistrer un instantané du modèle entraîné, sélectionnez l’onglet Sorties dans le panneau droit du composant Effectuer l’apprentissage d’un modèle. Sélectionnez l’icône Inscrire le jeu de données pour enregistrer le modèle en tant que composant réutilisable.

  • Pour utiliser le modèle à des fins de scoring, ajoutez le composant Effectuer le scoring d’un modèle à un pipeline.

Étapes suivantes

Consultez les composants disponibles pour Azure Machine Learning.