Schätzung der Regressionsparameter

Aus MM*Stat

Version vom 14. Mai 2018, 21:51 Uhr von Germainf (Diskussion | Beiträge) (Die Seite wurde neu angelegt: „{{Regression}} =={{Vorlage:Überschrift}}== ===Schätzung der Regressionsparameter=== Für die Schätzung der Regressionsparameter müssen zwei Bedingun…“)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

Regression

Regressionsanalyse • Lineares Regressionsmodell • Schätzung der Regressionsparameter • Güte der Regression • Multiple Choice • Video • Aufgaben • Lösungen
Abhängige Variable • Bestimmtheit der Regression • Bestimmtheitsmaß • Einfache lineare Regressionsfunktion • Endogene Variable • Erklärende Variable • Erklärte Variable • Exogene Variable • Linearer Regressionskoeffizient • Methode der kleinsten Quadrate (Regression) • Multiple lineare Regression • Regressand • Regressionsfunktion • Regressionsgerade • Regressionskonstante • Regressionsparameter • Regressor • Regresswert • Residuum • Restgröße • Unabhängige Variable

Grundbegriffe

Schätzung der Regressionsparameter

Für die Schätzung der Regressionsparameter müssen zwei Bedingungen erfüllt sein.

1. Bedingung

Die Abweichungen der Regresswerte von den Beobachtungswerten sollen im Mittel gleich Null sein, d.h.

Diese Bedingung wird aber von einer unendlichen Menge von Regressionsgeraden, die alle durch den Schwerpunkt der Punktwolke verlaufen, erfüllt.

Diese Bedingung für sich allein genommen führt also zu keiner eindeutigen Regressionsgeraden.

<R output="display">

pdf(rpdf, width=7, height=7)

par(mar=c(2,2,2,1)) par(bg="white") c = 1.4

X = c(1.47212467127845, 1.43803816908291, 1.39816119472708, 1.35265431871237, 1.30170078116712, 1.24550575400328, 1.18429551476157, 1.11831653547164, 1.04783449019622, 0.973133185255426, 0.894513416438906, 0.812291757807323, 0.726799286960364, 0.638380251904096, 0.547390684885741, 0.454196968777484, 0.359174361781949, 0.262705486399871, 0.165178788744325, 0.06698697440533, -0.03147457283696, -0.12980938308319, -0.227621496759157, -0.324517059005263, -0.42010590559103, -0.514003133968743, -0.605830653140166, -0.695218706095549, -0.781807358694595, -0.865247948994213, -0.945204491187104, -1.02135502849802, -1.09339292959007, -1.16102812326088, -1.22398826645696, -1.28201984090304, -1.33488917393073, -1.38238337939581, -1.42431121489567, -1.46050385183491, -1.49081555523854, -1.51512427057529, -1.53333211522811, -1.54536577263291, -1.55117678749854, -1.5507417609191, -1.54406244459308, -1.5311657337699, -1.51210355895223, -1.48695267679019, -1.4558143610094, -1.41881399461743, -1.37610056503069, -1.3278460641547, -1.27424479583335, -1.21551259345594, -1.15188595087228, -1.08362107011542, -1.01099282976651, -0.934293678115755, -0.853832455576358, -0.7699331510932, -0.682933597553698, -0.593184111454005, -0.501046082298121, -0.406890517409916, -0.311096548017573, -0.214049902625953, -0.116141353824037, -0.0177651447816395, 0.0806825982286982, 0.178805460892388, 0.276208337073337, 0.372499019766904, 0.467289780379078, 0.560198929972681, 0.650852356194005, 0.73888502969122, 0.823942473958736, 0.905682192688981, 0.983775048884155, 1.05790659017475, 1.12777831500824, 1.19310887460953, 1.2536352058731, 1.30911359062536, 1.35932063699166, 1.40405417891654, 1.44313409021509, 1.47640300987754, 1.50372697570645, 1.52499596373525, 1.54012433125592, 1.54905116167191, 1.55174050978779, 1.54818154654791, 1.53838860264111, 1.52240111079614, 1.50028344699998, 1.47212467127845)

