単純な線形回帰におけるスイッチング応答と説明変数の効果


48

レッツは、間にいくつかの「真」の関係が存在することを言いy及びxようにy=ax+b+ϵ、ここで及びbは定数であり、εは、 IID正常ノイズです。そのRコードからランダムにデータを生成し、次にのようなモデルに適合させると、明らかにabのかなり良い推定値が得られます。abϵx <- 1:100; y <- ax + b + rnorm(length(x))y ~ xab

(x ~ y)ただし、変数の役割をinのように切り替えてから、の結果をxのy関数に書き換えると、結果の勾配は常に回帰で推定される勾配よりも急(負または正)になります。私はそれがなぜなのかを正確に理解しようとしているので、そこで何が起こっているのかについて誰かが私に直観を与えることができれば感謝しています。xy ~ x


1
一般的にはそうではありません。おそらくあなたはあなたのデータにそれを見ているだけでしょう。次のコードを貼り付けます:y = rnorm(10); x = rnorm(10); lm(y〜x); lm(x〜y); Rに数回アクセスすると、両方の方向に進むことがわかります。
マクロ

それは私が説明していたものとは少し異なります。あなたの例では、yはxの関数ではなかったので、実際には「勾配」はありません(私の例では「a」)。
グレッグアポンテ

LM(yは〜x)にフィットモデルy=β0+β1x+ε(エラーは通常IIDあるML推定に相当)最小二乗法による。斜面があります。
マクロ

2
あなたの質問はstats.stackexchange.com/questions/13126stats.stackexchange.com/questions/18434で尋ねられ、回答されます。ただし、(a)Y vs X回帰、(b)X vs 回帰Y、(c)X相関の分析Y、(d)X変数の誤差回帰Y、および(e)二変量正規分布を当てはめる(X,Y)。これはそのような博覧会に適した場所です:-)。
whuber

2
もちろん、マクロは正しいです。xとyは問題で同等の役割を果たすため、どちらの勾配がより極端であるかは偶然の問題です。ただし、ジオメトリは、(間違って)回帰でxとyを逆にすると、元の勾配のレシピを取得する必要があることを示唆しています。xとyが線形に依存する場合を除いて、それは決して起こりません。この質問は、理由を尋ねていると解釈できます。
whuber

回答:


23

与えられたのデータ点X IY Iiが= 1 2 ... nは、平面内に、私たちは直線描画せ Y = A X + bは。我々は予測した場合、X I + Bの値としてY IY iが、その後エラーがあるY I - Y I= Yn(xi,yi),i=1,2,ny=ax+baxi+by^iyi二乗誤差y ia x ib 2総二乗誤差n i = 1y ia x ib 2です。お願いします(yiy^i)=(yiaxib)(yiaxib)2 i=1n(yiaxib)2

bのどの選択がS = n i = 1y ia x ib 2を最小化する か?abS=i=1n(yiaxib)2

以来の垂直距離であるX IY I直線から、我々はこのような点からの垂直距離の二乗の和そのラインを求めています行は可能な限り小さい。今Sは 両方の二次関数であり、ABとするとき、その最小値に達すると、bはそのようなものである S(yiaxib)(xi,yi)Sabab 2番目の式から、b=1が得られます

Sa=2i=1n(yiaxib)(xi)=0Sb=2i=1n(yiaxib)(1)=0
μY=1
b=1ni=1n(yiaxi)=μyaμx
は、それぞれyixiの算術平均値です。最初の式に代入すると、 a= 1μy=1ni=1nyi, μx=1ni=1nxiyixi したがって、最小にする線Sをとして表すことができ 、Y=AX+B=μY+1
a=(1ni=1nxiyi)μxμy(1ni=1nxi2)μx2.
S
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.

我々はの役割交換した場合と、ライン描画 、との値を求める と最小 つまり、からの点の水平距離の二乗和が行が可能な限り小さい場合、次のようになりますxyx=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)
および最小値は T
Tmin=[(1ni=1nyi2)μy2][(1ni=1nxi2)μx2][(1ni=1nxiyi)μxμy]2(1ni=1nyi2)μy2.

両方の線がポイント が、勾配は は一般的に異なります。実際、@ whuberがコメントで指摘しているように、すべてのポイントが同じ直線上にある場合、傾きは同じです。これを確認するには、 (μ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.

ありがとう!abs(correlation)<1は、逆の場合に傾斜が系統的に急になった理由を説明しています。
グレッグアポンテ

(+1)しかし、私は幾何学的な心を持っているので、あなたが言ったばかりの説明だけで答えを追加しました:)
エルビス

