In un GLM, la probabilità di log del modello saturo è sempre zero?


14

Come parte dell'output di un modello lineare generalizzato, la deviazione nulla e residua vengono utilizzate per valutare il modello. Vedo spesso le formule per queste quantità espresse in termini di probabilità logaritmica del modello saturo, ad esempio: /stats//a/113022/22199 , Regressione logistica: come ottenere un modello saturo

Il modello saturo, per quanto ho capito, è il modello che si adatta perfettamente alla risposta osservata. Pertanto, nella maggior parte dei luoghi che ho visto, la probabilità di log del modello saturo viene sempre indicata come zero.

Tuttavia, il modo in cui viene data la formula della devianza suggerisce che a volte questa quantità è diversa da zero. (Come se fosse sempre zero, perché preoccuparsi di includerlo?)

In quali casi può essere diverso da zero? Se non è mai diverso da zero, perché includerlo nella formula per devianza?

Risposte:


18

Se intendevi veramente verosimiglianza , allora la risposta è: non è sempre zero.

Ad esempio, considerare i dati di Poisson: yiPoisson(μi),i=1,,n . La probabilità logaritmica per Y=(y1,,yn) è data da:

()(μ;Y)=i=1nμi+i=1nyilogμii=1nlog(yi!).

Differenzia (μ;Y) in () rispetto a μi e impostalo su 0 (è così che otteniamo il MLE per il modello saturo):

-1+yioμio=0.
risolvere questo perμioottenga μ i=yi, sostituendo μ iresta in(*)perμidà che verosimiglianza del modello saturo è: ( μ ;Y)=n i=1yi(logyi-1)-n i=μ^io=yioμ^io(*)μio meno che y i
(μ^;Y)=Σio=1nyio(logyio-1)-Σio=1nlog(yio!)0
yio prendo valori molto speciali.

Nella pagina di aiuto della Rfunzione glm, sotto l'elemento deviance, il documento spiega questo problema come segue:

deviance fino a una costante, meno il doppio della probabilità logaritmica massima. Ove sensato, la costante viene scelta in modo tale che un modello saturo abbia devianza zero.

Si noti che ha menzionato che la devianza , invece della verosimiglianza del modello saturo, è stata scelta come zero.

Probabilmente, quello che volevi davvero confermare è che "la devianza del modello saturo viene sempre data come zero", il che è vero, dal momento della devianza, per definizione (vedi Sezione 4.5.1 di Analisi dei dati categorici (2a edizione) di Alan Agresti) è la statistica del rapporto di probabilità di un GLM specificato rispetto al modello saturo. Quanto constantsopra menzionato nella documentazione R è in realtà il doppio della probabilità logaritmica massima del modello saturo.

Per quanto riguarda la tua affermazione "Tuttavia, il modo in cui viene data la formula della devianza suggerisce che a volte questa quantità è diversa da zero", è probabilmente dovuto all'abuso dell'uso del termine devianza . Ad esempio, in R, la statistica del rapporto di verosimiglianza del confronto tra due modelli arbitrari (nidificati) e M 2 viene anche definita devianza, che sarebbe più precisamente definita come la differenza tra la devianza di M 1 e la devianza di M 2 , se seguissimo da vicino la definizione data nel libro di Agresti.M1M2M1M2

Conclusione

  1. La probabilità logaritmica del modello saturo è generalmente diversa da zero.

  2. La deviazione (nella sua definizione originale) del modello saturo è zero.

  3. L' output di devianza dai software (come R) è generalmente diverso da zero in quanto in realtà significa qualcos'altro (la differenza tra deviazioni).


Quelli che seguono sono la derivazione del caso familiare esponenziale generale e un altro esempio concreto. Supponiamo che i dati provengano da una famiglia esponenziale (vedi Statistica applicata moderna con S , capitolo ): f ( y i ; θ i , φ ) = exp [ A i ( y i θ i - γ ( θ i ) ) / φ + τ ( y i , φ / A i ) ] .7

(1)f(yio;θio,φ)=exp[UNio(yioθio-γ(θio))/φ+τ(yio,φ/UNio)].
dove UNio sono noti pesi precedenti e sono parametri di dispersione / scala (per molti casi come binomiale e Poisson, questo parametro è noto, mentre per altri casi come normale e Gamma, questo parametro è sconosciuto). Quindi la probabilità logaritmica è data da: ( θ , φ ; Y ) = n i = 1 A i ( y i θ i - γ ( θ i ) ) / φ + n i = 1 τφ Come nell'esempio di Poisson, i parametri del modello saturo possono essere stimati risolvendo la seguentefunzione dipunteggio: 0 = U ( θ i ) = ( θ , φ ; Y )
(θ,φ;Y)=i=1nAi(yiθiγ(θi))/φ+i=1nτ(yi,φ/Ai).
0=U(θi)=(θ,φ;Y)θi=Ai(yiγ(θi))φ

θ^i

()(θ^,φ;Y)=i=1nAi(yiθ^iγ(θ^i))/φ+i=1nτ(yi,φ/Ai).

()Γ(α,β)