Y = c(1.47212467127845, 1.50028344699998, 1.52240111079614, 1.53838860264111, 1.54818154654791, 1.55174050978779, 1.54905116167191, 1.54012433125592, 1.52499596373525, 1.50372697570645, 1.47640300987754, 1.44313409021509, 1.40405417891654, 1.35932063699166, 1.30911359062536, 1.2536352058731, 1.19310887460953, 1.12777831500824, 1.05790659017475, 0.983775048884155, 0.905682192688982, 0.823942473958736, 0.73888502969122, 0.650852356194005, 0.560198929972681, 0.467289780379077, 0.372499019766904, 0.276208337073337, 0.178805460892388, 0.0806825982286976, -0.0177651447816391, -0.116141353824037, -0.214049902625953, -0.311096548017574, -0.406890517409916, -0.501046082298121, -0.593184111454004, -0.682933597553698, -0.7699331510932, -0.853832455576358, -0.934293678115755, -1.01099282976651, -1.08362107011542, -1.15188595087228, -1.21551259345594, -1.27424479583335, -1.3278460641547, -1.37610056503069, -1.41881399461743, -1.4558143610094, -1.48695267679019, -1.51210355895223, -1.5311657337699, -1.54406244459308, -1.5507417609191, -1.55117678749854, -1.54536577263291, -1.53333211522811, -1.51512427057529, -1.49081555523854, -1.46050385183491, -1.42431121489567, -1.38238337939581, -1.33488917393073, -1.28201984090304, -1.22398826645696, -1.16102812326088, -1.09339292959007, -1.02135502849802, -0.945204491187104, -0.865247948994213, -0.781807358694595, -0.695218706095549, -0.605830653140167, -0.514003133968742, -0.42010590559103, -0.324517059005264, -0.227621496759157, -0.12980938308319, -0.03147457283696, 0.0669869744053296, 0.165178788744326, 0.262705486399871, 0.359174361781949, 0.454196968777483, 0.547390684885742, 0.638380251904096, 0.726799286960364, 0.812291757807323, 0.894513416438907, 0.973133185255426, 1.04783449019622, 1.11831653547164, 1.18429551476157, 1.24550575400328, 1.30170078116712, 1.35265431871237, 1.39816119472708, 1.43803816908291, 1.47212467127845)

plot(X, Y, type='n', lwd=2, xaxt="n", yaxt="n", xlim=c(-3,3), ylim=c(-3,3), axes=F, xlab="", ylab="") polygon(X, Y, col="lightblue")

arrows(-3, -3, -3, 3, angle=20, length=0.2) arrows(-3, -3, 3, -3, angle=20, length=0.2)

mtext(expression(bar("x")), side=1, line=0, at=0, cex=c) mtext(expression(bar("y")), side=2, line=0, at=0, las=2, cex=c) mtext("X", side=1, line=0, at=3, cex=c) mtext("Y", side=2, line=0, at=3, las=2, cex=c)

set.seed(1) points(rnorm(20,0,0.25), rnorm(20,0,0.25), cex=0.5, pch=19) points(rnorm(10,-1,0.2), rnorm(10,-1,0.2), cex=0.5, pch=19) points(rnorm(20,1,0.2), rnorm(20,1,0.2), cex=0.5, pch=19) points(rnorm(20,-0.23,0.2), rnorm(20,-0.23,0.2), cex=0.5, pch=19) points(rnorm(20,0.23,0.2), rnorm(20,0.23,0.2), cex=0.5, pch=19) points(rnorm(20,0.6,0.1), rnorm(20,0.6,0.1), cex=0.5, pch=19) points(rnorm(20,-0.4,0.1), rnorm(20,-0.5,0.1), cex=0.5, pch=19)

lines(c(0,0), c(-3,3), lwd=2) lines(c(-3,3), c(0,0), lwd=2) lines(c(-1,1), c(-3,3)) lines(c(-2,2), c(-3,3)) lines(c(-3,3), c(-3,3)) lines(c(-3,4), c(-2.2,3))

</R>

2. Bedingung

Es wird eine Regressionsgerade gesucht, für die die Streuung (Varianz) der Residuen

ein Minimum im Vergleich zu allen anderen Regressionsgeraden ist.

Aus der Erfüllung der 1. Bedingung folgt:

Die folgende Grafik veranschaulicht die 2. Bedingung:

<R output="display">

pdf(rpdf, width=7, height=7)

par(font=2) par(mar=c(2,1,2,1)+0.1) c=1.6 d="yellow"

plot(-100, -100, lty=0, col="red", lwd=0, xaxt="n", yaxt="n", xlim=c(0,6), ylim=c(0,6), xlab="", ylab="", axes=F) arrows(0, 0, 0, 6.2, code = 2, xpd = TRUE, angle=20, length=0.15) arrows(0, 0, 6.2, 0, code = 2, xpd = TRUE, angle=20, length=0.15) lines(c(0,6), c(1, 3.4), lwd=2, col="green") mtext("X", side=1, line=0, at=6.3, cex=c) mtext("Y", side=2, line=0, at=6.3, las=2, cex=c)

rect(1, 0.6, 1.8, 1.4, col=d) points(1, 1.4, pch=16) text(0.85, 1.55, expression(bold(hat(y["1"]))), cex=c) points(1, 0.6, pch=16) text(0.85, 0.55, expression(bold(y["1"])), cex=c)

