前のベイズ記事の続きです。今回はベイズの定理を導出してみました。本当は前のベイズ記事に書くつもりだったんですが、想像以上に長くなってしまったので、導出は前回とは別の記事として書くことにしました。
先にざっくりと導出の過程を説明しとくと、条件付き確率を2通りで表して、どちらの表され方でも同じ条件付き確率だからってことで、その2通りの式が等しいという方程式を立てます。後は、方程式に出てくる文字が現実的にどんな意味を持っているかを考えて、意味のある式に変形してやるっていう感じになっています(ここでは抽象的すぎて何を言っているのか分からないと思いますが、記事下の解説を読んでいただければ分かるかと思います)。
その導出の過程で「条件付き確率」とか「同時確率」って用語が出てきますが、そいつらは下の方で解説してるんで、もしもその2つの用語が分からなければそちらをご覧くださいませ~。
同時確率 ~ベイズの定理、基礎知識編~
まずはベイズの定理を導くときに出てくる概念の解説からやっていきます。この節は、同時確率は、ある事象とまた別のある事象が同時に起こるときの確率のことですよーって話と、その求め方についての話だけなので、もうすでに分かってるよーって方は次の節にお進みくださいませ~。
同時確率ってのはすでに書いた通り、ある事象とそれとは別のある事象が同時に起こるときの確率のことです。
例えば、中学校時代にトランプの問題で「1組のカードの中から1枚を引いたとき、それが赤色のカードで、かつフィボナッチ数である確率は?(ジョーカーは除く)」みたいな問題を解かされた方もいらっしゃるかと思います。この問題の答えとされている確率が同時確率と呼ばれるものになります。「赤色のカードである」というのが「ある事象」に当たって、「フィボナッチ数である」というのが「別のある事象」に当たります。
ちなみに、機械学習の本では、たまに「同時確率」ではなく、「結合確率」と書かれていることもありますので、ご注意くださいませ~。
同時確率はそれぞれの確率の積で求められます。なので、数式で表すと次のような感じになります。ただし、P(A)は事象Aが起こる確率、P(B)は事象Bが起こる確率、P(A, B)は事象AとBが同時に起こる確率(つまり、同時確率)を表してます。
$$ P(A, B) = P(A) \times P(B) $$
こちらの式を読み解いてみると、AとBの同時確率は、事象Aの起こる確率と事象Bの起こる確率を掛け算したものであるという感じになります。この式を利用して、試しに先ほどの問題を解いてみます。先ほどの問題は、「ジョーカーを除いたカード1組から1枚を引き抜いたとき、それが赤色のカードでフィボナッチ数である確率は?」でした。
上の式と照らし合わせて考えると、事象Aは赤色のカード、事象Bはフィボナッチ数ということになり、赤色のカードを引く確率P(A)と、フィボナッチ数を引く確率P(B)を求めてから、それぞれを掛け算してやれば良いことになります。
なので、まずは赤色のカードを引く確率を考えてやります。カードには赤色と黒色しか存在しないわけですから、その確率は1/2となります。
次にフィボナッチ数である確率を考えてやります。フィボナッチ数とは、フィボナッチ数列と呼ばれる”1, 1, 2, 3, 5, 8, 13, …”(3つ目以降の数は直前の2つの数の和になっています)という数列の中に出てくる数のことです。
つまり、引いたカードが1、2、3、5、8、13である確率を求めてやればいいわけです。カードは1から13までなわけですから、引いたカードがフィボナッチ数である確率は6/13となります。フィボナッチ数のカード6×4を全カード数13×4で割っただけです。
最後に同時確率を求めてやります。赤色のカードを引く確率とフィボナッチ数を引く確率とをかけてやればいいだけです。
$$
\begin{equation}
\begin{split}
P(A, B) &= P(A) \times P(B) \\
&= \frac{ 1 } { 2 } \times \frac{ 6 } { 13 } \\
&= \frac{ 3 } { 13 }
\end{split}
\end{equation}
$$
というわけで、3/13が赤色でかつフィボナッチ数というカードを引く確率になります。そして、このような確率のことを同時確率と言います。
次の節もまた基礎編で、条件付き確率についてです。
条件付き確率 ~続・ベイズの定理、基礎知識編~
次に、条件付き確率についての話になります。この節では、条件付き確率とはある事象が起こったという前提の下で、ある事象が起こる確率のことですよーって話と、その求め方と例になります。先ほどの節と同じく、条件付き確率はすでに分かってるよーという方は次の節まで飛ばしていただければと思います。
条件付き確率は先ほどの同時確率よりもちょっとだけ複雑ですが、確率というものが、「今問題としている事象が、考えうる事象全体の内のどれだけを占めているか」を表したものであるということを思い出していただければ理解できるかと思います。
繰り返しになりますが、条件付き確率とは、ある事象がすでに起こったという条件の下で、ある事象が起こる確率のことになります。ここで、「ある事象が起こった」という部分を、「考える範囲をある事象の中だけに限定した」と解釈してみてください。
この話を具体的に考えてみるために、上の節での例を少し変えて次のような問題を作ってみます。「引いたカードが赤色である(事象Aが起こった)という条件の下で、そのカードがフィボナッチ数である(事象Bが起こる)確率は?」
ここで、「事象Aが起こった」と言う部分を「考える範囲を事象Aの中だけに限定した」と解釈しなおして、この問題を書き換えてやります。すると、問題は「引いたカードが赤色であるという範囲の中で、そのカードがフィボナッチ数である確率は?」と書き換えられます。
赤色であるという条件がない状態では、赤も黒もひっくるめてカード全体の内のフィボナッチ数カードである確率を考えていたのに対して、赤色であるという条件が付けられたことによって、カード全体ではなく赤色のカードの中だけでのフィボナッチ数である確率というように、考える範囲が限定されたわけです。
なので、引いたカードが赤色であるという条件の下で、そのカードがフィボナッチ数である確率を求めようとすると次のようになります。ただし、P(B|A)は事象Aが起こったという条件の下で事象Bが起こる確率を表します。
$$
\begin{equation}
\begin{split}
P(B \mid A) &= \frac{ 赤色カードの中のフィボナッチカードの枚数 } { 赤色カードの枚数 } \\
&= \frac{ 12 } { 26 } \\
&= \frac{ 6 } { 13 }
\end{split}
\end{equation}
$$
赤色のカードの中だけで考えるので、赤色のカードの中にあるフィボナッチ数のカード数を考えなければなりません。赤色カードの数は1から13までが2組(ダイヤとハート)なので26枚です。フィボナッチカードの数は 1、2、3、5、8、13 が2組なので全部で12枚です。というわけで、求めたい確率は6/13となります。
今までの考え方をまとめておきます。まず、条件付き確率を求めるに当たって、「条件が付く」ということを「考える範囲を限定する」というように読み替えました。そして、限定した範囲の中での確率を求めることで条件付き確率を求めたのでした。
ここで、「全カード数に対する”確率”」を「全カード数に対する”割合”」と考えて上の式の右辺を表し直してみます。全カード数×〇〇/〇〇(確率)として表すってことですな。すると、赤色カードの枚数=全カード数×赤色カードである確率、赤色カードの中のフィボナッチカードの枚数=全カード数×赤色でかつフィボナッチ数である確率と表せることになります。式としては次のような感じになります。
$$
\begin{equation}
\begin{split}
P(B \mid A) &= \frac{ 赤色カードの中のフィボナッチカードの枚数 } { 赤色カードの枚数 } \\
&= \frac{ 全カード数 \times 赤色かつフィボナッチ数である確率 } { 全カード数 \times 赤色である確率 } \\
\end{split}
\end{equation}
$$
ここで、式を整理して、確率を表す記号で書き換えると最終的には次のようになります。
$$
\begin{equation}
\begin{split}
P(B \mid A) &= \frac{ 全カード数 \times 赤色かつフィボナッチ数である確率 } { 全カード数 \times 赤色である確率 } \\
&= \frac{ 赤色かつフィボナッチ数である確率 } { 赤色である確率 } \\
&= \frac{ P(A, B) } { P(A) } \\
\end{split}
\end{equation}
$$
結局のところ、条件付き確率は同時確率を条件の起こる確率で割ったものであるということになりました。一応、このような求め方でもちゃんと求められるのかを確認してみます。まず、上の節より、事象Aと事象Bの同時確率P(A, B)は3/13でした。そして、事象Aの起こる確率P(A)は1/2です。なので、事象Aが起こったという条件の下で事象Bが起こるという条件付き確率P(B | A)は6/13となって、上で求めた結果と一致します。
というわけで、以上が条件付き確率でしたー。ここまでで同時確率と条件付き確率は解説しましたので、次の節でベイズの定理を導いていきます。
ベイズの定理 ~本命~
では、ベイズの定理の導出です。といっても、上の節2つが理解できていれば割と簡単に理解できると思います。
まず、事象Aが起こったという条件の下で事象Bが起こる確率P(B | A)は上の節でも見た通り、次のように表されます。
$$ P(B \mid A) = \frac{ P(A, B) } { P(A) } ・・・(1) $$
そして、次に条件と考える対象とを逆にしてP(A | B)を考えてみます。すると、次のようになります。
$$ P(A \mid B) = \frac{ P(B, A) } { P(B) } = \frac{ P(A, B) } { P(B) } ・・・(2) $$
ここで、(1)式にも(2)式にも含まれている同時確率P(A, B)を消去することを考えます。まず、(1)式は(1′)式に、(2)式は(2′)式のように変形できます。
$$
P(A, B) = P( B \mid A ) P(A) ・・・(1′) \\
P(A, B) = P( A \mid B ) P(B) ・・・(2′)
$$
(1′)式=(2′)式とできるので、次のような変形が成り立ちます。
$$
P( B \mid A ) P(A) = P( A \mid B ) P(B) \\
P( B \mid A ) = \frac{ P( A \mid B ) P(B) } { P(A) } ・・・(3)
$$
最終的に得られた(3)式がベイズの定理になります。
もしここで、事象Aを関西弁を話す、事象Bを関西人であるというように定義してやると、P(B | A)は関西弁を話している人が関西人である確率、P(A | B)は関西人が関西弁で話す確率、P(B)は関西人である確率、P(A)は関西弁を話す確率となって、こちらのベイズ記事のようなパターンになります。
モンティ・ホール問題を解きたければ、事象Aを「正解でない選択肢が分かったという事象」と定義し、事象Bを「選んだ選択肢が正解である事象」と定義すればいいことになります。その場合、P(B | A)は正解でない選択肢が分かった上で選んだ選択肢が正解である確率、P(A | B)は選んだ選択肢が正解であるときに正解でない選択肢が分かる確率、P(B)は選んだ選択肢がそもそも正解である確率、P(A)は正解でない選択肢が分かる確率という風になります。
仮説が正しいかどうかをデータから判断したければ、事象Bを「仮説が正しいという事象」、事象Aを「あるデータが採れたという事象」と定義すれば良いことになります。すると、前回のベイズ記事のモデルになります。P(B | A)はあるデータが採れた上で仮説が正しい確率、P(A | B)は仮説が正しい場合にそのデータが得られる確率、P(B)は特にデータがない状態で仮説が正しい確率、P(A)は一般的にそのデータが採れる確率という風になります。