はじめに
本記事は, 機械学習の教科書の決定版ともいえる, Christopher Bishop先生による『Pattern Recognition and Machine Learning (パターン認識と機械学習)』, 通称PRMLの演習問題の解答を記したものです. これは, 生物測定学研究室の輪読会でPRMLを取り扱っており, その勉強の一環として演習問題を解いたときのもので, 匿名の有志の学生による解答をこちらのアカウントから代わりに投稿させていただいています. (なお一部数式の表現などを修正してあります.)
問題
2.42(標準)ガンマ分布(2.146)の平均、分散、およびモードを求めよ
(モードとは、最頻値のこと)
ガンマ関数の定義
$$
\begin{align*}
\Gamma(\mu)=\int_0^\infty a^{\mu - 1}e^{- a} d\mu
\tag{1.141-改変}
\end{align*}
$$
今回は、この関数の性質である
$$
\begin{align*}
\Gamma(\mu + 1) = \mu \Gamma(\mu)
\end{align*}
$$
を利用する。
また、ガンマ分布とは
$$
\begin{align*}
Gam(\lambda|a,b) = \frac{1}{\Gamma(a)}{b^a}{\lambda^{a-1}}e^{-b{\lambda}}
\tag{2.146-改変}
\end{align*}
$$
で求められる分布であり、
$$
\begin{align*}
\int_0^\infty\frac{1}{\Gamma(a)}{b^a}{\lambda^{a-1}}e^{-b{\lambda}}d\lambda = 1
\end{align*}
$$
である。(演習2.41)
また、この関数は、本文中では説明が省かれているが、$a > 0,b > 0, \lambda > 0$である。
(多分この分布が『分散の共役事前分布』として想定されているため)
解法
基本的にPRML 演習問題 2.6 (基本)のベータ分布の問題と同じ解法です。
ガンマ分布の平均は確率分布$\lambda \times {Gam(\lambda|a,b)}$の積分で求められるため、(2.267)は(2.265)より
\begin{align*}
\mathbb{E}[\mu] & = \int_0^\infty\frac{1}{\Gamma(a)}{b^a}{\lambda^{a}}e^{-b{\lambda}}d\lambda \\
& = \frac{b^a}{\Gamma(a)}\frac{\Gamma(a+1)}{b^{a+1}}\int_0^\infty{Gam(\lambda|a+1,b)}d\lambda \\
& = \frac{b^a}{\Gamma(a)}\frac{a\Gamma(a)}{b^{a+1}} = \frac{a}{b} \quad(2.147)
\end{align*}
よって、ガンマ分布の期待値を示すことができた。
ガンマ分布の分散については、確率変数の2乗の期待値を用いて計算する。
\begin{align*}
\mathbb{E}[\mu^2] & = \int_0^\infty\frac{1}{\Gamma(a)}{b^a}{\lambda^{a+1}}e^{-b{\lambda}}d\lambda \\
& = \frac{b^a}{\Gamma(a)}\frac{\Gamma(a+2)}{b^{a+2}}\int_0^\infty{Gam(\lambda|a+1,b)}d\lambda \\
& = \frac{b^a}{\Gamma(a)}\frac{a(a+1)\Gamma(a)}{b^{a+2}} = \frac{a^2+a}{b^2}
\end{align*}
この式と、分散の公式 $\operatorname {var}[\mu] = \mathbb{E}[\mu^2] - {\mathbb{E}[\mu]^2}$ より、
\begin{align*}
\operatorname {var}[\mu] = \frac{a^2+a}{b^2} - \frac{a^2}{b^2} = \frac{a}{b^2}\quad(2.148)
\end{align*}
最後に、ガンマ分布の最頻値を求める。
まず、$\lambda$を含まない正規化定数はあまり重要ではないことから $f(\lambda) = \lambda^{a-1}e^{-b{\lambda}}$ を前提とする。
$\lambda > 0$ より積分の内側が正であることから、正規化定数も正とみなし、以下の解説では$f(\lambda)$のみから最頻値を求める。
\begin{align*}
f'(\lambda) & = (a-1)\lambda^{a-2}e^{-b\lambda} - b\lambda^{a-1}e^{-b\lambda} \\
& = ({\lambda^{a-2}e^{-b\lambda}})\{(a-1)-b\lambda\}
\end{align*}
まず、$0 < a \leq 1$の場合、$\frac{a-1}{b} < 0$よりこの導関数は常に負になること、$\lambda > 0 ,\lim_{\lambda \to +0} f(\lambda) = \infty$となるため、最頻値は存在しない。
また、$1 < a$のときは、$f'(\lambda) = 0$となる$\lambda$は$\frac{a-1}{b}$である。
よって
\begin{align*}
\left\{
\begin{array}{l}
f'(\lambda) > 0 \quad(0 < \lambda < \frac{a-1}{b}) \\
f'(\lambda) = 0 \quad (\lambda = \frac{a-1}{b}) \\
f'(\lambda) < 0 \quad(\frac{a-1}{b} < \lambda < 1)
\end{array}
\right.
\end{align*}
となる。
よって、ガンマ分布の最頻値は$\lambda = \frac{a-1}{b} (a > 1の場合のみ)$であることが示された。 ■