régression ;

Effectué

Les modèles de régression sont entraînés pour prédire des valeurs d’étiquette numérique en fonction des données d’entraînement qui comprennent à la fois des caractéristiques et des étiquettes connues. Le processus d’entraînement d’un modèle de régression (ou de tout modèle Machine Learning supervisé) implique plusieurs itérations dans lesquelles vous utilisez un algorithme approprié (généralement avec des paramètres paramétrisables) pour entraîner un modèle, évaluer les performances prédictives du modèle et affiner le modèle en répétant le processus d’entraînement avec différents algorithmes et paramètres jusqu’à atteindre un niveau acceptable de précision prédictive.

Diagramme montrant le processus d’entraînement et d’évaluation d’un modèle supervisé.

Le diagramme montre quatre éléments clés du processus d’entraînement pour les modèles Machine Learning supervisés :

  1. Divisez les données d’entraînement (de manière aléatoire) pour créer un jeu de données avec lequel entraîner le modèle et garder une partie des données pour valider le modèle entraîné.
  2. Utilisez un algorithme pour ajuster les données d’entraînement à un modèle. Dans le cas d’un modèle de régression, utilisez un algorithme de régression comme la régression linéaire.
  3. Utilisez les données de validation que vous avez gardées pour tester le modèle en prédisant des étiquettes pour les caractéristiques.
  4. Comparez les étiquettes réelles connues du jeu de données de validation aux étiquettes prédites par le modèle. Ensuite, agrégez les différences entre les valeurs d’étiquette prédites et réelles pour calculer une métrique indiquant l’exactitude des prédictions du modèle pour les données de validation.

Après chaque itération d’entraînement, de validation et d’évaluation, vous pouvez répéter le processus avec différents algorithmes et paramètres jusqu’à atteindre une métrique d’évaluation acceptable.

Exemple - Régression

Nous explorons la régression avec un exemple simplifié dans lequel nous entraînons un modèle pour prédire une étiquette numérique (y) basée sur une seule valeur de caractéristique (x). La plupart des scénarios réels impliquent plusieurs valeurs de caractéristique, ce qui ajoute une certaine complexité, mais le principe est le même.

Pour notre exemple, nous reprenons le scénario de vente de glaces dont nous avons parlé précédemment. Pour notre caractéristique, nous choisissons la température (supposons que la valeur est la température maximale d’un jour donné), et l’étiquette pour laquelle nous voulons entraîner notre modèle de prédiction est le nombre de glaces vendues ce jour-là. Nous commençons par des données historiques comprenant des enregistrements de températures quotidiennes (x) et de ventes de glaces (y) :

Diagramme d’un thermomètre. Diagramme des glaces.
Température (x) Ventes de glaces (y)
51 1
52 0
67 14
65 14
70 23
69 20
72 23
75 26
73 22
81 30
78 26
83 36

Entraînement d’un modèle de régression

Nous commençons par diviser les données et en utiliser une partie pour entraîner un modèle. Voici le jeu de données d’entraînement :

Température (x) Ventes de glaces (y)
51 1
65 14
69 20
72 23
75 26
81 30

Pour obtenir un aperçu de la relation entre ces valeurs x et y, nous pouvons les tracer sous forme de coordonnées sur deux axes, de la façon suivante :

Diagramme d’un nuage de points montrant x et y.

Nous sommes maintenant prêts à appliquer un algorithme sur nos données d’entraînement, et à l’ajuster à une fonction qui applique une opération à x pour calculer y. Un de ces algorithmes est la régression linéaire, qui fonctionne en dérivant une fonction qui produit une ligne droite entre les intersections des valeurs x et y tout en réduisant la distance moyenne entre la ligne et les points tracés, de cette façon :

Diagramme du nuage de points avec une ligne de régression ajoutée.

La ligne est une représentation visuelle de la fonction, où la pente de la ligne décrit comment calculer la valeur de y pour une valeur donnée de x. La ligne croise l’axe des x à 50, donc, quand x a la valeur 50, y est égal à 0. Comme vous pouvez le voir avec les marqueurs d’axe dans le tracé, la ligne s’incline de sorte que chaque augmentation de 5 sur l’axe des x entraîne une augmentation de 5 sur l’axe des y. Ainsi, quand x est égal à 55, y est égal à 5, quand x est égal à 60, y est égal à 10, etc. Pour calculer la valeur de y pour une valeur donnée de x, la fonction soustrait simplement 50. En d’autres termes, la fonction peut être exprimée de la façon suivante :

f(x) = x-50

Vous pouvez utiliser cette fonction pour prédire le nombre de glaces vendues par jour avec une température donnée. Par exemple, supposons que les prévisions météorologiques nous indiquent une température de 77 degrés demain. Nous pouvons appliquer notre modèle pour calculer 77-50 et prédire que nous vendrons 27 glaces demain.

Mais à quel point notre modèle est-il exact ?

Évaluation d’un modèle de régression

Pour valider le modèle et évaluer son niveau de prédiction, nous avons gardé une partie des données dont nous connaissons la valeur d’étiquette (y). Voici les données que nous avons mis de côté :

Température (x) Ventes de glaces (y)
52 0
67 14
70 23
73 22
78 26
83 36

Nous pouvons utiliser le modèle pour prédire l’étiquette de chacune des observations de ce jeu de données en fonction de la valeur de caractéristique (x), puis comparez l’étiquette prédite (ŷ) à la valeur d’étiquette réelle connue (y).

L’utilisation du modèle que nous avons entraîné précédemment, qui encapsule la fonction f(x) = x-50, génère les prédictions suivantes :

