Une intelligence artificielle qui s’entraîne, c’est comme un archer qui ajuste ses flèches. La fonction de perte est son tableau de score.

Quand on découvre le machine learning, les tutoriels commencent souvent par des lignes de code mystérieuses comme criterion = nn.CrossEntropyLoss() ou loss = "mse". Puis soudain, on vous balance des équations, des gradients, et des lettres grecques. Résultat : on hoche la tête en faisant semblant de comprendre, alors qu’en vrai, on est perdu. Les fonctions de perte sont souvent expliquées à l’envers.

La plupart des guides commencent par la formule mathématique au lieu de commencer par l’idée simple derrière. Ce texte fait partie d’une série pour débutants, où l’objectif est de rendre les concepts accessibles. Alors, commençons par le début : une fonction de perte, c’est ce qui permet à une IA de savoir à quel point elle a tort.

Une fonction de perte, c’est le tableau de score qui indique à l’IA : « Tu as été très loin de la cible, voici combien tu as raté. »

COMMENT L’IA SAIT-ELLE QU’ELLE A FAIT UNE ERREUR ?

Imaginons un modèle d’IA qui fait des prédictions. Par exemple, il regarde une photo et dit : « C’est un chien à 70%, un chat à 20%, un poisson à 10% ». Si la vraie réponse est « chien », le modèle a raison, mais si c’est « chat », il s’est trompé. La fonction de perte entre en jeu : elle compare la prédiction avec la bonne réponse et donne un nombre qui représente l’ampleur de l’erreur.

Un score de perte élevé signifie que l’IA s’est beaucoup trompée. À l’inverse, un score de perte faible indique que l’IA était proche de la bonne réponse. Pendant l’entraînement, l’IA ajuste ses paramètres pour réduire ce score. C’est comme ça qu’elle apprend : en corrigeant ses erreurs.

Pour mieux comprendre, prenons une analogie avec le jeu de fléchettes. Vous lancez une fléchette vers la cible. Pour progresser, vous avez besoin de feedback : la fléchette était-elle un peu à gauche, trop haute, ou carrément à côté ? Sans ce retour, impossible de s’améliorer. La cible représente la bonne réponse, et la fléchette, la prédiction de l’IA. La fonction de perte mesure la distance entre la fléchette et le centre de la cible. Plus la distance est grande, plus l’erreur est grave.

Juste savoir que la réponse est fausse ne suffit pas. L’IA a besoin de connaître l’ampleur de son erreur pour s’améliorer efficacement.

LES FONCTIONS DE PERTE LES PLUS COURANTES EN MACHINE LEARNING

Il existe plusieurs types de fonctions de perte, adaptées à différents problèmes. Voici les plus utilisées.

1. LA MOYENNE DES ERREURS AU CARRÉ (MSE) : POUR PRÉDIRE DES NOMBRES

La MSE (Mean Squared Error) est la fonction de perte la plus courante quand on veut prédire des valeurs numériques, comme le prix d’une maison, la température, ou le temps de livraison. Son principe est simple : elle calcule l’écart entre chaque prédiction et la vraie valeur, puis élève cet écart au carré avant de faire la moyenne.

def meansquarederror(predictions, actuals):
    squared_errors = [(p - a) ** 2 for p, a in zip(predictions, actuals)]
    return sum(squarederrors) / len(squarederrors)

Pourquoi élever l’erreur au carré ? Deux raisons principales :

  • 1. Cela donne plus de poids aux grosses erreurs. Une erreur de 10 devient 100, alors qu’une erreur de 1 reste 1. L’IA est ainsi « punie » plus sévèrement pour ses grosses fautes.
  • 2. La fonction devient lisse et différentiable, ce qui facilite l’ajustement des paramètres pendant l’entraînement.

2. LA MOYENNE DES ERREURS ABSOLUES (MAE) : UNE ALTERNATIVE PLUS DOUCE

La MAE (Mean Absolute Error) fonctionne de manière similaire à la MSE, mais sans élever les erreurs au carré. Elle prend simplement la valeur absolue de chaque écart, puis en fait la moyenne.

def meanabsoluteerror(predictions, actuals):
    absolute_errors = [abs(p - a) for p, a in zip(predictions, actuals)]
    return sum(absoluteerrors) / len(absoluteerrors)

