Forelesning 9 STK3100/4100 Plan for forelesning: 17. oktober 2011 Geir Storvik 1. Lineære blandede modeller 2. Marginale modeller 3. Estimering - ML og REML 4. Modell seleksjon p. 1
Modell med alle antagelser Y i =X i β +Z i b i +ε i,i = 1,...,N b i N(0,D) ε i N(0,Σ i ) b 1,..,b N,ε 1,...,ε N uavhengige Laird & Ware modell formulering Ofte: Forenklede strukturer på D,Σ i D = d 2 I,Σ i = σ 2 I p. 2
Marginal modell/likelihood Y i N(X i β,v i ) V i =Z i DZ T i +Σ i L i =f(y i ;β,ψ) avh av parametre ψ 1 = (2π) n i/2 V i 1/2 exp{ 1(Y 2 i X i β) T V 1 i (Y i X i β)} l i = n i log(2π) 1 log V 2 2 i 1(Y 2 i X i β) T V 1 i (Y i X i β) N l(β,ψ) = i=1 l i p. 3
Direkte spesifisering av marginal modell V i = τ 2 φ φ φ φ φ τ 2 φ φ φ φ φ τ 2 φ φ φ φ φ τ 2 φ φ φ φ φ τ 2 Compound symmetric structure, svarer til Σ i =σ 2 I,Z i = 1 T,D = d 2 = φ,τ = 2 = σ 2 +d 2 p. 4
Direkte spesifisering av marginal modell V i = τ 2 c 21 c 31 c 41 c 51 c 21 τ 2 c 32 c 42 c 52 c 31 c 32 τ 2 c 43 c 53 c 41 c 42 c 43 τ 2 c 54 c 51 c 52 c 53 c 54 τ 2 general correlation matrix p. 5
Eksempel Blandet modell > M.mixed <- lme(richness NAP, random = 1 fbeach, method = "REML", data = RIKZ) > summary(m.mixed)$coef$fixed (Intercept) NAP 6.581893-2.568400 Marginal modell > M.gls <- gls(richness NAP, method = "REML", correlation = corcompsymm(form = 1 fbeach), data = RIKZ) > coef(m.gls) (Intercept) NAP 6.581893-2.568400 p. 6
ML estimering l(β,ψ) = N i=1 Kan maksimeres numerisk [ n i 2 log(2π) 1 2 log V i 1 (Y 2 i X i β) T V 1 i (Y i X i β)] Gir forventningsskjeve estimater for varianser Finnes alternative strategier som gir forventningsrette estimater Lettest illustert først i vanlig lineær regresjonsmodell. p. 7
Estimering Vanlig: ML estimering. gir ˆµ = ȳ og Y i uif N(µ,σ 2 ) ˆσ 2 = 1 n n (y i ȳ) 2 Forventningsskjev i=1 Foretrekker ofte ˆσ 2 = 1 n 1 n (y i ȳ) 2 Forventningsrett i=1 Forventningsskjevhet i ML-estimat: Tar ikke hensyn til usikkerhet i µ p. 8
REML REML = Restricted maximum likelihood Modell (vanlig lineær regresjon): Y i = X i β +ε i, ε i N(0,σ 2 ) Ide: Transformere data slik atβ forsvinner. A er enn (n p) matrise slik at A T X = 0. Gir A T Y =A T Xβ +A T ε N(0,σ 2 A T A) Estimer σ 2 ved ML basert påa T Y i. p. 9
REML (forts) 1 1 L REML = exp{ Y T A[A T A] 1 A T Y} (2π) N/2 σ 2 A T A 1/2 2σ 2 l REML = N n p log(2π) logσ 2 1 2 2 2 log AT A 1 Y T A[A T A] 1 A T Y 2σ 2 Gir ˆσ 2 = 1 n p YT A[A T A] 1 A T Y p. 10
Eksempel Y i uif N(µ,σ 2 ) X =1 T N = (1 T N 1 1) A = I N 1 1 T N 1 A T X =I N 1 1 N 1 1 N 1 = 0 ˆσ 2 = 1 n (y i ȳ) 2 n 1 i=1 p. 11
REML og blandede modeller Modell Y i N(X i β,v i ), V i = Z i D Z T i +Σ i Kombinert Y N(Xβ,V) DefinerAslik at A T X = 0. Gir A T Y N(0,A T VA) Estimer parametre i V ved ML estimering basert på A T Y. Merk: Resultat ikke avhengig av hvordan vi spesifiserera. Gir forventningsrette estimater! Resultater avhengig av parametrisering (faktorer)! p. 12
Eksempel RIKZ$fExp<-RIKZ$Exposure RIKZ$fExp[RIKZ$fExp==8]<-10 RIKZ$fExp<-factor(RIKZ$fExp,levels=c(10,11)) M0.ML <- lme(richness NAP, data = RIKZ, random = 1 fbeach, method = "ML") M0.REML <-lme(richness NAP, data = RIKZ, random = 1 fbeach, method = "REML") M1.ML <- lme(richness NAP+fExp, data = RIKZ, random = 1 fbeach, method = "ML") M1.REML <- lme(richness NAP+fExp, data = RIKZ, random = 1 fbeach, method = "REML") p. 13
Modell valg i blandede modeller To modell-deler Faste effekter/forklaringsvariable Tilfeldige effekter/korrelasjonsstruktur Vil påvirke hverandre Nødvendig med ulike metoder p. 14
Modell seleksjonsprotokoll Hovedide: Ønsker mest forklart gjennom faste effekter 1. Start med modell med alle forklaringsvariable og så mange interaksjoner som mulig 2. Finn optimal struktur på tilfeldige effekter. Her bør REML brukes! 3. Finn optimal struktur for faste effekter. Her bør ML brukes! 4. Presenter endelig modell med REML estimering. p. 15
Metoder To hovedstrategier Informasjonskriterier: AIC, BIC Via hypotesetesting på parametre (nøstede modeller) t-observator (Wald test) F -observator (flere parametre/faktorer) Likelihood ratio test p. 16
AIC/BIC og ML AIC = 2 l(ˆθ)+2 q BIC = 2 l(ˆθ)+log(n) q Feil i boka q: Antall parametre i modell (β-er ogσ-er) n = N i=1 n i AIC: Minimerer prediksjonsfeil, kan gi for store modeller BIC: Vil asymptotisk velge riktig modell, men kan velge for små modeller for endelign. Kan brukes direkte ved ML estimering l(ˆθ) er log-likelihood verdi oppnådd ved ML. p. 17
AIC/BIC og REML AIC = 2 l(ˆθ)+2 q BIC = 2 l(ˆθ)+log(n p) q Feil i boka p: Antall regresjonsparametre Her er nå l(ˆθ) likelihood verdi oppnådd ved REML. Kan vise L REML (θ) = N i=1 X T i V 1 i X i 1/2 L ML (θ) p. 18
Eksempel gal tilnærming Biodiversitet: Starter med kun NAP som forklaringsvariabel Finner optimal struktur for tilfeldig effekt Ingen tilfeldige effekter Tilfeldig konstantledd for hvert område Tilfeldig konstantledd og stigningstall Sammenlikning med REML Merk: lm bruker ML, lme krever tilfeldig effekt, gls mulig. p. 19
Eksempel gal tilnærming > Wrong1 <- gls(richness 1 + NAP, method = "REML", data = RIKZ) > Wrong2 <- lme(richness 1 + NAP, random = 1 fbeach, method = "REML", data = RIKZ) > Wrong3 <- lme(richness 1 + NAP, method = "REML", random = 1 + NAP fbeach, data = RIKZ) > AIC(Wrong1,Wrong2,Wrong3) df AIC Wrong1 3 258.2010 Wrong2 4 247.4802 Wrong3 6 244.3839 > anova(wrong1,wrong2,wrong3) Model df AIC BIC loglik Test L.Ratio p-value Wrong1 1 3 258.2010 263.4846-126.1005 Wrong2 2 4 247.4802 254.5250-119.7401 1 vs 2 12.720753 0.0004 Wrong3 3 6 244.3839 254.9511-116.1919 2 vs 3 7.096378 0.0288 Best med tilfeldig konstantledd og stigningsledd. p. 20
LR tester for tilfeldige effekter H 0 : θ Θ 0 mot H 1 : θ Θ a LR test: Vanlig assymptotisk teori kreverθ 0 i det indre av Θ = Θ 0 Θ a. Har da 2LR χ 2 q a q 0. P-verdi = Pr(χ 2 q a q 0 > 2LR). Her: TesterH 0 : d 2 11 = 0. På grensen avθ : {d 2 11 0}. Kan vise: P-verdi for stor. Konservativ test. Presist: Antak tilfeldige effekter underh 0,k+1 tilfeldige effekter underh a. T = 2LR Pr(T > c) = 0.5 (Pr(χ 2 k > c)+pr(χ 2 k+1 > c)) Spesielt: k = 0: Pr(T > c) = 0.5 Pr(χ 2 1 > c) p. 21
Trinn 2: Valg av tilfeldige effekter Wrong1 mot Wrong2: > 1-0.5*(pchisq(T,0)+pchisq(T,1)) [1] 0.0001808101 Wrong2 mot Wrong3 > T = anova(wrong1,wrong2,wrong3)[3,8] > 1-0.5*(pchisq(T,1)+pchisq(T,2)) [1] 0.01825034 Velger modell Wrong3, dvs tilfeldig konstantledd og stigningskoefficient. p. 22
Trinn 3: Faste effekter > summary(wrong3) Fixed effects: Richness 1 + NAP Value Std.Error DF t-value p-value (Intercept) 6.588703 1.2647627 35 5.209438 0e+00 NAP -2.830027 0.7229387 35-3.914615 4e-04 NAP signifikant, legger til Exposure og interaksjon > RIKZ$fExp<-RIKZ$Exposure > RIKZ$fExp[RIKZ$fExp==8]<-10 > RIKZ$fExp<-factor(RIKZ$fExp,levels=c(10,11)) > Wrong4 <- lme(richness 1 + NAP * fexp,random = 1 + NAP fbeach, method = "REML", data = RIKZ) p. 23
Trinn 3 (forts) > anova(wrong4) numdf dendf F-value p-value (Intercept) 1 34 34.87139 <.0001 NAP 1 34 18.65502 0.0001 fexp 1 7 5.65495 0.0490 NAP:fExp 1 34 3.32296 0.0771 > summary(wrong4) Fixed effects: Richness 1 + NAP * fexp Value Std.Error DF t-value p-value (Intercept) 9.118945 1.2242357 34 7.448684 0.0000 NAP -3.879203 0.8816476 34-4.399947 0.0001 fexp11-5.534743 1.8510032 7-2.990132 0.0202 NAP:fExp11 2.429496 1.3327641 34 1.822900 0.0771 Interaksjon ikke signifikant p. 24
Trinn 3: Faste effekter > Wrong5 <- lme(richness 1 + NAP + fexp,random = 1 + NAP fbeach, method = "REML", data = RIKZ) > anova(wrong5) numdf dendf F-value p-value (Intercept) 1 35 34.95647 <.0001 NAP 1 35 14.11410 0.0006 fexp 1 7 5.95940 0.0447 > summary(wrong5) Fixed effects: Richness 1 + NAP + fexp Value Std.Error DF t-value p-value (Intercept) 8.407714 1.183419 35 7.104595 0.0000 NAP -2.808422 0.759642 35-3.697034 0.0007 fexp11-3.704917 1.517669 7-2.441189 0.0447 Exposure heller ikke signifikant på 5% nivå. Endelig modell: Y ij =α+b 1i +(β +b 2i )NAP ij +ε ij p. 25
Frihetsgrader Forklaringsvariable delt inn i to grupper Nivå 1: Variable med ulike verdier for hver observasjon innen gruppe. fg: Totalt antall obs - antall grupper/klustre - antall nivå 1 variable Eksempel: NAP, fg=45-9-1=35 Nivå 2: Variable med samme verdi innen hver gruppe. fg: Antall grupper - antall nivå 2 variable (inkl konstantledd) Eksempel: Exposure, fg=9-2=7 p. 26
Testing og ML > lmc <- lmecontrol(niterem = 5200, msmaxiter = 5200) > Wrong4A <- lme(richness 1 + NAP, method="ml", control = lmc, data = RIKZ, random = 1+NAP fbeach) > Wrong4B <- lme(richness 1 + NAP + fexp, random = 1 + NAP fbeach, method="ml", data = RIKZ,control = lmc) > Wrong4C <- lme(richness 1 + NAP * fexp, random = 1 + NAP fbeach, data = RIKZ, method = "ML", control = lmc) > anova(wrong4a, Wrong4B, Wrong4C) Model df AIC BIC loglik Test L.Ratio p-value Wrong4A 1 6 246.6578 257.4977-117.3289 Wrong4B 2 7 245.3353 257.9820-115.6677 1 vs 2 3.322437 0.0683 Wrong4C 3 8 243.2228 257.6761-113.6114 2 vs 3 4.112574 0.0426 Optimal modell: Kun NAP p. 27
Trinn 4: Endelig modell > Wrong5 <- lme(richness 1 + NAP,random = 1 + NAP fbeach, + method = "REML", data = RIKZ) > summary(wrong5) Random effects: Formula: 1 + NAP fbeach Structure: General positive-definite, Log-Cholesky parametrization StdDev Corr (Intercept) 3.549073 (Intr) NAP 1.714958-0.99 Residual 2.702822 Fixed effects: Richness 1 + NAP Value Std.Error DF t-value p-value (Intercept) 6.588704 1.2647638 35 5.209434 0e+00 NAP -2.830026 0.7229386 35-3.914615 4e-04 Number of Observations: 45 Number of Groups: 9 p. 28
God metode, trinn 1 Innkluderer begge variable med interaksjon > B1=gls(Richness 1+NAP*fExp,method="REML",data=RIKZ) > B2=lme(Richness 1+NAP*fExp,data=RIKZ,random= 1 fbeach,method="reml") > B3=lme(Richness 1+NAP*fExp,data=RIKZ,random= 1+NAP fbeach,method="reml > AIC(B1,B2,B3) df AIC B1 5 238.5329 B2 6 236.4925 B3 8 237.1331 Best modell: Tilfeldig effekt i konstantledd p. 29
God metode: Trinn 2 > summary(b2) Fixed effects: Richness 1 + NAP * fexp Value Std.Error DF t-value p-value (Intercept) 8.861084 1.0208450 34 8.680147 0.0000 NAP -3.463651 0.6278583 34-5.516613 0.0000 fexp11-5.255617 1.5452293 7-3.401189 0.0114 NAP:fExp11 2.000464 0.9461260 34 2.114374 0.0419 Dropper interaksjon p. 30
God metode: Trinn 2 (forts) > summary(b2) Fixed effects: Richness 1 + NAP * fexp Value Std.Error DF t-value p-value (Intercept) 8.861084 1.0208450 34 8.680147 0.0000 NAP -3.463651 0.6278583 34-5.516613 0.0000 fexp11-5.255617 1.5452293 7-3.401189 0.0114 NAP:fExp11 2.000464 0.9461260 34 2.114374 0.0419 Dropper interaksjon p. 31
God metode: Trinn 3 > B2B=lme(Richness 1+NAP+fExp,data=RIKZ,random= 1 fbeach,method="reml") > summary(b2b) Linear mixed-effects model fit by REML Data: RIKZ AIC BIC loglik 240.5538 249.2422-115.2769 Random effects: Formula: 1 fbeach (Intercept) Residual StdDev: 1.907175 3.059089 Fixed effects: Richness 1 + NAP + fexp Value Std.Error DF t-value p-value (Intercept) 8.601088 1.0594875 35 8.118158 0.0000 NAP -2.581708 0.4883901 35-5.286160 0.0000 fexp11-4.532777 1.5755610 7-2.876929 0.0238 Endelig modell: Y ij =α+b i +β 1 NAP ij +β 2 Exposure i +ε ij p. 32
Modell validering/residualer Respons residualer (default i R): Y ij ŷ ij Standardiserte residualer (Pearson residualer) Y ij ŷ ij sd[y ij ] Begge kan beregnes på ulike nivåer: Nivå 0: Populasjonsnivå. ŷ ij = X T i ˆβ. Nivå 1: Innen gruppe. ŷ ij = X T i ˆβ +Z T i ˆb i. (Default) sd[y ij ] justert etter hvilket nivå en bruker. p. 33