Mikä on GLM R: ssä?

Generalisoidut lineaariset mallit ovat lineaaristen regressiomallien osajoukko, joka tukee tehokkaasti ei-normaalijakaumaa. Tämän tukemiseksi on suositeltavaa käyttää glm () -toimintoa. GLM toimii hyvin muuttujan kanssa, kun varianssi ei ole vakio ja jakautuu normaalisti. Linkkifunktio määritetään vastausmuuttujan muuttamiseksi sopivaksi malliksi. LM-malli tehdään sekä perheen että kaavan kanssa. GLM-mallissa on kolme avainkomponenttia, joita kutsutaan satunnaiseksi (todennäköisyys), systemaattinen (lineaarinen ennustaja), linkkikomponentiksi (logit-toiminnolle). Glm: n käytön etuna on, että niillä on mallin joustavuus, ei tarvitse jatkuvaa varianssia ja tämä malli sopii suurimman todennäköisyyden arviointiin ja sen suhteisiin. Tässä aiheesta aiomme oppia GLM: stä R.

GLM-toiminto

Syntaksi: glm (kaava, perhe, data, painot, alajoukko, alku = nolla, malli = tosi, menetelmä = ””…)

Perhetyypit (mukaan lukien mallityypit) sisältävät binomi-, Poisson-, Gaussian-, gamma-, kvasi-tyypit. Jokainen jakelu suorittaa erilaisen käytön ja sitä voidaan käyttää joko luokittelussa ja ennustamisessa. Ja kun malli on gaussialainen, vastauksen tulisi olla todellinen kokonaisluku.

Ja kun malli on binomiaalinen, vasteen tulisi olla luokka binaariarvoilla.

Ja kun malli on Poisson, vasteen tulisi olla ei-negatiivinen numeerisella arvolla.

Ja kun malli on gamma, vasteen tulisi olla positiivinen numeerinen arvo.

glm.fit () - sopii malliin

Lrfit () - tarkoittaa logistista regressiosovitusta.

päivitys () - auttaa mallin päivittämisessä.

anova () - se on valinnainen testi.

Kuinka luoda GLM R: ssä?

Tässä nähdään kuinka luoda helppo yleistetty lineaarinen malli binaaritiedoilla käyttämällä glm () -toimintoa. Ja jatkamalla Trees-tietojoukkoa.

esimerkit

// Kirjaston tuominen
library(dplyr)
glimpse(trees)

Kategoristen arvojen näkemiseksi määritetään tekijät.

levels(factor(trees$Girth))

// Jatkuvien muuttujien tarkistaminen

library(dplyr)
continuous <-select_if(trees, is.numeric)
summary(continuous)

// Sisältää puutietoaineiston R-haussa Pathattach (puut)

x<-glm(Volume~Height+Girth)
x

lähtö:

Soita: glm (kaava = äänenvoimakkuus ~ korkeus + ympärysmitta)

kertoimet:

Korkeusmitta

-57.9877 0.3393 4.7082

Vapausaste: 30 Yhteensä (eli nolla); 28 jäännös

Null Deviance: 8106

Jäännöspoikkeus: 421, 9 AIC: 176, 9

summary(x)

Puhelu:

glm (kaava = tilavuus ~ korkeus + ympärysmitta)

Deviance-jäännökset:

Min 1Q Median 3Q Max

-6, 4065 -2, 6493 -0, 2876 2, 2003 8, 4847

kertoimet:

Estimate Std. Virhe t-arvo Pr (> | t |)

(Leikkaus) -57.9877 8.6382 -6.713 2.75e-07 ***

Korkeus 0.3393 0.1302 2.607 0.0145 *

Pituus 4.7082 0.2643 17.816 <2e-16 ***

-

SIGNIF. koodit: 0 '***' 0, 001 '**' 0, 01 '*' 0, 05 '.' 0, 1 '' 1

(Hajaantumisparametri gaussialaiselle perheelle on 15.06862)

Nollapoikkeama: 8106.08 30 vapausasteessa

Jäännöspoikkeama: 421, 92 28 vapausastetta

AIC: 176, 91

Fisherin pisteytyskertojen lukumäärä: 2

Yhteenveto-toiminnon lähtö antaa puhelut, kertoimet ja jäännökset. Yllä olevat vastaukset osoittavat, että sekä korkeuden että ympäryskertoimen tehot eivät ole merkitseviä, koska niiden todennäköisyys on alle 0, 5. Ja poikkeamia on kaksi, nimeltään nolla ja jäännös. Lopuksi kalastajan pisteytys on algoritmi, joka ratkaisee suurimpaan todennäköisyyteen liittyvät kysymykset. Binomiaalilla vaste on vektori tai matriisi. cbind (): tä käytetään sitomaan pylväsvektoreita matriisissa. Ja saadaksesi yksityiskohtaiset tiedot sopivuusyhteenvedosta käytetään.

Todella kuin huppu-testi, seuraava koodi suoritetaan.

step(x, test="LRT")
Start: AIC=176.91
Volume ~ Height + Girth
Df Deviance AIC scaled dev. Pr(>Chi)
421.9 176.91
- Height 1 524.3 181.65 6.735 0.009455 **
- Girth 1 5204.9 252.80 77.889 < 2.2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Call: glm(formula = Volume ~ Height + Girth)
Coefficients:
(Intercept) Height Girth
-57.9877 0.3393 4.7082
Degrees of Freedom: 30 Total (ie Null); 28 Residual
Null Deviance: 8106
Residual Deviance: 421.9 AIC: 176.9

