Une '' variable significative '' qui n'améliore pas les prévisions hors échantillon - comment interpréter?

10

J'ai une question qui, je pense, sera assez basique pour beaucoup d'utilisateurs.

J'utilise des modèles de régression linéaire pour (i) étudier la relation entre plusieurs variables explicatives et ma variable de réponse et (ii) prédire ma variable de réponse en utilisant les variables explicatives.

Une variable explicative particulière X semble avoir un impact significatif sur ma variable de réponse. Afin de tester la valeur ajoutée de cette variable explicative X aux fins des prévisions hors échantillon de ma variable de réponse, j'ai utilisé deux modèles: le modèle (a) qui a utilisé toutes les variables explicatives et le modèle (b) qui a utilisé toutes les variables sauf variable X. Pour les deux modèles, je signale uniquement les performances hors échantillon. Il semble que les deux modèles fonctionnent presque à l'identique comme bons. En d'autres termes, l'ajout de la variable explicative X n'améliore pas les prévisions hors échantillon. Notez que j'ai également utilisé le modèle (a), c'est-à-dire le modèle avec toutes les variables explicatives, pour constater que la variable explicative X a un impact significatif sur ma variable de réponse.

Ma question est maintenant: comment interpréter cette conclusion? La conclusion directe est que, même si la variable X semble influencer de manière significative ma variable de réponse à l'aide de modèles inférentiels, elle n'améliore pas les prédictions hors échantillon. Cependant, j'ai du mal à expliquer davantage cette conclusion. Comment cela est-il possible et quelles sont les explications de ce résultat?

Merci d'avance!

Informations supplémentaires: avec «influence significative», je veux dire que 0 n'est pas inclus dans l'intervalle de densité postérieure le plus élevé à 95% de l'estimation des paramètres (im en utilisant une approche bayésienne). En termes fréquentistes, cela correspond à peu près à une valeur de p inférieure à 0,05. J'utilise uniquement des priors diffus (non informatifs) pour tous les paramètres de mes modèles. Mes données ont une structure longitudinale et contiennent environ 7 000 observations au total. Pour les prévisions hors échantillon, j'ai utilisé 90% des données pour ajuster mes modèles et 10% des données pour évaluer les modèles en utilisant plusieurs réplications. C'est-à-dire que j'ai effectué le fractionnement du test de train plusieurs fois et finalement j'ai rendu compte des mesures de performances moyennes.

