指数上位5頭は多すぎるのか、少なすぎるのか|競馬AIの「上位5頭」を改めて考える

結果が上向かない様子 競馬データの基礎

競馬AIの指数を見るとき、上位何頭まで見るべきなのでしょうか。

1位だけ。

上位3頭。

上位5頭。

あるいは全頭。

自分の競馬AIでも、レースごとに指数上位馬を並べて確認することがあります。

その中で、ふと疑問に思いました。

上位5頭という区切りは、本当にちょうどいいのでしょうか。

18頭立てなら5頭はかなり絞っているように見えます。

一方、8頭立てなら5頭を挙げると半分以上です。

さらに指数1位から5位までが僅差のレースもあれば、1位だけ突出して2位以下が大きく離れているレースもあります。

それなのに、

「とりあえず上位5頭」

と毎回同じ数だけ表示する。

これは分かりやすい反面、AIの出している確率を少し雑に扱っている可能性もあります。

今回は、競馬AIの指数上位5頭という区切りが、多すぎるのか、少なすぎるのかを考えてみます。

  1. そもそも、なぜ5頭なのか
  2. 18頭立ての5頭と8頭立ての5頭は同じではない
  3. では「上位30%」の方がいいのか
  4. 順位だけを見ると「差」が消える
    1. レースA
    2. レースB
  5. 上位5頭の「合計勝率」を見てみる
  6. 「何頭か」より「どこまで確率をカバーしたか」
  7. 「累積70%まで採用」ならどうなるか
  8. ただし「70%」にも根拠は必要
  9. 上位5頭に勝ち馬が何%入るかも重要
  10. 1位から何頭増やすと効率が悪くなるか
  11. 上位5頭を「買う馬」と考えると多い
  12. 上位5頭BOXは「安心」を買っている可能性がある
  13. 「5位まで来る気がする」は本当に意味があるのか
  14. 5位と6位の指数差もかなり重要
  15. 上位5頭が「ひとかたまり」になっているレース
  16. 「エルボー法」のような考え方もできる
  17. 上位5頭の「順位安定性」も見たい
  18. 5頭という数字は「予想の説明」には使いやすい
  19. 表示は5頭、判断は確率で変える
  20. 上位5頭の中でも「役割」を分けられる
  21. 5頭の累積p_winと実際の包含率を比較したい
  22. 勝ち馬だけでなく3着以内でも見たい
  23. 単勝なら上位1~2頭で十分かもしれない
  24. ワイドなら上位5頭が生きる可能性
  25. 三連複なら5頭は「ちょうどよく見える」が危険
  26. 上位5頭が全部人気馬ならどうするか
  27. 5位だから価値が低いとは限らない
  28. 5頭固定が「穴馬探し」に影響する可能性もある
  29. 「ランキング」と「購入候補」を分けたい
  30. 自分なら「5頭」という数字をどう使うか
  31. レースを4タイプくらいに分類できそう
    1. 1頭突出型
    2. 上位3頭型
    3. 上位5頭混戦型
    4. 全体混戦型
  32. 「上位5頭」という固定観念を外すとレースの形が見える
  33. 実際に検証してみたいこと
  34. 頭数別だけでなく出走頭数別にも見たい
  35. 人気別でも検証すると面白そう
  36. 最終的には「何頭まで」より「どこで切るか」
  37. まとめ

そもそも、なぜ5頭なのか

最初に考えてみると、「上位5頭」という数字に絶対的な根拠があるわけではありません。

上位3頭なら少し少なく感じる。

10頭では多すぎる。

その中間として5頭くらいが見やすい。

おそらくそんな理由で使われやすい数字です。

表にしても収まりがいいです。

1位。

2位。

3位。

4位。

5位。

人間が一目で比較できる量としてもちょうどいい。

そのため「表示する頭数」としてはかなり優秀です。

ただし、

見やすい頭数と、予測上意味のある頭数は同じとは限りません。

ここを分けて考えたいところです。

18頭立ての5頭と8頭立ての5頭は同じではない

まず分かりやすい問題が出走頭数です。

18頭立てで上位5頭。

これは全体の約28%です。

一方、8頭立てなら62.5%です。

同じ「上位5頭」でも意味がまったく違います。

