Auswirkung von Schaltverhalten und erklärender Variable bei einfacher linearer Regression


48

Angenommen, es gibt eine "wahre" Beziehung zwischen und so dass , wobei und Konstanten sind und normales Rauschen ist. Wenn ich zufällig Daten aus diesem R-Code generiere und dann ein Modell wie dieses anpasse, erhalte ich offensichtlich einigermaßen gute Schätzungen für und .yy = a x + b + a b a bxy=ax+b+ϵabϵx <- 1:100; y <- ax + b + rnorm(length(x))y ~ xab

Wenn ich jedoch die Rolle der Variablen wie in (x ~ y)vertausche und dann das Ergebnis für in eine Funktion von umschreibe , ist die resultierende Steigung immer steiler (entweder negativer oder positiver) als die durch die Regression geschätzte . Ich versuche genau zu verstehen, warum das so ist, und würde es begrüßen, wenn mir jemand eine Vorstellung davon geben könnte, was dort vor sich geht.xyxy ~ x


1
Das stimmt überhaupt nicht. Vielleicht sehen Sie das nur in Ihren Daten. Füge diesen Code ein: y = rnorm (10); x = Rnorm (10); lm (y ~ x); lm (x ~ y); mehrmals in R und Sie werden feststellen, dass es in beide Richtungen geht.
Makro

Das ist ein bisschen anders als das, was ich beschrieben habe. In Ihrem Beispiel war y überhaupt keine Funktion von x, daher gibt es eigentlich keine "Steigung" (das "a" in meinem Beispiel).
Greg Aponte

lm (y ~ x) entspricht dem Modell durch kleinste Quadrate (entspricht der ML-Schätzung, wenn die Fehler normal sind). Es gibt einen Hang. y=β0+β1x+ε
Makro

2
Ihre Frage wird unter stats.stackexchange.com/questions/13126 und stats.stackexchange.com/questions/18434 gestellt und beantwortet . Ich glaube jedoch, dass noch niemand eine einfache, klare Erklärung der Beziehungen zwischen (a) Regression von gegen , (b) Regression von gegen , (c) Analyse der Korrelation von und , (d) beigetragen hat. Fehler-in-Variablen-Regression von und und (e) Anpassen einer bivariaten Normalverteilung an . Dies wäre ein guter Ort für eine solche Ausstellung :-). YXXYXYXY(X,Y)
Whuber

2
Natürlich ist Makro richtig: Weil x und y in der Frage gleichwertige Rollen spielen, ist es eine Zufallsfrage, welche Steigung extremer ist. Die Geometrie legt jedoch (fälschlicherweise) nahe, dass wir, wenn wir x und y in der Regression umkehren, das Rezept der ursprünglichen Steigung erhalten sollten. Das passiert nie, außer wenn x und y linear abhängig sind. Diese Frage kann dahingehend interpretiert werden, warum.
Whuber

Antworten:


23

