2016/11/29

ベイズ推定の簡単な例と利点


ベイズ推定とは「過去の経験」と「新たに得たデータ」をもとに不確実な事象を予測する手法である。

基本的な例を通じてベイズ推定の意味を説明します。

具体例の問題設定

ゲストが男性なのか女性なのかを当てるクイズを考えます。

過去の経験

このクイズは過去何度も行われており,過去のデータによるとゲストが男性である確率は60%,女性である確率は40%であることが分かっています。

新たに得たデータ

今日のゲストは身長が165cm以上であるというヒントが与えられました。ただし,この世の中では男性の7割が165cm以上,女性の2割が165cm以上とします。

身長が高いという情報により,男性である確率は事前のデータである60%よりも高いと予想できます。目標は「過去の経験」と「新たに得たデータ」をもとに今日のゲストが男性である確率を推定することです。

問題を数式で表現する

過去の経験

$X$ をゲストが男(man)か女(woman)かを表す確率変数とします。
$P(X=\mathrm{m})=0.6$,$P(X=\mathrm{w})=0.4$
となります。この確率分布 $P(X)$ を事前分布(または経験分布)と言います。

新たに得たデータ

$D$ を身長が165cm以上(tall)か未満(short)かを表す確率変数とします。性別 $X$ が与えられたとき,身長が165cm以上であるかどうかの確率 $P(D\mid X)$ は問題文から以下のようになります:
$P(D=\mathrm{t}\mid X=\mathrm{m})=0.7$
$P(D=\mathrm{s}\mid X=\mathrm{m})=0.3$
$P(D=\mathrm{t}\mid X=\mathrm{w})=0.2$
$P(D=\mathrm{s}\mid X=\mathrm{w})=0.8$

計算したいもの

求めたいのは「ゲストの身長が165cm以上かどうか」という情報 $D$ が与えられたときのゲストの性別の分布 $P(X\mid D)$ です。

具体例の解答

この問題にはベイズの定理という式:
$P(X\mid D)=\dfrac{P(D\mid X)P(X)}{P(D)}$
を使います。
(この式の理解は難しくありません!→ベイズの定理の基本的な解説

ベイズの定理を使うと,事前分布 $P(X)$ とデータの情報 $P(D\mid X)$ から,求めたい $P(X\mid D)$ を以下のように計算することができます!(後で分かりますが $P(D)$ は $X$ によらないので計算する必要がありません)

今回の問題設定の場合,今日のゲストが男性である確率は,
$P(X=\mathrm{m}\mid D=\mathrm{t})\\
=\dfrac{P(D=\mathrm{t}\mid X=\mathrm{m})P(X=\mathrm{m})}{P(D=\mathrm{t})}\\
=\dfrac{0.6\times 0.7}{P(D=t)}$

女性である確率は,
$P(X=\mathrm{w}\mid D=\mathrm{t})\\
=\dfrac{P(D=\mathrm{t}\mid X=\mathrm{w})P(X=\mathrm{w})}{P(D=\mathrm{t})}\\
=\dfrac{0.4\times 0.2}{P(D=t)}$
となります。

よって,男性である確率:女性である確率
$=0.42:0.08$
となります。つまり男性である確率は 84%です。

ベイズ推定とは

上記の例のように,

  • 事前分布 $P(X)$ と
  • 条件付き分布 $P(D\mid X)$

から

  • ベイズの定理を使って
  • 条件付き分布 $P(X\mid D)$ を求めること

をベイズ推定と言います。$P(D\mid X)$ を尤度,$P(X\mid D)$ を事後分布と言います。
参考:最尤法によるパラメータ推定の意味と具体例

過去の経験(事前分布)を推定に活用できるというのがベイズ推定の利点の1つです。

さらに,新たな情報(上の例だと例えばゲストの体重)を得たら,さっき得た事後分布を新たな事前分布としてもう一度ベイズ推定を行うことができます。情報を得るたびにどんどん推定が更新されていくというイメージです。

考え方が独特なので(僕は)きちんと理解するのにけっこう時間がかかりました。