検査で陽性と出た。本当に病気である確率は?直感的な答えはしばしば間違う。ベイズ定理は、新しい証拠に基づいて信念を正しく更新する方法を教えてくれる。スパムフィルタの「この単語があるからスパム」も、医療診断も、本質は同じ数学である。
ベイズ定理 事前確率 事後確率 尤度 ベイズ推論
ベイズ定理
ベイズ定理(Bayes' Theorem)
P(A|B) = P(B|A) × P(A) / P(B)
または
事後確率 = 尤度 × 事前確率 / 周辺尤度
各項の意味
| 項 | 名前 | 意味 |
|---|---|---|
| P(A|B) | 事後確率 | Bを観測した後のAの確率(知りたいもの) |
| P(B|A) | 尤度 | Aのもとで Bが観測される確率 |
| P(A) | 事前確率 | 観測前のAの確率(事前知識) |
| P(B) | 周辺尤度 | Bが観測される全体的な確率 |
具体例:医療検査
病気の有病率 1%、検査の感度 99%、特異度 95% のとき、陽性と出た人が実際に病気である確率は?
直感:「99%正確だから90%以上?」→ 実際は約17%
計算:
P(病気|陽性) = P(陽性|病気)×P(病気) / P(陽性)
= 0.99 × 0.01 / (0.99×0.01 + 0.05×0.99)
≈ 0.17
有病率(事前確率)が低いと、陽性でも実際に病気である確率は低い。これを「基準率の無視」の問題という。
ベイズ推論
ベイズ推論の流れ
1. 事前分布を設定(既存の知識・信念)
2. データを観測
3. ベイズ定理で事後分布を計算
4. 事後分布が新たな事前分布に(信念の更新)
実務での応用
WEB開発での応用
スパムフィルタ:ナイーブベイズ分類器。特定の単語からスパム確率を計算。
レコメンデーション:ユーザーの行動から嗜好を推定。
A/Bテスト:ベイズ的A/Bテストで確率的な判断。
AI/MLでの応用
ベイズ最適化:ハイパーパラメータ探索の効率化。
確率的プログラミング:PyMC、Stan などで複雑なベイズモデル。
不確実性の推定:モデルの予測に信頼区間を付ける。
転移学習:事前学習済みモデルを事前分布として活用。
深掘りリンク
- Wikipedia: ベイズの定理
- 動画:3Blue1Brown「ベイズの定理」
- 書籍:「ベイズ統計モデリング」
- 次のステップ:MCMC、変分推論