統計・データ分析ベイズ統計

比例式で求めるベイズ事後分布【ポアソン分布編】カーネルの見抜き方

ベイズ統計で事後分布を求めるとき、正規化定数まで含めて真面目に積分計算をしていませんか。実は「比例式」と「カーネル」という考え方を使えば、多くの場合はもっと短い手順で答えにたどり着けます。

この記事でわかること

  • 「事後分布 ∝ 尤度 × 事前分布」という比例式の意味
  • 「カーネル」とは何か、なぜそこだけ見れば分布が特定できるのか
  • ポアソン分布に従うデータに、ガンマ分布の事前分布を当てはめて事後分布を求める手順
  • ポアソン分布とガンマ分布が「共役」になる理由

事後分布を求める比例式の考え方

ベイズの定理により、パラメータ θ\theta の事後分布は次のように表せます。

p(θx)=p(xθ)p(θ)p(x)p(\theta \mid x) = \dfrac{p(x \mid \theta)\, p(\theta)}{p(x)}

分母の p(x)p(x)(データ全体の周辺尤度)は、θ\theta を含まない定数です。事後分布の「形」だけを知りたいのであれば、この定数を無視して次のように書いても構いません。

p(θx)p(xθ)p(θ)p(\theta \mid x) \propto p(x \mid \theta)\, p(\theta)

つまり「事後分布は、尤度と事前分布の積に比例する」ということです。この比例式の右辺を計算し、θ\theta に依存する部分(=カーネル)だけを取り出せば、それがどんな分布の形をしているかがわかります。

「カーネル」とは何か

確率密度関数のうち、θ\theta に依存する部分だけを取り出したものを「分布のカーネル」と呼びます。たとえばガンマ分布の密度関数、

f(θ)=baΓ(a)θa1ebθf(\theta) = \dfrac{b^{a}}{\Gamma(a)}\, \theta^{a-1}\, e^{-b\theta}

のうち、θ\theta を含まない係数 baΓ(a)\dfrac{b^{a}}{\Gamma(a)} は正規化定数で、カーネルには含まれません。カーネルは θa1ebθ\theta^{a-1} e^{-b\theta} の部分だけです。比例式の計算では、この正規化定数を気にせずカーネルの形だけを見比べれば、事後分布がどの分布になるかを特定できます。


ポアソン分布×ガンマ事前分布で事後分布を求める

設定

データ x1,x2,,xnx_1, x_2, \ldots, x_n が、パラメータ λ\lambda のポアソン分布に独立に従うとします。

p(xiλ)=λxieλxi!p(x_i \mid \lambda) = \dfrac{\lambda^{x_i}\, e^{-\lambda}}{x_i!}

事前分布として、λ\lambda にガンマ分布 Gamma(a,b)\mathrm{Gamma}(a, b) を仮定します。

p(λ)λa1ebλp(\lambda) \propto \lambda^{a-1}\, e^{-b\lambda}

Step1:尤度を求める

データが独立なので、尤度は各データの確率の積です。

p(xλ)=i=1np(xiλ)=i=1nλxieλxi!λixienλp(x \mid \lambda) = \prod_{i=1}^{n} p(x_i \mid \lambda) = \prod_{i=1}^{n} \dfrac{\lambda^{x_i}\, e^{-\lambda}}{x_i!} \propto \lambda^{\sum_i x_i}\, e^{-n\lambda}

xi!x_i!λ\lambda に依存しない定数なので、比例式の段階で無視できます。

Step2:尤度×事前分布を計算する

比例式に従って、尤度と事前分布のカーネルをそのまま掛け合わせます。

p(λx)λixienλ×λa1ebλ=λixi+a1e(n+b)λp(\lambda \mid x) \propto \lambda^{\sum_i x_i}\, e^{-n\lambda} \times \lambda^{a-1}\, e^{-b\lambda} = \lambda^{\sum_i x_i + a - 1}\, e^{-(n+b)\lambda}

Step3:カーネルから分布を特定する

この式の形、λ(1)e()λ\lambda^{(\cdot - 1)} e^{-(\cdot)\lambda} は、まさにガンマ分布のカーネルと同じ形です。指数部分の係数を見比べると、事後分布は次のガンマ分布であるとわかります。

λxGamma ⁣(a+ixi,  b+n)\lambda \mid x \sim \mathrm{Gamma}\!\left(a + \sum_i x_i,\; b + n\right)

正規化定数を一切計算せずに、カーネルの形を見比べるだけで事後分布のパラメータまで特定できました。これが比例式を使う最大のメリットです。


なぜポアソン分布とガンマ分布は「共役」なのか

事前分布と事後分布が同じ種類の分布(今回はどちらもガンマ分布)になる組み合わせを「共役事前分布」と呼びます。ポアソン分布の尤度のカーネルが λixienλ\lambda^{\sum_i x_i}\, e^{-n\lambda} という、ガンマ分布と同じ「べき乗×指数関数」の形をしているため、事前分布にガンマ分布を選ぶと、掛け算してもべき乗と指数の肩の数字が変わるだけで、分布の種類自体は変わりません。これが共役性の正体です。

共役事前分布を使う利点は、積分計算をせずに事後分布のパラメータを更新するだけで済むことです。上の例では、観測データを得るたびに aa+ixia \to a + \sum_i x_ibb+nb \to b + n と更新していくだけで、逐次的に事後分布を求められます。


よくある質問

Q. 正規化定数はいつ必要になりますか?

A. 事後分布の期待値や確率を具体的な数値として計算したいときは、正規化定数(分布の係数部分)まで必要です。ただし、カーネルの形から分布の種類とパラメータさえ特定できれば、その分布の性質(平均・分散の公式など)を使って正規化定数を意識せず計算できます。

Q. 事前分布の選び方に決まりはありますか?

A. 尤度の形に対して共役になる分布族を選ぶと計算が楽になりますが、必須ではありません。共役性がない場合は、MCMCなどのサンプリング手法で事後分布を近似します。


まとめ

  1. 事後分布は「事後分布 ∝ 尤度 × 事前分布」という比例式で、正規化定数を無視して求められる
  2. 「カーネル」とは、パラメータに依存する部分だけを取り出した式のことで、これを見比べれば分布の種類がわかる
  3. ポアソン分布の尤度にガンマ分布の事前分布を掛けると、カーネルが再びガンマ分布の形になる(共役性)
  4. 事後分布は Gamma(a+ixi,b+n)\mathrm{Gamma}(a + \sum_i x_i,\, b + n) となり、観測データを得るたびにパラメータを更新するだけで済む
  5. 共役事前分布を使えば、積分計算をせずに事後分布を求められる