R Enkel, flere lineær og trinvis regression (med eksempel)

Indholdsfortegnelse:

Anonim

I denne vejledning lærer du

  • Enkel lineær regression
  • Multipel lineær regression
  • Kontinuerlige variabler
  • Faktorer regression
  • Trinvis regression
  • Maskinelæring
  • Overvåget læring
  • Uovervåget læring

Enkel lineær regression

Lineær regression svarer på et simpelt spørgsmål: Kan du måle et nøjagtigt forhold mellem en målvariabel og et sæt forudsigere?

Den enkleste af sandsynlighedsmodeller er den lige linjemodel:

hvor

  • y = Afhængig variabel
  • x = Uafhængig variabel
  • = tilfældig fejlkomponent
  • = aflytning
  • = Koefficient på x

Overvej følgende plot:

Ligningen er er skæringspunktet. Hvis x er lig med 0, vil y være lig med skæringspunktet, 4,77. er linjens hældning. Det fortæller, i hvilken andel y varierer, når x varierer.

For at estimere de optimale værdier for bruger du en metode kaldet OLS (Ordinary Least Squares) . Denne metode forsøger at finde de parametre, der minimerer summen af ​​de kvadrerede fejl, det vil sige den lodrette afstand mellem de forudsagte y-værdier og de faktiske y-værdier. Forskellen kaldes fejludtrykket .

Før du estimerer modellen, kan du bestemme, om et lineært forhold mellem y og x er sandsynligt ved at plotte et scatterplot.

Scatterplot

Vi bruger et meget simpelt datasæt til at forklare begrebet simpel lineær regression. Vi importerer de gennemsnitlige højder og vægte for amerikanske kvinder. Datasættet indeholder 15 observationer. Du vil måle, om højder er positivt korreleret med vægte.

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()

Produktion:

Spredningsdiagrammet antyder en generel tendens til, at y stiger, når x stiger. I det næste trin måler du, hvor meget der øges for hver ekstra.

Estimater for mindste kvadrater

I en simpel OLS-regression er beregningen af ligetil. Målet er ikke at vise afledningen i denne vejledning. Du skriver kun formlen.

Du vil estimere:

Målet med OLS-regression er at minimere følgende ligning:

hvor

er den forudsagte værdi.

Løsningen til

Bemærk, at det betyder gennemsnitsværdien af ​​x

Løsningen til

I R kan du bruge cov () og var () -funktionen til at estimere,

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

Produktion:

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

Produktion:

## [1] -87.51667

Betakoefficienten indebærer, at vægten stiger med 3,45 for hver ekstra højde.

Det er ikke ideelt at estimere en simpel lineær ligning manuelt. R giver en passende funktion til at estimere disse parametre. Du vil snart se denne funktion. Før det vil vi introducere, hvordan man beregner manuelt en simpel lineær regressionsmodel. På din rejse med datavidenskabsmand vil du næppe eller aldrig estimere en simpel lineær model. I de fleste situationer udføres regressionsopgaver på mange estimatorer.

Multipel lineær regression

Mere praktiske anvendelser af regressionsanalyse anvender modeller, der er mere komplekse end den enkle lineære model. Den probabilistiske model, der indeholder mere end en uafhængig variabel, kaldes multiple regressionsmodeller . Den generelle form for denne model er:

I matrixnotation kan du omskrive modellen:

Den afhængige variabel y er nu en funktion af k uafhængige variabler. Værdien af ​​koefficienten .

Vi introducerer kort den antagelse, vi gjorde om OLS 's tilfældige fejl :

  • Gennemsnit lig med 0
  • Varians lig med
  • Normal fordeling
  • Tilfældige fejl er uafhængige (i en sandsynlig forstand)

Du skal løse for vektoren for regressionskoefficienter, der minimerer summen af ​​de kvadrerede fejl mellem de forudsagte og faktiske y-værdier.

Den lukkede form er:

med:

  • angiver transponeringen af matrixen X
  • angiver den inverterbare matrix

Vi bruger mtcars-datasættet. Du kender allerede datasættet. Vores mål er at forudsige kilometer pr. Gallon over et sæt funktioner.

Kontinuerlige variabler

For nu bruger du kun de kontinuerlige variabler og lægger kategoriske funktioner til side. Variablen am er en binær variabel, der tager værdien 1, hvis transmissionen er manuel og 0 for automatiske biler; vs er også en binær variabel.

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

