機械学習基礎理論独習

誤りがあればご指摘いただけると幸いです。数式が整うまで少し時間かかります。リンクフリーです。

勉強ログです。リンクフリーです
目次へ戻る

ベルヌーイ分布のパラメータの事後分布

ベルヌーイ分布

ベルヌーイ分布は以下のように表されるのでした。
 x\in\{0,1\}
 \mu\in(0,1)

\begin{eqnarray}
{\rm Bern}(x|\mu)=\mu^x(1-\mu)^{1-x}\tag{1}
\end{eqnarray}

xが確率変数で、\muがパラメータです。

ベルヌーイ分布に対数を取ったものは以下のようになります。

\begin{eqnarray}
\ln{\rm Bern}(x|\mu)=x\ln\mu+(1-x)\ln(1-\mu)\tag{2}
\end{eqnarray}

ベータ分布

ベータ分布は以下のように表されるのでした。
\mu\in(0,1)
a\in\mathbb{R}^+,b\in\mathbb{R}^+

\begin{eqnarray}
{\rm Beta}(\mu|a,b)=C_{\rm B}(a,b)\mu^{a-1}(1-\mu)^{b-1}\tag{3}
\end{eqnarray}

C_{\rm B}(a,b)は正規化定数で、以下のように表されます。

\begin{eqnarray}
C_{\rm B}(a,b)=\frac{\Gamma(a+b)}{\Gamma(a)\Gamma(b)}\tag{4}
\end{eqnarray}

\Gamma(\cdot)はガンマ関数です。

ベータ分布に対数を取ったものは以下のようになります。

\begin{eqnarray}
\ln{\rm Beta}(\mu|a,b)=(a-1)\ln\mu+(b-1)\ln(1-\mu)+\ln C_{\rm B}(a,b)\tag{5}
\end{eqnarray}

事後分布

ベルヌーイ分布に従うN個の離散値データ{\bf X}=\{x_1,\ldots,x_N\}があります。

f:id:olj611:20210412064333p:plain

\muの事前分布はベルヌーイ分布に対する共役事前分布であるベータ分布であるとします。

\begin{eqnarray}
p(\mu)={\rm Beta}(\mu|a,b)=C_{\rm B}(a,b)\mu^{a-1}(1-\mu)^{b-1}\tag{6}
\end{eqnarray}

この時、\muの事後分布は次のように計算できます。

\begin{eqnarray}
p(\mu|{\bf X})&\propto&p({\bf X}|{\mu})p(\mu)\\
&=&\left(\prod_{n=1}^Np(x_n|\mu)\right)p(\mu)\\
&=&\left(\prod_{n=1}^N{\rm Bern}(x_n|\mu)\right){\rm Beta}(\mu|a,b)\\
&\propto&\left(\prod_{n=1}^N\mu^x_n(1-\mu)^{1-x_n}\right)\mu^{a-1}(1-\mu)^{b-1}\tag{9}
\end{eqnarray}

対数を取ってみましょう。

\begin{eqnarray}
p(\mu|{\bf X})&=&\sum_{n=1}^N(x_n\ln\mu+(1-x_n)\ln(1-\mu))+(a-1)\ln\mu+(b-1)\ln(1-\mu)+{\rm const.}\\
&=&\left(\sum_{n=1}^Nx_n+a-1\right)\ln\mu+\left(N-\sum_{n=1}^Nx_n+b-1\right)\ln(1-\mu)+{\rm const.}\tag{10}
\end{eqnarray}

事後分布もベータ分布になっていることが分かります。

\begin{eqnarray}
&&p(\mu|{\bf X})={\rm Beta}(\mu|\hat{a},\hat{b})\tag{11}\\
&&\hat{a}=\sum_{n=1}^Nx_n+a\tag{12}\\
&&\hat{b}=N-\sum_{n=1}^Nx_n+b\tag{13}
\end{eqnarray}

偉人の名言

f:id:olj611:20210412070943p:plain:w300
無難なことからではなく、正しいことから始めよ。
カフカ

参考文献

ベイズ推論による機械学習入門

動画

なし

目次へ戻る