Température (x) Ventes réelles (y) Ventes prédites (ŷ)
52 0 2
67 14 17
70 23 20
73 22 23
78 26 28
83 36 33

Nous pouvons faire un tracé des étiquettes prédites et réelles par rapport aux valeurs de caractéristique de la façon suivante :

Diagramme d’un nuage de points montrant les valeurs prédites et réelles.

Les étiquettes prédites sont calculées par le modèle et se trouvent sur la ligne de fonction, mais il y a un écart entre les valeurs ŷ calculées par la fonction et les valeurs y réelles du jeu de données de validation. Il est indiqué sur le tracé par une ligne entre les valeurs ŷ et y qui montre l’écart entre la prédiction et la valeur réelle.

Métriques d’évaluation de régression

En fonction des différences entre les valeurs prédites et réelles, vous pouvez calculer certaines métriques courantes utilisées pour évaluer un modèle de régression.

Erreur absolue moyenne (MAE)

L’écart dans cet exemple indique la différence de nombre de glaces pour chaque prédiction. Peu importe que la prédiction soit supérieure ou inférieure à la valeur réelle (par exemple, -3 et +3 indiquent un écart de 3). Cette métrique est appelée erreur absolue pour chaque prédiction et peut être totalisée pour l’ensemble du jeu de validation en erreur absolue moyenne (MAE).

Dans l’exemple des glaces, la moyenne des erreurs absolues (2, 3, 3, 1, 2 et 3) est 2,33.

Erreur carrée moyenne (MSE)

La métrique d’erreur absolue moyenne prend en compte toutes les différences entre les étiquettes prédites et réelles de manière égale. Toutefois, vous pouvez préférer un modèle qui a régulièrement un écart d’une petite quantité qu’un modèle qui fait moins d’erreurs, mais plus grandes. Une des façons de produire une métrique qui « amplifie » les plus grandes erreurs est de mettre au carré les erreurs individuelles et de calculer la moyenne des valeurs au carré. Cette métrique est appelée erreur carrée moyenne (MSE).

Dans notre exemple de glaces, la moyenne des valeurs absolues au carré (qui sont 4, 9, 9, 1, 4 et 9) est 6.

Erreur quadratique moyenne (RMSE)

L’erreur carrée moyenne permet de prendre en compte l’ampleur des erreurs, mais comme elle met au carré les valeurs d’erreur, la métrique obtenue ne représente plus la quantité mesurée par l’étiquette. En d’autres termes, nous pouvons dire que la valeur MSE de notre modèle est 6, mais cela ne mesure pas sa justesse en termes de nombre de glaces qui ont été mal prédites. 6 est simplement un score numérique qui indique le niveau d’erreur dans les prédictions de validation.

Si nous voulons mesurer l’erreur en termes de nombre de glaces, nous devons calculer la racine carrée de la valeur MSE, laquelle produit une métrique appelée, sans surprise, Erreur quadratique moyenne. Dans notre cas, √6, soit 2,45 (glaces).

Coefficient de détermination (R2)

Toutes les métriques jusqu’à présent comparent la différence entre les valeurs prédites et réelles afin d’évaluer le modèle. Toutefois, en réalité, il existe un écart aléatoire naturel dans les ventes quotidiennes de glaces que le modèle prend en compte. Dans un modèle de régression linéaire, l’algorithme d’entraînement trace une ligne droite qui réduit l’écart moyen entre la fonction et les valeurs d’étiquette connues. Le coefficient de détermination (plus communément appelé R2 ou R au carré) est une métrique qui mesure la proportion d’écart dans les résultats de validation qui peut être expliquée par le modèle, par opposition à un aspect anormal des données de validation (par exemple, une journée avec un nombre très inhabituel de ventes de glaces en raison d’un festival local).

Le calcul de R2 est plus complexe que pour les métriques précédentes. Il compare la somme des différences au carré entre les étiquettes prédites et réelles à la somme des différences au carré entre les valeurs d’étiquette réelles et la moyenne des valeurs d’étiquette réelles, de la façon suivante :

R2 = 1- ∑(y-ŷ)2 ÷ ∑(y-ȳ)2

Ne vous inquiétez pas trop si cela vous semble compliqué, la plupart des outils de Machine Learning peuvent calculer la métrique pour vous. Le point important est que le résultat est une valeur comprise entre 0 et 1 qui décrit la proportion d’écart expliquée par le modèle. En termes simples, plus cette valeur est proche de 1, plus le modèle s’ajuste aux données de validation. Dans le cas du modèle de régression des glaces, le R2 calculé à partir des données de validation est 0,95.

Entraînement itératif

Les métriques décrites ci-dessus sont couramment utilisées pour évaluer un modèle de régression. Dans la plupart des scénarios réels, un scientifique des données utilise un processus itératif pour entraîner et évaluer un modèle de façon répétitive, en faisant varier :

  • La sélection et la préparation des caractéristiques (choix des caractéristiques à ajouter dans le modèle et calculs qui leur sont appliqués pour garantir un meilleur ajustement).
  • La sélection d’algorithmes (Nous avons exploré la régression linéaire dans l’exemple précédent, mais il existe de nombreux autres algorithmes de régression)
  • Les paramètres d’algorithme (paramètres numériques pour contrôler le comportement de l’algorithme, plus précisément appelés hyperparamètres pour les différencier des paramètres x et y ).

Après plusieurs itérations, le modèle qui aboutit à la meilleure métrique d’évaluation acceptable pour le scénario spécifique est sélectionné.