« ある漸化式の一般項 | トップページ | 最小二乗法の心(2) »

2018年6月12日 (火)

最小二乗法の心

YouTube で見た数学動画からのネタ第2弾です。動画は下記に有ります。

【大学数学】最小二乗法(回帰分析)【確率統計】

\((x_i,\ y_i)\quad i=1,\dots,n\) をデータとしたとき、最小二乗法で直線 \(y=ax+b\) の傾き \(a\) と切片 \(b\) を求めよという問題です。動画では

\[ \sum (y_i - ax_i - b)^2 \tag{1} \]

が最小になるように \(a\), \(b\) を求めています。

ここでは、別の方法で \(a\), \(b\) を求めることにします。まず \(y_i = ax_i + b\quad i=1,\dots,n\) を行列を用いて式 (2) のように書きます。

\[ \begin{pmatrix} y_1\\ \vdots\\ y_n \end{pmatrix} = \begin{pmatrix} x_1 & 1\\ \vdots & \vdots\\ x_n & 1 \end{pmatrix} \begin{pmatrix} a\\ b \end{pmatrix} \tag{2} \]

これを \(\boldsymbol{y}=X\boldsymbol{\alpha}\) と置くことにします。式 (2) から \(a,\ b\) を求めたいのですが、行列 \(X\) が正方行列でないため一般に解は有りません。それでも無理矢理 \(a,\ b\) を求めるために、式 (2) の両辺に \({}^t\!X\) を掛けることで \(\boldsymbol{\alpha}\) に掛かる行列を正方行列にします。

\[\begin{align} {}^t\!X\boldsymbol{y}&={}^t\!XX\boldsymbol{\alpha}\\ \begin{pmatrix} \sum x_iy_i\\ \sum y_i \end{pmatrix} &= \begin{pmatrix} \sum x_ix_i & \sum x_i\\ \sum x_i & n \end{pmatrix} \begin{pmatrix} a\\ b \end{pmatrix} \tag{3} \end{align}\]

そして、式 (3) を解いて \(a,\ b\) を求めると、それが最小二乗法の解になります。

\[ \frac{1}{\sum{x_ix_i}n-\sum{x_i}\sum{x_i}} \begin{pmatrix} n & -\sum{x_i}\\ -\sum{x_i} & \sum{x_ix_i} \end{pmatrix} \begin{pmatrix} \sum{x_iy_i}\\ \sum{y_i} \end{pmatrix} = \begin{pmatrix} a\\ b \end{pmatrix} \]

このデタラメな方法でうまく行く根拠は説明できないのですが、何故か最小二乗法の答えに一致するのです。

追記1:下記に説明が有りました。

最小二乗法の行列表現(単回帰,多変数,多項式)

ところで、式 (1) で \(ax_i+b\) は直線上の点です。したがって、式 (1) は \(y\) 方向の誤差(距離)を考えていることになります。即ち、最小二乗法は \(y\) 方向の誤差が最小になる直線を求めているわけです。しかし、本当の距離はデータから直線に下した垂線の長さなのだから、その長さが最小になる直線を考えるべきだと思うのですが、どうなのでしょうか?

y 方向の誤差 直線とデータとの距離

« ある漸化式の一般項 | トップページ | 最小二乗法の心(2) »

サイエンス」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/584699/66820783

この記事へのトラックバック一覧です: 最小二乗法の心:

« ある漸化式の一般項 | トップページ | 最小二乗法の心(2) »