dubvice
la source
2
Parce que vous utilisez une approche bayésienne, vos résultats dépendent autant de vos antérieurs que des données. Étant donné que la dépendance vis-à-vis du précédent diminue avec l'augmentation des quantités de données et augmente dans la mesure où les données et les désaccords antérieurs, il vous serait utile de fournir des informations à la fois sur la distribution antérieure, la quantité de données et la conformité des données seules. à la distribution antérieure.
whuber
1
@whuber J'ai oublié de mentionner que je n'utilise que des a priori diffus (non informatifs). Par conséquent, je ne pense pas que mes spécifications antérieures aient quoi que ce soit à voir avec mes résultats. Je suis à peu près sûr que l'ajustement de modèles de régression linéaire fréquentiste entraînera exactement les mêmes résultats.
dubvice
Merci - cela permet d'exclure plusieurs explications possibles.
whuber
1
Réajustez-vous les modèles aux données en attente ou utilisez-vous les modèles qui correspondent à vos données d'origine? Dans les deux cas, un problème possible est que vous faites une erreur de type II sur les données retenues; peut-être que la variable est pertinente mais vous étiez à l'origine sous-alimenté (auquel cas vous surestimez probablement l'effet qui pourrait aggraver les prévisions). Ou la variable n'était pas pertinente et vous avez fait une erreur de type I. Il y a beaucoup de raisons pour lesquelles ce genre de chose peut arriver.
mec du
1
J'ai utilisé plusieurs métriques: RSME, MAE et AUC (Im essayant également de prédire si ma variable dépendante, qui est continue, est inférieure à un certain seuil).
dubvice

Réponses:

3

Lorsqu'un prédicteur particulier est statistiquement significatif, cela ne signifie pas vraiment qu'il améliore également considérablement les performances prédictives d'un modèle. Les performances prédictives sont davantage liées à la taille de l'effet. À titre d'exemple, la fonction ci-dessous simule les données d'un modèle de régression linéaire avec deux prédicteurs x1et x2, et adapte deux modèles, l'un avec les deux x1et x2, et l'autre avec x1seul. Dans la fonction, vous pouvez modifier la taille de l'effet pour x2. La fonction rapporte les intervalles de confiance pour les coefficients de x1et x2, et les valeurs des deux modèles comme mesure de la performance prédictive.R2

La fonction est:

sim_ES <- function (effect_size = 1, sd = 2, n = 200) {
    # simulate some data
    DF <- data.frame(x1 = runif(n, -3, 3), x2 = runif(n, -3, 3))
    DF$y <- 2 + 5 * DF$x1 + (effect_size * sd) * DF$x2 + rnorm(n, sd = sd)

    # fit the models with and without x2
    fm1 <- lm(y ~ x1 + x2, data = DF)
    fm2 <- lm(y ~ x1, data = DF)

    # results
    list("95% CIs" = confint(fm1),
         "R2_X1_X2" = summary(fm1)$r.squared,
         "R2_only_X1" = summary(fm2)$r.squared)
}

À titre d'exemple, pour les valeurs par défaut que nous obtenons,

$`95% CIs`
               2.5 %   97.5 %
(Intercept) 1.769235 2.349051
x1          4.857439 5.196503
x2          1.759917 2.094877

$R2_X1_X2
[1] 0.9512757

$R2_only_X1
[1] 0.8238826

C'est donc x2important, et ne pas l'inclure dans le modèle a un grand impact sur le .R2

Mais si nous fixons la taille de l'effet à 0,3, nous obtenons:

> sim_ES(effect_size = 0.3)
$`95% CIs`
                2.5 %    97.5 %
(Intercept) 1.9888073 2.5563233
x1          4.9383698 5.2547929
x2          0.3512024 0.6717464

$R2_X1_X2
[1] 0.9542341

$R2_only_X1
[1] 0.9450327

Le coefficient est toujours significatif mais l'amélioration du est très faible.R2

Dimitris Rizopoulos
la source
La vague dichotomie entre la signification statistique et la performance prédictive est le fléau de ma vie analytique à plus d'un titre. (+1 - et bienvenue à CV Prof.!)
usεr11852
-1

C'est une chose assez normale qui se produit en régression multiple. La raison la plus courante est que vos prédicteurs sont liés les uns aux autres. En d'autres termes, vous pouvez déduire X des valeurs des autres prédicteurs. Par conséquent, bien qu'il soit utile pour les prévisions s'il s'agit du seul prédicteur dont vous disposez, une fois que vous disposez de tous les autres prédicteurs, il ne fournit pas beaucoup d'informations supplémentaires. Vous pouvez vérifier si c'est le cas en régressant X sur les autres prédicteurs. Je ferais également référence au chapitre sur la régression linéaire dans le manuel en ligne gratuit, Elements of Statistical Learning.

Denziloe
la source
1
Vous semblez décrire une variable explicative non significative plutôt que de traiter les circonstances spécifiques décrites dans la question.
whuber
Je décris une variable explicative qui est significativement liée à la réponse en elle-même (c'est-à-dire dans une simple régression), ce que je suppose que la question signifie par "X semble avoir un impact significatif sur ma variable de réponse".
Denziloe
Mais dans ce cas, je n'aurais pas trouvé que ma variable explicative X a un impact significatif sur ma variable de réponse, non? Peut-être que je n'ai pas précisé clairement ma question au départ, mais j'ai utilisé un modèle avec toutes les variables explicatives pour constater que la variable explicative X a une influence significative sur ma variable de réponse.
dubvice
3
J'ai lu la question comme signifiant que est significatif dans le contexte d'une régression multiple. Cela semble assez clair d'après les références à "plusieurs variables explicatives". Je crains que votre réponse ne prête à confusion. X
whuber
1
Oui whuber, vous l'avez bien compris. Voilà ce que je veux dire. J'espère avoir clarifié cela assez bien dans ma question.
dubvice