R Einfache, mehrfache lineare und schrittweise Regression (mit Beispiel)

Inhaltsverzeichnis:

Anonim

In diesem Tutorial lernen Sie

  • Einfache lineare Regression
  • Multiple lineare Regression
  • Kontinuierliche Variablen
  • Faktoren Regression
  • Schrittweise Regression
  • Maschinelles Lernen
  • Überwachtes Lernen
  • Unbeaufsichtigtes Lernen

Einfache lineare Regression

Die lineare Regression beantwortet eine einfache Frage: Können Sie eine genaue Beziehung zwischen einer Zielvariablen und einer Reihe von Prädiktoren messen?

Das einfachste probabilistische Modell ist das geradlinige Modell:

wo

  • y = abhängige Variable
  • x = unabhängige Variable
  • = zufällige Fehlerkomponente
  • = abfangen
  • = Koeffizient von x

Betrachten Sie die folgende Darstellung:

Die Gleichung ist der Achsenabschnitt. Wenn x gleich 0 ist, ist y gleich dem Achsenabschnitt 4.77. ist die Steigung der Linie. Es zeigt an, in welchem ​​Verhältnis y variiert, wenn x variiert.

Um die optimalen Werte von , verwenden Sie eine Methode namens Ordinary Least Squares (OLS) . Diese Methode versucht, die Parameter zu finden, die die Summe der quadratischen Fehler minimieren, dh den vertikalen Abstand zwischen den vorhergesagten y-Werten und den tatsächlichen y-Werten. Der Unterschied wird als Fehlerterm bezeichnet .

Bevor Sie das Modell schätzen, können Sie durch Zeichnen eines Streudiagramms feststellen, ob eine lineare Beziehung zwischen y und x plausibel ist.

Streudiagramm

Wir werden einen sehr einfachen Datensatz verwenden, um das Konzept der einfachen linearen Regression zu erklären. Wir werden die durchschnittlichen Höhen und Gewichte für amerikanische Frauen importieren. Der Datensatz enthält 15 Beobachtungen. Sie möchten messen, ob Höhen positiv mit Gewichten korrelieren.

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

Ausgabe:

Das Streudiagramm deutet auf eine allgemeine Tendenz hin, dass y mit zunehmendem x zunimmt. Im nächsten Schritt messen Sie daran, wie viel sich für jede weitere erhöht.

Schätzungen der kleinsten Quadrate

In einer einfachen OLS-Regression ist die Berechnung von unkompliziert. Das Ziel ist nicht, die Ableitung in diesem Tutorial zu zeigen. Sie werden nur die Formel schreiben.

Sie möchten schätzen:

Das Ziel der OLS-Regression ist es, die folgende Gleichung zu minimieren:

wo

ist der vorhergesagte Wert.

Die Lösung für

Beachten Sie, dass dies den Durchschnittswert von x bedeutet

Die Lösung für

In R können Sie die Funktionen cov () und var () zum Schätzen

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

Ausgabe:

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

Ausgabe:

## [1] -87.51667

Der Beta-Koeffizient impliziert, dass sich das Gewicht für jede zusätzliche Höhe um 3,45 erhöht.

Das manuelle Schätzen einer einfachen linearen Gleichung ist nicht ideal. R bietet eine geeignete Funktion zum Schätzen dieser Parameter. Sie werden diese Funktion in Kürze sehen. Zuvor werden wir vorstellen, wie ein einfaches lineares Regressionsmodell von Hand berechnet wird. Auf Ihrer Reise als Datenwissenschaftler werden Sie kaum oder nie ein einfaches lineares Modell schätzen. In den meisten Situationen werden Regressionsaufgaben mit vielen Schätzern ausgeführt.

Multiple lineare Regression

Praktischere Anwendungen der Regressionsanalyse verwenden Modelle, die komplexer sind als das einfache lineare Modell. Das Wahrscheinlichkeitsmodell, das mehr als eine unabhängige Variable enthält, wird als multiple Regressionsmodelle bezeichnet . Die allgemeine Form dieses Modells lautet:

In der Matrixnotation können Sie das Modell neu schreiben:

Die abhängige Variable y ist nun eine Funktion von k unabhängigen Variablen. Der Wert des Koeffizienten .