例えば18頭立てで、

「AI指数上位5頭から勝ち馬を探します」

なら、かなり絞っているように感じます。

しかし8頭立てで同じことをすると、

「ほとんど残っている」

とも言えます。

つまり上位5頭という固定数には、

出走頭数を考慮していない

という弱点があります。

では「上位30%」の方がいいのか

混戦模様

そう考えると、

上位5頭

ではなく、

上位30%

のように割合で決める案も出てきます。

18頭なら上位5~6頭。

12頭なら上位4頭。

8頭なら上位2~3頭。

これなら出走頭数に応じて変化します。

一見すると合理的です。

ただし、これでもまだ問題があります。

AI指数の分布を見ていないからです。

例えば18頭立てでも、

1位 p_win 0.40
2位 0.18
3位 0.10
4位 0.06
5位 0.04

というレースがあります。

一方、

1位 0.13
2位 0.12
3位 0.11
4位 0.10
5位 0.09

というレースもあります。

同じ上位5頭でも、中身がかなり違います。

順位だけを見ると「差」が消える

競馬AIの指数を順位にすると分かりやすいです。

しかし順位には一つ大きな欠点があります。

1位と2位の差がどれくらいあるのか分からなくなること

です。

例えば、

レースA

1位 30%
2位 20%
3位 15%
4位 10%
5位 8%

レースB

1位 18%
2位 17%
3位 16%
4位 15%
5位 14%

どちらも上位5頭です。

しかしレースAは1位が比較的抜けています。

レースBはほぼ横一線です。

同じように「上位5頭BOX」で扱うと、AIが出した確率差をかなり失っています。

上位5頭の「合計勝率」を見てみる

競馬新聞から発見する様子

ここでp_winを使うなら、かなり分かりやすい指標があります。

上位5頭のp_win合計

です。

例えば、

1位 0.28
2位 0.20
3位 0.14
4位 0.10
5位 0.08

なら、合計0.80です。

AI上では、

「この5頭のどれかが勝つ確率を約80%と見ている」

と考えられます。

一方、

1位 0.14
2位 0.12
3位 0.10
4位 0.09
5位 0.08

なら、合計0.53です。

この場合、上位5頭を全部押さえても、まだ約半分しかカバーしていません。

同じ5頭でも意味がかなり違います。

「何頭か」より「どこまで確率をカバーしたか」

ここまで考えると、

「上位5頭は多いか少ないか」

という問い自体を少し変えた方がよさそうです。

本当に知りたいのは、

その5頭でどれくらいレースをカバーできているか

なのかもしれません。

例えば、

上位3頭で累積p_win 70%。

なら5頭まで広げなくても十分かもしれません。

反対に、

上位5頭でも累積p_win 45%。

なら、5頭でも少ないと言えます。

つまり、

固定頭数。

ではなく、

累積確率。

で見る。

この方がAIらしい考え方です。

「累積70%まで採用」ならどうなるか

ニヤニヤとレースを眺める様子

例えばルールを、

累積p_winが70%を超えるまで上位馬を採用する

とします。

あるレースでは、

1位 0.35
2位 0.22
3位 0.15

ここで72%。

3頭で終了です。

別のレースでは、

1位 0.17
2位 0.14
3位 0.12
4位 0.11
5位 0.10
6位 0.08

ここで72%。

6頭必要になります。

この方法なら、

本命がはっきりしているレースは少数。

混戦は多頭数。

と自動的に変わります。

かなり自然です。

ただし「70%」にも根拠は必要

もちろん、

じゃあ70%で決まり

というわけではありません。

60%。

70%。

80%。

どこで切るかによって対象頭数は変わります。

さらにp_winが正しく校正されていなければ、累積確率自体も信用できません。

そのため実際には、

累積60%。

70%。

80%。

90%。

それぞれで、

勝ち馬包含率。

平均採用頭数。

単勝回収率。

馬連やワイドへの応用成績。

を比較したいところです。

「70%が気持ちいいから」ではなく、過去データから決めます。

上位5頭に勝ち馬が何%入るかも重要

上位5頭が多いか少ないかを判断するなら、

まず最も単純に、

勝ち馬が上位5頭に何%入っているか

を見る方法があります。

例えば1,000レースで、