rect(1.82, 1.92, 2.3, 2.4, col=d) points(2.3, 1.92, pch=16) text(2.45, 1.84, expression(bold(hat(y["2"]))), cex=c) points(2.3, 2.4, pch=16) text(2.45, 2.45, expression(bold(y["2"])), cex=c)

rect(2.7, 1.5, 3.28, 2.08, col=d) points(2.7, 2.08, pch=16) text(2.85, 2.33, expression(bold(hat(y["3"]))), cex=c) points(2.7, 1.5, pch=16) text(2.85, 1.35, expression(bold(y["3"])), cex=c)

rect(3, 2.6, 4, 3.6, col=d) points(4, 2.6, pch=16) text(4.15, 2.5, expression(bold(hat(y["4"]))), cex=c) points(4, 3.6, pch=16) text(4.15, 3.6, expression(bold(y["4"])), cex=c)

rect(4.7, 3.2, 5.5, 4, col=d) points(5.5, 3.2, pch=16) text(5.65, 3.10, expression(bold(hat(y["5"]))), cex=c) points(5.5, 4, pch=16) text(5.65, 4.2, expression(bold(y["5"])), cex=c)

</R>

Die in der Grafik dargestellten Quadrate (sie entsprechen den quadrierten Residuen) sollen minimiert werden.

Daraus ergibt sich der Name der dafür angewandten Methode - die Methode der kleinsten Quadrate (KQ).

Methode der kleinsten Quadrate

Die Methode der kleinsten Quadrate (KQ) hat die Minimierung der Summe der quadratischen Abweichungen (Residual Sum of Squares - RSS) der Regresswerte von den Beobachtungswerten zum Ziel.

Die zu minimierende Funktion ist eine Gleichung mit zwei Unbekannten und . Für das Erreichen eines Minimums müssen die ersten partiellen Ableitungen verschwinden, d.h. sie werden Null gesetzt.

Mit Hilfe der Hesse-Matrix lässt sich überprüfen, ob es sich um ein Minimum handelt

Diese ist positiv-definit und somit handelt es sich bei den Extremwerten um Minima.

Die erste Ableitung führt zu den beiden Normalgleichungen, mit deren Hilfe sich die geschätzten Regressionsparameter und durch die Auflösung der Gleichungen nach bzw. berechnen lassen:

Die Auflösung der Normalgleichungen mit Hilfe der Cramer'schen Regel liefert:

Werden die ursprünglichen Normalgleichungen durch dividiert, erhält man im Ergebnis vereinfachte Formeln zur Berechnung der Regressionsparameter:

Für die Konstante ergibt sich:

Für den linearen Regressionskoeffizienten ergibt sich:

Zusatzinformationen

  • Die Varianz von muss größer sein als Null:
  • Wie schon aus den vereinfachten Normalgleichungen zu ersehen, gilt
Für wird , d.h. der Punkt liegt auf der Regressionsgeraden
Eine lineare Regression von auf entspricht nicht der linearen Regression von auf !

Beispiele

Losgröße und Arbeitszeit

- Losgröße

- Arbeitszeit

Produktionsdurchläufe im Unternehmen

1 30 73 2,190 900 5,329 70 3
2 20 50 1,000 400 2,500 50 0
3 60 128 7,680 3,600 16,384 130 -2
4 80 170 1,360 6,400 28,900 170 0
5 40 87 3,480 1,600 7,569 90 -3
6 50 108 5,400 2,500 11,664 110 -2
7 60 135 8,100 3,600 18,225 130 5
8 30 69 2,070 900 4,761 70 -1
9 70 148 10,360 4,900 21,904 150 -2
10 60 132 72,920 3,600 17,424 130 2
500 1,100 61,800 28,400 134,660 1,100 0

Berechnung der Hilfsgrößen (Mittelwerte, Varianzen und Standardabweichungen):

Für die Kovarianz und den Korrelationskoeffizienten ergibt sich:

Damit lassen sich die Regressionsparameter und berechnen:

Es ergibt sich folgende Regressionsgleichung:

<R output="display">

pdf(rpdf, width=14, height=7)

x = c(30,20,60,80,40,50,60,30,70,60) y = c(73,50,128,170,87,108,135,69,148,132) model = lm(y~x)

par(mfrow=c(1,2)) plot(x, y, xlab=paste("Losgr", "\u00F6", "\u00DF", "e", sep=""), ylab="Arbeitszeit", pch=8, yaxt="n", main="Lineare Regression") axis(2, at=c(50,100,150)) abline(10, 2, col="green", lwd=2)

plot(x, model$resid, xlab=paste("Losgr", "\u00F6", "\u00DF", "e", sep=""), ylab="Residuen", pch=8, xlim=c(20,80), ylim=c(-8, 8), yaxt="n", main="Plot der Residuen") axis(2, at=seq(-8, 8, by=1)) abline(0, 0, col="green", lwd=2)

