見出し画像

🐴 ChatGPTで作った競馬AIの性能を調べてみた(2022年データ)

2022年の競馬データを駆使し、ChatGPTを活用して開発した革新的なAI競馬予想システムの性能を徹底検証。本記事では、的中率や回収率を指標に、AIがどれだけ競馬予想の精度を高めることができたのかを明らかにします。


AI競馬の本を好評発売中🌟

note版

zenn版

競馬データの紹介

JRDBが出走の前日に公開する競馬データ(KYIデータ)を利用
有料版で2022年のものを利用(*1)

AIの学習のために、データを分割しています。(*2)

$$
\begin{array}{crr} \hline
& レース数& 馬毎レース数 \\ \hline
train & 2,908 & 39,945 & \\ \hline
val & 264 & 3,652 & \\ \hline
test & 288 & 4,117 & \\ \hline
\end{array}
$$

trainデータは2022年1月~10月中、valデータは2022年11月中、testデータは2022年12月中 でデータ分割

*1: JRDBのデータについてはこちらで解説

*2: train、testデータについて
https://starpentagon.net/analytics/dataset_split_evaluation/

AIの作り方は?

LightGBMでモデルを作成。複勝に入るか否かの2値分類するAIを作成

的中率

AIの予想の上位3番目までの馬の複勝率を調査。
複勝人気3番目までの馬の複勝率と比較
テストデータに対するaccuracyを計算。

$$
\begin{array}{cr} \hline
& Accuracy  [\%]   \\ \hline
人気 & 78.6 & \\ \hline
AI予想 & 78.3 & \\ \hline
\end{array}
$$

この点は差は大きな差はなし

予測確率の精度は?

オッズ x AIの予測確率が100%を超えるものに賭けることで、収益プラスを狙っていきます(*1)
ベースラインは、複勝オッズから計算した支持率です。支持率 = 払戻し率 / 複勝オッズで計算しています。払戻率は、レース内のオッズから計算(*2)
誤差は大きい方がだめ

・Brier Score(*3)
AI、0.133
ベースライン、0.132

払い戻し率を考慮したキャリブレーションカーブ

キャリブレーションカーブ

・キャリブレーションカーブの平均絶対誤差
AI、0.0198
ベースライン、0.0111

・考察
キャリブレーションカーブの平均絶対誤差から、複勝オッズから計算した支持率と実際の勝率はとてもフィットしていて、オッズの歪みが少ないので勝ちやすいタイミングが少ない。
予想確率 0.12~0.14など一部では、AIの方が予想確率の精度が良い。

・気になる点
複勝オッズから払戻率を計算した際に、控除率が30%~40%と出てしまう。JRAでは20%との表記があり、そのずれが気になる。ただ、キャリブレーションカーブの図を見る限り、計算した控除率は正しいように見える

*1: 解説はこちら

*2:
・払い戻し率の計算
https://www.jra.go.jp/kouza/baken/index.html
・払い戻し率の算出方法
https://xn--lckh3dvdtc8ib.net/rate/

*3: Brier Score
https://yukoishizaki.hatenablog.com/entry/2020/05/24/145155

回収率

AI予想1位に全て複勝でかける場合(all)と、オッズ x AI予想確率 が 100%を超えた場合のみに複勝で賭ける場合(part)を比較(*1)
マージンは0.04で設定。マージン(m)は オッズ x AI予想確率 - m > 100%で定義。モチベーションとしては、AI確率は誤差があることもあるので、その分の余白を取る。

$$
\begin{array}{|c|r|r|} \hline
& all & part \\ \hline
回収率 & -38.9\% & -7.6\% \\ \hline
賭け数 & 4,090 & 60 \\ \hline
\end{array}
$$

 ・マージンとリターンの関係。
マージン 0、リターン -45.5 %
マージン0.01、リターン -61.8 %
マージン0.02、リターン -46.7 %
マージン0.03、リターン -34.0 %
マージン0.04、リターン -7.6 %、賭け回数60回
マージン0.05、リターン -27.4 %
マージン0.1、リターン +23.8 %、(おそらく賭け回数は少ない)

・考察
賭けを絞ると60回と少ないですが 、利益は-7.6%でした。複勝の人気の上位にかけ続けると控除率の-20%に行くと考えられるので、-7.6%はそれより優れている

*1 下記に詳しく書いてる
https://zenn.dev/keivacance/books/40b542e1f1cf0a/viewer/32c2f

結論

  • かなり複勝オッズから計算した支持率の精度がよく、オッズが歪んでいることが少ないことがわかる

  • AIの予想確率は一部においては、複勝オッズから計算した支持率よりも精度が良い。回収率も一部では90~100%付近が出る

課題は?

  • 複勝人気順で1~3位で賭けた時の回収率はベースラインとして調査しておきたい

  • グラフは日本語にしたい

次は?

  • 単勝や馬連などで同様に実験したい

  • データをもっと増やしてみようと思います!


この記事が気に入ったらサポートをしてみませんか?