Le comportement que vous observez est le cas «typique» de régression logistique, mais n'est pas toujours vrai. Il est également beaucoup plus général (voir ci-dessous). C'est la conséquence de la confluence de trois faits distincts.
- Le choix de modéliser les log-odds en fonction linéaire des prédicteurs,
- L'utilisation du maximum de vraisemblance pour obtenir des estimations des coefficients dans le modèle de régression logistique, et
- L'inclusion d'un terme d'interception dans le modèle.
Si l'un des éléments ci-dessus n'est pas présent, les probabilités moyennes estimées ne correspondent généralement pas à la proportion de celles de l'échantillon.
Cependant, (presque) tous les logiciels statistiques utilisent l'estimation du maximum de vraisemblance pour de tels modèles, donc, dans la pratique, les éléments 1 et 2 sont essentiellement toujours présents, et l'élément 3 est généralement présent, sauf dans des cas particuliers.
Quelques détails
Dans le cadre de régression logistique typique, nous observons le résultat d'essais binomiaux indépendants avec une probabilité . Soit y i les réponses observées. Alors la vraisemblance totale est
L = n ∏ i = 1 p y i i ( 1 - p i ) 1 - y i = n ∏ i = 1 exp ( y i log ( p i / ( 1 - p ipjeyje
et donc la log-vraisemblance est
ℓ = n ∑ i = 1 y i log ( p i / ( 1 - p i ) ) + n ∑ i = 1 log ( 1 - p i )
L = ∏i = 1npyjeje( 1 - pje)1 - yje= ∏i = 1nexp( yjeJournal( pje/ (1- pje) ) + journal( 1 - pje) ),
ℓ = ∑i = 1nyjeJournal( pje/ (1- pje) ) + ∑i = 1nJournal( 1 - pje).
Maintenant, nous avons un vecteur de prédicteurs pour chaque observation et d'après le fait 1 ci-dessus, le modèle de régression logistique postule que
log p iXje
Journalpje1 - pje= βTXje,
βpje= 1 / ( 1 + e- βTXje)
∂ℓ / ∂β= 0
∂ℓ∂β= ∑jeyjeXje- ∑jeXje1 + exp( - βTXje)= ∑jeyjeXje- ∑jepjeXje,
∑jeyjeXje= ∑jep^jeXje,
p^je= ( 1 + exp( - β^TXje) )- 1
Xjejje∑jeyjeXje j= ∑jeyje= ∑jep^je
Une simulation
R
x <- rnorm(100)
p <- 1/(1+exp(-3*x))
y <- runif(100) <= p
mean(y)
# Should be identical to mean(y)
mean( predict( glm(y~x, family="binomial"), type="response" ) )
# Won't be identical (usually) to mean(y)
mean( predict( glm(y~x+0, family="binomial"), type="response") )
Cas général : Comme mentionné ci-dessus, la propriété selon laquelle la réponse moyenne est égale à la moyenne prédite moyenne est beaucoup plus générale pour la classe des modèles linéaires généralisés ajustés par maximum de vraisemblance, en utilisant la fonction de lien canonique et en incluant une interception dans le modèle.
Les références
Quelques bonnes références pour la théorie associée sont les suivantes.
- A. Agresti (2002), Categorical Data Analysis , 2e éd., Wiley.
- P. McCullagh et JA Nelder (1989), Generalized Linear Models , 2e éd., Chapman & Hall. (Texte des auteurs originaux des méthodes générales.)