• Non ci sono risultati.

Generalizirano linearno modeliranje predstavlja razvoj linearnih modela kako bi se distribucije i transformacije nenormalnog odgovora prilagodile linearnosti na uredan i izravan način. Generalizirani linearni model može se opisati u terminima sljedećih pretpostavki: ● Postoji odgovor y, koji je od interesa, te poticajne varijable x1 i x2, … , čije vrijednosti utječu na distribuciju varijable y.

● Poticajne varijable utječu na distribuciju y-a kroz samo jednu linearnu funkciju. Ta linearna funkcija se naziva linearni prediktor, i obično se piše

η = β1x1 + β2x2 + ···+ βpxp,

prema tome xi nema utjecaja na distribuciju y-a ako je βi = 0, i jedino u tom slučaju. ● Distribucija y-a ima oblik

fY(y;µ,φ) = exp { } + ( ( )) ( , ) ) γ λ µ τ ϕ λ ϕ y y A

gdje je φ parametar skale (možda poznat), i koji je konstantan za sva opažanja, A je prethodna težina, pretpostavljena kao poznata ali koja može varirati s opažanjima, a µ je

srednja vrijednost varijable y. Tako se pretpostavlja da je distribucija varijable y odreñena njegovom sredinom a takoñer možda i parametrom skale.

● Sredina, µ, je poravnata invertibilna funkcija linearnog prediktora: µ = m(η), η = m-1(µ) = l(µ)

i ta inverzna funkcija, l( ), se naziva link funkcija.

Ove pretpostavke su dostatno labave da uključe široku klasu modela korisnih u statističkoj praksi, a opet dostatno čvrste da dozvole razvoj unificirane metodologije procjene i zaključivanja, barem približno. Čitatelj se upućuje na bilo koju referencu suvremene literature iz tog područja za dobivanje potpunih podataka, na primjer McCullagh & Nelder (1989) ili Dobson (1990).

11.6.1 Familije generaliziranih linearnih modela

Klasa generaliziranih linearnih modela kojima se rukuje s pomoću R-ovih metoda uključuje gausovu, binomnu, binomnu, inverznu gausovu i gama distribuciju slučajne varijable, te takoñer modele kvazi-vjerojatnosti gdje distribucija nije eksplicitno specificirana. U ovom drugom slučaju, funkcija varijance mora biti specificirana kao funkcija sredine, ali u drugim slučajevima je ova funkcija implicirana u distribuciji.

Svaka distribucija dopušta različite funkcije povezivanja za spajanje sredine s linearnim prediktorom. One funkcije koje su automatski dostupne prikazane su u niže navedenoj tablici.

Family name Link functions binomial logit, probit, cloglog gaussian identity

Gamma identity, inverse, log inverse.gaussian 1/muˆ2

poisson identity, log, sqrt

quasi logit, probit, cloglog, identity, inverse, log, 1/muˆ2, sqrt

Kombinacija distribucija, funkcije povezivanja i raznih drugih informacija potrebnih za provoñenje vježbe modeliranja naziva se family – porodica generaliziranog linearnog modela.

11.6.2 Funkcija glm( )

Budući da distribucija ovisne varijable ovisi o poticajnim varijablama kroz samo jednu linearnu funkciju, jednaki mehanizam koji je bio upotrijebljen za linearne modele može se takoñer upotrijebiti za specificiranje linearnog dijela generaliziranog modela. Porodica mora biti specificirana na drukčiji način.

R-ova funkcija za usklañivanje generaliziranog linearnog modela je glm( ) koja ima oblik > fitted.model <- glm(formula, family=family.generator, data=data.frame)

Jedina nova karakteristika je family.generator, koji je instrument s pomoću kojega se porodica opisuje. To je naziv funkcije koja generira listu funkcija i izraza koji zajedno definiraju i kontroliraju model i proces procjene. Iako na prvi pogled može izgledati malo složeno, upotreba te funkcije je prilično jednostavna.

Nazivi standardnih raspoloživih generatora familija modela su navedeni pod "Nazivi familije" u tablici u Poglavlju 11.6.1 [Familije generaliziranih linearnih modela], str. 63. Gdje postoji izbor linkova, naziv linka se može takoñer dobiti s nazivom familije, u zagradama kao parametar. U slučaju kvazi familije, funkcija varijance se može takoñer specificirati na ovaj način.

Gaussova familija Pozivom poput

> fm <- glm(y ˜ x1 + x2, family = gaussian, data = sales) postiže se isti rezultat kao s pomoću

> fm <- lm(y ˜ x1+x2, data=sales)

ali mnogo manje učinkovito. Obratite pozornost da Gaussova familija nema automatski izbor linkova, pa nije dozvoljen niti jedan parametar. Ako problem iziskuje Gaussovu familiju s nestandardnim linkom, to se obično može postići putem kvazi familije, kako ćemo vidjeti kasnije.

Binomna familija

Razmotrimo mali, umjetni primjer, iz Silvery (1970).