</R>

Haushaltsnettoeinkommen und Konsumausgaben

Von 10 Zwei-Personen-Haushalten wurden jeweils das monatliche Haushaltsnettoeinkommen sowie die Konsumausgaben ermittelt:

Haushalt 1 2 3 4 5 6 7 8 9 10
HH-Nettoeinkommen in Euro () 3500 5000 4300 6100 1000 4800 2900 2400 5600 4100
Konsumausgaben in Euro () 2000 3500 3100 3900 900 3000 2100 1900 2900 2100

Anhand der Punktwolke im folgenden Scatterplot ist bereits zu erkennen, dass das Haushaltsnettoeinkommen einen positiven Einfluss auf die Konsumausgaben bei den 10 Zwei-Personen-Haushalten ausübt, der offensichtlich mittels einer linearen Regressionsfunktion geschätzt werden kann.

<R output="display">

pdf(rpdf, width=7, height=7)

x = c(3500,5000,4300,6100,1000,4800,2900,2400,5600,4100) y = c(2000,3500,3100,3900,900,3000,2100,1900,2900,2100)

model = lm(y~x)

plot(x, y, xlab="Einkommen*E3", ylab="Konsum*E2", col="red", cex=2, pch=20, xaxt="n", yaxt="n") axis(1, at=seq(1000,6000,by=1000), label=seq(1,6,by=1)) axis(2, at=seq(1000,4000,by=500), label=seq(10,40,by=5), las=2)

  1. abline(423.12969, 0.53322, lwd=2, col="black")

s=c(2000,3000,1500,300, 6000) color=c("blue", "yellow", "green", "orange", "brown") for (i in 1:length(s)) abline(s[i], (mean(y)-s[i])/(mean(x)), lwd=2, col=color[i])

</R>

Gesucht ist die lineare Regressionsfunktion der Konsumausgaben in Abhängigkeit vom HH-Nettoeinkommen.

Für die Schätzung der Regressionsparameter sind einige Zwischenberechnungen notwendig

HH
1 3500 2000 7000000 12250000 4000000
2 5000 3500 17500000 25000000 12250000
3 4300 3100 13330000 18490000 9610000
4 6100 3900 23790000 37210000 15210000
5 1000 900 900000 1000000 810000
6 4800 3000 14400000 23040000 9000000
7 2900 2100 6090000 8410000 4410000
8 2400 1900 4560000 5760000 3610000
9 5600 2900 16240000 31360000 8410000
10 4100 2100 8610000 16810000 4410000
Summe 39700 25400 112420000 179330000 71720000

Gemäß der angegebenen Formeln lassen sich die Regressionsparameter und wie folgt errechnen:

Damit ergibt sich die folgende lineare Regressionsfunktion:

(Konsumausgaben = 423,13 + 0,5332 Haushaltsnettoeinkommen)

Die Regressionsgerade lässt sich im Scatterplot darstellen:

<R output="display">

pdf(rpdf, width=7, height=7)

x = c(3500,5000,4300,6100,1000,4800,2900,2400,5600,4100) y = c(2000,3500,3100,3900,900,3000,2100,1900,2900,2100)

model = lm(y~x)

plot(x, y, xlab="Einkommen*E3", ylab="Konsum*E2", col="red", cex=2, pch=20, xaxt="n", yaxt="n") axis(1, at=seq(1000,6000,by=1000), label=seq(1,6,by=1)) axis(2, at=seq(1000,4000,by=500), label=seq(10,40,by=5), las=2) abline(423.12969, 0.53322, lwd=2, col="black")

</R>

Der Anstieg der Geraden entspricht der Konsumquote:

Mit jeder Mark mehr Einkommen erhöhen sich im Mittel der beobachteten 10 Zwei-Personen-Haushalte die Konsumausgaben um 0,53 Euro.

Nach Berechnung der Standardabweichung von bzw. sowie der Kovarianz zwischen und lässt sich der Korrelationskoeffizient wie folgt ermitteln:

Er weist auf einen starken Zusammenhang zwischen Konsumausgaben und HH-Nettoeinkommen hin.

Die Güte der Anpassung der Regressionsfunktion an die Daten lässt sich mit Hilfe des Bestimmtheitsmaßes ermitteln. Es ist der Anteil der durch die Regressionsfunktion erklärten Varianz an der Gesamtvarianz der Konsumausgaben (Y):

Das Bestimmtheitsmaß zeigt, dass 86% der Varianz der Konsumausgaben durch die lineare Abhängigkeit vom Haushaltsnettoeinkommen bei den 10 Zwei-Personen-Haushalten erklärt werden kann.