Wir stellen kurz die Annahme vor, die wir über den Zufallsfehler des OLS gemacht haben:

  • Mittelwert gleich 0
  • Varianz gleich
  • Normalverteilung
  • Zufällige Fehler sind unabhängig (im probabilistischen Sinne)

Sie müssen nach dem Vektor der Regressionskoeffizienten suchen, der die Summe der quadratischen Fehler zwischen den vorhergesagten und den tatsächlichen y-Werten minimiert.

Die geschlossene Lösung lautet:

mit:

  • gibt die Transponierte der Matrix X an
  • gibt die invertierbare Matrix an

Wir verwenden den Datensatz mtcars. Sie sind bereits mit dem Datensatz vertraut. Unser Ziel ist es, die Meile pro Gallone über eine Reihe von Merkmalen vorherzusagen.

Kontinuierliche Variablen

Im Moment werden Sie nur die kontinuierlichen Variablen verwenden und kategoriale Merkmale beiseite legen. Die Variable am ist eine binäre Variable, die den Wert 1 annimmt, wenn das Getriebe manuell ist, und 0 für automatische Fahrzeuge. vs ist auch eine binäre Variable.

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

Ausgabe:

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

Mit der Funktion lm () können Sie die Parameter berechnen. Die grundlegende Syntax dieser Funktion lautet:

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

Denken Sie daran, dass eine Gleichung die folgende Form hat

in R.

  • Das Symbol = wird durch ~ ersetzt
  • Jedes x wird durch den Variablennamen ersetzt
  • Wenn Sie die Konstante löschen möchten, fügen Sie am Ende der Formel -1 hinzu

Beispiel:

Sie möchten das Gewicht von Personen anhand ihrer Größe und ihres Umsatzes schätzen. Die Gleichung lautet

Die Gleichung in R ist wie folgt geschrieben:

y ~ X1 + X2 +… + Xn # Mit Achsenabschnitt

Also für unser Beispiel:

  • Wiegen ~ Höhe + Umsatz

Ihr Ziel ist es, die Meile pro Gallone basierend auf einer Reihe von Variablen zu schätzen. Die zu schätzende Gleichung lautet:

Sie schätzen Ihre erste lineare Regression und speichern das Ergebnis im Anpassungsobjekt.

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

Code Erklärung

  • Modell <- mpg ~ . disp + hp + drat + wt: Speichern Sie das zu schätzende Modell
  • lm (Modell, df): Schätzen Sie das Modell mit dem Datenrahmen 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

Die Ausgabe liefert nicht genügend Informationen über die Qualität der Anpassung. Mit der Funktion summary () können Sie auf weitere Details wie die Signifikanz der Koeffizienten, den Freiheitsgrad und die Form der Residuen zugreifen.

summary(fit)

Ausgabe:

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

Rückschluss auf die obige Tabellenausgabe

  • Die obige Tabelle zeigt, dass es eine starke negative Beziehung zwischen Gewicht und Kilometerstand und eine positive Beziehung zu Drat gibt.
  • Nur die Variable wt hat einen statistischen Einfluss auf mpg. Denken Sie daran, um eine Hypothese in der Statistik zu testen, verwenden wir:
    • H0: Keine statistischen Auswirkungen
    • H3: Der Prädiktor hat einen bedeutenden Einfluss auf y
    • Wenn der p-Wert niedriger als 0,05 ist, zeigt dies an, dass die Variable statistisch signifikant ist
  • Angepasstes R-Quadrat: Varianz erklärt durch das Modell. In Ihrem Modell erklärte das Modell 82 Prozent der Varianz von y. Das Quadrat R liegt immer zwischen 0 und 1. Je höher desto besser

Sie können den ANOVA-Test ausführen, um die Auswirkung jedes Features auf die Varianzen mit der Funktion anova () abzuschätzen.

anova(fit)

Ausgabe:

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

Eine konventionellere Methode zur Schätzung der Modellleistung besteht darin, den Rest anhand verschiedener Kennzahlen anzuzeigen.

Mit der Funktion plot () können Sie vier Diagramme anzeigen:

- Residuen gegen angepasste Werte

- Normales QQ-Diagramm: Theoretisches Quartil gegen standardisierte Residuen

- Skalierungsort: Angepasste Werte gegen Quadratwurzeln der standardisierten Residuen

- Residuen gegen Hebel: Hebel gegen standardisierte Residuen

