はじめに

回帰分析とは、2つ以上の値の互いの増減関係を分析する手法です。言い換えれば、値同士の関係性を明らかにする分析手法とも言えます。関係性の分析には、相関分析という値同士の関係性の強弱を分析する手法がありましたが、この回帰分析では、値同士の増減関係(他方が増えると一方も増える、又は減る等)を分析します。

  • 相関分析 … 値同士の関係性の強弱を明らかにする手法
  • 回帰分析 … 値同士の増減関係を明らかにする手法
    • 単回帰分析 … 1つの説明変数に対して、目的変数がどのように変化するのか分析
    • 重回帰分析 … 2つ以上の説明変数に対して、目的変数がどのように変化するのか分析

 

回帰直線

説明変数と目的変数をそれぞれグラフの縦軸と横軸としたとき。グラフに各データをプロットした時に、図のように各点に沿った傾向線を引きます。この傾向線を回帰直線といい、説明変数に対する目的変数の変化を表しています。

単に回帰直線といっても、当てはまりの良い線と悪い線があります。

図のように、同じ傾きの回帰直線でもデータに当てはまっているのと、そうでないのとがあります。

やはり、当てはまりが良いのと悪いのとでは、その信頼度というのが変わります。

当てはまりが良い = 信頼度が高い

当てはまりが悪い = 信頼度が低い

そういったことから、回帰分析において重要な当てはまり具合ですが
この度合は、P値と決定係数という指標によって示されます。

この回帰直線を求める方法として、最小二乗法というものがあります。
※他にも回帰直線を求める方法はありますが、最小二乗法がベースとなっているようです。

最小二乗法開設リンク:http://szksrv.isc.chubu.ac.jp/lms/lms1.html

 

最小二乗法

回帰直線を出すための最小二乗法ですが、具体的にどうすればいいのか見てみましょう。

話を簡単にするため、単回帰分析における最小二乗法について記します。2次元グラフの縦軸と横軸にそれぞれ目的変数と説明変数をプロットします。その各点に最も沿った直線を求める方法が最小二乗法です。

では各点に最も沿ったとはどういうことでしょうか?

各点を仮に次のように表しますとします。
$$
(textbf{x},textbf{y})=(x_1,y_1)(x_2, y_2) cdots (x_n,y_n)
$$

各点の y 座標と直線との差を d とした時、各d の二乗和 S を最小とするように引かれた直線 y=ax+b を求めることが最小二乗法の目的です。

$$
S = {d_1}^2 + {d_2}^2 + cdots + {d_n}^2
$$

最小二乗法の目的:Sが最小となるような 傾きa と y切片b を求める

ここで仮に、$y=ax+b$という理想的な直線があったとした場合、各点(Xi, Yi) とX座標が同じで、上記の直線上に位置する点を (Xi, Yi’) とします。
y=ax+b 上の点なので、任意のy座標 Yi’ は ${y_i}’ = ax_i + b$ のように表現できます。

又、任意の点 (Xi, Yi) と理想的な直線上の点 (Xi, Yi’) の距離 di は

$$
d_i = y_i – {y_i}’ = y_i – (ax_i+b) = y_i – ax_i – b
$$

となります。よって、差の二乗和 S は以下のようになります。

$$
begin{eqnarray}
S&=&{d_1}^2+cdots+{d_n}^2\
&=&{(y1-ax_1-b)}^2+cdots+{(yn-ax_n-b)}^2\
&=&sum^n_{i=1}{(y_i-ax_i-b)}^2\
&=&({y_1}^2+cdots+{y_n}^2)+a^2({x_1}^2+cdots+{x_n}^2)+nb^2-2b(y_1+cdots+y_n)\
& &-2a(x_1y_1+cdots+x_ny_n)+2ab(x_1+cdots+x_n)
end{eqnarray}
$$

そして、総和部分の項をそれぞれ次のように置いておきます。ここで重要なのは、これらのデータが全て標本(サンプルデータ)から分かる値だということです。つまり、$(x_i, y_i)=(i番目の説明変数, i番目の目的変数)$ なので、既に手に入っているデータでありスグに置換できるため、仮にA~Eとしているわけです。

