ベイズ推定/更新のまとめ

# TOPICS
- ベイズの公式
- ベイズ更新
- ベイズ推定
    - 理由不十分の原則

- 本記事では、式(1)のベイズの公式を変形させて行き、ベイズ更新の意味やご利益について語ります。
- 迷ったら式(1)に立ち返って見てください。



# ベイズの公式
```math
P(A|B) = \frac{P(B|A)P(A)}{P(B)} \quad \cdots(1)
```


# ベイズ更新
- 教科書でよく記載されるのは式(1)であるが、式(2)の形に変形できる

```math
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)どちらでも表現できる

```math
\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が、<u>発生順序に依存しないという前提</u>に基づく
    - 下図は、空事象Φから事象 A∩B∩C へのルートは任意であるという意味
    - どの登山口からでも山頂にたどり着くようなイメージである。
![Bayes_update.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/349189/c18db291-dbc6-76f2-92cd-d1311d5b7611.png)
    - 空事象Φ → 事象A∩B∩C への遷移イメージ


- 式(3)と式(4)は同値であるから、次のように展開できる

```math
P(A|B,C) \cdot P(B,C) = P(B,C|A) \cdot P(A) \quad \cdots(5)
```
- 式(5)の両辺を P(B,C)で割ると、

```math
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)に代入し整理すると、

```math
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の確率を使用して、<u>順次更新されていく</u>
     - これは式(2)を拡張したものと捉えることができる
- ちなみに観測事象がB,C,D,Eの4つの場合、以下のようになる。

```math
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が発生する確率

```text:活用例)
雨が降る事象をθ、交通事故が発生する事象をEとする。
→ 雨が降る確率P(θ)を私たちは知らないとする。

交通事故Eは、晴れでも雨でも発生する。
もし雨天時の事故発生確率P(E|θ)が分かっているならば、その確率を使って雨が降る確率を推定できる。
(+ 晴天時の事故発生確率も必要)
```
- 式(2)において、A → θ, B → E と書き直せば良い

```math
P(\theta|E) = \frac{P(E|\theta)}{P(E)}P(\theta) \quad \cdots(8)
```
- P(θ|E)を求めることは、<u>観測事象Eの情報を利用して事象θの発生確率を更新したことになる</u>
<br>

### 理由不十分の原則
- 式(8)において、P(θ)（事前確率）は分からない
    - そこで事前確率を __エイヤッ__ と<u>適当に決めてしまいます</u>

```math
P(\theta) = 1 \quad (適当）\quad \cdots(9)
```
    ※ P(θ)=1 では毎日雨が降ることになるが、式(8)のベイズ更新によって、雨天時の確率がより現実的な値へ更新される。
    ※ 「事故が起きた」という情報があるときの方が、「何も情報がない」時よりも天気の推定精度が上がったと言える。

## 複数の観測事象でのベイズ推定
- 式(7)において、
    $$A → θ,  \quad B → E_1,   \quad C→ E_2 $$と置き換えると、式(10)となる

```math
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)は以下のように表現できる

```math
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(θ)に拡張すれば、確率分布の推定になる
# 参考文献
- [15分でわかる(範囲の)ベイズ統計学 ](https://www.slideshare.net/matsukenbook/15-59154892)
- [交通事故率から雨の日を推定してみる](http://hash.hateblo.jp/entry/20141204/1417624898)
- [理由不十分の原則](https://toukeigaku-jouhou.info/2018/02/18/principle-of-insufficient-reason/)