Comment fonctionne la validation croisée avec un seul retrait? Comment sélectionner le modèle final parmi modèles différents?

25

J'ai quelques données et je veux construire un modèle (disons un modèle de régression linéaire) à partir de ces données. Dans une prochaine étape, je souhaite appliquer la validation croisée avec absence de changement (LOOCV) sur le modèle afin de voir à quel point il fonctionne.

Si j'ai bien compris LOOCV, je construis un nouveau modèle pour chacun de mes échantillons (l'ensemble de test) en utilisant chaque échantillon à l'exception de cet échantillon (l'ensemble de formation). Ensuite, j'utilise le modèle pour prédire l'ensemble de test et calculer les erreurs .(predictedactual)

Dans une étape suivante, j'agrège toutes les erreurs générées à l'aide d'une fonction choisie, par exemple l'erreur quadratique moyenne. Je peux utiliser ces valeurs pour juger de la qualité (ou de la qualité de l'ajustement) du modèle.

Question: Quel modèle est le modèle auquel ces valeurs de qualité s'appliquent, alors quel modèle dois-je choisir si je trouve les métriques générées à partir de LOOCV appropriées pour mon cas? LOOCV a examiné modèles différents (où n est la taille de l'échantillon); quel modèle choisir?nn

  • Est-ce le modèle qui utilise tous les échantillons? Ce modèle n'a jamais été calculé lors du processus LOOCV!
  • Est-ce le modèle qui a le moins d'erreur?
theomega
la source
Connexes: stats.stackexchange.com/questions/11602 .
amibe dit Réintégrer Monica

Réponses:

24

Il est préférable de considérer la validation croisée comme un moyen d'estimer les performances de généralisation des modèles générés par une procédure particulière, plutôt que du modèle lui-même. La validation croisée avec omission est essentiellement une estimation de la performance de généralisation d'un modèle formé sur échantillons de données, qui est généralement une estimation légèrement pessimiste de la performance d'un modèle formé sur échantillons.n1n

Plutôt que de choisir un modèle, la chose à faire est d'adapter le modèle à toutes les données et d'utiliser LOO-CV pour fournir une estimation légèrement conservatrice des performances de ce modèle.

Notez cependant que LOOCV a une variance élevée (la valeur que vous obtiendrez varie beaucoup si vous utilisez un échantillon aléatoire différent de données), ce qui en fait souvent un mauvais choix d'estimateur pour l'évaluation des performances, même s'il est approximativement non biaisé. Je l'utilise tout le temps pour la sélection de modèles, mais vraiment uniquement parce qu'il est bon marché (presque gratuit pour les modèles de noyau sur lesquels je travaille).

Dikran Marsupial
la source
Merci d'avoir répondu. N'est-ce pas la phrase «utiliser LOO-CV pour fournir une estimation légèrement conservatrice des performances de ce modèle». mal est le cas général? Le modèle pourrait empirer si j'ajoute un autre point, dans ce cas, le LOO-CV pourrait être un. estimation optimiste
theomega
1
Plus vous utilisez de données pour construire le modèle, généralement meilleur est le modèle. Bien que le point supplémentaire puisse aggraver un peu le modèle, il est plus susceptible de l'améliorer un peu. Donc, en général, la loocv a un léger biais pessimiste, mais elle n'est que très faible, la variance de l'estimateur LOOCV est généralement beaucoup plus importante.
Dikran Marsupial
Que devriez - vous utiliser pour l' évaluation de la performance alors? (En supposant que la collecte de données coûte cher, vous souhaitez utiliser toutes les données disponibles pour s'adapter au modèle).
Sideshow Bob
Bootstrap probablement. La plupart des modèles que j'utilise ont des paramètres de régularisation, etc. qui doivent être ajustés, donc j'utilise souvent LOOCV pour ajuster les modèles et le bootstrap ou le maintien répété pour l'évaluation des performances.
Dikran Marsupial
@DikranMarsupial Êtes-vous sûr du fait que le CV Leave-One-Out fournit un biais pessimiste? Pour autant que je sache, il fournit généralement une estimation d'erreur inférieure à celle de K-Fold, par exemple. De plus, LOOCV n'a-t-il pas de variance 0? Vous ne pouvez faire LOOCV qu'une seule fois, puis "vous n'avez plus d'échantillon". La seule variance à laquelle je peux penser est celle produite par les algorithmes d'apprentissage utilisés pour ajuster le modèle. Mais cela devrait être la variance associée à la variance des paramètres optimaux, et non à l'erreur de modèle elle-même. Merci.
D1X