Mímisbrunnr知恵の泉

← 意思決定分析 一覧

🎓 レベル:標準 | 重要度:A(必須)

📎 前提:決定木と後ろ向き帰納 | 関連:標本情報の価値(EVSI)・ベイズ統計(ベイズの定理の数理)

要点(BLUF)

1. なぜ意思決定にベイズ更新が要るのか

決定木と後ろ向き帰納では、需要の確率(事前 0.4 / 0.6)を所与として投入を決めました。では、投入前に市場テストをしたらどうなるか。テスト結果は需要を完全には言い当てませんが、ヒントにはなる。このヒントで確率を改訂し、判断を変えられるなら、テストには価値があります。

その「確率の改訂」がベイズ更新です。決定木でいえば、決定(投入?)の手前に偶然ノード(テスト結果) を1つ足し、各結果の枝で事後確率を使って判断し直す、という二段階構造になります。

2. ベイズの定理:事前 × 尤度 → 事後

市場テストは「好感触/不感触」のどちらかを返します。テストの性能を尤度で与えます。

ベイズの定理で事後確率を計算します。

P(好感触)=P(好感触)P()P(好感触),P(好感触)=sP(好感触s)P(s)P(\text{高}\mid\text{好感触}) = \frac{P(\text{好感触}\mid\text{高})\,P(\text{高})}{P(\text{好感触})}, \quad P(\text{好感触}) = \sum_{s} P(\text{好感触}\mid s)\,P(s)
import numpy as np

p_high, p_low = 0.4, 0.6          # 事前確率
# 尤度:各需要のもとでシグナルが出る確率
lik = {"好感触": {"高": 0.8, "低": 0.3},
       "不感触": {"高": 0.2, "低": 0.7}}

for sig in ["好感触", "不感触"]:
    joint_high = p_high * lik[sig]["高"]   # 同時確率 P(高, シグナル)
    joint_low  = p_low  * lik[sig]["低"]
    p_sig = joint_high + joint_low         # 周辺確率 P(シグナル)
    post_high = joint_high / p_sig         # 事後 P(高|シグナル)
    post_low  = joint_low  / p_sig
    print(f"{sig}: P({sig})={p_sig:.3f}  事後 P(高|{sig})={post_high:.3f}  P(低|{sig})={post_low:.3f}")

出力:

好感触: P(好感触)=0.500  事後 P(高|好感触)=0.640  P(低|好感触)=0.360
不感触: P(不感触)=0.500  事後 P(高|不感触)=0.160  P(低|不感触)=0.840

出力の意味:事前は高需要 0.4 でした。好感触が出ると高需要の確率は 0.40 → 0.64 に上がり、不感触だと 0.40 → 0.16 に下がります。テストは需要を確定はしませんが、確率を一方向に動かす。この「どれだけ動くか」がテストの情報量で、尤度の差(0.8 vs 0.3)が大きいほど大きく動きます。

3. 事後確率で行動を選び直す

更新した事後確率を使って、各テスト結果のもとで最適行動を決めます(決定木の各枝での後ろ向き帰納)。

import numpy as np

post = {"好感触": {"高": 0.64, "低": 0.36},
        "不感触": {"高": 0.16, "低": 0.84}}

for sig in ["好感触", "不感触"]:
    ev_launch = post[sig]["高"]*200 + post[sig]["低"]*(-100)  # 投入の期待利得
    ev_skip = 0.0
    best = "投入" if ev_launch > ev_skip else "見送り"
    print(f"{sig}: EV(投入|{sig}) = {ev_launch:.1f} -> 最適行動:{best}")

出力:

好感触: EV(投入|好感触) = 92.0 -> 最適行動:投入
不感触: EV(投入|不感触) = -52.0 -> 最適行動:見送り

出力の意味:事前情報だけのときは「とにかく投入(EV=20)」でした。テストを挟むと、好感触なら投入(EV=92)、不感触なら見送り(EV=0) と判断が枝分かれします。不感触のとき投入を回避できる——この「悪い結果のとき撤退できる柔軟性」こそ情報の価値の源泉で、その金額を測るのが標本情報の価値(EVSI)です。

数式の直観的意味:尤度比が信念を動かす

ベイズ更新は、オッズ(確率の比)で書くと一段とクリアです。

P(好感触)P(好感触)事後オッズ=P(好感触)P(好感触)尤度比×P()P()事前オッズ\underbrace{\frac{P(\text{高}\mid\text{好感触})}{P(\text{低}\mid\text{好感触})}}_{\text{事後オッズ}} = \underbrace{\frac{P(\text{好感触}\mid\text{高})}{P(\text{好感触}\mid\text{低})}}_{\text{尤度比}} \times \underbrace{\frac{P(\text{高})}{P(\text{低})}}_{\text{事前オッズ}}

好感触の例なら、事前オッズ 0.4/0.6=0.6670.4/0.6 = 0.667 に尤度比 0.8/0.3=2.6670.8/0.3 = 2.667 を掛けて事後オッズ 1.7781.778(=確率 0.64)。信念の更新は「尤度比を掛ける」だけで、尤度比が1に近いほど情報は無力、1から離れるほど信念を大きく動かします。テストの良し悪しは、この尤度比が1からどれだけ離れているかで決まります。ベイズの定理の一般論はベイズ統計に譲りますが、意思決定では「尤度比の大きさ=情報の鋭さ」という直観が要です。

⚠️ よくある誤解

対応シミュレーション

本文のコードで、尤度(テスト性能)を変えると事後確率の動き幅が変わります。尤度を 0.5/0.5 に近づける(無情報なテスト)と、事後が事前から動かなくなる=判断が変わらないことを確認できます。

関連ノート