1位以内 32%。

3位以内 61%。

5位以内 76%。

10位以内 92%。

だったとします。

この場合、上位3頭から5頭へ広げることで、

61% → 76%。

15ポイントほど勝ち馬包含率が増えます。

この15ポイントを得るために2頭追加する価値があるか。

という話になります。

逆に、

3位以内 72%。

5位以内 77%。

なら、4位・5位を追加しても5ポイントしか改善しません。

その場合、上位5頭は少し多いかもしれません。

1位から何頭増やすと効率が悪くなるか

芝レースの様子

これは限界効果として見ると面白いです。

例えば、

1位追加 勝ち馬包含+30%。

2位追加 +18%。

3位追加 +12%。

4位追加 +7%。

5位追加 +4%。

6位追加 +3%。

7位追加 +2%。

とします。

この場合、4位あたりから追加効果がかなり小さくなっています。

なら、

「上位3~4頭くらいが効率的」

という結論になるかもしれません。

逆に5位でも追加効果が大きいなら、5頭は必要です。

順位ごとの限界的な情報価値

を見るわけです。

上位5頭を「買う馬」と考えると多い

ここで、そもそもの用途を分ける必要があります。

上位5頭を、

分析用に表示する。

候補馬として見る。

実際に馬券で買う。

では意味が違います。

表示なら5頭は見やすい。

候補としても5頭くらいなら扱いやすい。

しかし単勝で5頭全部買うとなると話は変わります。

単勝5点なら、平均オッズ次第では利益を出しにくくなります。

三連複5頭BOXなら10点。

馬連5頭BOXなら10点。

三連単5頭BOXなら60点。

つまり、

表示としての上位5頭と、馬券としての上位5頭は分けるべき

です。

上位5頭BOXは「安心」を買っている可能性がある

例えばAI指数上位5頭の三連複BOX。

10点です。

上位3頭BOXなら1点。

上位4頭BOXなら4点。

5頭へ広げた瞬間、10点になります。

さらに6頭なら20点です。

指数上位を広げるほど、

「当たりそう」

という安心感は増えます。

しかし購入額も増えます。

ここで以前考えた「保険馬券」の問題が出てきます。

4位、5位を、

本当に期待値があるから買っているのか。

それとも、

「来たら後悔するから」

追加しているのか。

ここは区別したいところです。

「5位まで来る気がする」は本当に意味があるのか

胡散臭い占い師

例えば指数5位の馬が勝った。

すると、

「やっぱり上位5頭までは見ないとダメだ」

と思います。

しかし6位が勝ったら、

「6頭必要だった」

となります。

どこまでも広げられます。

結果を見た後に頭数を決めると、

勝ち馬が入るまで候補を増やしたくなります。

必要なのは、

過去全レースで上位何頭まで見るのが最も効率的だったか

です。

一度の5位馬の激走では決められません。

5位と6位の指数差もかなり重要

固定で5頭を切ると、もう一つ妙なことが起きます。

例えば、

5位 p_win 0.081
6位 p_win 0.080

なら、ほぼ同じです。

それなのに5位は「上位候補」。

6位は「圏外」。

これは少し不自然です。

逆に、

5位 0.095
6位 0.035

なら、5頭で綺麗にグループが切れています。

つまり上位5頭という境界を見るなら、

5位と6位の差

も確認した方がよさそうです。

これは以前考えた指数差の話とかなり近いです。

上位5頭が「ひとかたまり」になっているレース

例えば、

1位 0.22
2位 0.19
3位 0.17
4位 0.14
5位 0.12
6位 0.04

なら、上位5頭が一つのグループとして見えます。

この場合、

「上位5頭まで」

には意味がありそうです。

一方、

1位 0.25
2位 0.15
3位 0.14
4位 0.13
5位 0.12
6位 0.11
7位 0.10

なら、5位で切る理由がありません。

つまり頭数より、

指数分布の断層

を見る。

これも一つの方法です。

「エルボー法」のような考え方もできる

人口知能を表現した絵

少し機械学習っぽく考えるなら、指数順位をグラフにします。

横軸が順位。

縦軸がp_win。

1位から順に並べる。

そして値が急激に落ちる場所を探します。

例えば、

0.31
0.22
0.17
0.12
0.09
0.03
0.02

