Je crois comprendre qu'avec la validation croisée et la sélection de modèles, nous essayons de résoudre deux choses:
P1 . Estimer la perte attendue sur la population lors de la formation avec notre échantillon
P2 . Mesurer et rendre compte de notre incertitude sur cette estimation (variance, intervalles de confiance, biais, etc.)
La pratique standard semble être de faire des validations croisées répétées, car cela réduit la variance de notre estimateur.
Cependant, en matière de reporting et d'analyse, je crois comprendre que la validation interne est meilleure que la validation externe car:
Il vaut mieux signaler:
- Les statistiques de notre estimateur, par exemple son intervalle de confiance, sa variance, sa moyenne, etc. sur l'échantillon complet (dans ce cas l'échantillon CV).
que de signaler:
La perte de notre estimateur sur un sous-ensemble résiduel de l'échantillon d'origine, puisque:
(i) Ce serait une mesure unique ( même si nous choisissons notre estimateur avec CV )
(ii) Notre estimateur pour cette mesure unique aurait été formé sur un ensemble (par exemple l'ensemble CV) qui est plus petit que notre échantillon initial, car nous devons faire de la place pour l'ensemble d'exclusion. Il en résulte une estimation plus biaisée (pessimiste) de P1 .
Est-ce correct? Sinon pourquoi?
Contexte:
Il est facile de trouver des manuels qui recommandent de diviser votre échantillon en deux ensembles:
- L' ensemble de CV , qui est ensuite et à plusieurs reprises divisé en ensembles de formation et de validation .
- L'ensemble de maintien (test), utilisé uniquement à la fin pour rendre compte des performances de l'estimateur
Ma question est une tentative de comprendre les mérites et les avantages de cette approche de manuels scolaires, étant donné que notre objectif est de vraiment résoudre les problèmes P1 et P2 au début de cet article. Il me semble que le reporting sur l'ensemble de test de maintien est une mauvaise pratique car l'analyse de l'échantillon de CV est plus informative.
Pli en K imbriqué vs pli en K répété:
On peut en principe combiner le maintien avec le pli en K régulier pour obtenir le pli en K imbriqué . Cela nous permettrait de mesurer la variabilité de notre estimateur, mais il me semble que pour le même nombre de modèles totaux formés (nombre total de plis), le pli K répété produirait des estimateurs qui sont moins biaisés et plus précis que le K- imbriqué. plier. Pour voir ceci:
- Le pli K répété utilise une plus grande fraction de notre échantillon total que le pli K emboîté pour le même K (c'est-à-dire qu'il conduit à un biais plus faible)
- 100 itérations ne donneraient que 10 mesures de notre estimateur en K-fold imbriqué (K = 10), mais 100 mesures en K-fold (plus de mesures conduisent à une variance plus faible en P2 )
Quel est le problème avec ce raisonnement?
la source
Réponses:
Permettez-moi d'ajouter quelques points aux belles réponses qui sont déjà là:
Pli en K imbriqué vs pli en K répété: les plis en K imbriqués et répétés sont des choses totalement différentes, utilisées à des fins différentes.
Je recommande donc de répéter toute validation croisée imbriquée k-fold .
Meilleur rapport "Les statistiques de notre estimateur, par exemple son intervalle de confiance, sa variance, sa moyenne, etc. sur l'échantillon complet (dans ce cas l'échantillon CV)." :
Sûr. Cependant, vous devez être conscient du fait que vous ne pourrez pas (facilement) estimer l'intervalle de confiance uniquement par les résultats de la validation croisée. La raison en est que, même si vous rééchantillonnez, le nombre réel de cas que vous examinez est fini (et généralement assez petit - sinon vous ne vous soucieriez pas de ces distinctions).
Voir par exemple Bengio, Y. et Grandvalet, Y .: No Unbias Estimator of the Variance of K-Fold Cross-Validation Journal of Machine Learning Research, 2004, 5, 1089-1105 .
Cependant, dans certaines situations, vous pouvez néanmoins faire des estimations de la variance: avec la validation croisée répétée k-fold, vous pouvez avoir une idée si l'instabilité du modèle joue un rôle. Et cette variance liée à l'instabilité est en fait la partie de la variance que vous pouvez réduire par une validation croisée répétée. (Si vos modèles sont parfaitement stables, chaque répétition / itération de la validation croisée aura exactement les mêmes prédictions pour chaque cas. Cependant, vous avez toujours une variance en raison du choix / composition réelle de votre ensemble de données). Il y a donc une limite à la variance inférieure de la validation croisée répétée k-fold. Faire de plus en plus de répétitions / itérations n'a pas de sens, car la variance causée par le fait qu'au final, seuls cas réels ont été testés n'est pas affectée.n
La variance causée par le fait qu'au final, seuls cas réels ont été testés peut être estimée pour certains cas spéciaux, par exemple les performances des classificateurs mesurées par des proportions telles que le taux de réussite, le taux d'erreur, la sensibilité, la spécificité, les valeurs prédictives, etc. : ils suivent des distributions binomiales Malheureusement, cela signifie qu'ils ont une énorme variance avec la vraie valeur de performance du modèle, la valeur observée et la taille de l'échantillon dans le dénominateur de la fraction. Cela a le maximum pourn σ2( p^) = 1np ( 1 - p ) p p^ n p = 0,5 . Vous pouvez également calculer des intervalles de confiance à partir de l'observation. (@Frank Harrell commentera qu'il ne s'agit pas de règles de notation appropriées, vous ne devriez donc pas les utiliser de toute façon - ce qui est lié à l'énorme écart). Cependant, à mon humble avis, ils sont utiles pour dériver des limites conservatrices (il existe de meilleures règles de notation et le mauvais comportement de ces fractions est la pire des cas pour les meilleures règles),
voir par exemple C.Beleites, R. Salzer et V. Sergo: Validation des modèles de classification souple à l'aide d'appartenance à une classe partielle: un concept étendu de sensibilité & Co. appliqué à la classification des tissus d'astrocytome, Chemom. Intell. Laboratoire. Syst., 122 (2013), 12-22.
Cela me permet donc de tourner votre argumentation contre le hold-out :
Pas nécessairement (si on le compare à k-fold) - mais il faut faire un compromis: petit ensemble de maintien (par exemple de l'échantillon => faible biais (≈ identique à k-fold cv), variance élevée (> cv fois k, environ d'un facteur k).1k
D'habitude, oui. Cependant, il est également bon de garder à l'esprit qu'il existe des types importants d'erreurs (tels que la dérive) qui ne peuvent pas être mesurés / détectés par la validation du rééchantillonnage.
Voir par exemple Esbensen, KH et Geladi, P. Principes de bonne validation: utilisation et abus du rééchantillonnage pour validation, Journal of Chemometrics, 2010, 24, 168-187
Je dirais non à cela: peu importe la façon dont la formation du modèle utilise ses échantillons de formation , tant que les modèles de substitution et le "vrai" modèle les utilisent de la même manière. façon. (Je regarde la validation croisée interne / estimation des hyper-paramètres dans le cadre de la configuration du modèle). Les choses semblent différentes si vous comparez les modèles de substitution qui sont entraînés, y compris l'optimisation hyperparamétrique, au "modèle" qui est entraîné sur des hyperparamètres fixes. Mais à mon humble avis qui se généralise de pommes à 1 orange.k - 1kn
k
La question de savoir si cela fait une différence dépend de l'instabilité des modèles (de substitution), voir ci-dessus. Pour les modèles stables, cela n'a pas d'importance. Il en va peut-être de même si vous effectuez 1000 ou 100 répétitions / itérations externes.
Et cet article appartient définitivement à la liste de lecture sur ce sujet: Cawley, GC et Talbot, NLC On Over-fiting in Model Selection and Subsequent Selection Bias in Performance Evaluation, Journal of Machine Learning Research, 2010, 11, 2079-2107
la source
Une référence clé expliquant cela est:
Voir également:
Dans mon propre travail, j'ai constaté que le fractionnement des données nécessite une formation et des tailles d'échantillons de test approchant les 10 000 pour fonctionner de manière satisfaisante.
la source
Cela dépend vraiment de votre processus de construction de modèles, mais j'ai trouvé cet article utile
http://www.biomedcentral.com/content/pdf/1471-2105-7-91.pdf
Le nœud de ce qui est discuté ici est le biais libéral significatif (estimer la performance du modèle pour être meilleure qu'elle ne le sera réellement) qui se produira si vous sélectionnez votre modèle en fonction de la même chose que vous utilisez pour estimer sa performance. Donc, si vous sélectionnez votre modèle à partir d'un ensemble de modèles possibles en examinant son erreur de validation croisée, vous ne devez pas utiliser d'erreur de validation croisée (ou toute autre méthode d'estimation interne) pour estimer les performances du modèle.
Une autre ressource utile est
/stats//a/27751/26589
Cet article présente un exemple clair de la façon dont la sélection de vos fonctionnalités lorsque toutes les données sont "vues" entraînera un biais libéral dans les performances du modèle (en disant que votre modèle fonctionnera mieux qu'il ne le fera réellement).
Si vous souhaitez que je donne un exemple plus spécifique à ce que vous faites, vous pouvez peut-être donner une description générale des types de modèles que vous créez (la quantité de données dont vous disposez, le nombre de fonctionnalités que vous sélectionnez, la modèle réel, etc.).
la source
Je pense que votre compréhension est correcte, l'estimateur de perte obtenu en utilisant un seul ensemble de tests de maintien a généralement une variance élevée. En effectuant quelque chose comme la validation croisée des plis en K, vous obtenez une idée plus précise de la perte, ainsi qu'un sens de la distribution de la perte.
Il y a généralement un compromis, plus le CV se replie, meilleure est votre estimation, mais plus de temps de calcul est nécessaire.
la source