2021年2月2日火曜日

ベイズ学習の枠組み②

 前回の投稿では、ベイズ学習は以下の2ステップで行っていくことを述べた。

  1. 確率モデルの構築:グラフィカルモデルなどを利用しながら、事象の同時確率を定式化する。
  2. 推論:上で定式化した同時確率分布と、その未知のパラメータに対する周辺確率から事後確率を求める
実際にこのステップに従って、非常にシンプルな例の推論を行ってみたい。これによって実際に同時確率と周辺確率を計算することで、事後確率が推論できることが実感できるとおもう。

ここで考える例は以下のとおり。
例)箱の中のボールの数の推論
ある箱の中にボールが3つ入っている。ボールの色は赤か白のどちらかだが、どの色が何個入っているかはわからない。ここで箱の中からランダムに1つボールを取り出しそのボールの色を確認後箱の中に戻すという操作を行う。
【ケースA】1回の試行で「白」が出た場合
【ケースB】3回の試行で「白→赤→白」が出た場合
の2つの場合で箱の中の白ボールの数がどのように推論できるかを見ていこう。

■【ケースA】1回の試行で「白」が出た場合

上のように、確率モデルの構築→推論とステップを踏んで進めていこう。

▼確率モデルの構築

この場合の事象は下図のようなグラフィカルモデルで表せる。ここで\(W=\{0, 1, 2, 3\}\)は白玉の数を示す確率変数で、\(W\)の値により試行時に取り出される玉の色\(X=\{r, w\}\)の確率が決まるというモデルになっている。

また、簡単な確率の考察からそれぞれの確率は下表のようになる。ここで箱の中の玉の数は何の情報もないため等確率で発生するものとして\(P_0(W)=1/4\)、ここで\(W=\{0,1, 2, 3\}\)としている。この\(P_0(W)\)を事前確率という。

▼推論

「1回の試行で白ボールを取り出した」というデータが確定したもとでの白ボールの数を推論したいので、求めたいのは事後確率\(P(W|X_1=w)\)であり、条件付き確率の定義から
\[P(W|X_1=w)=\frac{P(W,X_1=w)}{P(X_1=w)}=\frac{P(W,X_1=w)}{\sum_W{P(W, X_1=w)}}\tag{1}\]
と書ける。上記の最左辺の分子と分母はこれまでの情報で計算できることがわかると思う。それぞれ求めていってみよう。
分子の同時確率は\(P(W, X_1)=P(X_1|W)P(W)\)であり、\(P(W)_0=P(W)\)とすると、
上の表から以下のように計算できる。
\[\begin{cases}P(W=0, X_1=w) & =P(X_1=w|W=0)P_0(W=0)= 0 \cdot \frac{1}{4} = 0 \\P(W=1, X_1=w) & =P(X_1=w|W=1)P_0(W=1)= \frac{1}{3} \cdot \frac{1}{4} = \frac{1}{12} \\P(W=2, X_1=w) & =P(X_1=w|W=2)P_0(W=2)= \frac{2}{3} \cdot \frac{1}{4} = \frac{1}{6} \\P(W=3, X_1=w) & =P(X_1=w|W=3)P_0(W=3)= 1 \cdot \frac{1}{4} = \frac{1}{4} \\\end{cases}\]

また(1)式の分母である周辺確率は
\[P(X_1=w)=\sum_{W}P(W, X_1=w) = 0+ \frac{1}{12} + \frac{1}{6} + \frac{1}{4} = \frac{1}{2}\]
となり、同様に\(P(X_1=w)=\frac{1}{2}\)となる。

(1)式にこれらの結果を代入すると
\[\begin{cases}P(W=0|X_1=w) & = 0 / \frac{1}{2} = 0\\ P(W=1|X_1=w) & = \frac{1}{12} / \frac{1}{2} =\frac{1}{6}\\ P(W=2|X_1=w) & = \frac{1}{6} / \frac{1}{2} =\frac{1}{3}\\ P(W=3|X_1=w) & = \frac{1}{4} / \frac{1}{2} =\frac{1}{2}\\ \end{cases}\]
となり、1回目に白ボールが出た場合、確率的には箱の中のボールは全部白の可能性が一番高いと推論できることを示している。

■【ケースB】3回の試行で「白→赤→白」が出た場合

ケースAと同様の考察を繰り返すと良いが力尽きたので気が向いたら追記予定。
要点は、ボールを試行の度に箱に戻すため、Wが決定された状態では、各試行間は独立なので\[P(X_1,X_2,X_3)=P(X_1)P(X_2)P(X_3)\]
となることを利用すれば良い。

0 件のコメント:

コメントを投稿