Explizite Lösung für die lineare Regression mit zwei Prädiktoren

8

Ich habe einige Beispiele von Daten der Form und . Ich möchte eine Ebene an die Daten mit den kleinsten mittleren quadratischen Fehlern anpassen.x,yz=f(x,y)

z=EINx+B.y+C.

Ich habe in Abschnitt 3 dieses Dokuments eine "Antwort" gefunden , die jedoch in Form einiger zu lösender Gleichungen verbleibt. Ich habe gerade die Fähigkeit, diese Gleichungen zu lösen, aber der Prozess wird so chaotisch, dass die Wahrscheinlichkeit, dass ich einen Fehler mache, ziemlich hoch ist. Sicherlich hat irgendwo jemand die vollständige Lösung in Langform geschrieben (sie könnte als "geschlossene Form" bezeichnet werden), und zwar in der Form

EIN=,
B.=,
C.=.

EDIT: Vielleicht ist "geschlossene Form" der falsche Ausdruck. Also lass mich klar sein. Ich möchte eine explizite Lösung für , und und keine Lösung, die mit "Wenn Sie diese Gleichungen lösen können, können Sie die Werte von , und " endet .EINB.C.EINB.C.

Mick
quelle
1
Ihre Bearbeitung ist nicht klar. Sie werden fragen , über geschlossene Lösung für die lineare Regression. Es ist im verknüpften Thread angegeben. Wenn Sie die Formel verwenden, erhalten Sie die Antwort. Was brauchst du noch?
Tim
1
Aufgrund der Antworten in Ihren Links muss ich drei Gleichungen gleichzeitig lösen, um A, B und C zu finden. Ich befürchte, dass ich einen Fehler machen werde.
Mick
1
In Ihrer Referenz befindet sich in der Tat eine geschlossene Lösung. Machen Sie einen Schritt zurück und schauen Sie sich an, was Sie tatsächlich tun. Sie lösen ein lineares Gleichungssystem - der Rang dieser Matrix sollte der Anzahl Ihrer Datenpunkte entsprechen. Warum würden Sie an dieser Stelle noch weiter gehen? Auf diese Weise bleiben Sie nicht bei drei Variablen hängen. Sie müssten lediglich das lineare Gleichungssystem lösen, das Sie bei Wolfram Alpha verwenden können, wenn Sie möchten. Die Lösung für diese Gleichungen ist auch die geschlossene Lösung, nach der Sie suchen, die jedoch immer von der Anzahl der freien Parameter in diesem Modell abhängt.
pAt84
1
Wir können das für Sie tun und werden Ihre Antwort erhalten, aber dies sollten Sie als Lernerfahrung wirklich selbst tun. Ich kann sehen, dass Sie mit genau dem zu kämpfen haben, aber diesen Kampf zu bestehen, wird viel mehr eine Belohnung sein, als wenn wir Ihnen nur die Antwort geben würden.
pAt84
1
Auf meinem 2 x 3 Fuß großen Whiteboard ging mir immer noch der Platz aus ... ja, im wahrsten Sinne des Wortes. Selbst wenn ich es lösen würde, wäre ich nicht sicher, dass ich unterwegs keinen Fehler gemacht hätte.
Mick

Antworten:

13

An anderer Stelle auf dieser Website finden Sie explizite Lösungen für die gewöhnliche Regression der kleinsten Quadrate

E.(zich)=EINxich+B.yich+C.

sind in Matrixform als erhältlich

(1)(C.,EIN,B.)'=(X.'X.)- -1X.'z

wo X. ist die "Modellmatrix"

X.=(1x1y11x2y21xnyn)

und z ist der Antwortvektor

z=(z1,z2,,zn)'.

Das ist eine vollkommen feine, explizite und berechenbare Antwort. Aber vielleicht gibt es ein zusätzliches Verständnis, das durch Inspektion der Koeffizienten herausgerissen werden kann. Dies kann erreicht werden, indem geeignete Einheiten ausgewählt werden, in denen die Variablen ausgedrückt werden sollen.

Die besten Einheiten für diesen Zweck zentrieren jede Variable auf ihren Mittelwert und verwenden ihre Standardabweichung als Maßeinheit. Lassen Sie die drei Mittel explizit seinmx,my, und mz und die drei Standardabweichungen sind sx,sy, und sz. (Es stellt sich heraus, dass es keine Rolle spielt, ob Sie durch teilenn oder n- -1bei der Berechnung der Standardabweichungen. Stellen Sie einfach sicher, dass Sie eine konsistente Konvention verwenden, wenn Sie einen zweiten Moment der Daten berechnen.) Die Werte der Variablen in diesen neuen Maßeinheiten sind

