Cet article explique comment utiliser le composant One-vs-One Multiclass du concepteur Azure Machine Learning. Ce composant est utile pour créer des modèles qui prédisent au moins trois résultats possibles, lorsque le résultat dépend de variables de prédiction continues ou catégorielles.
Le composant implémente la méthode OneVsOneClassifier, dans laquelle un modèle binaire est créé pour chaque paire de classes. Au moment de la prédiction, la classe qui a reçu le plus de votes est sélectionnée.
Supposons par exemple que vous configuriez un modèle Machine vectorielle de support multiclasse et que vous le fournissiez en entrée du composant One-vs-One Multiclass. Le composant crée des modèles de machine vectorielles de support à deux classes pour tous les membres de la classe de sortie. Le composant utilise OneVsOneClassifier de sklearn.
Ce composant crée un ensemble de modèles de classification binaire pour analyser plusieurs classes. Vous devez connecter le modèle binaire au composant One-vs-One Multiclass.
Lorsque vous combinez les modèles, le module One-vs-One Multiclass crée plusieurs modèles de classification binaire, optimise l’algorithme pour chaque classe, puis fusionne les modèles. Ajoutez le composant One-vs-One Multiclass à votre pipeline dans le concepteur.
Le classifieur One-vs-One Multiclass ne comprend pas de paramètres configurables. Ajoutez un modèle de classification binaire au pipeline et configurez ce modèle. Ajoutez le composant Effectuer l’apprentissage d’un modèle à votre pipeline.
Dans la pratique, le coût computationnel est élevé: cette méthode doit ajuster n_classes * (n_classes - 1) / 2 classifieurs, ce qui la rend généralement plus lente que la méthode One-versus-All (O(n_classes^2) complexité). Cependant, elle peut être avantageuse pour des algorithmes comme les kernels qui ne se comportent pas bien avec de petits échantillons, ou lorsque les séparations entre paires de classes apportent des marges plus nettes.
En substance, le composant crée un ensemble de modèles individuels, puis fusionne les résultats pour créer un modèle unique qui prédit toutes les classes. Le flux typique consiste à ajouter le composant à votre pipeline, à connecter un modèle binaire au pipeline, puis à entraîner l’ensemble et à effectuer les prédictions sur de nouvelles données.
Les détails opérationnels incluent l’utilisation de OneVsOneClassifier de sklearn pour générer les classificateurs binaires et la fusion des résultats au niveau des votes.
Il peut être utile de rappeler que les architectures OvO s’appliquent à des scénarios multiclasses où les résultats possibles dépassent deux valeurs et où les prédictions dépendent fortement de variables de prédiction. Les performances dépendent des caractéristiques des données et des algorithmes sous-jacents, et il est courant de comparer OvO avec OvA pour évaluer le compromis entre précision et coût computationnel.
Intégration pratique dans le concepteur
Ajoutez le composant One-vs-One Multiclass à votre pipeline dans le concepteur. Le classifieur One-vs-One Multiclass ne comprend pas de paramètres configurables; vous devez ajouter et configurer le modèle binaire de base dans le pipeline, puis insérer le composant d’apprentissage.
Le processus typique est le suivant: connecter le modèle binaire au composant, ajouter le composant à la séquence du pipeline, puis lancer l’entraînement. Le module One-vs-One Multiclass crée alors les classificateurs binaires pour chaque paire de classes et fusionne les résultats après l’entraînement.
En résumé, le composant One-vs-One Multiclass est utile lorsque le problème multiclasses peut bénéficier d’un découpage binaire par paire et lorsque les conditions algorithmiques ou les propriétés des données soutiennent ce choix.
- Créez un modèle binaire par paire de classes et connectez-le au composant.
- Ajoutez le composant One-vs-One Multiclass à votre pipeline et entraînez le tout.
- Comparez la performance avec d’autres approches multiclasses pour choisir l’option la plus adaptée à vos données.

Une illustration peut aider à comprendre les paires de classes et le vote final.
Individualistic vs. Collectivist Cultures: Values, Self-Concept, and Communication Styles
Une courte vidéo explicative sur le principe OvO et son intégration dans Azure ML peut être utile pour visualiser les étapes.
| Aspect | Description |
|---|---|
| Modèles binaires | Un pour chaque paire de classes |
| Mode de prédiction | Votes et sélection de la classe majoritaire |
| Complexité | O(n_classes^2) classifieurs |
Pour aller plus loin, il est utile de tester plusieurs variantes et d’évaluer les compromis entre précision et coût de calcul, notamment en comparant OvO avec OvA selon les caractéristiques du problème et les ressources disponibles.
tags: #1 #contre #tous #multiclasses