Produktion:

## 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… 

Du kan bruge lm () -funktionen til at beregne parametrene. Den grundlæggende syntaks for denne funktion er:

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

Husk, at en ligning har følgende form

i R

  • Symbolet = erstattes af ~
  • Hver x erstattes af variabelnavnet
  • Hvis du vil slippe konstanten, skal du tilføje -1 i slutningen af ​​formlen

Eksempel:

Du vil estimere enkeltpersoners vægt baseret på deres højde og indtjening. Ligningen er

Ligningen i R er skrevet som følger:

y ~ X1 + X2 + ... + Xn # Med skæring

Så for vores eksempel:

  • Vej ~ højde + indtægter

Dit mål er at estimere milen pr. Gallon baseret på et sæt variabler. Ligningen at estimere er:

Du estimerer din første lineære regression og gemmer resultatet i fit-objektet.

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

Kode Forklaring

  • model <- mpg ~ . disp + hp + drat + wt: Gem modellen til estimering
  • lm (model, df): Anslå modellen med datarammen 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

Outputtet giver ikke nok information om pasformens kvalitet. Du kan få adgang til flere detaljer, såsom betydningen af ​​koefficienterne, graden af ​​frihed og formen af ​​resterne med funktionen Summary ().

summary(fit)

Produktion:

## 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

Slutning fra ovenstående tabeloutput

  • Ovenstående tabel viser, at der er en stærk negativ sammenhæng mellem vægt og kilometertal og et positivt forhold til drat.
  • Kun variablen wt har en statistisk indvirkning på mpg. Husk at for at teste en hypotese i statistik bruger vi:
    • H0: Ingen statistisk indvirkning
    • H3: Prædiktoren har en meningsfuld indvirkning på y
    • Hvis p-værdien er lavere end 0,05, angiver det, at variablen er statistisk signifikant
  • Justeret R-kvadrat: Variance forklaret af modellen. I din model forklarede modellen 82 procent af variansen af ​​y. R kvadrat er altid mellem 0 og 1. Jo højere jo bedre

Du kan køre ANOVA-testen for at estimere effekten af ​​hver funktion på afvigelserne med anova () -funktionen.

anova(fit)

Produktion:

## 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

En mere konventionel måde at estimere modelens ydeevne på er at vise den resterende mod forskellige målinger.

Du kan bruge plot () -funktionen til at vise fire grafer:

- Rester mod monterede værdier

- Normal QQ-plot: Teoretisk kvartil vs standardiserede residualer

- Scale-Location: Tilpassede værdier versus kvadratrødder for de standardiserede rester

- Restmængder vs gearing: gearing mod standardiserede restmængder

Du tilføjer koden par (mfrow = c (2,2)) før plot (fit). Hvis du ikke tilføjer denne linje kode, beder R dig om at trykke på Enter-kommandoen for at få vist den næste graf.

par(mfrow=(2,2))

Kode Forklaring

  • (mfrow = c (2,2)): returner et vindue med de fire grafer side om side.
  • De første 2 tilføjer antallet af rækker
  • Den anden 2 tilføjer antallet af kolonner.
  • Hvis du skriver (mfrow = c (3,2)): opretter du et vindue med 3 rækker og 2 kolonner
plot(fit)

Produktion:

Formlen lm () returnerer en liste, der indeholder mange nyttige oplysninger. Du kan få adgang til dem med det fit-objekt, du har oprettet, efterfulgt af $ -tegnet og de oplysninger, du vil udtrække.

- koefficienter: `passer $ koefficienter`

- rester: `passer $ rester`

- monteret værdi: 'fit $ monteret. værdier'

Faktorer regression

I den sidste modelestimering regresserer du kun mpg på kontinuerlige variabler. Det er ligetil at tilføje faktorvariabler til modellen. Du tilføjer variablen am til din model. Det er vigtigt at være sikker på, at variablen er et faktorniveau og ikke kontinuerlig.

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

Produktion:

#### 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 bruger det første faktorniveau som en basisgruppe. Du skal sammenligne koefficienterne for den anden gruppe med basegruppen.

Trinvis regression