f(y;α,β)=βαΓ(α)e-βyyα-1,y>0,α>0,β>0,
f(1)
φ=1α,θ=-βα,
f
f(y;θ,φ)=exp[θy-(-log(-θ))φ+τ(y,φ)],
τ(y,φ)=logφφ+(1φ1)logylogΓ(φ1).
θ^i=1yi
i=1n1φ[θ^iyi(log(θ^i))]=i=1n1φ[1log(yi)]0,
unless yi take very special values.

1
Il loglikelihood è zero se e solo se il modello può assegnare il 100% di probabilità a ciascuno dei possibili risultati?
Alex,

Non capisco bene cosa volevi dire. Ma dalla mia derivazione potresti concludere che lo è0 se e solo se il τ è identico 0 e non esiste alcun parametro di dispersione.
Zhanxiong,

La tua derivazione è molto buona, ma la prova formale è un po 'sopra la mia testa in questo momento. Grazie per il tuo esempio con il modello Poisson. Quello che ho preso da questo esempio è che il modello di Poisson non può assegnare il 100% di probabilità al risultato osservato dato un valore per la media di Poisson, quindi la probabilità non può essere zero.
Alex

L'istruzione "modello assegnato 100% probabilità per il risultato osservato "suona strano per me. Vuoi dire che date le osservazioni y1,...,yn, e se Y è una variabile casuale di Poisson, P(Y=y1)+P(Y=y2)++P(Y=yn)<1?
Zhanxiong,

1
Quello che volevo dire è che se Y era una variabile casuale di Poisson, allora P(Y=yio)<1 per ogni ioo Poisson significa, quindi è impossibile trovare qualsiasi parametro del modello che dia una probabilità log pari a zero per l'osservato. Forse sto completamente fraintendendo il concetto di un modello saturo.
Alex

4

La risposta di Zhanxiong è già ottima (+1), ma ecco una rapida dimostrazione che la probabilità logaritmica del modello saturo è 0per una regressione logistica. Ho pensato che avrei pubblicato perché non avevo visto questo TeX su questo sito e perché li avevo appena scritti per una lezione.

La probabilità è

(1)L(y;X,β)=Πio=1nf(yio;Xio,β)=Πio=1nπioyio(1-πio)1-yio=Πio=1n(πio1-πio)yio(1-πio)
dove πio=invlogit(Xioβ).

La probabilità logaritmica è

logL(y;X,β)=Σio=1nyiolog(πio1-πio)+log(1-πio)=Σio=1nyiologit(πio)+log(1-πio)=Σio=1nyioXioβ+log(1-invlogit(Xioβ))=Σio=1nyioXioβ+log(invlogit(-Xioβ))=Σio=1nyioXioβ-log(1+exp[Xioβ]))

Se prendi i derivati ​​rispetto a tutti i coefficienti che ottieni

(2)(β)=Σio=1nyioXio-exp[Xioβ](1+exp[Xioβ])Xio.

Impostando questa espressione uguale a 0 e risolvendo per βti darà la tua risposta. Di solito questo non può essere fatto analiticamente, il che spiega la popolarità / necessità dell'uso di algoritmi iterativi per adattarsi a questo modello, ma nel caso di un modello saturo, è possibile.

Per trovare il modello saturo, diamo ad ogni riga il proprio coefficiente. CosìβRn e la matrice di progettazione moltiplicata per il vettore del coefficiente

Xβ=[100010001][β1β2βn].

Si noti che in particolare, Xioβ=βio.

Quindi prendendo il jla riga dell'equazione (2) ci dà

Σio=1nyioXio,j=Σio=1nexp[Xioβ](1+exp[Xioβ])Xio,j

che può essere vero solo se per ogni osservazione io:

yio=invlogit(βio)
o in altre parole ciascuno βio è più o meno infinito (se yio è 1 o 0, rispettivamente). Possiamo ricollegare questi parametri in (1) per ottenere la massima probabilità:
Πio=1nπ^ioyio(1-π^io)1-yio=1n=1.
Chiaramente il registro di questo è 0.


Ma questo presuppone dati non raggruppati . Se hai gruppi connio>1(e gli stessi valori di covariata) (in R, ad esempio utilizzando il modulo glm( cbind(k, n-k) ~ x + ... ), il modello saturo non ha zero loglikelihood.
kjetil b halvorsen,

@kjetilbhalvorsen oh buon punto. Non ho mai provato a farmi controllare
Taylor

1

@Alex: sì, esatto. almeno per le distribuzioni discrete. per le distribuzioni continue, si tratterebbe di lasciare che la densità sia uguale a 1, il che non è necessariamente significativo e quindi non è una cosa sensata da provare e da raggiungere. leggermente più in generale, la probabilità logaritmica del modello saturo offre un limite superiore per le prestazioni di qualsiasi modello che segue il presupposto della famiglia di distribuzione sottostante. In altre parole, la probabilità logaritmica di un modello binomiale saturo è "buona quanto ottiene" per il dato set di dati (X, Y) supponendo che Y sia binomiale. Ha senso confrontare il tuo modello glm con questo limite superiore al 100% (o simile), dal momento che il tuo modello è intrinsecamente vincolato dal tuo presupposto sulla distribuzione della risposta.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.