最小化問題へ
最小二乗法の時と同じように、偏導関数を用いて最小化問題にする。
偏導関数の解が0になる部分が極小値なので、そこを探すってだけ。
というわけで、以下を元に\(x\)と解けばOK。
\(
2A^TAx-2A^Tb=0
\)
正規方程式
上記の式を解いていこう。
\(
\begin{eqnarray}
2A^TAx-2A^Tb&=&0\\
A^TAx&=&A^Tb\\
x&=&(A^TA)^{-1}A^Tb
\end{eqnarray}
\)
これで、\(x\)について解けた。
最後に導出された式が、正規方程式になる。
正規方程式を使って何をする?
正規方程式を使うと、さまざまな回帰分析が一撃で解けるようになる。
代表的なのは以下。
- 単回帰分析(最小二乗法)
- 重回帰分析
- 多項式回帰分析
単回帰分析を解く場合は以下のようにする。
単回帰分析(最小二乗法)は以下の最小化を満たすもの
\(
\displaystyle\sum_{i=1}^n\{(\alpha x_i+\beta)-y_i\}^2
\)
\((Ax-b)^2\)で最小化問題を解く場合はの各成分は以下となる。
\(
A=
\begin{bmatrix}
x_1 & 1\\
x_2 & 1\\
\vdots & \vdots\\
x_n & 1\\
\end{bmatrix},
\vec{x}=
\begin{bmatrix}
\alpha\\
\beta
\end{bmatrix},
\vec{b}=
\begin{bmatrix}
y_1\\
y_2\\
\vdots\\
y_n
\end{bmatrix}
\)
上記パラメータをを正規方程式に入れるだけで解が出る。
これだけである。
ベクトル、行列演算が行えるツールや言語であれば一撃ってことになる。
今後は、実際にMATLAB、Python、Scilab、Juliaで計算できるを試していく。
まとめ
- いままでの知識の総動員すべく数式列挙。
- 二乗和誤差の偏導関数を元に最小化問題へ。
- 正規方程式がわかっていると、単回帰、重回帰、多項式回帰が一撃で解けるようになる。
MATLAB、Python、Scilab、Julia比較ページはこちら
社会のなかの数理 [新装版]──行列とベクトル入門──
なっとくする演習 行列・ベクトル なっとくする演習・行列 ベクトル (なっとくシリーズ)
ゼロからはじめるPID制御
基礎からわかる時系列分析―Rで実践するカルマンフィルタ・MCMC・粒子フィルタ― Data Science Library
観測と最小二乗法―測量・G空間データの解析
ディジタル画像処理[改訂第二版]
高校数学でわかるフーリエ変換―フーリエ級数からラプラス変換まで (ブルーバックス)
マンガでわかるフーリエ解析
入門信号処理のための数学―離散フーリエ変換・離散コサイン変換
はじめて学ぶディジタル・フィルタと高速フ-リエ変換: 基礎・原理からよく理解するための (ディジタル信号処理シリーズ)
コメント