Malli sopii

a<-cbind(Height, Girth - Height)
> a

Yhteenveto (puut)

Girth Height Volume
Min. : 8.30 Min. :63 Min. :10.20
1st Qu.:11.05 1st Qu.:72 1st Qu.:19.40
Median :12.90 Median :76 Median :24.20
Mean :13.25 Mean :76 Mean :30.17
3rd Qu.:15.25 3rd Qu.:80 3rd Qu.:37.30
Max. :20.60 Max. :87 Max. :77.00

Saadaksesi sopiva keskihajonta

apply(trees, sd)
Girth Height Volume
3.138139 6.371813 16.437846
predict <- predict(logit, data_test, type = 'response')

Seuraavaksi viitataan laskentavastemuuttujaan malliksi hyvä vastesovellus. Tämän laskemiseksi käytämme USAccDeath-tietojoukkoa.

Anna meidän kirjoittaa seuraavat katkelmat R-konsoliin ja katsoa, ​​kuinka vuosilaskenta ja vuosiruutu suoritetaan heille.

data("USAccDeaths")
force(USAccDeaths)

// Analysoida vuotta 1973-1978.

disc <- data.frame(count=as.numeric(USAccDeaths), year=seq(0, (length(USAccDeaths)-1), 1)))
yearSqr=disc$year^2
a1 <- glm(count~year+yearSqr, family="poisson", data=disc)
summary(a1)

Puhelu:

glm (kaava = laskea ~ vuosi + vuosiSqr, perhe = “poisson”, data = levy)

Deviance-jäännökset:

Min 1Q Median 3Q Max

-22, 4344 -6, 4401 -0, 0981 6, 0508 21, 4578

kertoimet:

Estimate Std. Virhe z-arvo Pr (> | z |)

(Leikkaus) 9.187e + 00 3.557e-03 2582.49 <2e-16 ***

vuosi -7.207e-03 2.354e-04 -30.62 <2e-16 ***

yearSqr 8.841e-05 3.221e-06 27.45 <2e-16 ***

-

SIGNIF. koodit: 0 '***' 0, 001 '**' 0, 01 '*' 0, 05 '.' 0, 1 '' 1

(Dispersioparametri Poisson-perheelle on 1)

Nollapoikkeama: 7357.4 71 vapausasteessa

Jäännöspoikkeama: 6358, 0 69 vapauden asteella

AIC: 7149, 8

Fisherin pisteytyskertojen lukumäärä: 4

Seuraavan komennon avulla voidaan varmistaa mallin parhaan sopivuuden löytäminen

testin jäännökset. Alla olevan tuloksen perusteella arvo on 0.

1 - pchisq(deviance(a1), df.residual(a1))

(1) 0

Käytä QuasiPoisson-perhettä suurempana variaationa annettuihin tietoihin

a2 <- glm(count~year+yearSqr, family="quasipoisson", data=disc)
summary(a2)

Puhelu:

glm (kaava = laskea ~ vuosi + vuosiSqr, perhe = “kvaasipoisson”,

data = levy)

Deviance-jäännökset:

Min 1Q Median 3Q Max

-22, 4344 -6, 4401 -0, 0981 6, 0508 21, 4578

kertoimet:

Estimate Std. Virhe t-arvo Pr (> | t |)

(Leikkaus) 9.187e + 00 3.417e-02 268.822 <2e-16 ***

vuosi -7.207e-03 2.261e-03 -3.188 0.00216 **

yearSqr 8.841e-05 3.095e-05 2.857 0.00565 **

-

(Kvasipoissoniperheen dispersioparametri on 92, 28857)

Nollapoikkeama: 7357.4 71 vapausasteessa

Jäännöspoikkeama: 6358, 0 69 vapauden asteella

AIC: NA

Fisherin pisteytyskertojen lukumäärä: 4

Poissonin vertaaminen binomiaaliseen AIC-arvoon eroaa merkittävästi. Niitä voidaan analysoida tarkkuuden ja palautussuhteen avulla. Seuraava askel on varmistaa, että jäännösvarianssi on verrannollinen keskiarvoon. Sitten voimme piirtää ROCR-kirjaston avulla mallin parantamiseksi.

johtopäätös

Siksi olemme keskittyneet erityiseen malliin, jota kutsutaan yleistetyksi lineaarimalliksi, joka auttaa keskittymään ja arvioimaan mallin parametreja. Se on ensisijaisesti potentiaali jatkuvalle vastemuuttujalle. Ja olemme nähneet kuinka glm sopii sisäänrakennettuihin R-paketteihin. Ne ovat suosituimpia lähestymistapoja laskentatietojen mittaamiseen ja vankka työkalu tietotieteilijöiden käyttämiin luokittelutekniikoihin. R-kieli auttaa tietysti suorittamaan monimutkaisia ​​matemaattisia tehtäviä

Suositellut artikkelit

Tämä on opas GLM: ään R. Tässä keskustelemme GLM-toiminnosta ja kuinka luoda GLM R: ssä puutietojoukkojen esimerkkien ja tulosteen kanssa. Voit myös tarkastella seuraavaa artikkelia saadaksesi lisätietoja -

  1. R-ohjelmointikieli
  2. Big Data -arkkitehtuuri
  3. Logistinen regressio R: ssä
  4. Big Data Analytics -työt
  5. Poisson-regressio R: ssä Poisson-regression toteuttaminen

Luokka: