機械学習におけるベイズ推論
概要
ベイズ推論Bayesian inferenceとは、ベイズの定理に基づいて事前の知識と観測されたデータを通じて母数の分布を推定する統計的方法である。
説明
確率変数 $\mathbf{x}$が母数を$\theta$とするある確率分布に従うとしよう。このとき、$\mathbf{x}$から抽出されたサンプルを見て$\theta$の分布を推定しようとするのがベイズ推論の目的である。ここで重要なのは、$\theta$の値ではなく、$\theta$の「分布」を推定するという点である。$\mathbf{x}$が与えられたときの$\theta$に関する確率密度関数は、条件付き確率密度関数$p(\theta | \mathbf{x})$である。これはベイズの定理により以下のようになる。
$$ p(\theta | \mathbf{x}) = \dfrac{p(\mathbf{x} | \theta) p(\theta)}{p(\mathbf{x})} $$ $$ \text{posterior} = \dfrac{\text{likelihood} \times \text{prior}}{\text{evidence}} $$
ここで求めようとしている左辺の$p(\theta | \mathbf{x})$を事後確率(分布)posterior probability (distribution)と呼び、$\mathbf{x}$が抽出された後、つまり事象が発生した後の$\theta$に関する確率を指す。
右辺の$p(\mathbf{x} | \theta)$を尤度likelihood, 可能度と呼ぶ。
右辺の$p(\theta)$を事前確率(分布)prior probability (distribution)と呼ぶ。$\mathbf{x}$を観測する前の$\theta$についての知識を表す。
右辺の分母 $p(\mathbf{x})$を証拠evidenceと呼ぶ。
データが従う分布は変わらないため、$p(\mathbf{x})$は変わらない。したがって次の式を得る。
$$ p(\theta | \mathbf{x}) \propto p(\mathbf{x} | \theta) p(\theta) $$ $$ \text{posterior} \propto \text{likelihood} \times \text{prior} $$
一方、条件付き確率密度関数の定義によれば、次が成立する。
$$ \begin{align*} p(\theta | \mathbf{x}, \mathbf{y}) &= \dfrac{p(\mathbf{x}, \mathbf{y} | \theta) p(\theta)}{p(\mathbf{x}, \mathbf{y})} \\ &= \dfrac{p(\mathbf{x}, \mathbf{y} | \theta) p(\theta)}{p(\mathbf{x}, \mathbf{y})} \dfrac{p(\mathbf{y})}{p(\mathbf{y})} \left( = \dfrac{{\color{royalblue}p(\mathbf{x}, \mathbf{y} | \theta)} p(\theta)}{\color{tomato}p(\mathbf{x}, \mathbf{y})} \dfrac{\color{tomato}p(\mathbf{y})}{\color{royalblue}p(\mathbf{y})} \right) \\ &= \dfrac{p(\mathbf{x} | \mathbf{y}, \theta) p(\theta)}{p(\mathbf{x} | \mathbf{y})} \left(= \dfrac{{\color{royalblue}p(\mathbf{x} | \mathbf{y}, \theta)} p(\theta)}{\color{tomato}p(\mathbf{x} | \mathbf{y})} \right) \\ \end{align*} $$
最大事後確率推定
$p(\theta | \mathbf{x})$が最大となる$\theta$を探すことを最大事後確率推定maximum a posteriori estimation、略してMAPという。$p(\mathbf{x})$は$\theta$に依存しない値であるため、事後確率が最大となる$\theta_{\text{MAP}}$は以下のようになる。
$$ \begin{align*} \theta_{\text{MAP}} &= \argmax_{\theta} p(\theta | \mathbf{x}) \\ &= \argmax_{\theta} p(\mathbf{x} | \theta) p(\theta) \end{align*} $$
$$ \begin{align*} \theta_{\text{MAP}} &= \argmax_{\theta} p(\theta | \mathbf{x}) \\ &= \argmax_{\theta} p(\mathbf{x} | \theta) p(\theta) \\ &= \argmax_{\theta} \log [p(\theta | \mathbf{x})] \\ &= \argmax_{\theta} \log [p(\mathbf{x} | \theta)p(\theta)] \end{align*} $$
最大尤度推定
MAPと対照的な概念として、事前確率を考慮せず、尤度のみを考慮する推定方法を最大尤度推定maximum likelihood estimation、略してML(E)という。$\theta$の尤度が最大となる$\theta_{\text{ML}}$は以下のようになる。
$$ \begin{align*} \theta_{\text{ML}} &= \argmax_{\theta} p(\mathbf{x} | \theta) \\ &= \argmax_{\theta} \log p(\mathbf{x} | \theta) \end{align*} $$
これは最大事後確率推定において事前確率を一様分布と仮定したものと同じである。