📈

線形回帰モデルのMAP推定その1: 最尤推定

2023/01/21に公開約3,300字

最尤推定


y=2x に従う1次元データを20個作成し (N=20, D=1)、y に正規分布に従うノイズを付加。続いて回帰直線を推定。真の値は w=2.0 である。

正規分布に従うノイズを仮定した線形回帰モデルの尤度関数は次式で与えられる。

\begin{aligned} p(\bm y | \bm X, \bm w) = \mathcal N_D(\bm y | \bm X \bm w, \sigma^2 \bm I_D) \end{aligned}

これに対する事前分布 p(\bm w) について、次のようなものを考える。

\begin{aligned} p(\bm w) \propto 1 \end{aligned}

これは一様分布を実数全体に拡張したものであり、任意の実数を同確率で取りうることを意味する。このとき、ベイズの定理によって計算される事後分布は事前分布の定数倍になる。

\begin{aligned} p(\bm w | \bm X, \bm y) = \frac{1}{Z} p(\bm y | \bm X, \bm w) \end{aligned}

これに対するMAP推定は尤度関数を最大化するような推定方法、すなわち最尤推定 (maximum likelihood estimation; ML estimation) に一致する。

\begin{aligned} \hat{\bm w} = \argmax_{\bm w} p(\bm y | \bm X, \bm w) \end{aligned}

事後分布の計算

実際に事後分布を計算してみる。

\begin{aligned} & \hspace{-1pc} p(\bm w | \bm X, \bm y) \\ \propto{}& p(\bm y | \bm X, \bm w) p(\bm w) \\ \propto{}& p(\bm y | \bm X, \bm w) \\ ={}& \mathcal N_D(\bm y | \bm X \bm w, \sigma^2 \bm I_D) \\ \propto{}& \exp \left( -\frac{1}{2\sigma^2} \| \bm y - \bm X \bm w \|_2^2 \right) \\ ={}& \exp \left( -\frac{1}{2} \underbrace{\frac{1}{\sigma^2} \| \bm y - \bm X \bm w \|_2^2 }_{ (1) } \right) \\ &\left| \begin{aligned} (1) ={}& \frac{1}{\sigma^2} \| \bm y - \bm X \bm w \|^2 \\ ={}& \bm w^\mathsf{T} \underbrace{ \frac{1}{\sigma^2} \bm X^\mathsf{T} \bm X }_{ \bm V_w^{-1} } \bm w - 2 \bm w^\mathsf{T} \underbrace{ \frac{1}{\sigma^2} \bm X^\mathsf{T} \bm y }_{ \bm V_w^{-1} \bm m_w } + \mathrm{const.} \\ ={}& \bm w^\mathsf{T} \bm V_w^{-1} \bm w - 2 \bm w^\mathsf{T} \bm V_w^{-1} \bm m_w + \mathrm{const.} \\ ={}& (\bm w - \bm m_w)^\mathsf{T} \bm V^{-1} (\bm w - \bm m_w) + \mathrm{const.} \end{aligned} \right. \\ \propto{}& \exp \left( -\frac{1}{2} (\bm w - \bm m_w)^\mathsf{T} \bm V_w^{-1} (\bm w - \bm m_w) \right) \\ \propto{}& \mathcal N_N (\bm w | \bm m_w, \bm V_w) \end{aligned}

よって事後分布は次のようになる。

p(\bm w | \bm X, \bm y) = \mathcal N_N(\bm w | \bm m_w, \bm V_w)
\left\lbrace\begin{aligned} \bm m_w &= (\bm X^\mathsf{T} \bm X)^{-1} \bm X^\mathsf{T} \bm y \\ \bm V_w^{-1} &= \frac{1}{\sigma^2} \bm X^\mathsf{T} \bm X \end{aligned}\right.

この式によれば、事後確率が最大となるのは、\bm w が平均ベクトル \bm m_w に一致する場合である。よって \bm w のMAP推定量は \bm m_w である。

\begin{aligned} \hat{\bm w} &= \argmax_{\bm w} \mathcal N_N(\bm w | \bm m_w, \bm V_w) \\ &= \bm m_w \\ &= (\bm X^\mathsf{T} \bm X)^{-1} \bm X^\mathsf{T} \bm y \end{aligned}

最小二乗法

最尤推定量は次式で表すこともできる。

\begin{aligned} \hat{\bm w} &= \argmax_{\bm w} \mathcal N_D(\bm y | \bm X \bm w, \sigma^2 \bm I_D) \\ &= \argmin_{\bm w} \|\bm y - \bm X \bm w\|_2^2 \\ &= \argmin_{\bm w} \sum_{d=1}^D \left( y_d - \bm x_d^\mathsf{T} \bm w \right)^2 \end{aligned}

これは、残差平方和 (residual sum of squares; RSS) を最小化するフィッティング方法、すなわち最小二乗法 (least squares method) による回帰と等価である。

一般に、データ \mathcal D_D が各回独立な試行から得られたと仮定し、ノイズとして正規分布に独立同分布で従う確率変数 \varepsilon \sim \mathcal N(\varepsilon | 0, \sigma^2) を仮定して最尤推定を行うことは、次式で表される最小二乗法と等価になる。

\begin{aligned} &\underset{\bm w}{\text{minimize}} && \sum_{d=1}^D \left( y_d - \bm x_d^\mathsf{T} \bm w \right)^2 \end{aligned}

まとめ

  • 事前分布: p(\bm w) として一様分布を実数全体に拡張
  • 事後分布: \mathcal N_N(\bm w | \bm m_w, \bm V_w)
  • 最尤推定量: \hat{\bm w} = \bm m_w = (\bm X^\mathsf{T} \bm X)^{-1} \bm X^\mathsf{T} \bm y
  • 最尤推定と最小二乗法は正規分布ノイズを仮定した場合に等価

Discussion

ログインするとコメントできます