Gegeben Datenpunkte , in der Ebene, lassen Sie uns eine gerade Linie ziehen . Wenn wir sagen voraus als Wert von , dann wird der Fehler ist , der quadratische Fehler ist und der gesamte quadratische Fehler . Wir fragen( x i , y i ) , i = 1 , 2 , ... n y = a x + b a x i + b y i y i ( y i - y i ) = ( y i - a x i - b ) ( y i - a x i - bn(xi,yi),i=1,2,ny=ax+baxi+by^iyi(yiy^i)=(yiaxib)n i = 1 ( y i - a x i - b ) 2(yiaxib)2 i=1n(yiaxib)2

Welche Wahl von und minimiert ?b S = n Σ i = 1 ( y i - a x i - b ) 2abS=i=1n(yiaxib)2

Da der vertikale Abstand von von der geraden Linie ist, fragen wir nach der Linie, so dass die Summe der Quadrate der vertikalen Abstände der Punkte von der Linie so klein wie ist möglich. Nun ist eine quadratische Funktion von und und erreicht ihren Minimalwert, wenn und sind, dass Aus der zweiten Gleichung erhalten wir wo ( x i , y i ) S a b a b S(yiaxib)(xi,yi)Sabab b=1

Sa=2i=1n(yiaxib)(xi)=0Sb=2i=1n(yiaxib)(1)=0
μy=1
b=1ni=1n(yiaxi)=μyaμx
yixia=( 1μy=1ni=1nyi, μx=1ni=1nxi ist der arithmetische Durchschnitt Werte der bzw. der . Wenn wir die erste Gleichung einsetzen, erhalten wir Somit kann die Linie, die minimiert , ausgedrückt werden als und der minimale Wert von ist yixiSy=ax+b=μy+((1
a=(1ni=1nxiyi)μxμy(1ni=1nxi2)μx2.
SSSmin=[(1
y=ax+b=μy+((1ni=1nxiyi)μxμy(1ni=1nxi2)μx2)(xμx),
S
Smin=[(1ni=1nyi2)μy2][(1ni=1nxi2)μx2][(1ni=1nxiyi)μxμy]2(1ni=1nxi2)μx2.

Wenn wir die Rollen von und vertauschen , ziehen Sie eine Linie und fragen Sie nach den Werten von und , die minimieren. wir wollen die Gerade so, dass die Summe der Quadrate der horizontalen Abstände der Punkte von der Linie ist so klein wie möglich, dann bekommen wirxyx=a^y+b^a^b^

T=i=1n(xia^yib^)2,

x=a^y+b^=μx+((1ni=1nxiyi)μxμy(1ni=1nyi2)μy2)(yμy)
und der Minimalwert von ist T
Tmin=[(1ni=1nyi2)μy2][(1ni=1nxi2)μx2][(1ni=1nxiyi)μxμy]2(1ni=1nyi2)μy2.

Beachten Sie, dass beide Linien durch den Punkt verlaufen , die Steigungen jedoch sind im Allgemeinen unterschiedlich. In der Tat sind, wie @whuber in einem Kommentar hervorhebt, die Steigungen gleich, wenn alle Punkte auf derselben geraden Linie liegen. Um dies zu sehen, beachte, dass (μx,μy)

a=(1ni=1nxiyi)μxμy(1ni=1nxi2)μx2,  a^1=(1ni=1nyi2)μy2(1ni=1nxiyi)μxμy
(xi,yi)
a^1a=Smin(1ni=1nxiyi)μxμy=0Smin=0yi=axi+b,i=1,2,,n.

Vielen Dank! abs (Korrelation) <1 erklärt, warum die Steigung im umgekehrten Fall systematisch steiler war.
Greg Aponte

(+1) aber ich fügte eine Antwort mit nur einer Illustration von dem hinzu, was du gerade gesagt hast, da ich einen geometrischen Verstand habe :)
Elvis

Klassenantwort (+1)
Digio

39

Nur um Dilips Antwort zu veranschaulichen: Auf den folgenden Bildern

  • die schwarzen Punkte sind Datenpunkte;
  • Auf der linken Seite ist die schwarze Linie die Regressionslinie y ~ x, mit der die Quadrate der Länge der roten Segmente minimiert werden.
  • rechts ist die schwarze Linie die Regressionslinie x ~ y, mit der die Quadrate der Länge der roten Segmente minimiert werden.

Regressionslinien

Bearbeiten (Regression der kleinsten Rechtecke)

Wenn es keine natürliche Möglichkeit gibt, eine "Antwort" und eine "Kovariate" auszuwählen, sondern die beiden Variablen voneinander abhängig sind, möchten Sie möglicherweise eine symmetrische Rolle für und beibehalten . In diesem Fall können Sie die "Regression der kleinsten Rechtecke" verwenden.yx

  • schreibe wie üblich ;Y=aX+b+ϵ
  • bezeichne und die Schätzungen von Bedingung von und von Bedingung von ;y^i=axi+bx^i=1a(yib)YiX=xiXiY=yi
  • minimiere, was zu i|xix^i||yiy^i|
    y^=sign(cov(x,y))σ^yσ^x(xx¯)+y¯.

Hier ist eine Darstellung mit denselben Datenpunkten. Für jeden Punkt wird ein "Rechteck" als Produkt der Länge von zwei roten Segmenten berechnet und die Summe der Rechtecke minimiert. Ich weiß nicht viel über die Eigenschaften dieser Regression und finde bei Google nicht viel.

dest Rechtecke


14
Einige Anmerkungen: ( 1 ) Wenn ich mich nicht irre, scheint die "Regression der kleinsten Rechtecke" der Lösung zu entsprechen, die man erhält, wenn man die erste Hauptkomponente auf der Matrix nach dem Zentrieren nimmt und erneutes Skalieren, um eine Einheitsvarianz zu erhalten, und anschließendes Backsubstituieren. (Fortsetzung)X=(y,x)
Kardinal

14
(Forts.) ( 2 ) So gesehen ist es leicht zu sehen , dass diese „least Rechtecke regression“ ist äquivalent zu einer Form von orthogonal (oder total) den kleinsten Quadraten und somit ( 3 ) , einen Sonderfall der Deming - Regressions on Die zentrierten, neu skalierten Vektoren nehmen . Orthogonale kleinste Quadrate können als "Regression der kleinsten Kreise" betrachtet werden. δ=1
Kardinal

2
@ Kardinal Sehr interessante Kommentare! (+1) Ich glaube, dass die Hauptachse (Minimierung der senkrechten Abstände zwischen der Bezugslinie und allen Punkten à la PCA) oder die reduzierte Regression der Hauptachse oder die Typ-II-Regression, wie sie im Paket lmodel2 R von P Legendre dargestellt sind, ebenfalls relevant sind da diese Techniken verwendet werden, wenn es schwierig ist zu sagen, welche Rolle (Antwort oder Prädiktor) jede Variable spielt oder wenn wir Messfehler berücksichtigen möchten.
chl

1
@chl: (+1) Ja, ich glaube, Sie haben Recht und die Wikipedia-Seite auf den kleinsten Quadraten listet mehrere andere Namen für das gleiche Verfahren auf, mit denen ich nicht alle vertraut bin. Es scheint zumindest auf R. Frisch zurückzugehen, Statistische Konfluenzanalyse mittels vollständiger Regressionssysteme , Universitetets Økonomiske Instituut, 1934, wo es als diagonale Regression bezeichnet wurde .
Kardinal

3
@ cardinal Ich hätte beim Lesen des Wikipedia-Eintrags vorsichtiger sein sollen ... Hier ist ein Bild aus dem biostatistischen Entwurf und der Analyse mit R von M. Logan (Wiley, 2010; Abb. 8.4, S. 174). Hier werden die verschiedenen Ansätze zusammengefasst, ähnlich wie in Elvis 'schönen Illustrationen.
chl

13

Nur eine kurze Anmerkung, warum Sie die Steigung für eine Regression kleiner sehen. Beide Steigungen hängen von drei Zahlen ab: Standardabweichungen von und ( und ) und Korrelation zwischen und ( ). Die Regression mit als Antwort hat die Steigung und die Regression mit als Antwort hat die Steigung , daher die Verhältnis der ersten Steigung zum Kehrwert der zweiten ist gleich .xysxsyxyryrsysxxrsxsyr21

Je größer der Anteil der erklärten Varianz ist, desto näher sind die von jedem Fall erhaltenen Steigungen. Beachten Sie, dass der erläuterte Varianzanteil symmetrisch ist und der quadratischen Korrelation in der einfachen linearen Regression entspricht.


1

Eine einfache Möglichkeit, dies zu betrachten, besteht darin, zu beachten, dass Sie für das wahre Modell zwei Regressionen ausführen:y=α+βx+ϵ

  • y=ayx+byxx
  • x=axy+bxyy

Dann haben wir mit :byx=cov(x,y)var(x)=cov(x,y)var(y)var(y)var(x)

byx=bxyvar(y)var(x)

Ob Sie also eine steilere Steigung erreichen oder nicht, hängt vom Verhältnis . Dieses Verhältnis ist gleich, basierend auf dem angenommenen wahren Modell:var(y)var(x)

var(y)var(x)=β2var(x)+var(ϵ)var(x)

Verknüpfen Sie mit anderen Antworten

Sie können dieses Ergebnis mit den Antworten anderer verknüpfen, die sagten, wenn , sollte es das Gegenteil sein. In der Tat ist und auch (kein Schätzfehler).R2=1R2=1var(ϵ)=0byx=β

R2=1byx=bxyβ2var(x)+0var(x)=bxyβ2

Also istbxy=1/β


0

Es wird interessant, wenn Ihre Eingaben auch Rauschen enthalten (was wir argumentieren könnten, ist immer der Fall, kein Befehl oder keine Beobachtung ist jemals perfekt).

Ich habe einige Simulationen erstellt, um das Phänomen zu beobachten, das auf einer einfachen linearen Beziehung mit dem Gaußschen Rauschen auf x und y basiert . Ich habe die Beobachtungen wie folgt generiert (Python-Code):x=y

x = np.linspace(0, 1, n)
y = x

x_o = x + np.random.normal(0, 0.2, n)
y_o = y + np.random.normal(0, 0.2, n)

Sehen Sie sich die verschiedenen Ergebnisse an (odr hier ist die orthogonale Distanzregression, dh dieselbe wie die Regression der kleinsten Rechtecke):

Bildbeschreibung hier eingeben

Der ganze Code ist drin:

https://gist.github.com/jclevesque/5273ad9077d9ea93994f6d96c20b0ddd


0

Die Regressionsgerade ist nicht (immer) dieselbe wie die wahre Beziehung

Möglicherweise haben Sie einen "wahren" Kausalzusammenhang wie

y=a+bx+ϵ

aber angepasste Regressionslinien y ~ xoder x ~ ynicht die gleiche Bedeutung wie dieser Kausalzusammenhang (auch wenn in der Praxis der Ausdruck für eine der Regressionslinien mit dem Ausdruck für den kausalen "wahren" Zusammenhang übereinstimmen kann)


Genauere Beziehung zwischen Steigungen

Für zwei geschaltete einfache lineare Regressionen:

Y=a1+b1XX=a2+b2Y

Sie können die Pisten wie folgt in Beziehung setzen:

b1=ρ21b21b2

Die Steigungen sind also nicht gegensätzlich.


Intuition

Der Grund ist, dass

  • Regressionsgeraden und Korrelationen entsprechen nicht unbedingt einem Kausalzusammenhang.
  • Regressionslinien beziehen sich direkter auf eine bedingte Wahrscheinlichkeit oder beste Vorhersage.

Sie können sich vorstellen, dass sich die bedingte Wahrscheinlichkeit auf die Stärke der Beziehung bezieht. Regressionslinien spiegeln dies wider, und die Steigungen der Linien können sowohl flach sein, wenn die Stärke der Beziehung gering ist, als auch steil, wenn die Stärke der Beziehung hoch ist. Die Steigungen sind nicht einfach gegensätzlich.

Beispiel

Wenn zwei Variablen und durch eine (kausale) lineare Beziehung miteinander in Beziehung stehen, können Sie sich vorstellen, dass es nicht gut wäre , diese Beziehung vollständig umzukehren falls Sie basierend auf einem gegebenen Wert von ausdrücken möchten .XY

Y=a little bit of X+ a lot of error
XY

Anstatt von

X=a lot of Y+ a little of error

es wäre besser, auch zu verwenden

X=a little bit of Y+ a lot of error

Siehe die folgenden Beispielverteilungen mit ihren jeweiligen Regressionslinien. Die Verteilungen sind multivariate Normalverteilungen mit undΣ11Σ22=1Σ12=Σ21=ρ

Beispiel

Die bedingten erwarteten Werte (was Sie bei einer linearen Regression erhalten würden) sind

E(Y|X)=ρXE(X|Y)=ρY

und in diesem Fall mit eine multivariate Normalverteilung, dann sind die RandverteilungenX,Y

YN(ρX,1ρ2)XN(ρY,1ρ2)

Sie können also die Variable Y als einen Teil und ein Teilrauschen mit der Varianz . Das gleiche gilt umgekehrt.ρX1ρ2

Je größer der Korrelationskoeffizient , näher sind die beiden Linien. Aber je geringer die Korrelation ist, desto weniger stark ist die Beziehung, desto weniger steil sind die Linien (dies gilt für beide Linien und ).ρY ~ XX ~ Y


0

Die kurze Antwort

Das Ziel einer einfachen linearen Regression ist es, die besten Vorhersagen für die yVariable zu treffen, wenn die xVariablenwerte gegeben sind. Dies ist ein anderes Ziel als der Versuch x, bei gegebenen Werten der yVariablen die beste Vorhersage für die Variable zu treffen.

Einfache lineare Regression von y ~ xgibt Ihnen das 'bestmögliche' Modell für die Vorhersage ygegeben x. Wenn Sie also ein Modell für ein Modell anpassen x ~ yund es algebraisch invertieren, kann dieses Modell von seiner besten Seite nur so gut sein wie das Modell für y ~ x. Aber ein Modell fit Umkehren für x ~ ygewöhnlich schlechter tut bei der Vorhersage ygegeben x, im Vergleich zu dem ‚optimalen‘ y ~ xModell, weil das „umgekehrte x ~ yModell“ geschaffen wurde ein anderes Ziel zu erfüllen.

Illustration

Stellen Sie sich vor, Sie haben den folgenden Datensatz:

Bildbeschreibung hier eingeben

Wenn Sie eine OLS-Regression von ausführen y ~ x, erhalten Sie das folgende Modell

y = 0.167 + 1.5*x

Dies optimiert die Vorhersagen von, yindem die folgenden Vorhersagen getroffen werden, mit denen Fehler verbunden sind:

Bildbeschreibung hier eingeben

Die Vorhersagen der OLS-Regression sind in dem Sinne optimal, dass die Summe der Werte in der Spalte ganz rechts (dh die Summe der Quadrate) so klein wie möglich ist.

Wenn Sie eine OLS-Regression von ausführen, x ~ yfällt Ihnen ein anderes Modell ein:

x = -0.07 + 0.64*y

Dies optimiert die Vorhersagen von x, indem die folgenden Vorhersagen mit zugehörigen Fehlern gemacht werden.

Bildbeschreibung hier eingeben

Dies ist wiederum in dem Sinne optimal, dass die Summe der Werte der am weitesten rechts stehenden Spalte so klein wie möglich (gleich 0.071) ist.

Stellen Sie sich vor, Sie haben versucht, das erste Modell y = 0.167 + 1.5*xmithilfe der Algebra zu invertieren , um das Modell zu erhalten x = -0.11 + 0.67*x.

Dies würde Ihnen die folgenden Vorhersagen und damit verbundenen Fehler geben:

Bildbeschreibung hier eingeben

Die Summe der Werte in der äußersten rechten Spalte ist 0.074größer als die entsprechende Summe aus dem Modell, das Sie durch Regression von x auf y erhalten, dh dem x ~ yModell. Mit anderen Worten, das "invertierte y ~ xModell" leistet schlechtere Arbeit bei der Vorhersage von x als das OLS-Modell von x ~ y.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.