なら5位と6位の間で大きく落ちています。

この場合、上位5頭が自然な候補群です。

逆に滑らかに下がっていれば、明確な区切りはありません。

毎回5頭ではなく、

レースごとに「指数の崖」がある場所まで採用する

という考え方です。

上位5頭の「順位安定性」も見たい

もう一つ気になるのが、モデルの揺れです。

例えば学習データや乱数を少し変えると、

1位~3位はほぼ固定。

4位~8位は毎回入れ替わる。

というケースがあります。

この場合、上位5頭のうち4位・5位はかなり不安定です。

一方、

何度モデルを作っても上位5頭が同じ。

なら、その5頭は強い候補群と言えそうです。

そこで、

複数モデル。

複数seed。

異なる学習期間。

で順位を比較する。

そして、

上位5頭にどの程度安定して残るか

を見るのも面白そうです。

5頭という数字は「予想の説明」には使いやすい

一方で、5頭固定にも良いところがあります。

特にブログやXで指数を公開する場合です。

毎回、

今回は上位3頭。

次は7頭。

別レースは4頭。

となると、読者側は少し見づらくなります。

上位5頭固定なら、

毎回同じ形式。

比較しやすい。

AIがどの馬を高く見ているか一目で分かる。

というメリットがあります。

つまり、

情報公開のフォーマットとして5頭固定はかなり優秀

です。

問題は、それをそのまま購入ルールにしないことです。

表示は5頭、判断は確率で変える

ここまで考えると、一つの落としどころが見えてきます。

表示は上位5頭で固定する。

しかし馬券判断では、

指数差。

累積p_win。

オッズ。

期待値。

5位と6位の差。

などを見る。

例えばXやブログでは、

上位5頭を毎回掲載。

ただし内部では、

「実質2頭立て」。

「上位4頭混戦」。

「8頭くらいまで差がない」。

とレースを分類する。

これなら見やすさと予測情報を両立できます。

上位5頭の中でも「役割」を分けられる

5頭を全部同じ候補として扱わず、

1位 軸候補。

2~3位 相手本線。

4~5位 押さえ候補。

のように分ける方法もあります。

ただしこれも順位だけではなく、指数差で変えたいところです。

例えば、

1位0.35。

2位0.15。

なら1位はかなり強い軸候補です。

しかし、

1位0.18。

2位0.17。

3位0.16。

なら、1位だから軸というのは少し危険です。

「順位」より「確率差」で役割を決める方が自然です。

5頭の累積p_winと実際の包含率を比較したい

競馬AIとして特に面白そうなのがこれです。

例えば過去1,000レースで、

上位5頭の平均累積p_winが0.74。

実際に上位5頭から勝ち馬が出た割合が75%。

なら、かなり整合しています。

一方、

平均累積p_win 0.80。

実際の勝ち馬包含率65%。

なら、上位グループを過大評価している可能性があります。

逆に、

平均0.65。

実績75%。

なら過小評価です。

上位5頭という括りを使って、

モデルのグループ単位のキャリブレーション

も見られます。

勝ち馬だけでなく3着以内でも見たい

ブリンカーを付けた馬

単勝予測なら勝ち馬包含率が基本です。

ただ、ワイドや三連複へ応用するなら、

上位5頭から何頭が3着以内に入ったか

も重要です。

例えば、

上位5頭内に勝ち馬 75%。

上位5頭から2頭以上が3着以内 68%。

上位5頭で3着以内独占 28%。

のように集計します。

すると、

上位5頭は単勝候補には多いが、

三連系候補にはちょうどいい

という可能性があります。

何頭が適切かは、馬券種によっても変わります。

単勝なら上位1~2頭で十分かもしれない

競馬新聞見る人

単勝の場合、5頭全部買うのはかなり広いです。

モデルの目的がp_winを予測することなら、

上位1頭。

あるいは上位2頭。

そして期待値があるものだけ。

という方が自然かもしれません。

例えば5位のp_winが0.06なら、勝率6%です。

単勝10倍でも期待値0.60。

買う理由はありません。

「指数上位5頭に入っている」

というだけで単勝候補にするのは危険です。

ワイドなら上位5頭が生きる可能性

ワイドの場合は少し違います。

