最小二乗法による線形回帰

データ数:n

データ数を入力後、「決定」ボタンを押すと、ここにデータ入力欄が生成される。


傾き(回帰係数): a
y切片: b
相関係数: r



ファイル等から、コピーする場合は、
以下のテキストエリアに貼り付ける。
( xi , yi )の各データセットは改行毎に、
xiyi のデータ間は半角スペースで、
区切られることに注意。

データ数: n
傾き(回帰係数): a
y切片: b
相関係数: r



最小二乗法とは何か?

今、物理量として2つの変数x, yがあり、 例えば、両者の間に成り立つ関係式が直線:
yaxb
で表されると仮定すると、 xyの関係をプロットした点は一般にはこの直線上にはなく、
残差というズレが生じる。(※より正確には、「誤差」は回帰直線を求める前のもので、
「残差」は回帰直線を求める後のもの
として区別しているテキストもある。
その場合、「残差」は「誤差」の推定値であるといえるだろう。)
これらのズレが最も小さくなるような直線が最適な直線であると考えられるが、
この「最適な直線」を目測で引くのではなく、計算で求められないだろうか。
その計算方法が「最小二乗法(least squares method; mothod of least squares)」である。
i番目の測定値と最適な直線との間に生じる残差は、
yiaxib
で与えられるから、これらの総和が最小となればよいだろう。
しかし、残差は正と負の両方の値をとるから、結局それらの総和はゼロとなってしまう。
そこでデータ数:n個の測定値に対し、各々の残差の二乗の総和:

を考える。(※より正確には、「残差の偏差の 『平方和』或いは、『変動』」とも呼ぶ。)
これが「最小二乗法」と呼ばれる所以である。

次に、この総和Sを「傾き:a」と「y切片:b」に対し、それぞれ偏微分する。
偏微分とは、微分する数(ここではab)以外を定数と見なして微分することである。
Sa,bに対して最小値をとるのだから、それらの偏導関数は当然ゼロでなくてはならない。

従って、a,bに関する以下の二元連立一次方程式を解けばよい。

ここで、総和記号を次の様に置くと、

先程の二元連立一次方程式は、より簡潔に

と表すことが出来る。

この二元連立一次方程式をそのまま解いてもよいのだが、これを行列を用いて書き直すと、

のように表せる。ここで、クラメル(Cramer)の公式より、a,b

と求められる。これらを元の総和記号に戻すと、

となる。




回帰直線・線形回帰とロジスティック回帰

ところで、xの平均とyの平均はそれぞれ、

であり、これを用いて、xの分散とyの分散もそれぞれ、

と表すことが出来る。また、xyの「共分散(covariance)」は、

と表せるので、これらを用いて、傾き:aの式の 分子・分母をn2で割ると、

となり、より簡潔な形で表すことが出来る。
このaは「回帰係数(regression coefficient)」とも呼ばれる。
さらに、先程の連立方程式の下側の式の両辺をnで割ると、y切片:bは、

となり、こちらもより簡潔な形で表すことが出来る。
ここで、a,bの値を仮定した直線に代入すると、

となるが、このような直線、或いは、これを変形した式:

のことを「回帰直線(regression line)」といい、
また、このような形で表すことを「線形回帰(linear regression)」と呼ぶ。

今回のように、従属変数(目的変数)yを1種類の独立変数(説明変数)xで、
表現する場合は、「単回帰分析」と呼ばれるが、例えば、zxy
2変数で表したり、wxyzの3変数で表す場合など、
複数の変数で表す場合は、「重回帰分析」と呼ばれる。この場合、変数のことを、
「変量」とも呼ぶが、「重回帰分析」は「多変量解析」の手法の一つである。

線形回帰の応用として、「ロジスティック回帰(Logistic regression)」についても述べておく。
これは、予測値が0~1の間にある場合に、ロジスティック関数:

と線形回帰を組み合わせて、

の形にして扱うことで、yの値を0~1の範囲に収めたままで、
普通の回帰分析と同様に、a,bを求めることが出来る。




決定係数(寄与率)と相関係数

さて、上記の手順で回帰直線を求められることが分かったが、
回帰分析をする際には、その精度を測る指標はどのように定義できるだろうか。
実は、回帰分析の精度を測る指標には、複数の定義が存在する。
ここでは、まず、ExcelのLINEST関数やデータ分析ツールでも使われている、
「決定係数(coefficient of determination)」:R2の定義を示す。
実測値を yi 、予測値を axib とすると、 決定係数:R2は、

  予測値 axib の分散
決定係数(寄与率)R2
  実測値 yi の分散

で定義される。決定係数は、テキストによっては、「寄与率」と呼ばれることもある。
決定係数R2を実際に計算すると、

という結果が得られるが、その正の平方根は、
「相関係数(correlation coefficient)」と呼ばれている。
或いは、提唱者のピアソンにちなんで、「ピアソンの積率相関係数」と呼ばれることもある。
但し、一般的に、単回帰分析の時には、 決定係数(寄与率)と
相関係数の2乗は、本質的に同じもの
であるが、
重回帰分析の時には、定義が異なる場合がある。

即ち、相関係数:rは、次式のように表せる。

相関係数:rは、2つの変量の 誤差ベクトルの内積を考えた際に、
両者のベクトルがなす角度のcosθの値
である為、
必然的に-1≤ r ≤1の範囲内に収まる。
その値が1に近い程、xyは正の相関が強くなり、
逆に、-1に近い程、負の相関が強くなる。
そして、0に近くなる程、xyの相関がなくなっていくことを意味する。




参考文献

  1. 「いかにして実験をおこなうか―誤差の扱いから論文作成まで―」(丸善、2006年)
  2. 「まずはこの一冊から 意味がわかる多変量解析」(ベレ出版、2014年)



Shadow Academy トップへ戻る

inserted by FC2 system