Momenter i multinomisk fordeling Forelesning 0 STK300 3. november 2008 S. O. Samuelsen Plan for forelesning:. Multinomisk fordeling 2. Multinomisk regresjon - ikke-ordnede kategorier 3. Multinomisk regresjon - ordnede kategorier Spesielt er Y j Bin(n,π j ) marginalt. Derfor får vi E[Y j ] = nπ j og Var[Y j ] = nπ j ( π j ) Dessuten er, for k j, Cov[Y j,y k ] = nπ j π k Dette følger ved å se på Y ij = indikator for kjennetegn j i forsøk i. Da blir Cov[Y ij,y ik ] = P(Y ij =,Y ik = ) P(Y ij = )P(Y ik = ) Forelesning 0 STK300 p. /22 = 0 π j π k og n n Cov[Y j,y k ] = Cov[ Y ij, Y ik ] = i= i= n Cov[Y ij,y ik ] = nπ j π k i= Forelesning 0 STK300 p. 3/22 Multinomisk fordeling: n uavhengige forsøk Observerer ett av J ulike kjennetegn i hvert forsøk Sannsynligheten for kjennetegn j er lik π j i hvert forsøk der altså π + π 2 + + π J = Med Y j = antall forsøk med kjennetegn j sier vi at Y = (Y,Y 2,...,Y J ) er multinomisk fordelt Y Multinom(n,π,π 2,...,π J ) Punktsannsynlighetene for Y gis da ved f(y n) = n! y!y 2!...y J! πy π y 2 2...π y J J for y j {0,,...,n} og J j= y j = n Forelesning 0 STK300 p. 2/22 Sammenheng med Poissonfordeling Anta at Y j Po(µ j ),j =,,J er uavhengige. Da er (Y,...,Y J J Y j = n) Multinom(n,π,...,π J ) j= der sannsynlighetene π j = µ j / J k= µ k. Dette følger av at J j= Y j Po( J k= µ k). Dermed P(Y = y,...,y J = y J J j= Y j = n) = P(Y =y,...,y J =y J ) = " Q µ y # j J j j= y j! exp( µ j) ( P J j= µ j ) n n! exp( P J j= µ j) n! µ = y µy 2 2...µyn n y!y 2!...y J! ( P J j= µ j ) n n! = y!y 2!...y J! πy π y 2 2...π y J J P( P J j= Y j=n) Forelesning 0 STK300 p. 4/22
"Multinomisk regresjon" Eks. (Faraway, "Extending the linear model with R"): Undersøkelse om hvem som stemte på Demokrater, Republikanerne eller Uavhengige ved valg i USA i 996 etter utdannelse og inntekt. > table(spid) spid Democrat Independent Republican 380 239 325 > table(nes96$educ) MS HSdrop HS Coll CCdeg BAdeg MAdeg 3 52 248 87 90 227 27 > table(nes96$income) $3Kminus $3K-$5K $5K-$7K $7K-$9K $9K-$0K $0K-$K 9 2 7 9 8 3 $K-$2K $2K-$3K $3K-$4K $4K-$5K $5K-$7K $7K-$20K 7 0 5 23 35 $20K-$22K $22K-$25K $25K-$30K $30K-$35K $35K-$40K $40K-$45K 26 39 68 70 62 48 $45K-$50K $50K-$60K $60K-$75K $75K-$90K $90K-$05K $05Kplus 5 00 03 53 47 68 Forelesning 0 STK300 p. 5/22 Nominell multinomisk logit modell: Med π ji = sannsynlighet for responskategori j for individ med kovariat x i : Merk: J j= π ji = π i = π ji = π ji π i = exp(β jx i ) + P J j=2 exp(β j x i) exp(β j x i) + P J k=2 exp(β k x i) for j > Ulike β j = (β j,...,β jp ) for hvert nivå j = 2, 3,...,J Likelihood: Med responsvektor Y i = (Y,...,Y i J i) n L = i= n i! Y!Y i 2!...Y i i J!πY i i i πy 2 2i...π Y i J Ji Forelesning 0 STK300 p. 7/22 Eks. Faraway, forts. Respons: Partivalg 3 kategorier: Demokrater, Republikanerne eller Uavhengige Multinomiske data Ikke opplagt ordning mellom kategoriene Forklaringsvariable: Utdannelse og inntekt Regresjon Regresjon for multinomiske responser med ikke-ordnede kategorier: Nominell multinomisk logit modell Nominell multinomisk logit modell: R-implementasjon Optimering av likelihooden for nominelle multinomiske data kan gjøres i R med rutinen multinom som finnes i standard-r-biblioteket nnet (kort for "nevralt nett"). > library(nnet) > mmod <- multinom(spid neduc + nincome, nes96) > mmod > multinom(spid neduc+nincome) # weights: 2 (6 variable) initial value 037.09000 iter 0 value 992.54868 final value 992.54853 converged Coefficients: (Intercept) neduc nincome Independent -.6305-0.00362094 0.064688 Republican -.05276 0.02844037 0.070930 Forelesning 0 STK300 p. 6/22 Residual Deviance: 985.030 AIC: 997.030 Forelesning 0 STK300 p. 8/22
Eks: Utdannelse spiller ingen rolle gitt inntekt > multinom(spid )$dev # weights: 6 (2 variable) initial value 037.09000 final value 020.636052 converged [] 204.272 > multinom(spid neduc)$dev [] 2030.478 > multinom(spid nincome)$dev [] 985.424 > multinom(spid nincome+neduc)$dev [] 985.030 Dev.endring 204.27-2030.48 = 0.79 med bare utdannelse Dev.endring 204.27-985.42 = 55.75 med bare inntekt Dev.endring 985.42-985.03 = 0.39 med utdannelse i tillegg til inntekt Eks: Må selv lage tabell med estimater, standardfeil, t-verdier og p-verdier: koeftab<-function(nnetmod){ koef<-summary(nnetmod)$coefficients se<-summary(nnetmod)$standard.errors koefb<-c(koef[,],koef[2,]) seb<-c(se[,],se[2,]) tval<-koefb/seb pval<-2*pnorm(-abs(koefb/seb)) tab<-cbind(koefb,seb,tval,pval) tab } > round(koeftab(mod),4) koefb seb tval pval (Intercept) -.63 0.256-4.5339 0.0000 nincome 0.06 0.003 5.240 0.0000 neduc -0.0036 0.057-0.0634 0.9495 (Intercept) -.0527 0.2380-4.4227 0.0000 nincome 0.07 0.0029 5.9747 0.0000 neduc 0.028 0.0526 0.5353 0.5925 Forelesning 0 STK300 p. 9/22 Forelesning 0 STK300 p. /22 Eks: Standardfeil fra summary.multinom mod<-multinom(spid nincome+neduc) # weights: 2 (6 variable) initial value 037.09000 iter 0 value 992.54868 final value 992.54853 converged > summary(mod,cor=f) Call: multinom(formula = spid nincome + neduc) Coefficients: (Intercept) nincome neduc Independent -.6305 0.064688-0.00362094 Republican -.05276 0.070930 0.02844037 Std. Errors: (Intercept) nincome neduc Independent 0.256357 0.00308403 0.0572273 Republican 0.2380262 0.002860900 0.05257820 Sammenheng vanlig og nominell multinomisk logit Vi har at Y i j Y i + Y i j = m i Bin(m i,π ji /(π i + π ji )) og π ji π i + π ji = exp(β j x i) + P J k=2 exp(β k x i) + P + exp(β j x i) J j=2 exp(β j x i) + P J k=2 exp(β k x i) = exp(β jx i ) + exp(β j x i), dvs. vanlig logistisk regresjons-modell for Y i j Y i + Y i j = m i. exp(β jl ) = OR jl = oddsratio mellom nivå j og for kovariat l Parametrene kan også estimeres ved separate logistiske regresjoner. Residual Deviance: 985.030 AIC: 997.030 Forelesning 0 STK300 p. 0/22 Forelesning 0 STK300 p. 2/22
Eks: Separate logistiske regresjoner > Rep<-*(sPID=="Republican") > Ind<-*(sPID=="Independent") > summary(glm(ind nincome+neduc,family=binomial,subset=rep!=)) Estimate Std. Error z value Pr(> z ) (Intercept) -.06370 0.25004-4.425 9.63e-06 *** nincome 0.05536 0.003063 5.073 3.92e-07 *** neduc -0.009809 0.05635-0.75 0.86 Null deviance: 825.7 on 68 degrees of freedom Residual deviance: 794.50 on 66 degrees of freedom AIC: 800.5 > summary(glm(rep nincome+neduc,family=binomial,subset=ind!=)) Estimate Std. Error z value Pr(> z ) (Intercept) -.052653 0.24909-4.35.35e-05 *** nincome 0.07754 0.002966 5.985 2.7e-09 *** neduc 0.02639 0.05408 0.400 0.689 Null deviance: 973.04 on 704 degrees of freedom Residual deviance: 924.26 on 702 degrees of freedom AIC: 930.26 Forelesning 0 STK300 p. 3/22 Ordnede (ordinale) kategoriske responser Eks: Fødselsvekt ble kategorisert i et eksempel til mindre (større) enn 2800 g. Kan også benytte flere terskelverdier, f.eks. 3500 g. Eks: Muligens en skala fra Demokrater via Uavhengige til Republikanere Generelt: en underliggende (typisk latent) skala Z og et sett av terskelverdier C < C 2 < < C J slik at individet kategoriseres til nivå dersom Z C Y = nivå j dersom C j < Z C j nivå J dersom C J < Z Y = j Y = J Merk: Y defineres på annen måte enn for nominelle data. Forelesning 0 STK300 p. 5/22 Eks: Sammendrag separate logistiske regresjoner Underliggende skala og terskelverdier Estimater med multinomisk og separate logistisk regresjon er tilsvarende, men ikke identiske Standardfeil er også tilsvarende, men ikke identiske Multinomisk regresjon er en full likelihood analyse Kan være like oversiktlig å gjøre de separate logistisk regresjonene C C 2 C 3 Her vil Z flyttes fram og tilbake langs x-aksen ettersom kovariater varierer. Forelesning 0 STK300 p. 4/22 Forelesning 0 STK300 p. 6/22
Modellering av ordinale multinomiske data Siden det er mer struktur i ordnede kategoriske data kan man modellere med færre parametre. Vi antar, at gitt kovariat x i, er den latente variablen Z i = β x i + Z 0i der P(Z 0i z) = F(z) for en passende kumulativ fordelingsfunksjon F(z). Da fås P(Y i j) = P(Z i C j ) = P(Z 0i C j β x i ) = F(C j β x i ) Merk at det bare er en parametervektor β Eks: "Democrats" < "Independent" < "Republican" Proporsjonale oddsmodeller tilasses i R med rutinen polr som finnes i MASS-biblioteket. Spesielt skal responsen - den ordnede faktoren - være spesifisert som en faktor. > library(mass) > summary(polr(as.factor(spid) nincome+neduc)) Coefficients: Value Std. Error t value nincome 0.026746 0.00226369 5.933807 neduc 0.02565506 0.040922490 0.626984 Dessuten er C j -ene ukjente, dvs. parametre Vi får ulike modeller med ulike valg av (invers) "link"-funksjon F(z) Forelesning 0 STK300 p. 7/22 Intercepts: Value Std. Error t value Democrat Independent 0.3025 0.867.6204 Independent Republican.3853 0.92 7.208 Residual Deviance: 994.970 AIC: 2002.970 Forelesning 0 STK300 p. 9/22 Proporsjonal oddsmodell: Logit-link Anta at F(z) = exp(z)/( + exp(z)). Da blir P(Y i j) = exp(c j β x i )/( + exp(c j β x i )) og med π ji = P(Y i = j) (som ved nominelle responser) og γ ji = P(Y i j) = π i + + π ji fås og dermed blir odds-ratioen γ ji γ ji = exp(c j β x i ) Eks: Sammendrag Estimatene for nincome og neduc har lignende koeffisienter som ved nominell logit modell Estimatene for nincome og neduc har også tilsvarende grad av signifikans Residual Devians var 985.03 for nominell logit og altså mindre enn 994.97 proporsjonale odds γ ji uavhengig av nivået C j. γ ji γ ji γ ji = exp(β (x i x i )) Forelesning 0 STK300 p. 8/22 Forelesning 0 STK300 p. 20/22
Utvidelser: Probit og Cloglog Spesifikasjonen P(Y i j) = F(C j β x i ) tillater andre (inverse) linkfunksjoner Probit: F(z) = φ(z) = z exp( z 2 /2) 2π dz Clog-log: F(z) = exp( exp(z)) Cauchit: F(z) = z dz = arctan(z) + π(+z 2 ) π 2 Forelesning 0 STK300 p. 2/22 Eks: Probit og Cloglog > summary(polr(as.factor(spid) nincome+neduc,method="probit")) Coefficients: Value Std. Error t value nincome 0.007887085 0.0032480 6.0092976 neduc 0.04567640 0.025430970 0.5728307 Intercepts: Value Std. Error t value Democrat Independent 0.82 0.54.5704 Independent Republican 0.8505 0.73 7.259 Residual Deviance: 994.564 AIC: 2002.564 > summary(polr(as.factor(spid) nincome+neduc,method="cloglog")) Coefficients: Value Std. Error t value nincome 0.009374659 0.004364 6.54834 neduc 0.007236995 0.028933467 0.250254 Intercepts: Value Std. Error t value Democrat Independent 0.5669 0.303 4.3503 Independent Republican.360 0.366 9.963 Residual Deviance: 989.348 AIC: 997.348 Forelesning 0 STK300 p. 22/22