R Yksinkertainen, moninkertainen lineaarinen ja asteittainen regressio (esimerkin kanssa)

Tässä opetusohjelmassa opit

  • Yksinkertainen lineaarinen regressio
  • Moninkertainen lineaarinen regressio
  • Jatkuvat muuttujat
  • Tekijöiden regressio
  • Porrastettu regressio
  • Koneoppiminen
  • Ohjattu oppiminen
  • Valvomaton oppiminen

Yksinkertainen lineaarinen regressio

Lineaarinen regressio vastaa yksinkertaiseen kysymykseen: Voitteko mitata tarkan suhteen yhden kohdemuuttujan ja ennustinsarjan välillä?

Yksinkertaisin todennäköisyysmalleista on suoraviivainen malli:

missä

  • y = Riippuva muuttuja
  • x = Itsenäinen muuttuja
  • = satunnaisvirhekomponentti
  • = sieppaus
  • = X: n kerroin

Harkitse seuraavaa juonia:

Yhtälö on leikkaus. Jos x on 0, y on yhtä suuri kuin leikkaus, 4,77. on viivan kaltevuus. Se kertoo missä suhteessa y vaihtelee, kun x vaihtelee.

Arvioidaksesi optimaaliset arvot käytät menetelmää nimeltä Tavalliset pienimmät neliöt (OLS) . Tämä menetelmä yrittää löytää parametrit, jotka minimoivat neliövirheiden summan, eli ennustettujen y-arvojen ja todellisten y-arvojen välisen pystysuoran etäisyyden. Ero tunnetaan virheterminä .

Ennen kuin arvioit mallin, voit selvittää, onko y: n ja x: n välinen lineaarinen suhde uskottava, piirtämällä sirontakaavio.

Hajontakaavio

Käytämme hyvin yksinkertaista tietoaineistoa yksinkertaisen lineaarisen regressioon käsitteen selittämiseksi. Tuomme keskimääräiset korkeudet ja painot amerikkalaisille naisille. Aineisto sisältää 15 havaintoa. Haluat mitata, korreloivatko korkeudet painojen kanssa.

library(ggplot2)path <- 'https://raw.githubusercontent.com/guru99-edu/R-Programming/master/women.csv'df <-read.csv(path)ggplot(df,aes(x=height, y = weight))+geom_point()

Tuotos:

Hajontakaavio ehdottaa yleistä taipumusta y: n kasvamiseen, kun x kasvaa. Seuraavassa vaiheessa mitataan kuinka paljon korotuksia lisätään.

Vähiten neliöarvioita

Yksinkertaisessa OLS-regressiossa laskenta on suoraviivaista. Tavoitteena ei ole näyttää johdannaista tässä opetusohjelmassa. Kirjoitat vain kaavan.

Haluat arvioida:

OLS-regressiolla pyritään minimoimaan seuraava yhtälö:

missä

ennustettu arvo.

Ratkaisu

Huomaa, että se tarkoittaa x: n keskimääräistä arvoa

Ratkaisu

R: ssä voit käyttää arviointiin funktioita cov () ja var () ja estimoida funktiota

beta <- cov(df$height, df$weight) / var (df$height)beta

Tuotos:

##[1] 3.45
alpha <- mean(df$weight) - beta * mean(df$height)alpha

Tuotos:

## [1] -87.51667

Beeta-kerroin tarkoittaa, että paino kasvaa jokaisella lisäkorkeudella 3,45.

Yksinkertaisen lineaarisen yhtälön arvioiminen manuaalisesti ei ole ihanteellinen. R tarjoaa sopivan toiminnon näiden parametrien arvioimiseksi. Näet tämän toiminnon pian. Ennen sitä esitellään miten lasketaan käsin yksinkertainen lineaarinen regressiomalli. Datatieteilijän matkallasi tuskin tai ei koskaan arvioida yksinkertaista lineaarista mallia. Useimmissa tilanteissa regressiotehtävät suoritetaan useille arvioijille.

Moninkertainen lineaarinen regressio

Regressioanalyysin käytännön sovelluksissa käytetään malleja, jotka ovat monimutkaisempia kuin yksinkertainen suoraviivainen malli. Todennäköisyysmallia, joka sisältää useamman kuin yhden riippumattoman muuttujan, kutsutaan useiksi regressiomalleiksi . Tämän mallin yleinen muoto on:

Matriisimerkinnässä voit kirjoittaa mallin uudelleen:

Riippuva muuttuja y on nyt k riippumattoman muuttujan funktio. Kertoimen arvo .

Esittelemme lyhyesti oletuksen, jonka teimme OLS: n satunnaisesta virheestä :

  • Keskiarvo yhtä kuin 0
  • Varianssi on yhtä suuri kuin
  • Normaalijakauma
  • Satunnaiset virheet ovat riippumattomia (todennäköisyyssuunnassa)

Sinun on ratkaistava regressiokertoimien vektori, joka minimoi ennustettujen ja todellisten y-arvojen välisten neliövirheiden summan.

Suljettu ratkaisu on:

kanssa:

  • ilmaisee matriisin X transponoinnin
  • ilmaisee käännettävän matriisin

Käytämme mtcars-tietojoukkoa. Tiedät jo tietojoukon. Tavoitteenamme on ennustaa mailia gallonaa kohti joukko ominaisuuksia.

Jatkuvat muuttujat

Toistaiseksi käytät vain jatkuvia muuttujia ja jätät sivuun kategoriset ominaisuudet. Muuttuja am on binäärimuuttuja, joka saa arvon 1, jos vaihteisto on manuaalinen, ja 0 arvon automaattiautoille; vs on myös binaarinen muuttuja.

library(dplyr)df <- mtcars % > %select(-c(am, vs, cyl, gear, carb))glimpse(df)

Tuotos:

## Observations: 32## Variables: 6## $ mpg  21.0, 21.0, 22.8, 21.4, 18.7, 18.1, 14.3, 24.4, 22.8, 19… .## $ disp  160.0, 160.0, 108.0, 258.0, 360.0, 225.0, 360.0, 146.7, 1… ## $ hp  110, 110, 93, 110, 175, 105, 245, 62, 95, 123, 123, 180,… ## $ drat  3.90, 3.90, 3.85, 3.08, 3.15, 2.76, 3.21, 3.69, 3.92, 3.9… ## $ wt  2.620, 2.875, 2.320, 3.215, 3.440, 3.460, 3.570, 3.190, 3… ## $ qsec  16.46, 17.02, 18.61, 19.44, 17.02, 20.22, 15.84, 20.00, 2… 

Voit laskea parametrit lm () -toiminnolla. Tämän toiminnon perussyntaksi on:

lm(formula, data, subset)Arguments:-formula: The equation you want to estimate-data: The dataset used-subset: Estimate the model on a subset of the dataset

Muista, että yhtälö on seuraavan muotoinen

julkaisussa R

  • Symboli = korvataan merkillä ~
  • Jokainen x korvataan muuttujan nimellä
  • Jos haluat pudottaa vakion, lisää -1 kaavan loppuun

Esimerkki:

Haluat arvioida yksilöiden painon heidän pituuden ja tulojen perusteella. Yhtälö on

R: n yhtälö kirjoitetaan seuraavasti:

y ~ X1 + X2 +… + Xn # Sieppauksella

Joten esimerkissämme:

  • Punnitse ~ korkeus + tuotot

Tavoitteenasi on arvioida mailia gallonaa kohti muuttujien joukon perusteella. Arvioitava yhtälö on:

Arvioit ensimmäisen lineaarisen regressiosi ja tallennat tuloksen sovitusobjektiin.

model <- mpg~.disp + hp + drat + wtfit <- lm(model, df)fit

Koodin selitys

  • malli <- mpg ~ . disp + hp + drat + wt: Tallenna malli arvioidaksesi
  • lm (malli, df): Arvioi malli datakehyksellä df
#### Call:## lm(formula = model, data = df)#### Coefficients:## (Intercept) disp hp drat wt## 16.53357 0.00872 -0.02060 2.01577 -4.38546## qsec## 0.64015

Tuotos ei anna tarpeeksi tietoa istuvuuden laadusta. Yhteenveto () -funktiolla voit käyttää lisätietoja, kuten kertoimien merkitystä, vapauden astetta ja jäännösten muotoa.

summary(fit)

Tuotos:

## return the p-value and coefficient#### Call:## lm(formula = model, data = df)#### Residuals:## Min 1Q Median 3Q Max## -3.5404 -1.6701 -0.4264 1.1320 5.4996#### Coefficients:## Estimate Std. Error t value Pr(>|t|)## (Intercept) 16.53357 10.96423 1.508 0.14362## disp 0.00872 0.01119 0.779 0.44281## hp -0.02060 0.01528 -1.348 0.18936## drat 2.01578 1.30946 1.539 0.13579## wt -4.38546 1.24343 -3.527 0.00158 **## qsec 0.64015 0.45934 1.394 0.17523## ---## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1#### Residual standard error: 2.558 on 26 degrees of freedom## Multiple R-squared: 0.8489, Adjusted R-squared: 0.8199## F-statistic: 29.22 on 5 and 26 DF, p-value: 6.892e-10

Johtopäätös yllä olevasta taulukon tuotoksesta

  • Yllä oleva taulukko osoittaa, että paino- ja mittarilukemien välillä on vahva kielteinen suhde drattiin.
  • Ainoastaan ​​muuttujalla wt on tilastollinen vaikutus mpg: hen. Muista, että hypoteesin testaamiseksi tilastossa käytämme:
    • H0: Ei tilastollisia vaikutuksia
    • H3: Ennustimella on merkittävä vaikutus y: hen
    • Jos p-arvo on alle 0,05, se osoittaa, että muuttuja on tilastollisesti merkitsevä
  • Säädetty R-neliö: Varianssi selitetään mallilla. Mallissasi malli selitti 82 prosenttia varianssista y. R-neliö on aina välillä 0 - 1. Mitä korkeampi, sitä parempi

Voit suorittaa ANOVA-testin arvioidaksesi kunkin ominaisuuden vaikutuksen variaatioihin anova () -toiminnon avulla.

anova(fit)

Tuotos:

## Analysis of Variance Table#### Response: mpg## Df Sum Sq Mean Sq F value Pr(>F)## disp 1 808.89 808.89 123.6185 2.23e-11 ***## hp 1 33.67 33.67 5.1449 0.031854 *## drat 1 30.15 30.15 4.6073 0.041340 *## wt 1 70.51 70.51 10.7754 0.002933 **## qsec 1 12.71 12.71 1.9422 0.175233## Residuals 26 170.13 6.54## ---## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Tavanomaisempi tapa arvioida mallin suorituskyky on näyttää jäännös eri mittoihin nähden.

Voit käyttää plot () -toimintoa näyttääksesi neljä kuvaajaa:

- Jäännökset vs. sovitetut arvot

Normaali QQ-käyrä: teoreettinen kvartiili vs. standardoidut jäännökset

- Scale-Location: Asennetut arvot verrattuna standardoitujen jäännösten neliöjuuriin

- jäännökset vs. vipuvaikutus: vipuvaikutus vs. standardoidut jäännökset

Lisät koodin par (mfrow = c (2,2)) ennen plot (fit). Jos et lisää tätä koodiriviä, R kehottaa sinua painamaan Enter-komentoa, jotta seuraava kaavio näytetään.

par(mfrow=(2,2))

Koodin selitys

  • (mfrow = c (2,2)): palauta ikkuna, jossa on neljä kuvaajaa vierekkäin.
  • Ensimmäiset 2 lisää rivien määrän
  • Toinen 2 lisää sarakkeiden määrän.
  • Jos kirjoitat (mfrow = c (3,2)): luot 3 rivin 2 sarakkeen ikkunan
plot(fit)

Tuotos:

Kaava lm () palauttaa luettelon, joka sisältää paljon hyödyllistä tietoa. Voit käyttää niitä luomallasi fit-objektilla, jota seuraa $ -merkki ja tiedot, jotka haluat purkaa.

- kertoimet: "fit $ kertoimet"

- jäännökset: "fit $ jäännökset"

- sovitettu arvo: `fit $ fit.values`

Tekijöiden regressio

Viimeisessä malliarvioinnissa regressoidaan mpg vain jatkuville muuttujille. Tekijämuuttujien lisääminen malliin on suoraviivaista. Lisät muuttujan am malliin. On tärkeää varmistaa, että muuttuja on tekijätaso eikä jatkuva.

df <- mtcars % > %mutate(cyl = factor(cyl),vs = factor(vs),am = factor(am),gear = factor(gear),carb = factor(carb))summary(lm(model, df))

Tuotos:

#### Call:## lm(formula = model, data = df)#### Residuals:## Min 1Q Median 3Q Max## -3.5087 -1.3584 -0.0948 0.7745 4.6251#### Coefficients:## Estimate Std. Error t value Pr(>|t|)## (Intercept) 23.87913 20.06582 1.190 0.2525## cyl6 -2.64870 3.04089 -0.871 0.3975## cyl8 -0.33616 7.15954 -0.047 0.9632## disp 0.03555 0.03190 1.114 0.2827## hp -0.07051 0.03943 -1.788 0.0939 .## drat 1.18283 2.48348 0.476 0.6407## wt -4.52978 2.53875 -1.784 0.0946 .## qsec 0.36784 0.93540 0.393 0.6997## vs1 1.93085 2.87126 0.672 0.5115## am1 1.21212 3.21355 0.377 0.7113## gear4 1.11435 3.79952 0.293 0.7733## gear5 2.52840 3.73636 0.677 0.5089## carb2 -0.97935 2.31797 -0.423 0.6787## carb3 2.99964 4.29355 0.699 0.4955## carb4 1.09142 4.44962 0.245 0.8096## carb6 4.47757 6.38406 0.701 0.4938## carb8 7.25041 8.36057 0.867 0.3995## ---## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1#### Residual standard error: 2.833 on 15 degrees of freedom## Multiple R-squared: 0.8931, Adjusted R-squared: 0.779## F-statistic: 7.83 on 16 and 15 DF, p-value: 0.000124

R käyttää ensimmäistä tekijätasoa perusryhmänä. Sinun täytyy verrata toisen ryhmän kertoimia perusryhmään.

Porrastettu regressio

Tämän opetusohjelman viimeinen osa käsittelee vaiheittaista regressioalgoritmia . Tämän algoritmin tarkoituksena on lisätä ja poistaa mahdollisia ehdokkaita malleihin ja pitää ne, joilla on merkittävä vaikutus riippuvaan muuttujaan. Tällä algoritmilla on merkitystä, kun tietojoukko sisältää suuren määrän ennustajia. Sinun ei tarvitse lisätä tai poistaa itsenäisiä muuttujia manuaalisesti. Porrastettu regressio on rakennettu valitsemaan parhaat ehdokkaat, jotka sopivat malliin.

Katsotaanpa toiminnassa miten se toimii. Mtcars-tietojoukkoa käytetään jatkuvien muuttujien kanssa vain pedagogiseen kuvaamiseen. Ennen kuin aloitat analyysin, on hyvä määrittää vaihtelut tietojen välillä korrelaatiomatriisin avulla. GGally-kirjasto on ggplot2: n laajennus.

Kirjasto sisältää erilaisia ​​toimintoja yhteenvetotilastojen näyttämiseksi, kuten kaikkien matriisien muuttujien korrelaatio ja jakauma. Käytämme ggscatmat-toimintoa, mutta voit katsoa vinjettistä lisätietoja GGally-kirjastosta.

Ggscatmat () -syntaksin perussyntaksi on:

ggscatmat(df, columns = 1:ncol(df), corMethod = "pearson")arguments:-df: A matrix of continuous variables-columns: Pick up the columns to use in the function. By default, all columns are used-corMethod: Define the function to compute the correlation between variable. By default, the algorithm uses the Pearson formula

Näytät korrelaation kaikille muuttujillesi ja päätät, mikä on paras ehdokas vaiheittaisen regression ensimmäiselle vaiheelle. Muuttujien ja riippuvan muuttujan, mpg, välillä on joitain vahvoja korrelaatioita.

library(GGally)df <- mtcars % > %select(-c(am, vs, cyl, gear, carb))ggscatmat(df, columns = 1: ncol(df))

Tuotos:

Porrastettu regressio

Muuttujien valinta on tärkeä osa malliin sopivaa. Porrastettu regressio suorittaa hakuprosessin automaattisesti. Voit arvioida, kuinka monta mahdollista valintaa tietojoukossa on, laskemalla k: lla on ennustajien määrä. Mahdollisuuksien määrä kasvaa itsenäisten muuttujien määrän myötä. Siksi sinun on tehtävä automaattinen haku.

Sinun on asennettava olsrr-paketti CRAN: lta. Pakettia ei ole vielä saatavilla Anacondassa. Siksi asennat sen suoraan komentoriviltä:

install.packages("olsrr")