Den sidste del af denne tutorial handler om den trinvise regressionsalgoritme . Formålet med denne algoritme er at tilføje og fjerne potentielle kandidater i modellerne og holde dem, der har en betydelig indflydelse på den afhængige variabel. Denne algoritme er meningsfuld, når datasættet indeholder en stor liste med forudsigere. Du behøver ikke manuelt at tilføje og fjerne de uafhængige variabler. Den trinvise regression er bygget til at vælge de bedste kandidater, der passer til modellen.

Lad os se i aktion, hvordan det fungerer. Du bruger mtcars-datasættet med de kontinuerlige variabler kun til pædagogisk illustration. Før du begynder analysen, er det godt at etablere variationer mellem dataene med en korrelationsmatrix. GGally-biblioteket er en udvidelse af ggplot2.

Biblioteket indeholder forskellige funktioner, der viser oversigtsstatistikker såsom korrelation og fordeling af alle variablerne i en matrix. Vi bruger ggscatmat-funktionen, men du kan henvise til vignetten for at få flere oplysninger om GGally-biblioteket.

Den grundlæggende syntaks for ggscatmat () er:

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

Du viser korrelationen for alle dine variabler og beslutter, hvilken der vil være de bedste kandidater til det første trin i den trinvise regression. Der er nogle stærke sammenhænge mellem dine variabler og den afhængige variabel, mpg.

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

Produktion:

Trinvis regression

Valg af variabler er en vigtig del for at passe til en model. Den trinvise regression udfører søgningsprocessen automatisk. For at estimere, hvor mange mulige valg der er i datasættet, beregner du med k er antallet af forudsigere. Mængden af ​​muligheder bliver større med antallet af uafhængige variabler. Derfor skal du have en automatisk søgning.

Du skal installere olsrr-pakken fra CRAN. Pakken er ikke tilgængelig endnu i Anaconda. Derfor installerer du det direkte fra kommandolinjen:

install.packages("olsrr")

Du kan plotte alle delmængder af muligheder med tilpasningskriterierne (dvs. R-firkant, Justeret R-firkant, Bayesisk kriterium). Modellen med de laveste AIC-kriterier vil være den endelige model.

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

Kode Forklaring

  • mpg ~ .: Konstruer modellen til at estimere
  • lm (model, df): Kør OLS-modellen
  • ols_all_subset (fit): Konstruer graferne med de relevante statistiske oplysninger
  • plot (test): Plot graferne

Produktion:

Lineære regressionsmodeller bruger t-testen til at estimere den statistiske indvirkning af en uafhængig variabel på den afhængige variabel. Forskere satte den maksimale tærskel på 10 procent, med lavere værdier angiver et stærkere statistisk link. Strategien for den trinvise regression er konstrueret omkring denne test for at tilføje og fjerne potentielle kandidater. Algoritmen fungerer som følger:

  • Trin 1: Regressér hver forudsigelse på y separat. Nemlig regression x_1 på y, x_2 på y til x_n. Gem p-værdien og hold regressoren med en p-værdi lavere end en defineret tærskel (0,1 som standard). Prædiktorerne med en betydning lavere end tærsklen føjes til den endelige model. Hvis ingen variabler har en p-værdi lavere end den indgående tærskel, stopper algoritmen, og du har kun din endelige model med en konstant.
  • Trin 2: Brug forudsigeren med den laveste p-værdi og tilføj separat en variabel. Du regresserer en konstant, den bedste forudsigelse af trin et og en tredje variabel. Du tilføjer til den trinvise model de nye forudsigere med en værdi, der er lavere end den indgående tærskel. Hvis ingen variabler har en p-værdi lavere end 0,1, stopper algoritmen, og du har kun din endelige model med en forudsigelse. Du regresserer den trinvise model for at kontrollere betydningen af ​​trin 1 bedste forudsigere. Hvis den er højere end fjernelsestærsklen, skal du holde den i den trinvise model. Ellers udelukker du det.
  • Trin 3: Du replikerer trin 2 på den nye bedste trinvise model. Algoritmen tilføjer forudsigere til den trinvise model baseret på de indtastende værdier og udelukker forudsigeren fra den trinvise model, hvis den ikke opfylder den eksklusive tærskel.
  • Algoritmen fortsætter, indtil ingen variabler kan tilføjes eller ekskluderes.

Du kan udføre algoritmen med funktionen ols_stepwise () fra olsrr-pakken.

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