ξich=xich- -mxsx, ηich=yich- -mysy, ζich=zich- -mzsz.

Dieser Prozess wird als Standardisierung der Daten bezeichnet. Die Variablenξ, η, und ζsind die standardisierten Versionen der ursprünglichen Variablenx, y, und z.

Diese Beziehungen sind invertierbar:

xich=sxξich+mx, yich=syηich+my, zich=szζich+mz.

Einfügen dieser in die definierende Beziehung

E.(zich)=C.+EINxich+B.yich

und Vereinfachung der Erträge

E.(szζich+mz)=C.+EIN(sxξich+mx)+B.(syηich+my).

Lösung für die Erwartung der abhängigen Variablen ζich ergibt

E.(ζich)=(C.+EINmx+B.my- -mzsz)+(EINsxsz)ξich+(B.sysz)ηich.

Wenn wir diese Koeffizienten schreiben als β0,β1,β2 jeweils können wir uns dann erholen A,B,Cdurch Vergleichen und Lösen. Für die Aufzeichnung gibt dies

(2)A=szβ1sx, B=szβ2sy, and C=szβ0+mzAmxBmy.

Der Punkt davon wird deutlich, wenn wir die neue Modellmatrix betrachten

Ξ=(1ξ1ηi1ξ2η21ξnηn)

und die neue Antwortmatrix ζ=(ζ1,ζ2,,ζn), weil jetzt

Ξ'Ξ=(n000nnρ0nρn)

und

Ξ'ζ=(0,nτ,nυ)'

wo ρ ist der Korrelationskoeffizient 1nich=1nξichηich, τ ist der Korrelationskoeffizient 1nich=1nξichζich, und υ ist der Korrelationskoeffizient 1nich=1nηichζich.

Um die normalen Gleichungen zu lösen (1) wir können beide Seiten durch teilen ngeben

(10001ρ0ρ1)(β0β1β2)=(0τυ).

Was ursprünglich wie eine beeindruckende Matrixformel aussah, wurde auf einen wirklich elementaren Satz von drei simultanen Gleichungen reduziert. Unter der Voraussetzung|ρ|<1ist seine Lösung leicht zu finden

(β^0β^1β^2)=11- -ρ2(0τ- -ρυυ- -ρτ).

Stecken Sie diese in die Koeffizienten in (2) erzeugt die Schätzungen EIN^,B.^, und C.^.

In der Tat wurde noch mehr erreicht:

  • Es ist jetzt offensichtlich, warum die Fälle |ρ|=1 sind problematisch: Sie führen eine Division durch Null in die Lösung ein.

  • Es ist ebenso offensichtlich, wie zu bestimmen ist, ob wann eine Lösung existiert |ρ=1|und wie man es erhält. Es wird existieren, wenn die zweite und dritte Normalgleichung inΞ sind redundant und werden einfach durch Ignorieren einer der Variablen erhalten x und y an erster Stelle.

  • Wir können allgemein einen Einblick in die Lösung gewinnen. Zum Beispiel vonβ^0=0In allen Fällen können wir den Schluss ziehen, dass die angepasste Ebene den Mittelwertpunkt durchlaufen muss(mx,my,mz).

  • Es ist nun offensichtlich, dass die Lösung in Bezug auf die ersten beiden Momente des trivariaten Datensatzes gefunden werden kann (x,y,z). Dies wirft ein weiteres Licht auf die Tatsache, dass Koeffizientenschätzungen allein aus Mittelwerten und Kovarianzmatrizen ermittelt werden können .

  • Weiterhin Gleichung (2) zeigt, dass die Mittel nur zur Schätzung des Intercept-Terms benötigt werden C.. Schätzungen der beiden PistenEIN und B. benötigen nur die zweiten Momente.

  • Wenn die Regressoren nicht korreliert sind, ρ=0 und die Lösung besteht darin, dass der Achsenabschnitt Null ist und die Steigungen die Korrelationskoeffizienten zwischen der Antwort sind z und die Regressoren x und y wenn wir die Daten standardisieren. Dies ist sowohl leicht zu merken als auch bietet einen Einblick in die Beziehung zwischen Regressionskoeffizienten und Korrelationskoeffizienten.


Wenn wir das alles zusammenfassen, finden wir das (außer in den entarteten Fällen) |ρ|=1) Die Schätzungen können geschrieben werden

EIN^=τ- -ρυ1- -ρ2szsxB.^=υ- -ρτ1- -ρ2szsyC.^=mz- -mxEIN^- -myB.^.

