LoginSignup
0

More than 1 year has passed since last update.

PRML 演習問題 2.7 (標準)解答

Last updated at Posted at 2021-12-14

はじめに

本記事は, 機械学習の教科書の決定版ともいえる, Christopher Bishop先生による『Pattern Recognition and Machine Learning (パターン認識と機械学習)』, 通称PRMLの演習問題のうち, 私が解いた問題の解答を記したものです. これは, 私の所属する生物測定学研究室の輪読会でPRMLを取り扱っており, その勉強の一環として演習問題を解いたときのものです. なお, 他の演習問題の解答例に関する記事については, PRML 演習問題 解答集 まとめをご覧ください.

問題

$ \mu $ の事前分布がベータ分布 $(2.13)$ である二項分布 $(2.9)$ に従う確率変数$x$ を考える.
ここで, $x=1$の事象が $m$ 回, $x=0$ が $l$ 回生じたとする.
このとき, $\mu$ の事後平均が, 事前平均と$\mu$ の最尤推定量の間の値になることを示せ.
これには, 事前平均の $\lambda$ 倍と, 最尤推定量の$(1-\lambda)$ 倍の和で, 事後平均が書けること示せばよい.
ただし, $0 \leqq \lambda \leqq 1 $ である.
よって, 事後分布が, 事前分布と最尤推定解との間のものになることが分かる.

方針

問題に従って解いていく。
事前平均, 最尤推定量, 事後平均を求めるため、その準備として事前分布のベータ分布と二項分布について確認しておく。

準備

ベータ分布

ベータ分布$(2.13)$ は

\begin {align*}
Beta ( { \mu |  a , b} )  = \frac { \Gamma (a + b)} { \Gamma (a)  \Gamma (b) } \mu ^{a-1}(1- \mu)^{b-1}

\tag{2.13}
\end{align*}

である.
係数である

\begin {align*}
\frac {\Gamma (a + b) } { \Gamma (a)  \Gamma (b)}
\end{align*}

の逆数は、一般にベータ”関数”と呼ばれ、

\begin {align*}
B(a,b) = \frac { \Gamma (a)  \Gamma (b) } { \Gamma (a + b)}
\end{align*}

と定義される。
本解答では、このベータ”関数”を用い、ベータ分布を以下の形で用いる。

\begin {align*}
Beta ( { \mu |  a , b} )  = \frac{ \mu ^{a-1}(1- \mu)^{b-1}}{B(a,b)}

\tag{2.13'}
\end{align*}

また、このベータ”関数”の性質として次のようなものがある。

\begin {align*}
B ( { \mu |  \alpha +1 , \beta } )  = \frac { \alpha} { \alpha+\beta } B ( { \mu |  \alpha , \beta} )  


\end{align*}

二項分布

二項分布$(2.9)$ は

\begin {align*}
Bin ( { m |  N , \mu} ) = \binom Nm \mu^m(1-\mu)^{N-m}

\tag{2.9}
\end{align*}

ただし,

\begin {align*}
\binom Nm \equiv \frac {N!}{(N-m)!m!}

\tag{2.10}
\end{align*}

である.

証明

事前平均

事前分布であるベータ分布$(2.13)$ の平均は教科書中で

\begin {align*}
\mathbf E ( \mu ) = \frac{a}{a+b}

\tag{2.15}
\end{align*}

で与えられている。

最尤推定量の算出

まず、二項分布の尤度関数は、

\begin {align*}
L ( \mu ) = \binom{m+l}m \mu^m(1-\mu)^l
\end{align*}

で与えられ、

この時の対数尤度関数の最大にする$\mu$を求める。

\begin {align*}
\log L ( \mu ) &= \log\{\binom{m+l}m \mu^m(1-\mu)^l)\}
\\&=  m\log \mu + l\log (1- \mu) + \log\binom{m+l}m
\end{align*}

$\mu$について微分して、

\begin {align*}
\frac{d}{d\mu}\log L ( \mu ) &= \frac{x}{\mu} - \frac{l}{1-\mu} 

\end{align*}

よって、$\log L ( \mu )$ の最尤推定解を計算すると

\begin{eqnarray}
\frac{m}{\mu} - \frac{l}{1-\mu} &=& 0 \\
\frac{m-(m+l)\mu}{\mu(1-\mu)}&=& 0 \\
 (m + l) \mu&=& m\\
\mu &=& \frac{m}{m + l} \\
\end{eqnarray}

となり、$\mu$の最尤推定量は

\begin {align*}
\mu = \frac{m}{m + l} \\

\end{align*}

である。

事後平均

まず、事後分布は

\begin {align*}
p(\mu | m,l,a,b)  = \frac{\mu ^{m + a-1}(1- \mu)^{l + b-1}}{B(m+a, l+b)}

\tag{2.18}
\end{align*}

であり、この分布のとる期待値(平均)は

\begin {align*}
\mathbf E ( \mu ) &= \int^1_0 \mu f(\mu) d\mu
\\&= \int^1_0 \mu \{\frac{\mu ^{m + a-1}(1- \mu)^{l + b-1}} {B(m+a, l+b)}\}d\mu
\\&= \int^1_0 \frac{\mu ^{m + a}(1- \mu)^{l + b-1}} {B(m+a, l+b)}d\mu

\end{align*}

ここで, $a = a'-1$ と変換する。

\begin {align*}
\mathbf E ( \mu ) &= \int^1_0 \frac{\mu ^{m + a'-1}(1- \mu)^{l + b-1}} {B(m+a'-1, l+b)}d\mu
\end{align*}

前述したベータ関数の性質を用い変換すると

ベータ関数の性質

\begin {align*}
B ( { \mu |  \alpha +1 , \beta} )  &= \frac { \alpha } { \alpha+\beta } B ( { \mu |  \alpha , \beta} )  \\
B ( { \mu |  \alpha  , \beta} )  &= \frac {\alpha+\beta } { \alpha} B ( { \mu |  \alpha +1 , \beta} )  \\
B ( { \mu |  \alpha’-1 , \beta} )  &= \frac {\alpha’-1+\beta } { \alpha’-1} B ( { \mu |  \alpha’ , \beta} )
\end{align*}
\begin {align*}
\mathbf E ( \mu ) &= \frac{m + a'-1}{m + a' + l + b-1}\int^1_0 \frac{\mu ^{m + a'-1}(1- \mu)^{l + b-1}} {B(m+a', l+b)}d\mu

\end{align*}

ここで

\begin {align*}
\frac{\mu ^{m + a'-1}(1- \mu)^{l + b-1}} {B(m+a', l+b)}

\end{align*}

はパラメータがm+a', l + b のガンマ分布であるため、

\begin {align*}
\int^1_0 \frac{\mu ^{m + a'-1}(1- \mu)^{l + b-1}} {B(m+a', l+b)} d \mu = 1

\end{align*}

そして、 $a' = a + 1$ で戻すと、

\begin {align*}
\mathbf E ( \mu ) &= \frac{m + a'-1}{m + a' + l + b-1}\int^1_0 \frac{\mu ^{m + a'-1}(1- \mu)^{l + b-1}} {B(m+a', l+b)}d\mu
\\& = \frac{m + (a+1) -1}{m + (a+1) + l + b-1}*1
\\& = \frac{m+a}{m+a+l+b}

\end{align*}

となる。

従って

$\mu$ の事後平均, 事前平均,$\mu$ の最尤推定量がもとまったので、問題文に従って求める。
事前平均の $\lambda$ 倍と, 最尤推定量の$(1-\lambda)$ 倍の和は、事後平均が書けるので,

\begin{eqnarray}
\lambda \frac{a}{a+b} + (1-\lambda)\frac{m}{m+l} & = &\frac{m+a}{m+a+l+b} \\
\frac{\lambda(la-mb)+m(a+b)}{(a+b)(m+l)}&=& \frac{m+a}{m+a+l+b} \\ 
(m+a+l+b)\{ \lambda(la-mb)+m(a+b)\} &=& (m+a)(a+b)(m+l) \\
\lambda &=& \frac{(m+a)(a+b)(m+l)-m(m+a+l+b)(a+b)}{(m+a+l+b)(la-mb)}
\end{eqnarray}

分子を展開してまとめる。

\begin{eqnarray}
\lambda &=& \frac{(a+b) \{(m^2 + ml + ma + lb)-(m^2 +ma + ml+ mb)\}}{(m+a+l+b)(la-mb)} \\

&=&  \frac{(a + b)(la - mb)}{(m+a+l+b)(la-mb)} \\
&=& \frac{a+b}{m+a+l+b}

\end{eqnarray}

$a,b,m,l > 0$ より、$0 \leqq \lambda \leqq 1$

よって, 事後分布が, 事前分布と最尤推定解との間であることが示された。

参考文献

更新歴

  • 2021.12.14 : 本記事を投稿しました.

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
0