【要約】ローカルで92%の検証精度のエージェントが実戦勝率1%だった — Claude CodeとKaggleに挑んだ3ヶ月 [Zenn_Python] | Summary by TechDistill
> Source: Zenn_Python
Execute Primary Source
// Problem
筆者がKaggleのAIコンペに挑む中で、開発したエージェントの検証精度と実戦勝率が著しく乖離する問題に直面した。高い精度が必ずしも勝利を保証しない、機械学習特有の落とし穴が複数発生した。
- ・模倣学習における分布シフト:教師データにない盤面(OOD)での崩壊。
- ・報酬ハック:奪取の目的化による、最適ポリシーからの逸脱。
- ・勾配消失:割引率 $\gamma=0.99$ による、500ターン先の報酬信号の減衰。
- ・評価指標の嘘:ローカルの勝率やKaggleのスコア(世代交絡)による誤認。
// Approach
筆者はClaude Code等のAIエージェントを活用して実装を高速化し、複数の学習・探索アプローチを段階的に試行した。AIを実装者とし、人間が戦略と検証の責任を担う体制を構築した。
- ・模倣学習 (Behavior Cloning): 上位リプレイの統計や行動を直接学習。
- ・深層強化学習 (PPO, LightZero): 自己対戦による学習の試行。
- ・報酬整形: ポテンシャルベース報酬整形 (PBS) によるポリシー不変性の確保。
- ・モンテカルロ・ロールアウト (MC rollout): 価値関数を捨て、シミュレータを用いた深い探索を実施。
- ・実装の高速化: GameStateの再構築により、探索の深さを確保。
// Result
筆者は3ヶ月間の試行錯誤を経て、強化学習よりも探索や精緻なヒューリスティックが有効な場面があることを突き止めた。定量的な成果と、指標に対する深い洞察を得た。
- ・v117 (ヒューリスティック): 4P 1位率 28.6%を記録。
- ・v13 (MC rollout): ローカル対戦で既存エージェントを圧倒。
- ・教訓: 検証精度、報酬、ローカル勝率といった「指標の嘘」を特定し、検証の足場を固める重要性を実証。
Senior Engineer Insight
> AIエージェントによる開発は実装速度を劇的に上げるが、ロジックの正当性検証は人間が担うべきである。特に強化学習のような「動いているが学習していない」状態が発生しやすい領域では、指標の妥当性を疑う「検証の足場」が不可欠だ。また、ローカル環境での高精度が本番での成功を保証しない「評価指標の罠」は、あらゆるMLOpsにおいて警戒すべきリスクである。