Train vs Test Error Gap et sa relation avec le sur-ajustement: concilier les conseils contradictoires

14

Il semble y avoir des conseils contradictoires sur la façon de gérer la comparaison entre l'erreur de train et l'erreur de test, en particulier lorsqu'il y a un écart entre les deux. Il semble y avoir deux écoles de pensée qui, selon moi, semblent en conflit. Je cherche à comprendre comment réconcilier les deux (ou comprendre ce qui me manque ici).

Pensée n ° 1: un écart entre les performances du train et de l'ensemble de test ne signifie pas à lui seul un sur-ajustement

Premièrement, (également discuté ici: Comment les comparaisons d'erreurs de formation et de test peuvent-elles indiquer un sur-ajustement? ), L'idée qu'une différence entre le train et l'ensemble de test ne peut à elle seule indiquer un sur-ajustement. Cela correspond à mon expérience pratique avec, par exemple, les méthodes d'arborescence d'ensemble, où même après un réglage hyper paramétrique basé sur la validation croisée, l'écart entre le train et l'erreur de test peut rester quelque peu important. Mais (quel que soit le type de modèle) tant que votre erreur de validation ne revient pas, vous êtes bon. C'est du moins la pensée.

Réflexion n ° 2: lorsque vous voyez un écart entre les performances du train et des tests: faites des choses qui lutteraient contre le sur-ajustement

Cependant, il y a des conseils que vous voyez, de très bonnes sources qui suggèrent qu'un écart entre le train et l'erreur de test indique un sur-ajustement. Voici un exemple: le discours "Nuts and Bolts of Deep Learning" par Andrew Ng (un discours fantastique) https://www.youtube.com/watch?v=F1ka6a13S9I où, vers l'horodatage 48:00, il dessine un organigramme qui dit "si votre erreur de train est faible et que votre erreur de train-dev est élevée, vous devez ajouter une régularisation, obtenir plus de données ou changer l'architecture du modèle" ... ce sont toutes des actions que vous pourriez prendre pour lutter contre le sur-ajustement.

Ce qui m'amène à ... : Suis-je en train de manquer quelque chose ici? S'agit-il d'une règle empirique spécifique au modèle (les modèles généralement plus simples semblent avoir moins d'écart entre le train et le test)? Ou existe-t-il simplement deux écoles de pensée différentes?

ednaMode
la source

Réponses:

4

Je ne pense pas que ce soit un avis contradictoire. Ce qui nous intéresse vraiment, ce sont les bonnes performances hors échantillon, pas la réduction de l'écart entre la formation et les performances de l'ensemble de test. Si les performances de l'ensemble de tests sont représentatives des performances hors échantillon (c'est-à-dire que l'ensemble de tests est suffisamment grand, non contaminé et est un échantillon représentatif des données auxquelles notre modèle sera appliqué), alors tant que nous obtenons de bonnes performances sur le ensemble de test, nous ne sommes pas surajustés, quel que soit l'écart.

Souvent, cependant, s'il y a un grand écart, cela peut indiquer que nous pourrions obtenir de meilleures performances de l'ensemble de test avec plus de régularisation / introduisant plus de biais dans le modèle. Mais cela ne signifie pas qu'un écart plus petit signifie un meilleur modèle; c'est juste que si nous avons un petit ou aucun écart entre l'entraînement et les performances de l'ensemble de test, nous savons que nous ne sommes certainement pas surajustés, donc ajouter de la régularisation / introduire plus de biais dans le modèle n'aidera pas.

rincer
la source
Point intéressant. Pour résumer "pas d'écart entre le train et l'essai" signifie certainement pas de sur-ajustement, mais "un certain écart entre le train et l'essai" peut ou non signifier un surajustement. Si nous suivons cette logique, l'organigramme dans le discours d'Andrew Ng semble un peu trompeur: ce n'est pas aussi slam dunk que la diapositive le suggère, c'est-à-dire que si vous avez un écart, vous pouvez essayer de régulariser ou d'obtenir plus de données, mais cela peut ne pas aider. Accepteriez-vous?
ednaMode
1
D'après mon expérience, oui, je serais d'accord.
rinspy
"Pour résumer aucun écart entre le train et le test signifie certainement pas de sur-ajustement" ne peut pas nécessairement tenir. Lorsque vous avez une quantité infinie de données, vous n'aurez aucun écart entre le train et le test même si le modèle est trop adapté. Je pense donc que pour que cette déclaration soit valide, vous avez besoin de quelques hypothèses supplémentaires.
LKS
@LKS Je ne sais pas trop ce que vous entendez par surajustement ici. Les performances hors échantillon seront toujours inférieures ou égales aux performances dans l'échantillon, en supposant que la distribution des données reste constante. Un écart nul est donc notre meilleur scénario. Comment peut-il y avoir sur-ajustement avec un écart nul?
rinspy
@rinspy si vous définissez le surajustement comme l'écart numérique entre les données de formation et de test, votre affirmation est correcte. Mais je voudrais raisonner davantage sur ce que fait le modèle. Par exemple, nous avons une fonction polynomiale de degré 3 et le résultat inclura un petit bruit gaussien. Si nous avons des échantillons finis et utilisons un polynôme de degré 5 pour l'ajustement, il y a une grande performance entre (et hors échantillon) (prévision). Mais si nous pouvons tirer des échantillons presque infinis, un modèle qui mémorise purement n'aura aucune erreur d'échantillon d'entrée / sortie.
LKS