Une fonction de perte mesure à quel point un modèle se trompe. Sans elle, il n’a aucun signal clair pour corriger ses prédictions. Je vais partir de l’intuition, puis comparer MSE, MAE, cross-entropy et accuracy sans vous noyer dans les formules.
À quoi sert une fonction de perte ?
Une fonction de perte sert à dire au modèle à quel point sa prédiction est mauvaise, avec un score qu’il va chercher à réduire pendant l’entraînement.
Un modèle de machine learning ne sait pas spontanément s’il a raison ou tort. Il ne “comprend” pas son erreur comme nous. Il fait une prédiction, on la compare à la vraie réponse, puis la fonction de perte transforme cet écart en nombre. Plus ce nombre est élevé, plus le modèle est loin de ce qu’on attendait.
Je prends souvent l’image de la fléchette avec mes clients, parce qu’elle parle tout de suite. Si je lance une fléchette et qu’on me dit juste “raté”, ça ne m’aide pas beaucoup. J’ai besoin de savoir si je suis à deux centimètres du centre ou à cinquante centimètres. Dans le premier cas, mon geste est presque bon. Dans le second, il faut corriger beaucoup plus. La fonction de perte, c’est cette distance-là pour un modèle.
L’entraînement, au fond, c’est une boucle assez simple :
- Le modèle fait une prédiction.
- On compare cette prédiction avec la vraie réponse.
- La fonction de perte calcule à quel point c’est faux.
- Le modèle ajuste ses paramètres pour faire mieux la prochaine fois.
Les paramètres, ce sont les réglages internes du modèle. Dans un réseau de neurones, par exemple, ce sont souvent des millions de petits poids numériques. Les algorithmes d’optimisation, comme la descente de gradient, utilisent le score de perte pour savoir dans quel sens modifier ces paramètres. La descente de gradient, dit simplement, c’est une méthode qui cherche à descendre progressivement vers une erreur plus faible, un peu comme si on cherchait le point le plus bas d’une vallée.
C’est pour ça que la fonction de perte est souvent plus importante à comprendre que les équations autour. Elle définit ce que le modèle considère comme une erreur. Et ça, c’est très concret. Si vous choisissez mal cette fonction, le modèle peut apprendre quelque chose, mais pas forcément ce que vous voulez vraiment optimiser.
Quand utiliser la MSE ?
J’utilise la MSE quand je fais une régression et que je veux pénaliser fortement les grosses erreurs.
La Mean Squared Error, ou erreur quadratique moyenne, sert à comparer des nombres prédits avec des nombres réels. C’est typiquement ce qu’on utilise quand un modèle doit prédire le prix d’une maison, une consommation électrique, un chiffre d’affaires, une température, bref une valeur numérique.
L’idée est simple. On prend l’écart entre la prédiction du modèle et la vraie valeur. On met cet écart au carré. Puis on fait la moyenne de tous ces écarts au carré. Le carré fait deux choses importantes. Il rend toutes les erreurs positives, parce qu’une erreur de -20 000 et une erreur de +20 000 restent des erreurs. Et surtout, il donne beaucoup plus de poids aux grosses erreurs.
| Prédiction | 300 000 € |
| Vraie valeur | 320 000 € |
| Erreur | 20 000 € |
| Erreur au carré | 400 000 000 |
Dit comme ça, le nombre paraît énorme, et c’est normal. La MSE ne cherche pas à rester dans une unité facile à lire. Elle sert surtout à entraîner le modèle. Si l’erreur double, par exemple de 20 000 à 40 000, la perte au carré ne double pas. Elle devient quatre fois plus grande. C’est exactement ce comportement qui rend la MSE intéressante.
Côté business, c’est utile quand une grosse erreur coûte cher. Si je sous-estime fortement le prix d’un bien immobilier, je peux faire perdre beaucoup d’argent à un client. Dans ce cas, je veux que le modèle prenne ces gros écarts au sérieux. J’ai déjà vu ça sur des modèles de pricing, où quelques très mauvaises estimations faisaient plus mal que beaucoup de petites erreurs acceptables.
La limite, elle est assez claire. Si vos données contiennent des valeurs aberrantes, la MSE peut pousser le modèle à trop réagir à ces cas extrêmes. Un seul point complètement bizarre peut influencer l’entraînement plus que prévu. Quand ce risque existe, je regarde souvent une autre fonction de perte plus robuste aux gros écarts ponctuels : la MAE.
Pourquoi choisir la MAE ?
Je choisis la MAE quand je veux mesurer l’erreur moyenne sans laisser quelques valeurs aberrantes prendre toute la place. La Mean Absolute Error, ou erreur absolue moyenne, calcule simplement l’écart entre chaque prédiction et la vraie valeur, prend la valeur absolue de cet écart, puis fait la moyenne.
Concrètement, si mon modèle prédit 210 000 € pour un bien qui vaut 200 000 €, l’erreur est de 10 000 €. Si un autre bien est prédit à 900 000 € alors qu’il vaut 800 000 €, l’erreur est de 100 000 €. Avec la MAE, une erreur de 10 compte pour 10, une erreur de 100 compte pour 100. Elle augmente de manière linéaire. La MSE, elle, met l’erreur au carré, donc une erreur de 100 devient 10 000 dans le calcul. Ça change vite l’équilibre.
C’est là que la MAE devient intéressante. Dans un jeu de données de prix immobiliers, vous avez souvent quelques biens de luxe très atypiques. Un penthouse avec terrasse, vue mer, ascenseur privé, bref le genre de bien qui ne ressemble pas au reste. Si la fonction de perte est trop sensible aux gros écarts, ces cas peuvent tirer le modèle dans une mauvaise direction. J’ai déjà vu ça chez un client sur de l’estimation de prix : le modèle essayait trop de satisfaire quelques ventes exceptionnelles, et devenait moins bon sur les biens standards. La MAE aide à éviter ça, parce qu’elle ne donne pas un pouvoir disproportionné aux grosses erreurs.
| Situation | MSE | MAE |
| Grosses erreurs critiques | Plus adaptée, car elle pénalise très fort les gros écarts. | Moins agressive, elle traite l’erreur de façon linéaire. |
| Présence d’outliers | Peut être trop influencée par quelques cas extrêmes. | Plus robuste quand on ne veut pas que les outliers dominent. |
| Besoin d’interprétation simple | Moins intuitive, car les erreurs sont mises au carré. | Très lisible, l’erreur moyenne reste dans l’unité de départ. |
Le choix de la fonction de perte n’est pas une préférence théorique. C’est une décision liée au coût réel de l’erreur. Si une grosse erreur doit être punie très fort, la MSE a du sens. Si je veux une mesure claire, stable, et moins sensible aux valeurs aberrantes, je pars souvent sur la MAE.
À quoi sert la cross-entropy ?
La cross-entropy sert à entraîner un modèle de classification quand il prédit des probabilités. En clair, elle mesure à quel point le modèle est proche de la bonne réponse, mais aussi à quel point il est sûr de lui.
En classification, le modèle ne sort pas juste une valeur numérique brute. Il peut dire quelque chose comme : 90 % chien, 8 % chat, 2 % autre. Là, la fonction de perte ne doit pas seulement vérifier si “chien” est arrivé en premier. Elle doit aussi regarder la confiance derrière cette réponse.
Je le vois souvent chez des clients qui classent automatiquement des demandes support. Deux modèles peuvent tous les deux choisir la bonne catégorie, mais l’un dit “facturation à 95 %” et l’autre dit “facturation à 42 %”. Ce n’est pas la même qualité de prédiction.
| Cas | Ce que fait la cross-entropy |
| Bonne réponse avec forte confiance | Faible perte. Le modèle a raison et il est sûr au bon moment. |
| Bonne réponse avec hésitation | Perte moyenne. Le modèle a raison, mais son signal reste fragile. |
| Mauvaise réponse avec forte confiance | Grosse perte. Le modèle se trompe en étant très sûr de lui. |
Le point important est là : la cross-entropy punit surtout les modèles sûrs d’eux quand ils se trompent. Et franchement, c’est exactement ce qu’on veut dans beaucoup de cas réels. Un modèle qui se trompe avec prudence, c’est gênant. Un modèle qui se trompe avec 99 % de confiance, c’est dangereux.
C’est utile parce qu’on ne veut pas toujours juste une étiquette finale. On veut aussi une probabilité fiable. Pour prioriser des leads, détecter une fraude, classer des tickets support, diagnostiquer un risque ou trier des contenus, cette nuance change tout. Elle permet de décider quoi automatiser, quoi vérifier à la main, quoi remonter en priorité.
C’est pour ça que la cross-entropy est très courante dans les réseaux de neurones et les modèles de classification probabiliste. Elle donne un signal d’apprentissage fin, pas juste “correct” ou “incorrect”. Et ça prépare une distinction importante : un modèle peut avoir une accuracy correcte, donc un bon taux de bonnes réponses, tout en ayant une perte qui raconte une histoire beaucoup plus inquiétante.
Loss et accuracy disent quoi ?
La loss mesure la qualité du signal d’erreur, l’accuracy mesure seulement la proportion de bonnes réponses.
L’accuracy est simple à lire, et c’est pour ça qu’on l’aime bien. Si votre modèle classe correctement 85 exemples sur 100, son accuracy est de 85 %. C’est clair, ça parle à tout le monde, même à quelqu’un qui ne fait pas de machine learning tous les jours.
Mais c’est aussi sa limite. L’accuracy ne dit pas si le modèle était très confiant, un peu hésitant, ou complètement sûr de lui sur une mauvaise réponse. Elle compte juste bon ou mauvais. Dit autrement, elle regarde le résultat final, pas la qualité du raisonnement statistique derrière.
La loss donne une information plus fine pendant l’entraînement. Elle regarde l’erreur avec plus de nuance. Elle peut baisser alors que l’accuracy bouge très peu, simplement parce que le modèle devient plus prudent sur les cas ambigus, ou plus confiant quand il a raison. Ça, je le vois souvent sur des projets de classification, par exemple quand un modèle commence à mieux distinguer des catégories proches sans encore changer beaucoup de prédictions finales.
Elle peut aussi augmenter alors que l’accuracy semble stable. Et là, c’est un signal intéressant. Le modèle fait toujours autant de bonnes réponses, mais il devient peut-être trop sûr de lui quand il se trompe. On parle alors parfois de calibration, c’est-à-dire l’écart entre la confiance annoncée par le modèle et la réalité.
Prenons un exemple simple. Deux modèles ont 90 % d’accuracy. Le premier se trompe avec 51 % de confiance. Le second se trompe avec 99 % de confiance. Pour l’accuracy, ils se ressemblent beaucoup. Pour la loss, pas du tout. Le deuxième est plus dangereux, parce qu’il affirme fortement quelque chose de faux.
En pratique, pendant l’entraînement, je suis surtout la loss pour comprendre si le modèle apprend vraiment. Pour juger le résultat business, je regarde aussi les métriques adaptées au contexte, dont l’accuracy si elle a du sens. Sur une détection de fraude, par exemple, l’accuracy seule peut être complètement trompeuse.
| Métrique | Ce qu’elle mesure | Utilité principale | Limite principale |
| Loss | La qualité du signal d’erreur | Suivre l’apprentissage pendant l’entraînement | Moins intuitive à lire pour un non-technicien |
| Accuracy | La proportion de bonnes réponses | Donner une lecture simple de la performance | Ignore la confiance du modèle et les erreurs coûteuses |
Alors, quelle erreur voulez-vous vraiment optimiser ?
Une fonction de perte, c’est le langage qui permet au modèle de comprendre ses erreurs. La MSE pousse fort sur les gros écarts, la MAE reste plus calme face aux valeurs aberrantes, la cross-entropy regarde la classe prédite mais aussi la confiance du modèle. L’accuracy, elle, aide à lire le résultat, mais elle ne remplace pas la loss pendant l’entraînement. Le point clé, c’est de choisir une perte alignée avec votre problème réel. Si vous faites ça proprement, vous entraînez des modèles plus utiles, plus stables, et surtout plus cohérents avec vos enjeux business.
FAQ
- Qu’est-ce qu’une fonction de perte en machine learning ?
Une fonction de perte mesure l’écart entre la prédiction d’un modèle et la vraie réponse. Elle transforme cette erreur en score numérique. Le modèle utilise ensuite ce score pour s’améliorer pendant l’entraînement. - Pourquoi la fonction de perte est-elle importante ?
Elle donne au modèle un signal de correction. Sans ce signal, le modèle ne sait pas dans quelle direction ajuster ses paramètres. C’est un peu comme lancer une fléchette sans savoir à quelle distance elle tombe du centre. - Quelle différence entre MSE et MAE ?
La MSE met les erreurs au carré, donc elle pénalise beaucoup les grosses erreurs. La MAE utilise la valeur absolue des écarts, donc elle est souvent plus robuste quand les données contiennent des valeurs aberrantes. - Quand utiliser la cross-entropy loss ?
La cross-entropy est adaptée aux problèmes de classification, surtout quand le modèle prédit des probabilités. Elle ne regarde pas seulement si la classe prédite est correcte, elle regarde aussi le niveau de confiance du modèle. - Quelle différence entre loss et accuracy ?
L’accuracy mesure le pourcentage de bonnes réponses. La loss mesure la qualité de l’erreur et de la confiance du modèle. Pendant l’entraînement, la loss donne souvent un signal plus fin que l’accuracy.
A propos de l’auteur
Je suis Franck Scandolera, expert et formateur en tracking avancé server-side, Analytics Engineering, automatisation No/Low Code avec n8n, intégration de l’IA en entreprise et SEO/GEO. Avec mon agence webAnalyste et mon organisme Formations Analytics, j’accompagne des équipes qui veulent rendre leurs données vraiment exploitables, pas juste empiler des dashboards. J’ai travaillé avec des clients comme Logis Hôtel, Yelloh Village, BazarChic, la Fédération Française de Football ou Texdecor. Si vous voulez cadrer un projet IA, data ou automatisation sans partir dans tous les sens, contactez-moi.
⭐ Analytics engineer, Data Analyst et Automatisation IA indépendant ⭐
- Ref clients : Logis Hôtel, Yelloh Village, BazarChic, Fédération Football Français, Texdecor…
Mon terrain de jeu :
- Data Analyst & Analytics engineering : tracking avancé (GTM server, e-commerce, CAPI, RGPD), entrepôt de données (BigQuery, Snowflake, PostgreSQL, ClickHouse), modèles (Airflow, dbt, Dataform), dashboards décisionnels (Looker, Power BI, Metabase, SQL, Python).
- Automatisation IA des taches Data, Marketing, RH, compta etc : conception de workflows intelligents robustes (n8n, App Script, scraping) connectés aux API de vos outils et LLM (OpenAI, Mistral, Claude…).
- Engineering IA pour créer des applications et agent IA sur mesure : intégration de LLM (OpenAI, Mistral…), RAG, assistants métier, génération de documents complexes, APIs, backends Node.js/Python.