$$
begin{eqnarray}
A&=&{y_1}^2+cdots+{y_n}^2&=&sum^n_{i=1}{y_i}^2\
B&=&{x_1}^2 +cdots+{x_n}^2&=&sum^n_{i=1}{x_i}^2\
C&=&y_1+cdots+y_n&=&sum^n_{i=1}y_i\
D&=&x_1y_1+cdots+x_ny_n&=&sum^n_{i=1}y_ix_i\
E&=&x_1+cdots+x_n&=&sum^n_{i=1}x_i
end{eqnarray}
$$

さて、差の二乗総和Sを表す式を、A~Eに置き換えて表してみますと、
$$
S = A+a^2B+nb^2-2bC-2aD+2abE
$$
となります。先に言った通り、A~Eは既知の値なので定数とみなすことができます。すると、上記の式は、A~Eを係数としたa,bの関数と見なすことができますね?まあ、右辺は全く同じなんですけど・・・
$$
S(a,b) = A+a^2B+nb^2-2bC-2aD+2abE
$$
関数とみなしたので、偏微分することができます。まずは、bを固定してaについて偏微分すると
$$
begin{eqnarray}
frac{partial S}{partial a}&=&lim_{δa to 0} frac{f(a+δa)-f(a)}{δa}\
&=& frac{δa(2aB + δaB – 2D + 2bE)}{δa}\
&=& 2aB + δaB – 2D + 2bE\
&=& 2aB – 2D + 2bE
end{eqnarray}
$$
次に、aを固定してbについて偏微分すると、
$$
begin{eqnarray}
frac{partial S}{partial b}&=&lim_{δb to 0} frac{f(b+δb)-f(b)}{δb}\
&=& frac{δb(2nb+nδb-2C+2aE)}{δb}\
&=& 2nb+nδb-2C+2aE\
&=& 2nb-2C+2aE
end{eqnarray}
$$

a,bが未知数である方程式が2つできたので連立します。
$$
begin{eqnarray}
begin{cases}
2aB – 2D + 2bE &=& 0 cdots (1)\
2nb – 2C + 2aE &=& 0 cdots (2)
end{cases}
end{eqnarray}
$$

まずは、aを求めるため(bを消すため)に式(1)にnを、式(2)にEをかけます。

$$
begin{eqnarray}
begin{cases}
2anB – 2nD + 2bnE &=& 0 cdots (1)’\
2bnE – 2CE + 2aE^2 &=& 0 cdots (2)’
end{cases}
end{eqnarray}
$$

(1)’-(2)’ をすればaが求まります。

$$
begin{eqnarray}
2anB-2nD+2CE-2aE^2 &=& 0\
2a(nB-E^2) &=& 2nD-2CE\
a &=& frac{nD-CE}{nB-E^2}
end{eqnarray}
$$

同じ要領でbを求めると次のようになります。

$$
b=frac{DE-BC}{E^2-nB}
$$

よって、理想的な回帰直線の $y=ax+b$ のa,bはぞれぞれ次のようになります。

$$
begin{eqnarray}
a &=& frac{nsum^n_{i=1}x_iy_i-sum^n_{i=1}y_isum^n_{i=1}x_i}{nsum^n_{i=1}{x_i}^2-(sum^n_{i=1}x_i)^2}\
b &=& frac{{sum^n_{i=1}{x_i}^2}{sum^n_{i=1}y_i}-{sum^n_{i=1}x_iy_i}{sum^n_{i=1}x_i}}{nsum^n_{i=1}{x_i}^2-(sum^n_{i=1}x_i)^2}
end{eqnarray}
$$

Σばっかりで複雑そうですが、それぞれみてみると標本から求められることが分かります。このような方法で各データ間に中立公平な直線を求めることを最小二乗法といいます。おわり。

回帰直線の意味

さて、苦労して計算した回帰直線の $a,b$ でしたが、回帰直線を出すこと自体が回帰分析の目的ではありません。この回帰直線から意味のある情報を導くのです。

では、回帰直線の傾きaは何を表しているのでしょうか?