La MAE est moins sensible aux valeurs extrêmes que la MSE. Elle « punit » moins sévèrement les grosses erreurs, mais elle reste efficace pour mesurer l’écart moyen entre les prédictions et les vraies valeurs.

La MAE est comme un juge impartial : elle ne surréagit pas aux erreurs exceptionnelles, mais elle reste juste.

3. LA CROSS-ENTROPY : POUR LES PROBLÈMES DE CLASSIFICATION

Quand le problème ne consiste pas à prédire un nombre, mais à choisir parmi plusieurs catégories (comme reconnaître un chien, un chat ou un poisson), on utilise la cross-entropy. Cette fonction de perte ne se contente pas de vérifier si la prédiction est correcte. Elle évalue aussi à quel point l’IA était sûre de sa réponse.

Par exemple, si l’image est vraiment un chien, et que l’IA prédit 70% pour le chien, 20% pour le chat et 10% pour le poisson, c’est une bonne prédiction. Mais si l’image est un chat, et que l’IA donne seulement 20% de confiance pour le chat, elle sera fortement pénalisée. La cross-entropy est donc idéale pour les tâches de classification.

En résumé :

  • Pour prédire des nombres → MSE ou MAE.
  • Pour classer des catégories → cross-entropy.

PERTE ET PRÉCISION : DEUX CONCEPTS DIFFÉRENTS

Beaucoup de débutants confondent perte et précision. Pourtant, ce sont deux choses distinctes.

La précision (ou accuracy) indique le pourcentage de prédictions correctes. Par exemple, si une IA fait 90 bonnes prédictions sur 100, sa précision est de 90%.

La perte, elle, mesure l’ampleur des erreurs commises. Deux modèles peuvent avoir la même précision de 90%, mais l’un peut être très confiant sur ses bonnes réponses et légèrement incorrect sur les mauvaises, tandis que l’autre peut être à peine correct sur beaucoup d’exemples et extrêmement confiant quand il se trompe. Dans ce cas, la précision serait identique, mais la perte serait différente.

La précision dit « combien de fois l’IA a raison ? » La perte dit « à quel point l’IA se trompe quand elle a tort ? »

COMMENT L’IA S’ENTRAÎNE : LE PROCESSUS EN DÉTAIL

Une fois que l’IA a calculé sa perte, elle peut s’améliorer. Voici comment se déroule l’entraînement :

1. Le modèle fait une prédiction.

2. La fonction de perte calcule l’erreur.

3. L’IA ajuste ses paramètres pour réduire cette erreur (grâce à des techniques comme la descente de gradient).

4. Le processus se répète pendant des milliers, voire des millions d’itérations.

Pendant l’entraînement, on trace souvent la courbe de la perte en fonction du temps. Au début, l’IA fait beaucoup d’erreurs, donc la perte est élevée. Avec le temps, la perte diminue, ce qui signifie que l’IA s’améliore.

La courbe typique ressemble à ceci :

  • Une perte élevée au départ.
  • Une chute rapide des erreurs.
  • Un ralentissement des progrès, car l’IA apprend les motifs faciles en premier.
Si la perte d’entraînement diminue mais que la perte de validation augmente, c’est un signe de surapprentissage : l’IA mémorise les données au lieu d’apprendre des motifs généralisables.

POURQUOI COMPRENDRE LES FONCTIONS DE PERTE EST ESSENTIEL ?

Une fois que vous maîtrisez les fonctions de perte, d’autres concepts du machine learning deviennent plus faciles à saisir : la descente de gradient, la rétropropagation, l’optimisation, le surapprentissage, et les métriques d’évaluation.

Vous n’avez pas besoin de commencer par des équations compliquées. Commencez par l’idée simple : la fonction de perte est le tableau de score qui guide l’IA vers l’amélioration.

C’est la fin de cet article. D’autres concepts passionnants seront abordés dans cette série pour débutants.

Sources :
  • KDnuggets

L'indépendance de CLODCO est votre garantie.

Pour que l'actualité de l'IA reste sans filtre et sans concession, votre soutien est indispensable. Votre contribution est le seul moteur de notre liberté éditoriale.

Soutenir CLODCO