LoginSignup
10
4

More than 5 years have passed since last update.

ベイズ線形回帰

Posted at

自分が機械学習の研究をするであろうことが決まったのでそれに向けて様々な回帰手法や分類手法を勉強しようと思い立った。
ただノートにまとめるだけなのもつまらないのでこの場に雑にアウトプットしていこうと思う。

回帰

回帰というのは入力xとそれに対応する出力yが複数組判明している時に
$$y=f(x)$$
というモデルを当てはめることである。
このモデルが推定できて何が嬉しいかというと出力がわからない入力xをモデルに当てはめることで出力を推定することができることだ。
したがってこのモデルのクオリティが推定のクオリティに関わってくる。
Normdist_regression.png
(画像はWikipedia 回帰分析より)

線形回帰

まず回帰分析の中でもベーシックな線形回帰について
線形回帰というのは先ほど述べたモデル$f(x)$がパラメータ$\omega$を用いて
$$f(x)=\omega^Tx$$
というふうに線形和で表せると仮定する。
ここにノイズ$\epsilon 〜 N(0,\sigma_{n}^2)$を加え、
$$y = f(x)+ \epsilon$$
というモデルを仮定する。
$f(x)$を決めるということはすなわちパラメータ$\omega$を定めることである。
$\omega$を決める際に、どういう$\omega$がいいのか評価をする基準としては、
二乗誤差
$$E(\omega)= \sum_{i=1}(y - \hat{y}\ )^2$$
を最小にする$\omega$を採用する最小二乗法がある。

ベイズ線形回帰

ベイズ線形回帰では、目的はやはり$\omega$を推定することなのだが$\omega$が従う確率分布を推定するというアプローチをとる。
具体的な戦略は、まず何もデータを得られていない状態で$\omega$の分布(事前確率)を定める。
$$\omega 〜N_{n}(0,\Sigma_{p})$$
ここから観測データy,xを元に事後確率$p(\omega|y,X)$を求める。

\begin{eqnarray}
p(\omega|y,X) &=&\frac{p(y|X,\omega)p(\omega)}{p(y|X)} \\
              &\propto&p(y|X,\omega)p(\omega) \\
              &=& 略\\
              &\propto&\exp \left[ -\frac{1}{2} \left\{ \omega-\frac{1}{\sigma_{n^2}} \left( \frac{1}{\sigma_{n^2}}XX^T + \Sigma_{p}^{-1} \right)^{-1}Xy \right\}^T \left( \frac{1}{\sigma_{n^2}}XX^T + \Sigma_{p}^{-1} \right) \left\{ \omega-\frac{1}{\sigma_{n^2}} \left( \frac{1}{\sigma_{n^2}}XX^T + \Sigma_{p}^{-1} \right)^{-1}Xy \right\} \right]
\end{eqnarray}

1行目の式の導出がよくわからない。
ベイズの定理を用いているのだろうが前提が複数ある時の変形が調べてもなかなか出て来なかった。
式を見やすくするために、$A=\frac{1}{\sigma_{n^2}}XX^T + \Sigma_{p}^{-1}$, $\bar{\omega}=\frac{1}{\sigma_{n}^2}A^{-1}Xy$と置くと
$$p(\omega|y,X) \propto \exp \left[ -\frac{1}{2} \left( \omega-\bar{\omega} \right)^T A \left( \omega-\bar{\omega} \right) \right]$$
つまり$\omega$は平均$\bar{\omega}$,分散$A^{-1}$の正規分布に従う。
今回はMAP推定という最頻値を推定値とするアプローチをとるのだが、正規分布の最頻値は平均と一致する。
したがって推定値$\hat{\omega}=\bar{\omega}$
以上からモデルを推定することができたため入力値から出力を予測することができる。

まとめ

非常に雑ではあったが今回はベイズ線形回帰についてアウトプットした。
何か解釈の間違いがあれば指摘していただけると幸いである。

次回はガウス過程回帰についておそらくまとめる。

10
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
4