勝ち切らなくてもいいからです。

上位5頭の中で、

複勝圏確率が高い馬。

相関の低い組み合わせ。

オッズが十分付く組み合わせ。

を選ぶ。

こうすれば、5頭という候補リストは使いやすいかもしれません。

ただしp_winしか持っていないなら、

勝率順位=複勝順位

とは限りません。

本格的にやるならp_placeのような別予測も欲しいところです。

三連複なら5頭は「ちょうどよく見える」が危険

馬券を考える様子

三連複5頭BOXは10点です。

競馬ファンにとってかなり馴染みのある買い方です。

多すぎず。

少なすぎず。

的中も狙えそう。

ただし、「ちょうどよく見える」ことと期待値は別です。

例えば上位5頭がすべて人気馬なら、三連複10点を買っても払戻が低い可能性があります。

逆に上位5頭の中に人気薄が含まれていれば妙味が出るかもしれません。

ここでも頭数ではなく、

組み合わせごとの確率とオッズ

まで必要になります。

上位5頭が全部人気馬ならどうするか

以前考えた、

「指数上位馬が全部人気馬だったらどうするか」

という問題にもつながります。

上位5頭。

そして人気も1~5番人気。

この場合、AIと市場がほぼ一致しています。

5頭まで広げても、新しい情報はあまりないかもしれません。

一方、

指数5位が12番人気。

なら話は変わります。

AIが市場より高く評価している可能性があります。

つまり上位5頭を見る目的の一つは、

順位そのものより市場とのズレを探すこと

にもあります。

5位だから価値が低いとは限らない

例えば、

指数1位 1番人気 2.2倍。

指数2位 2番人気 3.5倍。

指数3位 3番人気 5.0倍。

指数4位 4番人気 7.0倍。

指数5位 10番人気 25倍。

だったとします。

勝率だけなら5位が最も低いです。

しかし市場との比較では5位が最も面白いかもしれません。

だから、

「上位5頭のうちどれを買うか」

を考えるなら、

指数順位 × オッズ

を見る必要があります。

上位5頭は候補集合。

最終的な購入は期待値。

という分業です。

5頭固定が「穴馬探し」に影響する可能性もある

上位5頭だけ表示すると、6位以下をほとんど見なくなる可能性があります。

これは少し危険です。

例えば、

5位p_win 0.085。

6位0.083。

なのに、

5位は注目。

6位は存在しない。

となります。

もし6位が単勝40倍なら、5位の10倍より期待値が高い可能性もあります。

つまり固定上位5頭には、

5位より下を心理的に切り捨てる効果

があります。

AIが全頭に確率を出しているなら、本来は全頭を市場価格と比較した方が自然です。

「ランキング」と「購入候補」を分けたい

ここまで考えると、かなり重要な整理ができます。

ランキングは、

AIがどの馬を高く評価したか。

購入候補は、

AI評価と市場価格を比較して買う価値があるか。

この二つは別です。

だから、

指数上位5頭を表示する。

それ自体は問題ありません。

しかし、

指数上位5頭=買う候補5頭

とすると、少しズレる可能性があります。

指数7位でもオッズとの乖離が大きければ買い候補になるかもしれません。

指数2位でも過剰人気なら見送ります。

自分なら「5頭」という数字をどう使うか

的中

現時点で自分なら、5頭を完全に捨てる必要はないと思います。

むしろ、

観察用の固定フォーマットとして上位5頭を残す

のが使いやすそうです。

そのうえで、

上位5頭の累積p_win。

1位と2位の差。

3位と4位の差。

5位と6位の差。

指数上位5頭の人気順位。

オッズ。

を追加で見ます。

こうすれば、

ただの順位表から、レース構造を読む表に変わります。

レースを4タイプくらいに分類できそう

例えば上位5頭の分布から、次のように分けられます。

1頭突出型

1位だけ高い。

2位以下が離れている。

→ 軸候補を考えやすい。

上位3頭型

1~3位まで高い。

4位以下で大きく落ちる。

→ 3頭中心のレース。

上位5頭混戦型

1~5位まで近く、6位以下で落ちる。

→ 上位5頭に意味がある。

全体混戦型

5位と6位以下にもほぼ差がない。

