Meilleure approche pour la sélection de modèles bayésienne ou validation croisée?


22

Lorsque vous essayez de sélectionner parmi différents modèles ou le nombre de fonctionnalités à inclure, disons la prédiction, je peux penser à deux approches.

  1. Divisez les données en ensembles de formation et de test. Mieux encore, utilisez le bootstrapping ou la validation croisée k-fold. Entraînez-vous à chaque fois sur l'ensemble d'entraînement et calculez l'erreur sur l'ensemble d'essai. Tracer l'erreur de test par rapport au nombre de paramètres. Habituellement, vous obtenez quelque chose comme ceci:entrez la description de l'image ici
  2. Calculez la probabilité du modèle en intégrant sur les valeurs des paramètres. c'est-à-dire, calculer , et tracer cela en fonction du nombre de paramètres. Nous obtenons alors quelque chose comme ceci:θP(|θ)P(θ)θentrez la description de l'image ici

Mes questions sont donc:

  1. Ces approches sont-elles adaptées pour résoudre ce problème (décider du nombre de paramètres à inclure dans votre modèle ou sélectionner parmi un certain nombre de modèles)?
  2. Sont-ils équivalents? Probablement pas. Donneront-ils le même modèle optimal sous certaines hypothèses ou dans la pratique?
  3. Outre la différence philosophique habituelle de spécification des connaissances antérieures dans les modèles bayésiens, etc., quels sont les avantages et les inconvénients de chaque approche? Lequel choisiriez-vous?

Mise à jour: J'ai également trouvé la question connexe sur la comparaison de l'AIC et du BIC. Il semble que ma méthode 1 est asymptotiquement équivalente à AIC et la méthode 2 est asymptotiquement liée à BIC. Mais j'y lis également que le BIC est équivalent au CV Leave-One-Out. Cela signifierait que le minimum d'erreur d'apprentissage et le maximum de vraisemblance bayésienne sont équivalents lorsque LOO CV est équivalent à K-fold CV. Un article peut-être très intéressant " Une théorie asymptotique pour la sélection de modèle linéaire " par Jun Shao se rapporte à ces questions.


Je n'ai pas vraiment de réponse complète, mais je mentionnerai que je ne penserais généralement pas à utiliser l'une ou l'autre méthode pour "choisir le nombre de fonctionnalités". En général, j'interprète l'apprentissage automatique et les statistiques bayésiennes pour n'inclure que toutes les fonctionnalités, car elles ont toutes probablement un certain niveau d'impact minimal. Cependant, je pense que la question de la complexité relative du modèle est toujours appropriée. Je dirai également que je n'ai jamais réellement effectué l'inférence bayésienne à laquelle vous faites allusion; il semble juste devenir trop compliqué en pratique par rapport à la simplicité du k-fold ou du bootstrapping.
Shea Parkes

Notez que le papier Shao ne fonctionne que pour les modèles linéaires; en fait, seule leur structure simple rend le nombre de fonctionnalités utilisables comme mesure de complexité et alimente ainsi tous ces critères d'information.

1
L'AIC ( pas le BIC! ) Équivaut asymptotiquement à la validation croisée avec omission sous des hypothèses faibles (en raison de Stone "Une équivalence asymptotique du choix du modèle par la validation croisée et le critère d'Akaike" (1977) ). La source de la question à laquelle vous vous référez était erronée et a été corrigée par Rob Hyndman dans un commentaire. J'ai pensé que ce serait peut-être une bonne idée de le corriger ici aussi, pour arrêter de répandre la mauvaise idée.
Richard Hardy

Réponses:


13
  1. Ces approches sont-elles adaptées pour résoudre ce problème (décider du nombre de paramètres à inclure dans votre modèle ou sélectionner parmi un certain nombre de modèles)?

L'un ou l'autre pourrait l'être, oui. Si vous êtes intéressé à obtenir un modèle qui prédit le mieux, sur la liste des modèles que vous considérez, l'approche de fractionnement / validation croisée peut très bien le faire. Si vous souhaitez savoir lequel des modèles (dans votre liste de modèles putatifs) est en réalité celui qui génère vos données, alors la deuxième approche (évaluer la probabilité postérieure des modèles) est ce que vous voulez.

  1. Sont-ils équivalents? Probablement pas. Donneront-ils le même modèle optimal sous certaines hypothèses ou dans la pratique?

Non, ils ne sont généralement pas équivalents. Par exemple, utiliser AIC (An Information Criterion, par Akaike) pour choisir le «meilleur» modèle correspond approximativement à une validation croisée. L'utilisation du BIC (Bayesian Information Criterion) correspond à une utilisation approximative des probabilités postérieures. Ce ne sont pas les mêmes critères, il faut donc s'attendre à ce qu'ils conduisent à des choix différents, en général. Ils peuvent donner les mêmes réponses - chaque fois que le modèle qui prédit le mieux est également la vérité - mais dans de nombreuses situations, le modèle qui convient le mieux est en fait un sur-ajustement, ce qui conduit à un désaccord entre les approches.

