いままで導出してきた数式たち
準備が整ったところで、
前回までの変形式たちを再掲しておこう。
\(
\begin{eqnarray}
\displaystyle a\sum 1 &=& an \dots 総和の変形 \\
\displaystyle n\bar{y}&=&\sum y_i \dots 平均の変形 \\
\displaystyle \sigma_x^2 &=&\bar{x_i^2}-(\bar{x})^2 \dots 分散の変形 \\
\displaystyle \sigma_{xy}&=&\frac{1}{n}\sum x_i y_i – \bar{x}\bar{y} \dots 共分散の変形
\end{eqnarray}
\)
1次関数最小二乗法を求めるための連立方程式
\(
\begin{eqnarray}
\displaystyle a\sum x_i^2 + b\sum x_i &=& \sum x_i y_i \dots (1)\\
\displaystyle a\sum x_i + b\sum 1 &=& \sum y_i \dots (2)
\end{eqnarray}
\)
これらを組み合わせると、1次関数最小二乗法を係数を求める数式が完成する・・・はず。
係数bを求める
まずは(2)の式を元に係数\(b\)を求める。
総和の変形、平均を使用する
導出過程は以下になる。
\(
\begin{eqnarray}
\displaystyle a\sum x_i + b\sum 1 &=& \sum y_i \\
a\sum x_i + nb&=&\sum y_i \\
nb&=&\sum y_i – a\sum x_i \\
b&=&\frac{1}{n}\sum y_i-\frac{a}{n}\sum x_i \\
b&=&\bar{y}-a\bar{x} \qquad//
\end{eqnarray}
\)
\(y\)の平均と\(x\)の平均から\(b\)が求まるって理屈になる。
係数aは?
現段階では\(a\)は不明。
よって、\(b\)も不明になる。
今回は(2)の式をつかっただけなので、
(1)の式に対して\(b\)を代入することで、\(b\)が消える。
結果として\(a\)が求まるはず。
\(a\)が求まれば、自然と\(b\)も求まる。
って理屈が使えそう。
つまり、普通の連立方程式の解き方になる。
係数aを求める
以下が導出過程になる。
平均、平均の変形、分散の変形、共分散の変形を利用する。
\(
\begin{eqnarray}
\displaystyle a\sum x_i^2+b\sum x_i &=&\sum x_i y_i \\
-\sum x_i y_i+a\sum x_i^2+b\sum x_i &=& 0 \\
\end{eqnarray}
\)
ここで\(b\)を代入
\(
\begin{eqnarray}
\displaystyle -\sum x_i y_i+a\sum x_i^2+(\bar{y}-a\bar{x})\sum x_i &=& 0 \\
-\sum x_i y_i+a\sum x_i^2+\bar{y}\sum x_i-a\bar{x}\sum x_i &=& 0
\end{eqnarray}
\)
\(\displaystyle\sum x_i\)を\(n\bar{x}\)に置き換え、両辺をマイナスする。
\(
\begin{eqnarray}
\displaystyle \sum x_i y_i-n\bar{y}\bar{x}-a(\sum x_i^2-n\bar{x}\bar{x})&=&0 \\
n(\frac{1}{n}\sum x_i y_i-\bar{y}\bar{x})-an(\frac{1}{n}\sum x_i^2-(\bar{x})^2)&=&0 \\
n(\frac{1}{n}\sum x_i y_i-\bar{y}\bar{x})-an(\bar{x_i^2}-(\bar{x})^2)&=&0 \\
n\sigma_{xy}-an\sigma_x^2&=&0 \\
a&=&\frac{\sigma_{xy}}{\sigma_x^2} \qquad //
\end{eqnarray}
\)
傾きはこと係数aは共分散/分散?
かなりシンプルな式になったが、本当にあっているのだろうか?
ここは共分散と分散の数式を図で表現するとどうなるかを見て感覚的にも確認してみよう。
×印がサンプルした値で
それに対して、真値から見た共分散と分散の値を四角形の面積で示しているとみてほしい。
共分散は真値からのx,y方向の差を掛けた四角形の面積。
分散は、x方向のみの差を掛けた四角形の面積。
つまり共分散/分散に於いての四角の面積比としてはy/xが成立しそう。つまり傾きが求まる。
ここで言ってる真値ってのは、最小二乗法で求めた式から算出される値で
こらから求めるはずのものが仮置きされてるものと思えば良い。
数式まとめ
係数\(a\)を求める式
\(
\displaystyle a=\frac{\sigma_{xy}}{\sigma_x^2}
\)
係数\(b\)を求める式
\(
b=\bar{y}-a\bar{x}
\)
まとめ
- 総和、平均、分散、共分散を元に1次関数最小二乗法の係数算出が可能。
ただし、各数式の変形が必要なため、変形式を導出。 - 係数b(切片)を求めたあとに係数a(傾き)を求める。
一般的な連立方程式の解き方と一緒。
MATLAB、Python、Scilab、Julia比較ページはこちら
コメント