クラスの返信(+1)
Digio

39

Dilipの答えを説明するために、次の写真で、

  • 黒い点はデータポイントです。
  • 左側の黒い線は、によって得られた回帰線y ~ xであり、赤い線分の長さの二乗を最小化します。
  • 右側の黒い線は、で得られた回帰線x ~ yで、赤いセグメントの長さの二乗を最小化します。

回帰線

編集(最小矩形回帰)

「応答」と「共変量」を選択する自然な方法がなく、2つの変数が相互に依存している場合は、と対称的な役割を保存することができます。この場合、「最小矩形回帰」を使用できます。yx

  • 通常通り書きます;Y=aX+b+ϵ
  • 示すとの推定に条件との条件に。y^i=axi+bx^i=1a(yib)YiX=xiXiY=yi
  • 最小化する、 i|xix^i||yiy^i|
    y^=sign(cov(x,y))σ^yσ^x(xx¯)+y¯.

同じデータポイントを使用した図を次に示します。各ポイントについて、「長方形」は2つの赤いセグメントの長さの積として計算され、長方形の合計は最小化されます。このリグレッションの特性についてはあまり知りませんし、グーグルについてもあまり知りません。

最小の長方形


14
いくつかの注意:(1)誤解がない限り、「最小矩形回帰」は、センタリング後の行列の最初の主成分を取得することにより得られる解と同等であると思われます。ユニットの分散を得るために再スケーリングし、その後、代替します。(続き)X=(y,x)
枢機

14
(続き)(2)このように見て、この「最小矩形回帰」との形態と同等であることを確認することは容易である最小二乗直交(または全体)こうしてと、(3)の特殊なケース回帰デミングにをとる、中央揃えで再スケーリングされたベクトル。直交最小二乗は「最小円回帰」と見なすことができます。δ=1
枢機

2
@cardinal非常に興味深いコメント!(+1)長軸(reg。lineとすべてのポイント間の垂直距離を最小化、PCAなど)、または長軸の縮小回帰、またはP Legendreによるlmodel2 Rパッケージで例示されているタイプII回帰もここに関連すると考えますこれらの手法は、各変数がどの役割(応答または予測子)であるかを判断するのが難しい場合、または測定エラーを考慮したい場合に使用されるためです。
-chl

1
@chl:(+1)はい、あなたは正しいと思います。合計最小二乗のウィキペディアのページには、同じ手順の他のいくつかの名前がリストされています。少なくともR. Frisch、完全回帰システムによる統計的合流解析、UniversitetetsØkonomiskeInstituut、1934年に戻ったようで、対角回帰と呼ばれていました。
枢機

3
@cardinal Wikipediaのエントリを読むときはもっと注意する必要がありました...将来の参考のために、M。LoganによるBiostatistical Design and Analysis Using Rからの写真を示します(Wiley、2010;図8.4、174) 、エルビスの素敵なイラストによく似た、さまざまなアプローチを要約しています。
-chl

13

1つの回帰で傾きが小さくなる理由を簡単に説明します。両方の勾配は、と標準偏差(と)、およびと相関()の3つの数値に依存します。を応答とする回帰には勾配あり、を応答とする回帰には勾配があるため、最初の傾きと2番目の傾きの逆数の比は、等しくなります。xysxsyxyryrsysxxrsxsyr21

したがって、説明された分散の割合が大きいほど、各ケースから得られる勾配が近くなります。説明される分散の割合は対称であり、単純な線形回帰の二乗相関に等しいことに注意してください。


1

これを見る簡単な方法は、真のモデル場合、2つの回帰を実行することに注意することです。y=α+βx+ϵ

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

次に、:byx=cov(x,y)var(x)=cov(x,y)var(y)var(y)var(x)

byx=bxyvar(y)var(x)

したがって、勾配が急になるかどうかは、比率依存します。この比率は、想定される真のモデルに基づいて次と等しくなります。var(y)var(x)

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

他の回答とリンク

この結果を他の人からの回答と結び付けることができます。他の人は、場合、それは逆数であるべきだと言いました。実際、、および(推定誤差なし)、したがって:R2=1R2=1var(ϵ)=0byx=β

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

したがって、bxy=1/β


0

入力にノイズがある場合も興味深いものになります(常にそうであると主張できますが、コマンドや観測は完全ではありません)。

