回帰分析

回帰分析(regression analysis)は、相関係数とならんで、データの関連を調べる代表的な手法である。

まずは、もっともシンプルな単純回帰分析を説明する。

2次元データ[latex](X_i,Y_i)~(i=1,2,3,\cdots,n)[/latex]を考えよう。通常は、片方のデータ[latex]X_i~(i=1,2,3,\cdots,n)[/latex]を原因変数(独立変数)、もう一つの変数[latex]Y_i~(i=1,2,3,\cdots,n)[/latex]を結果変数(従属変数)などとして、因果関係を調べることが多い。例えば、たばこの喫煙率が原因変数と、肺がんの罹患率が結果変数などが例にあげられる。(実際には、データのみから実際に因果関係を同定するのはそう簡単ではないのだが、、、)

単純回帰分析では、原因変数Xと結果変数Yの間に一次関数の関係があると仮定する。(これをモデル式とよぼう。)

[latex size=2]\displaystyle Y = aX + b[/latex]

 

観測データ[latex](X_i,Y_i)~(i=1,2,3,\cdots,n)[/latex]から、この式の係数[latex]a[/latex]と[latex]b[/latex]を推定するのが、もっともシンプルな形の回帰分析である。

係数を推定するために用いられるのが、最小二乗法といわれる手法である。

観測データと、先ほどのモデル式との誤差Eの2乗の合計は次で与えられる。

[latex size=2]\displaystyle E = \sum_{i=1}^{n}\{Y_i- (aX_i + b)\}^2[/latex]

 

この誤差の合計Eを最少になるような[latex]a[/latex]と[latex]b[/latex]を求めればよい。このような問題は、偏微分法を用いて求めることができる。

詳しい計算を省略するが、結果は以下で与えられる。まず、係数[latex]a[/latex]のほうが、先に求めることができる。

[latex size=2]\displaystyle a = \frac{\sum_{i=1}^{n}(X_i-\bar{X})(Y_i-\bar{Y})}{\sum_{i=1}^{n}(X_i-\bar{X})^2}[/latex]

 

この係数[latex]a[/latex]を用いて、係数[latex]b[/latex]も求めることができる。

[latex size=2]\displaystyle b = \bar{Y}-a\bar{X}[/latex]

 

これで、めでたく原因変数Xと結果変数Yの間の関係を推定する式(モデル式)が、同定できたわけである。

例えば、喫煙率(X)と肺がんの罹患率(Y)のデータを用いた時に、[latex]a[/latex]が正の値であれば、正の因果関係があることが推定される。

ただ、様々な問題で、本当に因果関係があるかどうかをいうのは結構難しい。他の第3の原因によって、見かけ上2つの変数に因果関係があるように見える場合もよくある。

たとえば、回帰分析によって、病院ごとの医師の在籍数と、患者の死亡率に正の関係[latex]a>0[/latex]があることがわかったとしよう。ただ、この場合、医師が多いことと、患者が死亡しやすいことには関係がないことはすぐにわかる。ただ単に、大きい病院には重篤な患者が多く来ているだけということだ。

このように回帰分析で、因果関係を同定しようとするときは、常に見かけの因果関係に騙されないように気をつけなければならない。