Sie fügen den Code par (mfrow = c (2,2)) vor dem Plot (fit) hinzu. Wenn Sie diese Codezeile nicht hinzufügen, werden Sie von R aufgefordert, den Befehl enter zu drücken, um das nächste Diagramm anzuzeigen.

par(mfrow=(2,2))

Code Erklärung

  • (mfrow = c (2,2)): Gibt ein Fenster mit den vier Diagrammen nebeneinander zurück.
  • Die ersten 2 addieren die Anzahl der Zeilen
  • Die zweite 2 fügt die Anzahl der Spalten hinzu.
  • Wenn Sie schreiben (mfrow = c (3,2)): Sie erstellen ein Fenster mit 3 Zeilen und 2 Spalten
plot(fit)

Ausgabe:

Die Formel lm () gibt eine Liste mit vielen nützlichen Informationen zurück. Sie können mit dem von Ihnen erstellten Anpassungsobjekt darauf zugreifen, gefolgt vom $ -Zeichen und den Informationen, die Sie extrahieren möchten.

- Koeffizienten: `fit $ Koeffizienten`

- Residuen: `fit $ Residuen`

- angepasster Wert: `fit $ fit.values`

Faktoren Regression

In der letzten Modellschätzung regressieren Sie mpg nur für kontinuierliche Variablen. Es ist einfach, dem Modell Faktorvariablen hinzuzufügen. Sie fügen Ihrem Modell die Variable am hinzu. Es ist wichtig sicherzustellen, dass die Variable eine Faktorebene ist und nicht kontinuierlich.

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

Ausgabe:

#### 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 verwendet die erste Faktorebene als Basisgruppe. Sie müssen die Koeffizienten der anderen Gruppe mit der Basisgruppe vergleichen.

Schrittweise Regression

Der letzte Teil dieses Tutorials befasst sich mit dem schrittweisen Regressionsalgorithmus . Der Zweck dieses Algorithmus besteht darin, potenzielle Kandidaten in den Modellen hinzuzufügen und zu entfernen und diejenigen beizubehalten, die einen signifikanten Einfluss auf die abhängige Variable haben. Dieser Algorithmus ist sinnvoll, wenn der Datensatz eine große Liste von Prädiktoren enthält. Sie müssen die unabhängigen Variablen nicht manuell hinzufügen und entfernen. Die schrittweise Regression wird erstellt, um die besten Kandidaten für das Modell auszuwählen.

Mal sehen, wie es funktioniert. Sie verwenden den Datensatz mtcars mit den kontinuierlichen Variablen nur zur pädagogischen Veranschaulichung. Bevor Sie mit der Analyse beginnen, sollten Sie Variationen zwischen den Daten mit einer Korrelationsmatrix ermitteln. Die GGally-Bibliothek ist eine Erweiterung von ggplot2.

Die Bibliothek enthält verschiedene Funktionen zum Anzeigen zusammenfassender Statistiken wie Korrelation und Verteilung aller Variablen in einer Matrix. Wir werden die Funktion ggscatmat verwenden, aber Sie können sich auf die Vignette beziehen, um weitere Informationen über die GGally-Bibliothek zu erhalten.

Die grundlegende Syntax für ggscatmat () lautet:

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

Sie zeigen die Korrelation für alle Ihre Variablen an und entscheiden, welche die besten Kandidaten für den ersten Schritt der schrittweisen Regression sind. Es gibt einige starke Korrelationen zwischen Ihren Variablen und der abhängigen Variablen mpg.

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

Ausgabe:

Schrittweise Regression

Die Auswahl von Variablen ist ein wichtiger Bestandteil für die Anpassung an ein Modell. Die schrittweise Regression führt den Suchvorgang automatisch durch. Um abzuschätzen, wie viele mögliche Auswahlmöglichkeiten es im Datensatz gibt, berechnen Sie mit k die Anzahl der Prädiktoren. Die Anzahl der Möglichkeiten wächst mit der Anzahl der unabhängigen Variablen. Deshalb benötigen Sie eine automatische Suche.

Sie müssen das olsrr-Paket von CRAN installieren. Das Paket ist in Anaconda noch nicht verfügbar. Daher installieren Sie es direkt über die Befehlszeile:

install.packages("olsrr")