Na otoku Kalythos u Egejskom moru muško stanovništvo ima priroñenu očnu bolest, čiji se simptomi s godinama života sve jače manifestiraju. Uzorci muškog stanovništva otoka razne životne dobi ispitani su na sljepoću te su zabilježeni rezultati ispitivanja. Podaci su prikazani dolje u tekstu

Godine starosti: 20 35 45 55 70 Broj testiranih: 50 50 50 50 50 Broj slijepih: 6 17 26 37 44

Problem s kojim se ovdje susrećemo je uskladiti oba, logistički i probit model, s ovim podacima te procijeniti za svaki model LD50, to jest životnu dob kod koje su izgledi sljepoće za muškog stanovnika 50%.

Ako je y broj slijepih u životnoj dobi x, a n broj ispitanika, oba modela imaju oblik y ~ B(n,F( β0 + β1x))

gdje je funkcija standardne normalne distribucije za probit model F(z) = Φ(z), a za logit model (default) F(z) = ez

/(1 + ez

). U oba slučaja LD50 je LD50 = β01

to jest, točka u kojoj je argument funkcije distribucije nula. Prvi je korak urediti podatke kao data frame

> kalythos <- data.frame(x = c(20,35,45,55,70), n = rep(50,5), y = c(6,17,26,37,44))

Za usklañivanje binomnog modela korištenjem glm( ) postoje dvije mogućnosti odgovora: ● Ako je odgovor vektor, pretpostavlja se da sadržava binarne podatke, pa tako mora biti 0/1 vektor.

● Ako je odgovor matrica s dva stupca, pretpostavlja se da prvi stupac sadržava broj uspjeha u ispitivanju, a drugi stupac broj promašaja.

Ovdje trebamo ovu drugu konvenciju, tako da našem data frame-u dodajemo matricu: > kalythos$Ymat <- cbind(kalythos$y, kalythos$n – kalythos$y)

Za usklañivanje modela koristimo

> fmp <- glm(Ymat ˜ x, family = binomial(link=probit), data = kalythos) > fm1 <- glm(Ymat ˜ x, family = binomial, data = kalythos)

Budući je logit link default, parametar se može izostaviti kod drugog pozivanja. Da bismo vidjeli rezultate svakog usklañivanja možemo upotrijebiti

> summary(fmp) > summary(fm1)

Oba modela su (i previše) dobro usklañena. Da bismo našli LD50 procjenu možemo upotrijebiti jednostavnu funkciju:

> ld50 <- function(b) -b[1]/ b[2]

> ldp <- ld50(coef(fmp)); 1dl <- ld50(coef(fml)); c(ldp, ldl)

Stvarne procjene iz tih podataka su 43.663 godine odnosno 43.601 godina. Poissonovi modeli

Kod Poissonove familije predefinirani link je log, a u praksi se ova familija uglavnom koristi za prilagoñavanje surogatnih Poissonovih nelinearnih modela s podacima učestalosti, čija je stvarna distribucija često multinomna. Ovo je velika i važna tematika o kojoj ovdje nećemo više raspravljati. Ona čak predstavlja glavni dio upotrebe sveukupnih ne-gausovih generaliziranih modela.

Ponekad se istinski Poissonov podatak pojavi u praksi, i u prošlosti je često bio analiziran kao gausovski podatak nakon log transformacije ili nakon transformacije drugog korijena. Kao elegantna alternativa ovog drugog slučaja, Poissonov generalizirani linearni model može se prilagoditi kao u niže navedenom primjeru:

> fmod <- glm(y ˜ A + B + x, family = poisson(link=sqrt), data = worm.counts)

Modeli kvazi-vjerojatnosti

Za sve porodice, varijanca odgovora će ovisiti o sredini i imat će parametar skale kao multiplikator. Oblik ovisnosti varijancije o sredini je karakteristika distribucije odgovora; na primjer za Poissonovu distribuciju Var[y] = µ.

Za procjenu i zaključak o kvazi-vjerojatnosti nije specificirana precizna distribucija odgovora nego radije samo funkcija povezivanja i oblik funkcije varijance jer ovisi o sredini. Budući procjena kvazi-vjerojatnosti koristi formalno identične tehnike kao Gaussova distribucija, ova porodica daje način prilagoñavanja Gaussovih modela s nestandardnim funkcijama povezivanja ili funkcijama varijance slučajno.

Na primjer, razmotrimo prilagoñavanje nelinearne regresije e z z y= + 2 1 1 θ

koje se može alternativno napisati kao

e y + + = 2 2 1 1 1 χ β χ β

gdje je x1 = z2/z1, χ2 = -1/χ1, β1 = 1/θ1 a β2 = θ21. Uz pretpostavku da se načini odgovarajući data frame, mogli bismo prilagoditi ovu nelinearnu regresiju kao

> nlfit <- glm(y ˜ x1 + x2 – 1,

family = quasi(link=inverse, variance=constant), data = biochem)

Documenti correlati