→ 上位5頭という区切り自体の意味が薄い。

この分類なら、「5頭が多いか少ないか」をレースごとに判断できます。

「上位5頭」という固定観念を外すとレースの形が見える

競馬AIの順位を眺めていると、

1位は本命。

2位は対抗。

3位は単穴。

のように、人間の印に変換したくなります。

しかしAIが出しているのは本来順位ではなく確率です。

1位と2位がほぼ同じこともあります。

1位だけ圧倒的なこともあります。

7位まで横並びのこともあります。

順位だけに変換すると、その情報が消えます。

上位5頭という数字を疑うことは、

ランキングを見るのではなく、確率分布を見る

きっかけになるのかもしれません。

実際に検証してみたいこと

このテーマはかなりデータ検証しやすいです。

例えば2015~2025年の全レースで、

指数1位以内の勝ち馬包含率。

上位2頭。

上位3頭。

上位4頭。

上位5頭。

上位6頭。

……。

と順番に出します。

さらに、

平均累積p_win。

実際の勝ち馬包含率。

平均出走頭数。

オッズ。

単勝回収率。

まで比較します。

そして、

「何頭追加したところから勝ち馬包含率の伸びが小さくなるか」

を見る。

これだけでも、上位5頭が本当に合理的なのか分かります。

頭数別だけでなく出走頭数別にも見たい

さらに、

8頭以下。

9~12頭。

13~15頭。

16頭以上。

で分けます。

もし、

8頭立てでは上位3頭で十分。

18頭立てでは上位5~6頭必要。

という結果なら、固定5頭より出走頭数連動の方がよいでしょう。

逆にどの頭数でも5頭前後で効率が落ちるなら、「5」という数字に意外と意味がある可能性もあります。

人気別でも検証すると面白そう

さらに勝ち馬が、

1~3番人気だったレース。

4~6番人気。

7番人気以下。

で分けます。

人気馬が勝つレースでは指数上位3頭に入りやすい。

穴馬が勝つレースでは5位以下まで見る必要がある。

という傾向があるかもしれません。

もしそうなら、

「指数上位5頭」

は穴馬捕捉用の保険として機能している可能性があります。

ただ、その5位馬を毎回買う必要があるかはまた別問題です。

最終的には「何頭まで」より「どこで切るか」

最初の問いに戻ります。

指数上位5頭は多すぎるのでしょうか。

少なすぎるのでしょうか。

答えは、

レースによって違う

になりそうです。

1位だけ突出しているレースなら5頭は多い。

上位5頭が一団になっているなら5頭はちょうどいい。

7位まで差がないなら5頭では少ない。

つまり問題は、

5頭という数字そのものではありません。

確率分布のどこに境界があるか

です。

まとめ

競馬AIの指数を上位5頭まで表示する。

これは非常に分かりやすい方法です。

ブログでもSNSでも見やすく、毎回同じ形式で比較できます。

その意味では、「上位5頭」というフォーマットにはかなり価値があります。

ただし、

上位5頭だから有力。

上位5頭だから買う。

と考えると少し危険です。

18頭立てと8頭立てでは5頭の意味が違います。

1位が突出しているレースと、10頭近く横並びのレースでも意味が違います。

さらに5位と6位がほぼ同じなら、5頭で切る根拠も弱くなります。

だから本当に見たいのは、

上位5頭という順位ではなく、

その5頭が全体の勝率をどれくらい占めているか。

どこで指数が大きく落ちているか。

5位と6位に差があるか。

市場の人気とどれだけズレているか。

です。

個人的には、

表示は上位5頭のままでもよい。しかし馬券判断まで5頭固定にする必要はない

というのが現時点の答えです。

レースによって、

実質1強。

3頭勝負。

5頭混戦。

全体混戦。

と形は変わります。

AIが全頭へ確率を出しているなら、その形まで使わないともったいありません。

「何位まで見るか」ではなく、

「どこまで見れば、そのレースの確率構造を十分に説明できるか」

と考える。

そうすると、上位5頭という数字も少し違って見えてきます。

もしかすると今後必要なのは、

上位5頭ランキングではなく、

「このレースは何頭立てとして見るべきか」をAI自身に判断させること

なのかもしれません。

コメント

タイトルとURLをコピーしました