Voit piirtää kaikki mahdollisuuksien osajoukot sopivuuskriteereillä (ts. R-neliö, Säädetty R-neliö, Bayesin kriteerit). Malli, jolla on alhaisin AIC-kriteeri, on lopullinen malli.

library(olsrr)model <- mpg~.fit <- lm(model, df)test <- ols_all_subset(fit)plot(test)

Koodin selitys

  • mpg ~ .: Rakenna malli arvioimaan
  • lm (malli, df): Suorita OLS-malli
  • ols_all_subset (fit): Rakenna kaaviot asiaankuuluvien tilastotietojen kanssa
  • käyrä (testi): Piirrä kaaviot

Tuotos:

Lineaariset regressiomallit käyttävät t-testiä arvioidakseen riippumattoman muuttujan tilastollisen vaikutuksen riippuvaan muuttujaan. Tutkijat asettivat enimmäiskynnykseksi 10 prosenttia, ja pienemmät arvot osoittavat vahvemman tilastollisen yhteyden. Tämän testin ympärille rakennetaan vaiheittaisen regressiostrategia potentiaalisten ehdokkaiden lisäämiseksi ja poistamiseksi. Algoritmi toimii seuraavasti:

  • Vaihe 1: Regresoi kukin ennustaja y: lle erikseen. Nimittäin regressi x_1 y: ssä, x_2 y: ssä arvoon x_n. Tallenna p-arvo ja pidä regressori p-arvon alapuolella kuin määritelty kynnysarvo (oletusarvoisesti 0,1). Ennustajat, joiden merkitsevyys on kynnystä pienempi, lisätään lopulliseen malliin. Jos yhdelläkään muuttujalla ei ole syöttökynnystä pienempää p-arvoa, algoritmi pysähtyy ja lopullinen mallisi on vain vakio.
  • Vaihe 2: Käytä ennustinta, jolla on pienin p-arvo, ja lisää erikseen yhden muuttujan. Regresoit vakion, ensimmäisen vaiheen parhaan ennustajan ja kolmannen muuttujan. Voit lisätä vaiheittaiseen malliin uudet ennustimet, joiden arvo on alhaisempi kuin syöttökynnys. Jos yhdelläkään muuttujalla ei ole alle 0,1 p-arvoa, algoritmi pysähtyy ja lopullinen malli on vain yhdellä ennustimella. Regresoit asteittaisen mallin tarkistaaksesi vaiheen 1 parhaiden ennustajien merkityksen. Jos se on korkeampi kuin poistokynnys, pidät sen asteittaisessa mallissa. Muussa tapauksessa poistat sen.
  • Vaihe 3: Toistat vaiheen 2 uudella parhaalla vaiheittaisella mallilla. Algoritmi lisää ennustimet vaiheittaiseen malliin syöttöarvojen perusteella ja sulkee ennustajan vaiheittaiseen malliin, jos se ei täytä poissulkemiskynnystä.
  • Algoritmi jatkuu, kunnes muuttujaa ei voida lisätä tai sulkea pois.

Voit suorittaa algoritmin toiminnolla ols_stepwise () olsrr-paketista.

ols_stepwise(fit, pent = 0.1, prem = 0.3, details = FALSE)

arguments:

