【要約】# 「期待値がプラスのときだけ買う」は効いていなかった — 2万レースで見つけた後知恵バイアスの実例 [Zenn_Python] | Summary by TechDistill
> Source: Zenn_Python
Execute Primary Source
// Problem
機械学習を用いた意思決定システムを開発するエンジニアが、モデルの予測スコアに基づき特定の条件でフィルタリングを行う際、指標の改善が真の性能向上か、統計的バイアスによるものかを判別できない問題に直面する。具体的には以下の課題が挙げられる。
- ・期待値フィルタが、実際にはオッズという別の変数と強く相関(交絡)していた。
- ・閾値を動かして最適値を探す過程で、多重比較による偽陽性が生じていた。
- ・モデルのスコアで絞り込んだ集合では、モデルの予測精度(校正)が維持されない。
// Approach
著者は、競馬予測モデルを用いた期待値フィルタの検証を通じて、統計的な手法を用いてバイアスを排除するアプローチを採用した。以下のステップで検証を行っている。
- ・交絡変数の固定:オッズ上限を固定した状態で期待値閾値をスイープし、効果を分離した。
- ・形状の確認:閾値の変化に伴う指標の単調性をチェックし、ノイズを排除した。
- ・多重比較の補正:探索した組み合わせ数に基づき、p値の妥当性を検証した。
- ・評価指標の変更:回収率ではなく、条件付きロジットを用いた対数尤度係数でモデルの優位性を測定した。
// Result
データサイエンティストに対し、モデルのスコアで条件付けした集合における予測の不確実性と、適切な評価指標の重要性を示した。検証の結果、以下の事実が判明した。
- ・期待値フィルタによる改善は、オッズの偏りと統計的バイアスによるものであった。
- ・モデルのスコアで絞り込んだ集合では、予測値が系統的に過大評価される(勝者の呪い)。
- ・回収率よりも、対数尤度上の係数を測る方が、モデルの優位性を効率的に検定できる。
Senior Engineer Insight
> 実戦における「モデルスコアによるフィルタリング」の危険性を鋭く突いている。モデルが全体で校正されていても、スコアで条件付けした部分集合では予測が崩れる点は、運用上の致命的なリスクだ。単なる精度向上ではなく、バイアス検知のプロセスを組み込むことが、信頼できるシステム構築には不可欠である。また、評価指標の設計(サンプル効率)が、結論の鋭さを決定づけるという指摘は、極めて実践的である。