「AI予想」の中身は、地味な工程の積み上げ
競馬予想AIと聞くと魔法のように聞こえるが、実態はデータ整備・特徴量設計・確率較正という地味な工程の積み上げである。本稿では、その全体像を研究用途の視点で順に組み立てる。特定の「買い目」を出すことが目的ではなく、確率を正直に推定する仕組みを作ることが目的だ。
工程1:データと「リーク」との闘い
最初にして最大の敵は、精度でも計算量でもなく**リーク(未来情報の混入)**である。
- レース結果データから特徴量を作る際、「そのレース時点で知りえた情報」だけを使う
- 例:過去走のタイムは使えるが、当該レースのタイム(結果)を特徴量に混入させる事故が初心者に多い
- 検証は必ず時系列で分割する(ランダム分割は厳禁)。古い季節で学習し、新しい季節で検証する
工程2:特徴量設計——予想の8割はここで決まる
勾配ブースティング(LightGBM 等)が主流の現在、モデル自体の差よりも特徴量の質が精度を支配する。代表的なグループ:
能力系
- 走破タイム:そのままでは比較できない。コース・距離・馬場状態で基準化(標準化)して「偏差値化」するのが定石
- 上がり3F(最後の3ハロン):末脚の指標。これも馬場状態で補正する
- クラス・賞金:どのレベルの戦いで結果を出してきたか
条件系
- 馬場状態(良・稍重・重・不良):得意・不得意は馬ごとに大きく異なる。馬場別の過去成績を特徴量化する
- 距離適性:距離カテゴリ別の成績、距離延長・短縮のフラグ
- 枠順:コース・距離によって有利不利がある(本ブログの沙田の枠順偏差の記事も参照)
- 斤量:負担重量の増減。前走からの差分が重要
人的要素
- 騎手:騎乗騎手の勝率・連対率、乗り替わりフラグ
- 調教師:厩舎の成績、コースとの相性
市場系(扱いに注意)
- オッズ:市場の集合知は強力だが、これを特徴量にすると「市場を超える」という目的と循環する。研究では「市場を含まないモデル vs 市場」の比較として分離管理するのが誠実な設計である
工程3:モデル化——まず順位ではなく確率を
- 目的変数は「1着か否か」の二値(または複勝)から始める
- LightGBM / XGBoost が表形式データでは依然強い。ロジスティック回帰をベースラインとして必ず残す(複雑なモデルがベースラインを上回らないなら、どこかが壊れている)
- 評価指標は的中率ではなく確率の質:Brierスコア、ログロス、較正曲線(calibration curve)。「予測確率20%の馬が本当に20%勝つか」を確認する
工程4:確率較正——ここを省くと「AI」ではなく「占い」
モデルの生出力は較正されていないことが多い。Platt scaling や isotonic regression で検証期間の成績に合わせて較正する。較正後の確率こそが、市場の暗黙確率(オッズの逆数をオーバーラウンド除去して正規化したもの)と比較できる。
「モデル確率 − 市場確率」の**乖離(divergence)**こそが、モデルが市場と違う見方をしている地点であり、研究の核心である。
工程5:バックテストの誠実さ
- 検証期間は学習期間より必ず未来
- 収支シミュレーションには手数料(控除率)を必ず含める。JRA の控除率は券種ごとにおよそ 20–30% で、これを無視した黒字は架空である
- 「的中率○○%」という宣伝文句は統計的にほぼ無意味(詳しくは Brier スコアの記事へ)
まとめ:再現可能性こそが価値
工程は公開できる。データソース、特徴量の定義、較正方法、検証の切り方——これらを明示すれば、誰でも同じ実験を再現できる。当サイトが香港競馬・日本の競馬を問わずこの方針を取るのは、検証できない予想は、予想ですらないと考えるからだ。
本記事は研究・教育目的であり、馬券購入の助言ではありません。競馬は20歳以上、適度に。