Før det viser vi dig algoritmens trin. Nedenfor er en tabel med de afhængige og uafhængige variabler:

Afhængig variabel

Uafhængige variabler

mpg

disp

hk

drat

vægt

qsec

Start

Til at begynde med starter algoritmen med at køre modellen på hver uafhængige variabel separat. Tabellen viser p-værdien for hver model.

## [[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

For at komme ind i modellen holder algoritmen variablen med den laveste p-værdi. Fra ovenstående output er det vægt

Trin 1

I det første trin kører algoritmen mpg på wt og de andre variabler uafhængigt.

## [[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

Hver variabel er en potentiel kandidat til at komme ind i den endelige model. Imidlertid holder algoritmen kun variablen med den lavere p-værdi. Det viser sig, at hp har en lidt lavere p-værdi end qsec. Derfor går hp ind i den endelige model

Trin 2

Algoritmen gentager det første trin, men denne gang med to uafhængige variabler i den endelige model.

## [[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

Ingen af ​​de variabler, der kom ind i den endelige model, har en p-værdi tilstrækkelig lav. Algoritmen stopper her; vi har den endelige model:

#### 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 

Du kan bruge funktionen ols_stepwise () til at sammenligne resultaterne.

stp_s <-ols_stepwise(fit, details=TRUE)

Produktion:

Algoritmen finder en løsning efter 2 trin og returnerer den samme output, som vi havde før.

I slutningen kan du sige, at modellerne forklares med to variabler og en skæring. Mil pr. Gallon er negativt korreleret med brutto hestekræfter og vægt

## 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.

Maskinelæring

Maskinindlæring er ved at blive udbredt blandt dataloger og distribueres i hundredvis af produkter, du bruger dagligt. En af de første ML-applikationer var spamfilter .

Følgende er anden anvendelse af maskinlæring-

  • Identifikation af uønskede spam-beskeder i e-mail
  • Segmentering af kundeadfærd til målrettet reklame
  • Reduktion af falske kreditkorttransaktioner
  • Optimering af energiforbruget i hjemmet og kontorbygningen
  • Ansigtsgenkendelse

Overvåget læring

I overvåget læring inkluderer de træningsdata, du leverer til algoritmen, en etiket.

Klassificering er sandsynligvis den mest anvendte overvågede læringsteknik. En af de første klassifikationsopgaver, forskere tacklede, var spamfilteret. Målet med læringen er at forudsige, om en e-mail er klassificeret som spam eller skinke (god e-mail). Efter træningstrinnet kan maskinen registrere klassen af ​​e-mail.

Regressioner bruges ofte i maskinlæringsfeltet til at forudsige kontinuerlig værdi. Regressionsopgave kan forudsige værdien af ​​en afhængig variabel baseret på et sæt uafhængige variabler (også kaldet forudsigere eller regressorer). For eksempel kan lineære regressioner forudsige en aktiekurs, vejrudsigt, salg og så videre.

Her er listen over nogle grundlæggende overvågede læringsalgoritmer.

  • Lineær regression
  • Logistisk regression
  • Nærmeste naboer
  • Support Vector Machine (SVM)
  • Beslutningstræer og tilfældig skov
  • Neurale netværk

Uovervåget læring

I ikke- overvåget læring er træningsdataene umærket. Systemet forsøger at lære uden reference. Nedenfor er en liste over ikke-overvågede læringsalgoritmer.

  • K-middelværdi
  • Hierarkisk klyngeanalyse
  • Forventning Maksimering
  • Visualisering og dimensionalitetsreduktion
  • Hovedkomponentanalyse
  • Kerne-PCA
  • Lokalt-lineær indlejring

Resumé

Almindelig mindste kvadratisk regression kan opsummeres i nedenstående tabel:

Bibliotek

Objektiv

Fungere

Argumenter

grundlag

Beregn en lineær regression

lm ()

formel, data

grundlag

Opsummer model

sammenfatte()

passe

grundlag

Uddrag koefficienter

lm () $ koefficient

grundlag

Uddrag rester

lm () $ rester

grundlag

Udtræk monteret værdi

lm () $ monteret. værdier

olsrr

Kør trinvis regression

ols_stepwise ()

pasform, pent = 0,1, prem = 0,3, detaljer = FALSK

Bemærk : Husk at transformere kategorisk variabel i faktor før for at passe til modellen.