Généralisation et surapprentissage en langage clair

Le but d'entraîner un modèle n'est pas de bien performer sur les données d'entraînement — c'est de bien performer sur des données qu'il n'a jamais vues. Cette propriété s'appelle la généralisation. Le surapprentissage en est le contraire : le modèle apprend des régularités propres à l'ensemble d'entraînement, y compris son bruit, qui ne tiennent pas sur les nouvelles données. L'écart entre la performance d'entraînement et de validation est le signal le plus clair de ce qui se passe.
Ce que signifie la généralisation
Un modèle généralise quand sa performance sur des données inédites est proche de sa performance sur les données d'entraînement. Cela signifie qu'il a capturé des régularités réelles — qui existent dans le processus sous-jacent générant les données — plutôt que des accidents de l'échantillon particulier. La généralisation n'est jamais garantie ; c'est une estimation basée sur un ensemble mis de côté, et elle dépend de la ressemblance des nouvelles données avec les données d'entraînement en distribution.
Un exemple concret : le modèle qui mémorise
Supposons que vous ayez 100 pistes avec une étiquette d'écoutes sur 14 jours. Un arbre profond qui se sépare jusqu'à ce que chaque feuille ait un exemple atteint une erreur d'entraînement quasi nulle : il a mémorisé chaque ligne. Sur 50 pistes mises de côté, son erreur est bien plus élevée, parce que les nouvelles pistes ne partagent pas les valeurs exactes des variables des lignes d'entraînement. Le modèle n'a pas appris la relation entre les variables et les écoutes ; il a appris l'ensemble d'entraînement lui-même. Un arbre moins profond qui atteint une erreur d'entraînement modérée mais une erreur de validation similaire généralise mieux.
Comment détecter le surapprentissage
Le signal est un grand écart entre la performance d'entraînement et de validation : erreur d'entraînement faible, erreur de validation bien plus élevée. Le graphique de courbe d'apprentissage de scikit-learn montre les scores d'entraînement et de validation à mesure que la taille des données change, rendant l'écart visible (scikit-learn : courbes d'apprentissage). Si l'écart est grand, le modèle surapprend ; si les deux erreurs sont élevées, il sous-apprend.
Erreurs courantes
Une erreur est de rapporter la précision d'entraînement comme si c'était une mesure de généralisation. Une autre est d'ajouter de la complexité jusqu'à ce que l'erreur d'entraînement soit quasi nulle, ce qui aggrave généralement l'erreur de validation. Une troisième est de supposer que la généralisation tient quand la distribution des nouvelles données diffère de l'entraînement — un modèle peut généraliser dans sa distribution d'entraînement et échouer sous un décalage de distribution.
Un exercice
Entraînez un modèle et notez l'erreur d'entraînement et de validation. Augmentez la complexité du modèle pas à pas et tracez les deux courbes. Trouvez le point où l'erreur de validation cesse de s'améliorer tandis que l'erreur d'entraînement continue de baisser — c'est là que le surapprentissage commence. Pour le parcours d'apprentissage plus large, voir les aperçus du programme d'IA appliquée ou le programme d'analyse de données.
Collège Unica
Ressources pédagogiques du Collège Unica — guides pratiques pour l'IA appliquée et l'analyse de données.
