最小二乗法の復習(1)

この間、最小二乗法について「えっ?」となることがあって、復習します。メモ書き程度なので、あまり公開出来るレベルのものではありません。わたしが「えっ?」となったのは次の記事を読んだからです。

最小二乗法の復習

2次元のn個のデータ(x_i,y_i)があるとする。x_iの値からy_iの値を推定することを考える。y_iの推定値を\hat{y}_iで表し、

  • \hat{y}_i=ax_i+b・・・・(1)

で推定することにする。ただしabは定数である。yの二乗誤差の平均Jは以下で定義される。

  • J=\bar{(y-\hat{y})^2}

ただし、上の線はiについての平均を表す。これと(1)から

  • J=\bar{(y-ax-b)^2}・・・・(2)

これを最小にするようなabの値を求めるのが最小二乗法である。そこでJab偏微分して、その値をゼロとおくことにする。まず(2)をa微分すると

  • \frac{\partial{J}}{\partial{a}}=\bar{2(y-ax-b)(-x)}=-2(\bar{xy}-a\bar{x^2}-b\bar{x})

これをゼロと置くので

  • \bar{xy}-a\bar{x^2}-b\bar{x}=0・・・・(3)

次に(2)をb微分すると

  • \frac{\partial{J}}{\partial{b}}=\bar{2(y-ax-b)(-1)}=-2(\bar{y}-a\bar{x}-b)

これをゼロと置くので

  • \bar{y}-a\bar{x}-b=0
  • b=\bar{y}-a\bar{x}・・・・(4)

(4)を(3)に代入して

  • \bar{xy}-a\bar{x^2}-(\bar{y}-a\bar{x})\bar{x}=0
  • \bar{xy}-a\bar{x^2}-\bar{x}\cdot\bar{y}+a(\bar{x})^2=0
  • \bar{xy}-\bar{x}\cdot\bar{y}=a(\bar{x^2}-(\bar{x})^2)
  • a=\frac{\bar{xy}-\bar{x}\cdot\bar{y}}{\bar{x^2}-(\bar{x})^2}・・・・(5)

ところでxyの共分散\rm{Cov}(xy)

  • \rm{Cov}(x,y)=\bar{(x-\bar{x})(y-\bar{y})}・・・・(6)

で定義されるが、(6)の右辺は以下のように変形できる。

  • \bar{(x-\bar{x})(y-\bar{y})}=\bar{xy-\bar{x}\cdot{y}-x\cdot\bar{y}+\bar{x}\cdot\bar{y}}=\bar{xy}-2\bar{x}\cdot\bar{y}+\bar{x}\cdot\bar{y}=\bar{xy}-\bar{x}\cdot\bar{y}

よって

  • \rm{Cov}(x,y)=\bar{xy}-\bar{x}\cdot\bar{y}・・・・(7)

これを(5)に代入すれば

  • a=\frac{\rm{Cov}(x,y)}{\bar{x^2}-(\bar{x})^2}・・・・(8)

また、式(7)でy=xとすると

  • \rm{Cov}(x,x)=\bar{x^2}-(\bar{x})^2

ところが\rm{Cov}(x,x)は定義によりx標準偏差\sigma_xの2乗に等しいので

  • \sigma_x^2=\bar{x^2}-(\bar{x})^2

これを(8)に代入すれば

  • a=\frac{\rm{Cov}(x,y)}{\sigma_x^2}・・・・(9)

一方、bについては、(9)を(4)に代入して

  • b=\bar{y}-\frac{\rm{Cov}(x,y)}{\sigma_x^2}\bar{x}・・・・(10)

これでabが求まりました。


本題はこれからです。