In diesen Formeln ist die m sind die Beispielmittel, die s sind die Standardabweichungen der Stichprobe und die griechischen Buchstaben ρ,τ, und υ repräsentieren die drei Korrelationskoeffizienten (zwischen x und y, x und z, und y und z, beziehungsweise).

Bitte beachten Sie, dass diese Formeln nicht der beste Weg sind, um die Berechnungen durchzuführen. Sie alle beinhalten das Subtrahieren von Mengen, die von vergleichbarer Größe sein könnten, wie zτ- -ρυ, υ- -ρτ, und mz- -(- -mxEIN^- -myB.^). Eine solche Subtraktion beinhaltet einen Genauigkeitsverlust. Die Matrixformulierung ermöglicht es numerischen Analysten, stabilere Lösungen zu erhalten, die so viel Präzision wie möglich bewahren. Aus diesem Grund haben Menschen selten Interesse an termingerechten Formeln. Der andere Grund, warum wenig Interesse besteht, ist, dass mit zunehmender Anzahl von Regressoren die Komplexität der Formeln exponentiell zunimmt und schnell zu unhandlich wird.


Als weiteren Beweis für die Richtigkeit dieser Formeln können wir ihre Antworten mit denen eines Standardlösers für kleinste Quadrate vergleichen, der lmFunktion in R.

#
# Generate trivariate data.
#
library(MASS)
set.seed(17)
n <- 20
mu <- 1:3
Sigma <- matrix(1, 3, 3)
Sigma[lower.tri(Sigma)] <- Sigma[upper.tri(Sigma)] <- c(.8, .5, .6)
xyz <- data.frame(mvrnorm(n, mu, Sigma))
names(xyz) <- c("x", "y", "z")
#
# Obtain the least squares coefficients.
#
beta.hat <- coef(lm(z ~ x + y, xyz))
#
# Compute the first two moments via `colMeans` and `cov`.
#
m <- colMeans(xyz)
sigma <- cov(xyz)
s <- sqrt(diag(sigma))
rho <- t(t(sigma/s)/s); rho <- as.vector(rho[lower.tri(rho)])
#
# Here are the least squares coefficient estimates in terms of the moments.
#
A.hat <- (rho[2] - rho[1]*rho[3]) / (1 - rho[1]^2) * s[3] / s[1]
B.hat <- (rho[3] - rho[1]*rho[2]) / (1 - rho[1]^2) * s[3] / s[2]
C.hat <- m[3] - m[1]*A.hat - m[2]*B.hat
#
# Compare the two solutions.
#
rbind(beta.hat, formulae=c(C.hat, A.hat, B.hat))

Die Ausgabe weist erwartungsgemäß zwei identische Schätzreihen auf:

         (Intercept)         x        y
beta.hat    1.522571 0.3013662 0.403636
formulae    1.522571 0.3013662 0.403636
whuber
quelle
2

Fand es...

EIN=(zx¯- -z¯x¯)(y2¯- -y¯2)- -(zy¯- -z¯y¯)(xy¯- -x¯y¯)(x2¯- -x¯2)(y2¯- -y¯2)- -(xy¯- -x¯y¯)2B.=(x2¯- -x¯2)(zy¯- -z¯y¯)- -(zx¯- -z¯x¯)(xy¯- -x¯y¯)(x2¯- -x¯2)(y2¯- -y¯2)- -(xy¯- -x¯y¯)2C.=z¯- -EINx¯- -B.y¯.
Mick
quelle
Ich gab eine zweite Antwort, weil die Matrizen nicht in einen Kommentar passen würden.
pAt84
@MarcoB erstellt unter mathematica.stackexchange.com/questions/107426 eine Antwort , die ähnlich aussieht. Ich denke, wir sind hier gut.
Barrycarter
0

Aber du hättest es verstehen sollen! Schauen Sie sich Ihre Entwurfsmatrix noch einmal an (erste Gleichung Seite 4). Elemente werden als (x, y) geschrieben.

Element (3,1) = Element (1,3)

Element (2,1) = Element (1,2)

Element (3,2) = Element (2,3)

und Element (3,3) ist m.

Ihre reguläre Entwurfsmatrix wird aufgelöst in (alle Beträge ersetzt)

(K.L.M.L.R.S.M.S.m)
Dies erleichtert das Lösen von Mach, insbesondere wenn Sie noch ein paar Schritte voraus denken. Falls Sie das getan haben, Bravo! Falls Sie es nicht getan haben, haben Sie nicht lange genug auf die Designmatrix gestarrt.
pAt84
quelle