Sie können alle Teilmengen von Möglichkeiten mit den Anpassungskriterien (z. B. R-Quadrat, angepasstes R-Quadrat, Bayes'sche Kriterien) darstellen. Das Modell mit den niedrigsten AIC-Kriterien ist das endgültige Modell.

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

Code Erklärung

  • mpg ~ .: Konstruieren Sie das zu schätzende Modell
  • lm (model, df): Führen Sie das OLS-Modell aus
  • ols_all_subset (fit): Konstruieren Sie die Diagramme mit den relevanten statistischen Informationen
  • Plot (Test): Plotten Sie die Diagramme

Ausgabe:

Lineare Regressionsmodelle verwenden den t-Test , um den statistischen Einfluss einer unabhängigen Variablen auf die abhängige Variable abzuschätzen. Die Forscher setzen den maximalen Schwellenwert auf 10 Prozent, wobei niedrigere Werte auf eine stärkere statistische Verbindung hinweisen. Die Strategie der schrittweisen Regression basiert auf diesem Test, um potenzielle Kandidaten hinzuzufügen und zu entfernen. Der Algorithmus funktioniert wie folgt:

  • Schritt 1: Regressieren Sie jeden Prädiktor auf y separat. Regressiere nämlich x_1 auf y, x_2 auf y auf x_n. Speichern Sie den p-Wert und halten Sie den Regressor mit einem p-Wert unter einem definierten Schwellenwert (standardmäßig 0,1). Die Prädiktoren mit einer Signifikanz unter dem Schwellenwert werden dem endgültigen Modell hinzugefügt. Wenn keine Variable einen niedrigeren p-Wert als den eingegebenen Schwellenwert hat, stoppt der Algorithmus und Sie haben Ihr endgültiges Modell nur mit einer Konstanten.
  • Schritt 2: Verwenden Sie den Prädiktor mit dem niedrigsten p-Wert und fügen Sie separat eine Variable hinzu. Sie regressieren eine Konstante, den besten Prädiktor für Schritt eins und eine dritte Variable. Sie fügen dem schrittweisen Modell die neuen Prädiktoren hinzu, deren Wert unter dem eingegebenen Schwellenwert liegt. Wenn keine Variable einen p-Wert von weniger als 0,1 hat, stoppt der Algorithmus und Sie haben Ihr endgültiges Modell mit nur einem Prädiktor. Sie regressieren das schrittweise Modell, um die Signifikanz der besten Prädiktoren für Schritt 1 zu überprüfen. Wenn es höher als der Entfernungsschwellenwert ist, behalten Sie es im schrittweisen Modell bei. Andernfalls schließen Sie es aus.
  • Schritt 3: Sie replizieren Schritt 2 auf dem neuen besten schrittweisen Modell. Der Algorithmus fügt dem schrittweisen Modell basierend auf den eingegebenen Werten Prädiktoren hinzu und schließt den Prädiktor aus dem schrittweisen Modell aus, wenn er den Ausschlussschwellenwert nicht erfüllt.
  • Der Algorithmus läuft so lange weiter, bis keine Variable mehr hinzugefügt oder ausgeschlossen werden kann.

Sie können den Algorithmus mit der Funktion ols_stepwise () aus dem Paket olsrr ausführen.

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

Vorher zeigen wir Ihnen die Schritte des Algorithmus. Unten finden Sie eine Tabelle mit den abhängigen und unabhängigen Variablen:

Abhängige Variable

Unabhängige Variablen

mpg

disp

hp

drat

Gewicht

qsec

Start

Zunächst führt der Algorithmus das Modell für jede unabhängige Variable separat aus. Die Tabelle zeigt den p-Wert für jedes Modell.

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

Um in das Modell einzutreten, behält der Algorithmus die Variable mit dem niedrigsten p-Wert bei. Von der obigen Ausgabe ist es wt

Schritt 1

Im ersten Schritt führt der Algorithmus mpg unabhängig voneinander auf wt und den anderen Variablen aus.

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

Jede Variable ist ein potenzieller Kandidat für die Eingabe des endgültigen Modells. Der Algorithmus behält jedoch nur die Variable mit dem niedrigeren p-Wert bei. Es stellt sich heraus, dass HP einen geringfügig niedrigeren p-Wert als qsec hat. Daher tritt HP in das endgültige Modell ein

Schritt 2

Der Algorithmus wiederholt den ersten Schritt, diesmal jedoch mit zwei unabhängigen Variablen im endgültigen Modell.

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

Keine der Variablen, die in das endgültige Modell eingegeben wurden, hat einen ausreichend niedrigen p-Wert. Der Algorithmus stoppt hier; Wir haben das endgültige Modell:

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

Mit der Funktion ols_stepwise () können Sie die Ergebnisse vergleichen.

stp_s <-ols_stepwise(fit, details=TRUE)

Ausgabe:

Der Algorithmus findet nach 2 Schritten eine Lösung und gibt die gleiche Ausgabe wie zuvor zurück.

Am Ende kann man sagen, dass die Modelle durch zwei Variablen und einen Achsenabschnitt erklärt werden. Meile pro Gallone korreliert negativ mit Bruttopferdestärke und Gewicht

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

Maschinelles Lernen

Maschinelles Lernen ist unter Datenwissenschaftlern weit verbreitet und wird in Hunderten von Produkten eingesetzt, die Sie täglich verwenden. Eine der ersten ML-Anwendungen war der Spamfilter .

Im Folgenden finden Sie weitere Anwendungen des maschinellen Lernens.

  • Identifizierung unerwünschter Spam-Nachrichten in E-Mails
  • Segmentierung des Kundenverhaltens für gezielte Werbung
  • Reduzierung betrügerischer Kreditkartentransaktionen
  • Optimierung des Energieverbrauchs in Wohn- und Bürogebäuden
  • Gesichtserkennung

Überwachtes Lernen

Beim überwachten Lernen enthalten die Trainingsdaten, die Sie dem Algorithmus zuführen, eine Bezeichnung.

Die Klassifizierung ist wahrscheinlich die am häufigsten verwendete überwachte Lerntechnik. Eine der ersten Klassifizierungsaufgaben, mit denen sich Forscher befassten, war der Spamfilter. Ziel des Lernens ist es, vorherzusagen, ob eine E-Mail als Spam oder Schinken klassifiziert ist (gute E-Mail). Das Gerät kann nach dem Trainingsschritt die E-Mail-Klasse erkennen.

Regressionen werden üblicherweise im Bereich des maschinellen Lernens verwendet, um einen kontinuierlichen Wert vorherzusagen. Die Regressionsaufgabe kann den Wert einer abhängigen Variablen basierend auf einer Reihe unabhängiger Variablen (auch Prädiktoren oder Regressoren genannt) vorhersagen . Beispielsweise können lineare Regressionen einen Aktienkurs, eine Wettervorhersage, Verkäufe usw. vorhersagen.

Hier ist die Liste einiger grundlegender überwachter Lernalgorithmen.

  • Lineare Regression
  • Logistische Regression
  • Nächste Nachbarn
  • Support Vector Machine (SVM)
  • Entscheidungsbäume und Random Forest
  • Neuronale Netze

Unbeaufsichtigtes Lernen

Beim unbeaufsichtigten Lernen sind die Trainingsdaten unbeschriftet. Das System versucht ohne Referenz zu lernen. Unten finden Sie eine Liste unbeaufsichtigter Lernalgorithmen.

  • K-Mittelwert
  • Hierarchische Clusteranalyse
  • Erwartungsmaximierung
  • Visualisierung und Dimensionsreduktion
  • Hauptkomponentenanalyse
  • Kernel PCA
  • Lokal-lineare Einbettung

Zusammenfassung

Die gewöhnliche Regression der kleinsten Quadrate kann in der folgenden Tabelle zusammengefasst werden:

Bibliothek

Zielsetzung

Funktion

Argumente

Base

Berechnen Sie eine lineare Regression

lm ()

Formel, Daten

Base

Modell zusammenfassen

zusammenfassen()

passen

Base

Koeffizienten abziehen

lm () $ Koeffizient

Base

Residuen herausziehen

lm () $ Residuen

Base

Den angepassten Wert abziehen

lm () $ fit.values

olsrr

Führen Sie eine schrittweise Regression durch

ols_stepwise ()

fit, pent = 0,1, prem = 0,3, details = FALSE

Hinweis : Denken Sie daran, die kategoriale Variable vor dem Anpassen an das Modell in einen Faktor umzuwandeln.