Ordinal Regression
Important
Le support de Machine Learning Studio (classique) prend fin le 31 août 2024. Nous vous recommandons de passer à Azure Machine Learning avant cette date.
À partir du 1er décembre 2021, vous ne pourrez plus créer de nouvelles ressources Machine Learning Studio (classique). Jusqu’au 31 août 2024, vous pouvez continuer à utiliser les ressources Machine Learning Studio (classique) existantes.
- Consultez les informations sur le déplacement des projets de machine learning de ML Studio (classique) à Azure Machine Learning.
- En savoir plus sur Azure Machine Learning.
La documentation ML Studio (classique) est en cours de retrait et ne sera probablement plus mise à jour.
Crée un modèle de régression ordinale.
catégorie : Machine Learning/initialiser le modèle/la régression
Notes
s’applique à: Machine Learning Studio (classic) uniquement
Des modules par glisser-déposer similaires sont disponibles dans Concepteur Azure Machine Learning.
Vue d’ensemble du module
cet article explique comment utiliser le module de régression ordinale dans Machine Learning Studio (classic) pour créer un modèle de régression qui peut être utilisé pour prédire des valeurs classées.
Voici quelques exemples de valeurs classées :
- Réponses d’enquête qui capturent les marques préférées de l’utilisateur sur une échelle de 1 à 5
- L’ordre des finisseurs dans une course
- URL dans les résultats de recherche classés
En savoir plus sur la régression ordinale
La régression ordinale est utilisée lorsque l’étiquette ou la colonne cible contient des nombres, mais que les nombres représentent un classement ou un ordre plutôt qu’une mesure numérique.
La prédiction de nombres ordinaux requiert un algorithme différent de la prédiction des valeurs de nombres sur une échelle continue, car les nombres assignés pour représenter l’ordre de classement n’ont pas une échelle intrinsèque.
Par exemple, pour prédire les scores de test des étudiants, vous utiliseriez un modèle de régression standard, car les résultats des tests des étudiants varient sur une échelle continue et peuvent être mesurés. Toutefois, pour prédire leur classement de classe, vous devez utiliser un modèle de régression ordinale.
Pour plus d’informations sur les recherches derrière cet algorithme, consultez ce document (PDF téléchargeable) : https://papers.nips.cc/paper/3125-ordinal-regression-by-extended-binary-classification.pdf
Comment configurer la régression ordinale
Ce module résout un problème de classement sous la forme d’une série de problèmes de classification associés. Par conséquent, l’algorithme crée une série d’exemples d’apprentissage étendus à l’aide d’un modèle binaire pour chaque rang et les trains sur ce jeu étendu. Cette opération peut être coûteuse en ressources informatiques.
Ajoutez le module de modèle de régression ordinale à votre expérience dans Studio (Classic). vous pouvez trouver ce module sous Machine Learning-initialize, dans la catégorie régression .
Ajoutez un module qui prend en charge la classification binaire et configurez le modèle. La catégorie de classification contient plusieurs modules à deux classes.
Connecter le modèle de classification binaire comme entrée dans le module de modèle de régression ordinale .
Des paramètres supplémentaires ne sont pas requis sur le modèle de régression ordinale; l’algorithme a été préconfiguré avec les paramètres les plus efficaces pour résoudre un problème de classement.
Connecter un jeu de données d’apprentissage et le module former le modèle .
Dans le module former le modèle , sélectionnez la colonne qui contient les valeurs de classement.
Les valeurs de classement doivent être des valeurs numériques, mais elles n’ont pas besoin d’être des entiers ou des nombres positifs, à condition qu’ils représentent une séquence.
À des fins de traitement, les rangs sont supposés avoir la commande 1 à K, où 1 est le rang le plus bas et K le rang le plus élevé. Toutefois, le module former le modèle peut fonctionner même si la sémantique de votre échelle est inversée.
Par exemple, si dans votre enquête d’origine, 1 était le score le plus élevé et 5 est le plus bas, il n’affecte pas le traitement du modèle.
Exécutez l’expérience.
Résultats
Une fois l’apprentissage terminé :
Pour effectuer des prédictions, connectez le modèle formé, ainsi que les nouvelles données, au module noter le modèle .
Pour effectuer une validation croisée par rapport à un jeu de données étiqueté, connectez le modèle non formé au modèle de validation croisée.
Exemples
Pour obtenir des exemples d’utilisation de la régression ordinale dans Machine Learning, consultez la Azure ai Gallery.
- Maintenance prédictive-étape C: dans cet exemple, la régression ordinale est utilisée pour classer les valeurs générées par un modèle de classification, en partant du principe que la valeur reflète la gravité de la classification d’échec.
Notes techniques
L'algorithme de régression ordinale utilisé dans cet apprenant est implémenté par une classification binaire étendue, comme décrit dans le document intitulé Ordinal Regression by Extended Binary Classification rédigé par Ling Li et Hsuan-Tien Lin à l'occasion de la conférence NIPS 2006.
Restrictions sur les données d’entrée
Vous pouvez utiliser n’importe quelle colonne numérique comme cible d’un modèle de régression ordinale, mais dans la pratique vous devez utiliser uniquement des données qui représentent un ordre ou un classement.
Les intervalles entre les rangs sont supposés être inconnus et la taille de l’intervalle n’a pas d’importance pour le modèle. Toutefois, le modèle suppose que la séquence de rangs suit l’ordonnancement naturel des nombres.
Le modèle lui-même n’attribue pas de signification à une échelle particulière. En d’autres termes, vous pouvez créer un modèle dans lequel 1 est un bon rang et 10 est le pire, et dans un autre modèle, supposons que 10 est le classement souhaité et que 1 est le pire.
Algorithme de classement
Le jeu d’apprentissage (X, Y) se compose des vecteurs d’entrée X et des étiquettes Y. Les étiquettes représentent des rangs allant de 1 à k dans l’ordre : 1, 2,... , K. Les rangs sont supposés être ordonnés de sorte que 1 est le rang le plus bas ou le plus mauvais, et K est le rang le plus élevé ou le plus élevé.
Le essentiel de l’algorithme réside dans la modification des fonctionnalités d’entrée données X et des étiquettes Y pour utiliser des exemples étendus, puis à l’aide d’un classifieur binaire pour résoudre le problème de régression ordinale. Le classifieur binaire est formé pour fournir une réponse de type oui/non à la question « le rang est-il supérieur à r ? »
Par exemple, pour chaque cas dans le jeu d’apprentissage, il existe des exemples étendus k-1 , et le rang maximal observé est k. Les fonctionnalités étendues sont formées par l’ajout de la ligne ith d’une matrice d’identité k-1 x k-1 aux fonctionnalités d’entrée pour tout ce que je fais. Les étiquettes reçoivent + 1 pour les premières lignes r-1 si leur rang est r et-1 au reste.
Exemples de calculs
Pour illustrer son fonctionnement, x1 est la fonctionnalité de formation dont le rang est 3, où le rang maximal observé est 5. Les exemples étendus correspondant à cette fonctionnalité sont les suivants :
Cas | Test | Étiquette résultante |
---|---|---|
X11000 | Le rang est-il supérieur à 1 ? | Oui par conséquent + 1 |
X10100 | Le rang est-il supérieur à 2 ? | Oui par conséquent + 1 |
X10010 | Le rang est-il supérieur à 3 ? | º par conséquent, aucune fonctionnalité supplémentaire |
X10001 | Le rang est-il supérieur à 4 ? | º par conséquent, aucune fonctionnalité supplémentaire |
Entrées attendues
Nom | Type | Description |
---|---|---|
Modèle de classification binaire non formé | Interface ILearner | Modèle de classification binaire non formé |
Sorties
Nom | Type | Description |
---|---|---|
Untrained model (Modèle non entraîné) | Interface ILearner | Un modèle de régression ordinale non formé |