-fit: Model to fit. Need to use `lm()`before to run `ols_stepwise()-pent: Threshold of the p-value used to enter a variable into the stepwise model. By default, 0.1-prem: Threshold of the p-value used to exclude a variable into the stepwise model. By default, 0.3-details: Print the details of each step

Ennen sitä näytämme algoritmin vaiheet. Alla on taulukko riippuvaisista ja riippumattomista muuttujista:

Riippuva muuttuja

Riippumattomat muuttujat

mpg

dis

hv

drat

wt

qsek

alkaa

Ensinnäkin algoritmi alkaa suorittamalla malli jokaisessa riippumattomassa muuttujassa erikseen. Taulukossa esitetään kunkin mallin p-arvo.

## [[1]]## (Intercept) disp## 3.576586e-21 9.380327e-10#### [[2]]## (Intercept) hp## 6.642736e-18 1.787835e-07#### [[3]]## (Intercept) drat## 0.1796390847 0.0000177624#### [[4]]## (Intercept) wt## 8.241799e-19 1.293959e-10#### [[5]## (Intercept) qsec## 0.61385436 0.01708199

Mallin syöttämiseksi algoritmi pitää muuttujan, jolla on pienin p-arvo. Yllä olevasta lähdöstä se on paino

Vaihe 1

Ensimmäisessä vaiheessa algoritmi suorittaa mpg: n wt: llä ja muut muuttujat itsenäisesti.

## [[1]]## (Intercept) wt disp## 4.910746e-16 7.430725e-03 6.361981e-02#### [[2]]## (Intercept) wt hp## 2.565459e-20 1.119647e-06 1.451229e-03#### [[3]]## (Intercept) wt drat## 2.737824e-04 1.589075e-06 3.308544e-01#### [[4]]## (Intercept) wt qsec## 7.650466e-04 2.518948e-11 1.499883e-03

Jokainen muuttuja on mahdollinen ehdokas päästä lopulliseen malliin. Algoritmi pitää kuitenkin vain muuttujan, jolla on pienempi p-arvo. On käynyt ilmi, että hp: llä on hiukan pienempi p-arvo kuin qsec. Siksi hp tulee lopulliseen malliin

Vaihe 2

Algoritmi toistaa ensimmäisen vaiheen, mutta tällä kertaa kahdella itsenäisellä muuttujalla lopullisessa mallissa.

## [[1]]## (Intercept) wt hp disp## 1.161936e-16 1.330991e-03 1.097103e-02 9.285070e-01#### [[2]]## (Intercept) wt hp drat## 5.133678e-05 3.642961e-04 1.178415e-03 1.987554e-01#### [[3]]## (Intercept) wt hp qsec## 2.784556e-03 3.217222e-06 2.441762e-01 2.546284e-01

Mikään lopulliseen malliin tulleista muuttujista ei ole p-arvo riittävän alhainen. Algoritmi pysähtyy tässä; meillä on lopullinen malli:

#### Call:## lm(formula = mpg ~ wt + hp, data = df)#### Residuals:## Min 1Q Median 3Q Max## -3.941 -1.600 -0.182 1.050 5.854#### Coefficients:## Estimate Std. Error t value Pr(>|t|)## (Intercept) 37.22727 1.59879 23.285 < 2e-16 ***## wt -3.87783 0.63273 -6.129 1.12e-06 ***## hp -0.03177 0.00903 -3.519 0.00145 **## ---## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1#### Residual standard error: 2.593 on 29 degrees of freedom## Multiple R-squared: 0.8268, Adjusted R-squared: 0.8148## F-statistic: 69.21 on 2 and 29 DF, p-value: 9.109e-12 

Voit verrata tuloksia funktiolla ols_stepwise ().

stp_s <-ols_stepwise(fit, details=TRUE)

Tuotos:

Algoritmi löytää ratkaisun kahden vaiheen jälkeen ja palauttaa saman tuotoksen kuin aiemmin.

Lopussa voit sanoa, että mallit selitetään kahdella muuttujalla ja leikkauksella. Maili per gallona korreloi negatiivisesti bruttohevosvoiman ja painon kanssa

## You are selecting variables based on p value… ## 1 variable(s) added… .## Variable Selection Procedure## Dependent Variable: mpg#### Stepwise Selection: Step 1#### Variable wt Entered#### Model Summary## --------------------------------------------------------------## R 0.868 RMSE 3.046## R-Squared 0.753 Coef. Var 15.161## Adj. R-Squared 0.745 MSE 9.277## Pred R-Squared 0.709 MAE 2.341## --------------------------------------------------------------## RMSE: Root Mean Square Error## MSE: Mean Square Error## MAE: Mean Absolute Error## ANOVA## --------------------------------------------------------------------## Sum of## Squares DF Mean Square F Sig.## --------------------------------------------------------------------## Regression 847.725 1 847.725 91.375 0.0000## Residual 278.322 30 9.277## Total 1126.047 31## --------------------------------------------------------------------#### Parameter Estimates## ----------------------------------------------------------------------------------------## model Beta Std. Error Std. Beta t Sig lower upper## ----------------------------------------------------------------------------------------## (Intercept) 37.285 1.878 19.858 0.000 33.450 41.120## wt -5.344 0.559 -0.868 -9.559 0.000 -6.486 -4.203## ----------------------------------------------------------------------------------------## 1 variable(s) added… ## Stepwise Selection: Step 2#### Variable hp Entered#### Model Summary## --------------------------------------------------------------## R 0.909 RMSE 2.593## R-Squared 0.827 Coef. Var 12.909## Adj. R-Squared 0.815 MSE 6.726## Pred R-Squared 0.781 MAE 1.901## --------------------------------------------------------------## RMSE: Root Mean Square Error## MSE: Mean Square Error## MAE: Mean Absolute Error## ANOVA## --------------------------------------------------------------------## Sum of## Squares DF Mean Square F Sig.## --------------------------------------------------------------------## Regression 930.999 2 465.500 69.211 0.0000## Residual 195.048 29 6.726## Total 1126.047 31## --------------------------------------------------------------------#### Parameter Estimates## ----------------------------------------------------------------------------------------## model Beta Std. Error Std. Beta t Sig lower upper## ----------------------------------------------------------------------------------------## (Intercept) 37.227 1.599 23.285 0.000 33.957 40.497## wt -3.878 0.633 -0.630 -6.129 0.000 -5.172 -2.584## hp -0.032 0.009 -0.361 -3.519 0.001 -0.050 -0.013## ----------------------------------------------------------------------------------------## No more variables to be added or removed.

Koneoppiminen

Koneoppiminen on yleistymässä datatieteilijöiden keskuudessa, ja sitä käytetään satoissa tuotteissa, joita käytät päivittäin. Yksi ensimmäisistä ML-sovelluksista oli roskapostisuodatin .

Seuraavassa on muita koneoppimisen sovelluksia

  • Ei-toivottujen roskapostiviestien tunnistaminen sähköpostitse
  • Kohdennetun mainonnan asiakaskäyttäytymisen segmentointi
  • Luottokorttitapahtumien vähentäminen
  • Energian käytön optimointi koti- ja toimistorakennuksessa
  • Kasvojentunnistus

Ohjattu oppiminen

Vuonna ohjattu oppiminen , harjoitustietosivut ruokit algoritmin sisältää etiketin.

Luokittelu on todennäköisesti eniten käytetty valvottu oppimistekniikka. Yksi ensimmäisistä tutkijoiden käsittelemistä luokitustehtävistä oli roskapostisuodatin. Oppimisen tavoitteena on ennustaa, luokitellaanko sähköposti roskapostiksi vai kinkuksi (hyvä sähköposti). Harjoittelujakson jälkeen kone tunnistaa sähköpostiluokan.

Regressioita käytetään yleisesti koneoppimiskentässä jatkuvan arvon ennustamiseen. Regressiotehtävä voi ennustaa riippuvan muuttujan arvon riippumattomien muuttujien joukon (kutsutaan myös ennustajiksi tai regressoreiksi) perusteella. Esimerkiksi lineaariset regressiot voivat ennustaa osakekurssin, sääennusteen, myynnin ja niin edelleen.

Tässä on luettelo joistakin perusvalvotuista oppimisalgoritmeista.

  • Lineaarinen regressio
  • Logistinen regressio
  • Lähimmät naapurit
  • Tuki vektorikoneelle (SVM)
  • Päätöspuut ja satunnainen metsä
  • Neuroverkot

Valvomaton oppiminen

Vuonna valvomatta oppiminen , koulutus tiedot leimaamaton. Järjestelmä yrittää oppia ilman viitteitä. Alla on luettelo valvomattomista oppimisalgoritmeista.

  • K-keskiarvo
  • Hierarkkinen klusterianalyysi
  • Odotusten maksimointi
  • Visualisointi ja ulottuvuuden pienentäminen
  • Pääkomponenttianalyysi
  • Ytimen PCA
  • Paikallisesti lineaarinen upotus

Yhteenveto

Tavallinen pienimmän neliösumman regressio voidaan tiivistää alla olevaan taulukkoon:

Kirjasto

Tavoite

Toiminto

Väitteet

pohja

Laske lineaarinen regressio

lm ()

kaava, tiedot

pohja

Tee yhteenveto mallista

yhteenveto ()

sovi

pohja

Exctract-kertoimet

lm () $ kerroin

pohja

Pura jäännökset

lm () $ jäännöksiä

pohja

Pura sovitettu arvo

lm () $ sovitetut arvot

olsrr

Suorita asteittainen regressio

ols_stepwise ()

sovi, pent = 0,1, prem = 0,3, yksityiskohdat = EPÄTOSI

Huomaa : Muista muuntaa kategorinen muuttuja tekijäksi ennen kuin se sopii malliin.

Mielenkiintoisia artikkeleita...