Peut-on sur-adapter en apprenant des algorithmes d’apprentissage automatique en utilisant CV / Bootstrap?

34

Cette question est peut-être trop ouverte pour obtenir une réponse définitive, mais j'espère que non.

Les algorithmes d'apprentissage machine, tels que SVM, GBM, Random Forest, etc., ont généralement quelques paramètres libres qui, au-delà de certaines indications empiriques, doivent être adaptés à chaque jeu de données. Cela se fait généralement avec une technique de ré-échantillonnage (bootstrap, CV, etc.) afin d’adapter l’ensemble des paramètres donnant la meilleure erreur de généralisation.

Ma question est la suivante: pouvez-vous aller trop loin ici? Les gens parlent de faire des recherches sur la grille comme ça, mais pourquoi ne pas simplement considérer cela comme un problème d'optimisation et accéder au meilleur ensemble de paramètres possible? J'ai posé des questions sur certains mécanismes de cette question dans cette question, mais cela n'a pas attiré beaucoup d'attention. Peut-être que la question a été mal posée, mais peut-être que la question elle-même représente une mauvaise approche que les gens ne font généralement pas?

Ce qui me dérange, c'est le manque de régularisation. En rééchantillonnant, le meilleur nombre d'arbres pouvant pousser dans un GBM pour cet ensemble de données est de 647 avec une profondeur d'interaction de 4, mais je suis sûr que cela sera vrai pour les nouvelles données (en supposant que la nouvelle population est identique à l'ensemble de formation)? En l'absence de valeur raisonnable à «réduire» (ou, si vous préférez, aucune information préalable informative), le ré-échantillonnage semble être le meilleur que nous puissions faire. Je n'entends pas parler de ça, alors je me demande si quelque chose me manque.

Évidemment, il y a un coût en calcul considérable associé à la multiplication de nombreuses itérations afin de tirer le meilleur parti du pouvoir prédictif d'un modèle. Il est donc clair que vous le feriez si vous aviez le temps / le grognement d'optimiser et chaque bit l'amélioration de la performance est précieux.

Bogdanovist
la source
Le CV peut être utilisé pour différentes choses. Pour être clair, lorsque vous parlez de «recherche sur la grille» ou de «réglage d'hyperparamètre», vous parlez de la sélection du modèle , et non de la sélection des caractéristiques , voire de l'estimation des erreurs de classification.
smci

Réponses:

30

Il y a une réponse définitive à cette question qui est "oui, il est certainement possible d'adapter un critère de sélection de modèle basé sur la validation croisée pour aboutir à un modèle qui généralise mal! ". À mon avis, cela ne semble pas être largement compris, mais constitue un écueil important dans l’application des méthodes d’apprentissage automatique et constitue l’axe principal de mes recherches actuelles; J'ai écrit deux articles sur le sujet jusqu'à présent

GC Cawley et NLC Talbot, sur-adaptation dans la sélection du modèle et biais de sélection subséquent dans l'évaluation de la performance, Journal of Machine Learning Research, 2010. Research, vol. 11, pp. 2079-2107, juillet 2010. ( www )

ce qui démontre que le sur-ajustement dans la sélection du modèle est un problème important dans l'apprentissage automatique (et que vous pouvez obtenir des estimations de performances fortement biaisées si vous réduisez les sélections de modèle lors de l'évaluation des performances) et

GC Cawley et NLC Talbot, Empêcher le sur-ajustement dans la sélection du modèle via la régularisation bayésienne des hyper-paramètres, Journal of Machine Learning Research, volume 8, pages 841 à 861, avril 2007. ( www )

où le critère de sélection de modèle basé sur la validation croisée est régularisé afin de tenter une sur-adaptation améliorée dans la sélection de modèle (ce qui constitue un problème clé si vous utilisez un noyau avec de nombreux hyper-paramètres).

Je rédige actuellement un document sur la sélection de modèle basée sur la recherche par grille, qui montre qu'il est certainement possible d'utiliser une grille trop fine si vous vous retrouvez avec un modèle statistiquement inférieur à un modèle sélectionné par beaucoup. grille plus grossière (c’est une question sur StackExchange qui m’a incité à me pencher sur la recherche par grille).

J'espère que cela t'aides.

PS Une évaluation de performance impartiale et une sélection de modèle fiable peuvent en effet coûter cher en calcul, mais selon mon expérience, cela en vaut la peine. La validation croisée imbriquée, où la validation croisée externe est utilisée pour l'estimation des performances et la validation croisée interne pour la sélection du modèle est une bonne approche de base.

Dikran Marsupial
la source
Parfait! On dirait que ces papiers sont exactement ce que je recherchais. Merci pour ça.
Bogdanovist
Faites-moi savoir si vous avez des questions sur les articles (par courrier électronique - je suis le premier auteur et mon adresse électronique figure sur le document).
Dikran Marsupial
@DikranMarsupial Comment distingue-t-on le surajustement dû à la sélection du modèle et celui dû à l'inadéquation de l'échantillonnage entre le train et les ensembles de test?
image_doctor
1
En principe, en utilisant un ensemble de données synthétiques où la vérité de terrain est disponible, il est alors simple, car il n'y a alors aucune discordance d'échantillonnage; l'ensemble d'apprentissage est juste un échantillon aléatoire de la distribution sous-jacente et vous pouvez estimer l'erreur à partir de la distribution elle-même plutôt que d'un échantillon fini. Pour les ensembles de données contenant des mots réels, AFAICS vous permet de mieux utiliser le rééchantillonnage et de déterminer les effets de la superposition du critère de sélection du modèle sur de nombreux segments aléatoires de test / formation.
Dikran Marsupial
2
Malheureusement, il a été rejeté, mais je le réviserai pour prendre en compte les commentaires (très utiles) des relecteurs et le renvoyer à un autre journal.
Dikran Marsupial
7

Il a été démontré que la validation croisée et le bootstrap donnent des estimations du taux d’erreur presque sans biais et, dans certains cas, plus précisément par la validation croisée. Le problème avec d’autres méthodes telles que la resubstitution, c’est qu’en estimant l’erreur sur le même ensemble de données que celui avec lequel vous adaptez le classificateur, vous risquez de sous-estimer le taux d’erreur et d’avoir recours à des algorithmes contenant trop de paramètres et de prédire les valeurs futures avec autant de précision. un algorithme adapté à un petit ensemble de paramètres. La clé de l’utilisation des méthodes statistiques est que les données que vous possédez pour former le classifieur sont typiques des données que vous verrez à l’avenir lorsque les classes sont manquantes et doivent être prédites par le classifieur. Si vous pensez que les données futures pourraient être très différentes, les méthodes statistiques ne peuvent vous aider et je ne

Michael R. Chernick
la source
Merci d'avoir répondu. J'ai modifié la question pour préciser que je ne vous pose pas de question sur les changements dans la population entre les trains et les trains d'essai. Je me rends compte que c'est une question totalement différente qui ne m'intéresse pas pour cette question.
Bogdanovist
1
+1 Dans ce cas, l'absence de biais est essentiellement sans importance. La variance de l'estimation de la validation croisée peut être beaucoup plus problématique. Pour un critère de sélection de modèle dont vous avez besoin au minimum du critère d'être fiable proche du minimum de l'erreur de généralisation (en fonction des hyper-paramètres). Cela ne sert à rien si, en moyenne, il se trouve au bon endroit, mais la dispersion des minima de différents échantillons finis de données est omniprésente.
Dikran Marsupial
1
Bien sûr, l’exactitude est une combinaison de biais et de variance, et une estimation non biaisée avec une variance élevée n’est pas aussi bonne qu’un estimateur légèrement biaisé avec une faible variance. L'estimation naïve du taux d'erreur est la resubstitution et le biais est important. Les bootstrap 632 et 632+ marchent si bien parce qu’ils s’ajustent bien pour le biais sans trop augmenter la variance. C'est pourquoi, pour les fonctions discriminantes linéaires et les fonctions discriminantes quadratiques, elles fonctionnent beaucoup mieux que la version sans validation de la validation croisée.
Michael R. Chernick
Avec les ensembles d'arbres de classification, il n'a pas été prouvé que le bootstrap faisait mieux.
Michael R. Chernick
1
L’une des difficultés est peut-être que le sur-ajustement signifie souvent des choses différentes en apprentissage automatique et en statistiques. Il me semble que les statisticiens utilisent parfois le sur-ajustement pour désigner un modèle comportant plus de paramètres que nécessaire, plutôt que de s’ajuster trop étroitement aux observations (telles que mesurées par le critère de formation). J'emploierais normalement «sur-paramétrisé» dans cette situation, et utiliser «sur-ajustement» pour signifier qu'un modèle a été ajusté de trop près aux observations au détriment des performances de généralisation. Peut-être que c'est là que nous pouvons parler à contre-courant?
Dikran Marsupial
4

Je suppose qu’une des réponses à cette question est que, dans le contexte de l’optimisation, vous essayez de trouver un minimum global pour une noisyfonction de coût. Vous avez donc tous les défis d'une optimisation globale multidimensionnelle et d'un composant stochastique ajouté à la fonction de coût.

De nombreuses approches pour faire face aux défis des minima locaux et un espace de recherche coûteux ont eux-mêmes des paramètres qui peuvent nécessiter une mise au point, tels que les méthodes de recuit simulé ou de monte carlo.

Dans un univers idéal, sans calcul, je suppose que vous pourriez essayer de trouver un minimum global de votre espace de paramètres avec des limites suffisamment étroites sur le biais et la variance de votre estimation de la fonction d'erreur. Est-ce que ce scénario de régularisation ne serait pas un problème puisque vous pourriez ré-échantillonner à l'infini.

Dans le monde réel, je suppose que vous pouvez facilement vous retrouver dans un minimum local.

Comme vous l'avez mentionné, il s'agit d'un problème distinct, mais cela vous laisse néanmoins ouvert à une surévaluation en raison de problèmes d'échantillonnage associés aux données dont vous disposez et de leur relation avec la distribution sous-jacente réelle de l'espace échantillon.

image_doctor
la source
4

Cela dépend fortement de l'algorithme, mais vous pouvez le faire, bien que dans la plupart des cas ce ne soit qu'un gaspillage d'effort bénin.

F(X)XXopterF(X)+εεXFXopterXopterF+ε

XopterXopterXopterF

F

Ainsi, eh bien, (basée sur des pratiques présentes dans de bonnes revues) une validation complète et externe de la sélection des paramètres n’est pas une tâche rigoureuse (contrairement à la validation de la sélection des fonctionnalités), mais uniquement si l’optimisation est superficielle et le classifieur plutôt insensible à Les paramètres.


la source
4

Oui, les paramètres peuvent être «surajustés» sur les ensembles d’entraînement et de test pendant la validation croisée ou l’amorçage. Cependant, il existe certaines méthodes pour empêcher cela. La première méthode simple consiste à diviser votre ensemble de données en 3 partitions, une pour le test (~ 20%), une pour le test des paramètres optimisés (~ 20%) et une pour l’ajustement du classificateur avec les paramètres définis. Ce n'est possible que si vous avez un jeu de données assez volumineux. Dans d'autres cas, une double validation croisée est suggérée.

Romain François et Florent Langrognet, "Double validation croisée pour la classification par modèle", 2006

spinus
la source