Sont-ils d'accord dans la pratique? Cela dépend de ce que votre «pratique» implique. Essayez-le dans les deux sens et découvrez-le.

  1. Outre la différence philosophique habituelle de spécification des connaissances antérieures dans les modèles bayésiens, etc., quels sont les avantages et les inconvénients de chaque approche? Lequel choisirais-tu?
  • Il est généralement beaucoup plus facile de faire les calculs pour la validation croisée, plutôt que de calculer les probabilités postérieures
  • Il est souvent difficile de prouver de manière convaincante que le «vrai» modèle fait partie de la liste parmi laquelle vous choisissez. C'est un problème pour l'utilisation des probabilités postérieures, mais pas la validation croisée
  • Les deux méthodes impliquent généralement l'utilisation de constantes assez arbitraires; combien vaut une unité supplémentaire de prédiction, en termes de nombre de variables? Dans quelle mesure croyons-nous a priori chacun des modèles ?
    • Je choisirais probablement la validation croisée. Mais avant de m'engager, je voudrais en savoir beaucoup sur la raison pour laquelle cette sélection de modèle a été effectuée, c'est-à-dire à quoi servira le modèle choisi. Aucune forme de sélection de modèle ne peut être appropriée, si par exemple une inférence causale est requise.

16

L'optimisation est la racine de tout mal dans les statistiques! ; o)

Chaque fois que vous essayez de sélectionner un modèle en fonction d'un critère évalué sur un échantillon fini de données, vous introduisez un risque de sur-ajustement du critère de sélection du modèle et vous vous retrouvez avec un modèle pire que celui avec lequel vous avez commencé. La validation croisée et la vraisemblance marginale sont des critères de sélection de modèle raisonnables, mais ils dépendent tous deux d'un échantillon fini de données (comme le sont AIC et BIC - la pénalité de complexité peut aider, mais ne résout pas ce problème). J'ai trouvé que c'était un problème important dans l'apprentissage automatique, voir

GC Cawley et NLC Talbot, Sur-ajustement dans la sélection des modèles et biais de sélection subséquent dans l'évaluation des performances, Journal of Machine Learning Research, 2010. Research, vol. 11, pp. 2079-2107, juillet 2010. ( www )

D'un point de vue bayésien, il est préférable de l'intégrer sur tous les choix et paramètres du modèle. Si vous n'optimisez ou ne choisissez rien, il devient plus difficile de sur-ajuster. L'inconvénient est que vous vous retrouvez avec des intégrales difficiles, qui doivent souvent être résolues avec MCMC. Si vous voulez la meilleure performance prédictive, alors je suggérerais une approche entièrement bayésienne; si vous voulez comprendre les données, il est souvent utile de choisir un meilleur modèle. Cependant, si vous rééchantillonnez les données et vous retrouvez avec un modèle différent à chaque fois, cela signifie que la procédure d'ajustement est instable et qu'aucun des modèles n'est fiable pour comprendre les données.

Notez qu'une différence importante entre la validation croisée et les preuves est que la valeur de la probabilité marginale suppose que le modèle n'est pas mal spécifié (essentiellement la forme de base du modèle est appropriée) et peut donner des résultats trompeurs s'il l'est. La validation croisée ne fait pas une telle hypothèse, ce qui signifie qu'elle peut être un peu plus robuste.


L'intégration bayésienne est une approche forte. Mais demandez-vous toujours si la sélection du modèle est même la bonne façon de procéder. Quelle est la motivation? Pourquoi ne pas proposer un modèle complet qui soit flexible et qui lui convient?
Frank Harrell

@FrankHarrell de nombreux modèles flexibles incluent des termes de régularisation et d'autres hyper-paramètres, et le réglage de ceux-ci est également une sélection de modèle et soumis aux mêmes problèmes de sur-ajustement du critère de sélection. L'ajustement présente un risque de sur-ajustement, et cela s'applique à tous les niveaux. Cependant, si vous connaissez a priori la structure du modèle, cette connaissance experte doit être utilisée.
Dikran Marsupial

1
Il vaut mieux chercher une méthode qui ne nécessite pas de réglage, mais ce n'est pas toujours possible. Mon point principal est que la spécification du modèle fonctionne mieux que la sélection du modèle et ne suppose pas que la sélection des fonctionnalités est un objectif noble.
Frank Harrell

La sélection des fonctionnalités @FrankHarrell est très rarement utile. L'optimisation doit être évitée dans la mesure du possible, ce qui implique de faire tout choix / réglage de modèle basé sur un échantillon fini de données (bien sûr, plus l'échantillon est grand, plus le risque est faible).
Dikran Marsupial
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.