L'overfitting : quand la mesure de précision des prévisions échoue
Comme nous l’avons déjà dit, l’objectif principal de la prévision est de construire des modèles précis sur les données que vous n’avez pas. Pourtant, à première vue, cela ressemble à une autre idée folle de mathématicien : à la fois étrange et totalement impraticable.
Mais dans notre expérience, mesurer la vraie précision des prévisions est un véritable problème commercial. Échouer à cela coûte de l’argent. En réalité, plus l’entreprise est grande, plus le coût est élevé.
Toujours perplexe quant à l’erreur de prévision réelle ?
Découvrez notre dernière vidéo de 9 minutes (les scripts sont copiés ci-dessous).
Scripts de la vidéo :
L’overfitting : vos prévisions pourraient ne pas être aussi bonnes que la mesure vous le dit
La précision des prévisions est cruciale pour de nombreuses industries telles que la vente au détail, la fabrication ou les services. Si vous surestimez la demande de vos clients, vos coûts explosent car vous aurez trop de personnel, trop de stocks. Mais si vous sous-estimez la demande de vos clients, vos clients se fâchent car ils ne peuvent pas acheter votre produit ou parce qu’ils doivent attendre trop longtemps pour être servis.
Dans cette vidéo, je vais vous présenter un problème peu connu dans la prévision appelé overfitting.
Ce problème est peu connu pour deux raisons. Premièrement, c’est un problème subtil - non évident et contre-intuitif à bien des égards. Deuxièmement, c’est un problème qui a intrigué les mathématiciens depuis le XIXe siècle. Ce n’est qu’à la fin des années 90, il y a un peu plus de 10 ans, que la communauté scientifique a commencé à vraiment comprendre ce problème à la fois au niveau théorique mais aussi au niveau pratique.
Avant d’aller plus loin, laissez-moi passer à la conclusion. L’overfitting a un impact très fort sur vos prévisions. L’overfitting peut vous faire croire que vous avez une erreur de prévision de 10% alors que votre erreur de prévision réelle est de 20%, et cela ne serait pas une situation pire.
L’overfitting est un véritable problème commercial. L’overfitting coûte de l’argent.
De plus, il n’y a pas de solution pour l’overfitting. Les théories statistiques modernes sont construites sur ce concept même. L’overfitting joue un rôle central dans ces théories, peu importe la manière dont vous abordez les statistiques, l’overfitting est là pour rester.
Le problème clé est de définir ce que signifie réellement la précision des prévisions.
Intuitivement, la manière la plus simple de mesurer la précision des prévisions consiste à faire une prévision et à attendre que l’événement prévu se produise ; ainsi, nous pouvons comparer la prévision avec son résultat correspondant.
Cependant, cette méthode présente un gros inconvénient : elle ne vous renseigne que sur la précision des prévisions passées. Du point de vue commercial, il importe peu de savoir si les prévisions passées étaient bonnes ou mauvaises, puisque vous ne pouvez de toute façon pas les changer. Ce qui importe vraiment, c’est de s’assurer que les prévisions à venir sont vraiment précises.
Ensuite, il y a un autre problème : à moins que la méthode utilisée pour produire les prévisions soit strictement identique d’une prévision à l’autre, il n’y a aucune raison de croire que la précision passée pourrait être utilisée comme un indicateur fiable de la précision future.
Depuis le XVIIIe siècle, les mathématiciens ont introduit la notion de modèle statistique. L’aspect principal des modèles statistiques n’est pas, contrairement à ce que l’on croit, de fournir de bonnes ou de mauvaises prévisions, mais de fournir des prévisions reproductibles.
Avec un modèle statistique, vous obtenez un processus qui automatise la production de prévisions. Il ne garantit pas que les prévisions seront bonnes, mais au moins, si les prévisions sont mauvaises, vous pouvez analyser le modèle plus en détail.
Prenons l’exemple de la série chronologique suivante. Nous illustrerons le problème de l’overfitting en considérant des modèles statistiques successifs.
Commençons par un modèle linéaire simple. Comme vous pouvez le voir, la ligne ne correspond pas vraiment aux points de la série chronologique. Par conséquent, nous avons une grande erreur, plus de 50 %. Ce modèle ne correspond pas vraiment aux données.
Ensuite, nous pouvons augmenter la complexité du modèle. Nous avons maintenant un modèle qui suit approximativement la moyenne locale de la série chronologique. Ce nouveau modèle semble bien meilleur que le précédent, et en effet, l’erreur a été divisée par 5, atteignant maintenant 10 %.
Nous avons ici un bon modèle, mais pouvons-nous encore réduire l’erreur davantage ? Eh bien, la réponse est simple : oui, nous pouvons produire un modèle qui atteint moins de 1 % d’erreur.
Comme vous pouvez le voir, c’est plutôt facile ; il suffit de concevoir un modèle qui passe par presque tous les points de la série chronologique.
Mais pouvons-nous vraiment faire confiance à ce modèle pour qu’il soit précis à 1 % sur les prévisions futures ? Évidemment, nous ne le pouvons pas ! Ce modèle ne fait que micro-optimiser de petites fluctuations du passé qui ne sont rien d’autre que des variations aléatoires. Intuitivement, nous ne pouvons pas prévoir le vrai hasard ; nous ne pouvons prévoir que des motifs tels que la tendance, la saisonnalité, etc.
Maintenant, si nous comparons les deux derniers modèles, nous avons un problème évident : selon notre mesure d’erreur, le modèle de droite - celui avec une erreur de 1 % - est dix fois meilleur que le modèle de gauche.
Bien qu’il soit évident que le meilleur modèle est celui de gauche. Ce modèle lisse les fluctuations aléatoires de la série chronologique.
Ainsi, il y a quelque chose qui ne va pas dans la façon dont nous mesurons l’erreur. Cette erreur, comme illustré dans les graphiques précédents, est connue sous le nom d’erreur empirique. C’est l’erreur que vous obtenez grâce à des mesures sur vos données historiques.
Pourtant, ce qui nous intéresse vraiment, c’est ce qu’on appelle l’erreur réelle. L’erreur réelle est définie comme l’erreur de votre modèle de prévision sur les données que vous n’avez pas, c’est-à-dire : les données futures.
Bien que cette définition semble être un paradoxe complet : comment pouvez-vous mesurer quoi que ce soit si, précisément, vous n’avez pas les données !
Depuis le XIXe siècle, les statisticiens se penchent sur ce problème à travers une approche connue sous le nom de compromis biais-variance.
Si nous regardons les trois modèles que nous avons, nous pouvons dire que le modèle linéaire a un biais élevé : peu importe le modèle linéaire que nous choisissons, il ne réussira jamais à s’adapter réellement aux données, à moins bien sûr que les données elles-mêmes soient distribuées de manière linéaire ; mais dans la plupart des situations, le modèle linéaire se contente d’approximer la distribution des données.
Ensuite, le modèle linéaire a une faible variance : intuitivement, ajouter ou supprimer un point dans la série chronologique n’affectera pas beaucoup le modèle résultant. Ce modèle est assez stable.
À l’autre extrême, le modèle de droite a un très faible biais : il s’adapte, en fait, à la plupart des points de la série chronologique. Cependant, la variance est très élevée : ajouter ou supprimer un seul point est susceptible de provoquer des changements majeurs dans ce modèle. Il n’y a aucune stabilité du tout.
Au centre, nous avons un modèle qui équilibre à la fois le biais et la variance ; et cela semble être la voie à suivre.
Cependant, le principal problème avec l’approche biais versus variance est que nous n’avons toujours aucune idée de ce qui se passe réellement avec l’erreur réelle, c’est-à-dire l’erreur sur les données que nous n’avons pas.
Ce compromis est souvent plus une heuristique qu’un véritable critère statistique.
Depuis la fin des années 90, le domaine de l’apprentissage statistique, une théorie plus large qui englobe la prévision statistique, a réalisé une percée significative tant au niveau théorique que pratique.
Cette théorie est complexe, mais une équation simple nous donne de grandes indications sur les résultats. Cette théorie nous dit que l’erreur réelle est bornée par la somme de l’erreur empirique et d’une autre valeur appelée le risque structurel.
Comme nous l’avons vu précédemment, l’erreur empirique n’est que l’erreur mesurée sur les données historiques.
Le risque structurel est un critère théorique qui peut être explicitement calculé pour certaines classes de modèles, et estimé pour la plupart des autres classes.
Revenons à notre exemple initial, nous pouvons voir que le risque structurel augmente avec la complexité du modèle.
Maintenant, si nous quantifions ces risques structurels, cela nous donne les perspectives suivantes.
Nous ne connaissons toujours pas l’erreur réelle - cette valeur ne peut de toute façon pas être mesurée directement - mais nous voyons que le modèle du centre a la plus faible borne supérieure sur l’erreur réelle.
La théorie de l’apprentissage statistique ne nous donne pas la valeur de l’erreur réelle, mais elle nous donne à la place une borne supérieure ; et toute la question est de choisir le modèle qui atteint la plus faible borne supérieure.
Cette borne supérieure agit comme une valeur maximale pour l’erreur réelle.
Par rapport au compromis biais-variance, nous voyons que la théorie de l’apprentissage statistique nous donne une estimation quantitative de l’erreur réelle.
Le risque structurel est difficile à estimer en pratique. Pourtant, à l’heure actuelle, c’est toujours la meilleure solution connue pour éviter le surajustement.
Nous avons vu précédemment qu’une façon évidente de se retrouver avec des problèmes de surajustement était d’augmenter la complexité du modèle.
Mais il y a aussi une autre façon, plus subtile, de se retrouver avec des problèmes de surajustement : cela peut se produire en augmentant la complexité des données.
Ajouter des points supplémentaires aux données réduit généralement les problèmes de surajustement, mais si vous commencez à ajouter des dimensions supplémentaires aux données, alors vous risquez de vous retrouver avec des problèmes de surajustement même si les modèles eux-mêmes restent inchangés.
Dans notre expérience chez Lokad, cette situation est fréquemment rencontrée par les organisations qui affinent, année après année, leurs propres modèles de prévision avec des entrées de données de plus en plus nombreuses ; sans prendre explicitement en compte le risque structurel qui se cache dans leurs modèles.
Dans les dimensions élevées, même les modèles linéaires sont sujets à des problèmes de surajustement.
Cela conclut cette brève présentation sur le surajustement. Si vous devez retenir une chose, retenez que sans tenir compte du risque structurel, votre mesure de l’erreur de prévision est susceptible d’être très trompeuse ; et plus votre entreprise est grande, plus cela vous coûtera cher.
Merci beaucoup pour votre intérêt. Nous serons heureux de répondre à vos questions dans nos forums.
Commentaires des lecteurs (9)
Diaporama intéressant il y a 3 ans | Mark
Wow quelle super vidéo, merci de m’avoir aidé à comprendre le surajustement. il y a 4 ans | Melford McRae
Au fait, j’ai essayé de visionner le diaporama sur plusieurs navigateurs et je n’ai pas réussi à le voir. Il ne semble jamais se charger. Est-ce que quelqu’un chez Lokad peut vérifier et voir quel est le problème ? il y a 4 ans | Shaun Snapp
Je viens de poster une vidéo actualisée qui fonctionne. il y a 4 ans | Joannes Vermorel
Il semble que SlideShare n’ait pas maintenu leur contenu au fil des années :-( Voici le fichier audio https://media.lokad.com/videos/2009-04-21-overfitting/overfitting.mp3 et le fichier PowerPoint https://media.lokad.com/videos/2009-04-21-overfitting/overfitting.pptx Je vais fusionner les deux en une vidéo YouTube. il y a 4 ans | Joannes Vermorel
C’est un problème assez épineux. Il n’y a pas d’autre moyen de mesurer un modèle de prévision que de le vérifier par rapport à ses performances historiques, mais il existe une tendance à surajuster pour obtenir “la meilleure précision”. Tout cela serait un problème plus important si un pourcentage plus élevé d’entreprises utilisaient réellement leur procédure de meilleur ajustement dans les systèmes de prévision qu’elles achètent ou ajustaient vraiment les modèles. Je serais intéressé par une discussion sur la façon de prévenir le surajustement lors de l’utilisation d’une procédure de meilleur ajustement. il y a 4 ans | Shaun Snapp
J’ai posté une réponse de suivi sur https://blog.lokad.com/journal/2014/5/20/how-to-mitigate-overfitting-when-forecasting-demand J’espère que cela vous aidera ! il y a 4 ans | Joannes Vermorel
Merci pour le diaporama. Cela m’a aidé à comprendre le surajustement, sans entrer dans les détails mathématiques. il y a 8 ans | Shyam Prasad Murarka
Merci pour le diaporama. il y a 8 ans | Abhishek