TOPICS
-
ベイズの公式
-
ベイズ更新
-
ベイズ推定
- 理由不十分の原則
-
本記事では、式(1)のベイズの公式を変形させて行き、ベイズ更新の意味やご利益について語ります。
-
迷ったら式(1)に立ち返って見てください。
ベイズの公式
P(A|B) = \frac{P(B|A)P(A)}{P(B)} \quad \cdots(1)
ベイズ更新
- 教科書でよく記載されるのは式(1)であるが、式(2)の形に変形できる
P(A|B) = \frac{P(B|A)}{P(B)}P(A) \quad \cdots(2)
P(A) ・・・事前確率(何の情報もない時の事象Aの発生確率)
P(A|B) ・・・事後確率(事象Bが生じた時のAの発生確率)
- 式(2)右辺は、事前確率P(A)に事象Bを観測した影響
P(B|A)/P(A)
が掛けられている- Bの観測により、Aの事前確率が更新されることを意味する
- これを ベイズ更新 という
- では、事象C,D,E,F,...と複数の事象を観測した時はどうなるのだろう?
- 以下では複数事象を観測した時のベイズ更新について述べる
複数観測事象でのベイズ更新
- 3つの事象A, B, Cが同時に発生する確率( 同時確率 )を考える
- 同時確率は、下式(3),(4)どちらでも表現できる
\begin{align}
P(A,B,C) &= P(A|B,C) \cdot P(B,C) \quad \cdots(3) \\
P(A,B,C) &= P(B,C|A) \cdot P(A) \qquad \cdots(4)
\end{align}
-
これは、各個別事象A,B,Cが、発生順序に依存しないという前提に基づく
-
式(3)と式(4)は同値であるから、次のように展開できる
P(A|B,C) \cdot P(B,C) = P(B,C|A) \cdot P(A) \quad \cdots(5)
- 式(5)の両辺を P(B,C)で割ると、
P(A|B,C) = \frac{P(B,C|A) \cdot P(A)}{P(B,C)} \quad \cdots(6)
- ここで、
- P(B,C) = P(B)・P(C)
- P(B,C|A) = P(B|A)・P(C|A)
- を式(6)に代入し整理すると、
P(A|B,C) = \frac{P(C|A)}{P(C)} \cdot \frac{P(B|A)}{P(B)} \cdot P(A) \quad \cdots(7)
- 事象Aの発生確率は、事象Bと事象Cの確率を使用して、順次更新されていく
- これは式(2)を拡張したものと捉えることができる
- ちなみに観測事象がB,C,D,Eの4つの場合、以下のようになる。
P(A|B,C,D,E) = \frac{P(E|A)}{P(E)}\frac{P(D|A)}{P(D)} \frac{P(C|A)}{P(C)}\frac{P(B|A)}{P(B)} P(A) \quad \cdots(7-b)
- 観測事象B,C,D,Eは互いに独立になっていることが分かる
- ※ P(B|C)のような依存項がないという意味
ベイズ推定
- 式(2)の話を推定に活用してみる
- 「発生確率が分からない事象θの発生確率P(θ)を推定する問題」を考える
- 以下のように変数を定義
- P(θ) = ある事象θの事前確率(値は分からない)
- P(E) = 観測事象をEとし、その発生確率
- P(E|θ) = ある事象θが発生した際に、観測事象Eが発生する確率
活用例)
雨が降る事象をθ、交通事故が発生する事象をEとする。
→ 雨が降る確率P(θ)を私たちは知らないとする。
交通事故Eは、晴れでも雨でも発生する。
もし雨天時の事故発生確率P(E|θ)が分かっているならば、その確率を使って雨が降る確率を推定できる。
(+ 晴天時の事故発生確率も必要)
- 式(2)において、A → θ, B → E と書き直せば良い
P(\theta|E) = \frac{P(E|\theta)}{P(E)}P(\theta) \quad \cdots(8)
- P(θ|E)を求めることは、観測事象Eの情報を利用して事象θの発生確率を更新したことになる
理由不十分の原則
- 式(8)において、P(θ)(事前確率)は分からない
- そこで事前確率を エイヤッ と適当に決めてしまいます
P(\theta) = 1 \quad (適当)\quad \cdots(9)
※ P(θ)=1 では毎日雨が降ることになるが、式(8)のベイズ更新によって、雨天時の確率がより現実的な値へ更新される。
※ 「事故が起きた」という情報があるときの方が、「何も情報がない」時よりも天気の推定精度が上がったと言える。
複数の観測事象でのベイズ推定
- 式(7)において、
$$A → θ, \quad B → E_1, \quad C→ E_2 $$と置き換えると、式(10)となる
P(\theta|E_1,E_2) = \frac{P(E_2|\theta)}{P(E_2)} \cdot \frac{P(E_1|\theta)}{P(E_1)} \cdot P(\theta) \quad \cdots(10)
- さらに、観測変数の数がN個ある場合、式(10)は以下のように表現できる
P(\theta|\bigcap_{k=1}^n {E_k}) = \prod_{k=1}^n {\frac{P(E_k|\theta)}{P(E_k)}} \cdot P(\theta) \quad \cdots(11)
- 上式より、未知の確率分布P(θ)は、観測事象E_kの数だけ更新されていく
- 正しく観測できる事象の数Nが多いほど推定精度が上がる(直感と合っている)
所感
-
式(11)において、E = X(説明変数), θ = Y(目的変数)とすれば、
- 説明変数Xから目的変数Yの発生確率を推定する問題になりそう
- 機械学習と相性が良さそうだと思った
-
P(θ) を尤度関数L(θ)に拡張すれば、確率分布の推定になる