単純な線形関係に基づいて、xとyの両方にガウスノイズがある現象を観察するためのシミュレーションを作成しました。次のように観測値を生成しました(Pythonコード):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)

異なる結果を参照してください(ここで、odrは直交距離回帰です。つまり、最小矩形回帰と同じです)。

ここに画像の説明を入力してください

すべてのコードはそこにあります:

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


0

回帰直線は(常に)真の関係と同じではありません

次のような「真の」因果関係があるかもしれません

y=a+bx+ϵ

しかし、回帰線を適合させるy ~ xx ~ y、その因果関係と同じ意味ではありません(実際には、回帰線の1つの式が因果「真」関係の式と一致する場合もあります)


斜面間のより正確な関係

2つの切り替えられた単純な線形回帰の場合:

Y=a1+b1XX=a2+b2Y

次のように勾配を関連付けることができます。

b1=ρ21b21b2

したがって、勾配は互いに逆ではありません


直感

その理由は

  • 回帰直線と相関は必ずしも1対1で因果関係に対応するわけではありませ
  • 回帰直線は、条件付き確率または最良の予測により直接的に関連しています。

条件付き確率は関係の強さに関係していると想像できます。回帰線はこれを反映しており、関係の強さが小さい場合は両方の線の勾配が浅く、関係の強さが強い場合は両方が急勾配になる場合があります。勾配は単純に互いに逆ではありません。

2つの変数とが何らかの(因果関係)線形関係によって互いに関連している 場合、その関係を完全に逆にするのは良くないことが想像できます特定の値に基づいてを表現する場合。XY

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

の代わりに

X=a lot of Y+ a little of error

また使用する方が良いでしょう

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

以下の分布の例を、それぞれの回帰線とともに参照してください。分布は、および多変量正規分布です。Σ11Σ22=1Σ12=Σ21=ρ

例

条件付きの期待値(線形回帰で得られるもの)は

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

この場合、場合は多変量正規分布であり、周辺分布はX,Y

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

したがって、変数Yは、部分および分散部分ノイズであることがわかります。同じことが逆の場合にも当てはまります。ρX1ρ2

相関係数大きいほど、2本の線は近くなります。ただし、相関が低いほど、関係が強くなるほど、線の傾きが少なくなります(これは、両方の線とに当てはまります)ρY ~ XX ~ Y


0

短い答え

単純な線形回帰の目標は、y変数の値が与えられた場合に、x変数の最良の予測を考え出すことです。これは、x変数の値を指定して、変数の最良の予測を考え出すこととは異なる目標yです。

の単純な線形回帰は、y ~ x与えyられxたを予測するための「最良の」可能なモデルを提供します。したがって、モデルを適合させx ~ y、代数的に逆にした場合、そのモデルはのモデルと同様に最適な結果を得ることができy ~ xます。しかし、「最適化された」モデルと比較して、適合モデルの反転x ~ yは通常、y与えられた予測で悪化します。これは、「反転モデル」が異なる目的を満たすために作成されたためです。xy ~ xx ~ y

次のデータセットがあると想像してください:

ここに画像の説明を入力してください

のOLS回帰を実行するy ~ xと、次のモデルが作成されます。

y = 0.167 + 1.5*x

これはy、エラーを伴う次の予測を行うことにより、予測を最適化します。

ここに画像の説明を入力してください

OLS回帰の予測は、右端の列の値の合計(つまり、二乗の合計)ができる限り小さいという意味で最適です。

のOLS回帰を実行するx ~ yと、別のモデルが作成されます。

x = -0.07 + 0.64*y

これにより、関連するエラーとともに以下の予測を行うことにより、xの予測が最適化されます。

ここに画像の説明を入力してください

繰り返しますが、これは、右端の列の値の合計が可能な限り小さい(に等しい0.071)という意味で最適です。

ここで、y = 0.167 + 1.5*x代数を使用して最初のモデルを単に反転させ、モデルを与えようとしたと想像してくださいx = -0.11 + 0.67*x

これにより、次の予測と関連エラーが表示されます。

ここに画像の説明を入力してください

右端の列の値の合計はです0.074。これは、yでxを回帰することから得られるモデル、つまりモデルからの対応する合計よりも大きくなりますx ~ y。言い換えれば、「逆y ~ xモデル」は、xの予測において、OLSモデルよりも悪い仕事をしていx ~ yます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.