生成AIを活用した競馬の次世代予想方法

# はじめに
はじめましての方も多いかもしれないですが、インティメート・マージャーで社長をやらせていただいております簗島です。今年は開発本部でアドベントカレンダーをやることになったので僕も書いてみることにしました。本業と全く関係ない内容にあるのですが、タイトルは他の人と比べるとちょっとふわふわめな内容で「生成AIを活用した競馬の次世代予想方法」です。

# どうしてこの記事を書いているか
元々データ解析や機械学習のアルゴリズムを作成するのを趣味としてやっていて、その一環で１０年以上前から競馬の予想アルゴリズムを作成しています。最近ではnetkeibaというサイトで開催されている[AI競馬予想マスターズ](https://yoso.sp.netkeiba.com/masters/ai2023/?rf=orepro)に「[生成系競馬予想](https://yoso.sp.netkeiba.com/masters/ai2023/profile.html?id=17218442)」という名前で出させていただいます。この記事が出た翌々日の有馬記念の日がこの大会の最終日となっており、この記事の中では過去からの「競馬予想アルゴリズムの紆余曲折」「この大会で使っているアルゴリズム」「生成AIを使った次世代予想の方法」についてご紹介をさせていただきます。
![スクリーンショット 2023-12-09 2.49.08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3632702/feeb82ee-872f-cae5-5b4c-c8598a78fcad.png)


# 競馬の予想アルゴリズムの紆余曲折
## 元々どのようにアルゴリズムを作っていたか
競馬の予想アルゴリズムを作ろうとする人の多くは「勝ち馬を予測する」の予想をすることを目指してアルゴリズムを作成しようと思っているのではないかと思います。僕自身も元々は1着を予測するためのアルゴリズムを作っていたのですが、一着を予測しようとすると以下のような問題が発生します。
* 1番人気の馬ばかりを予測してしまう
* そもそも競馬の控除率が80%なので１番人気の馬を買うと賭け金の７５％〜80％に収束していまう。

といった問題が発生してしまうことが多く、実際AI競馬予想マスターズの各アルゴリズムを見る限り、７５％〜80％に収まってしまっているアルゴリズムが多く見受けられます。そういった背景もあり競馬予想のアルゴリズムを作る人は「勝ち馬を予測する」という方針が「儲ける」ためには最適じゃないということに一定の期間が立つと気づくのではないかと思います。

## そこで気づいたこと
「勝ち馬を予測する」という方針が回収率を上げるために適切じゃないということに気づいたころに「馬券裁判」という本に出会いいます。この本は一時期業界（？）的に有名になった「馬券の儲け」に対してどこまでを経費としてどこまでを課税対象にするのかを焦点とした裁判でこの裁判の対象になった方（卍という方）が実施していた馬券の買い方が「一般的に過小評価されやすい要素」をスコアリングして過小評価されやすい要素を持っている馬を買うという方法でした。
確かに競馬は実態としては馬券を買う人同士の相対取引でその中で普通に予想に利用される要素を活用すると控除率に収束するというものでその取引の中では「過小評価をされやすい要素」を持っている馬を買い続けることで結果として回収率が100%を超えるという状態になりやすいということです。
馬券裁判以降の競馬予想のアルゴリズムは「勝ち馬を予測する」というアプローチから「過小評価をされやすい要素」を見つけ出す、他者が見つけていない過小評価要素を見つけていくということを目指したアプローチが目立つようになっていきました。

## もしもこの記事を読んで予想アルゴリズムを作りたいと思った人がいたら
これらの背景から競馬予想のアルゴリズムは「過小評価をされやすい要素」で他の人が扱っていない要素を見つけ出すことが重要になっています。ただ、このアプローチを行っている人は増えてきており、「過小評価されやすい要素」が見つけられる速度が増してきており、結果としてその要素が普通の要素になり、結果として回収率が７５％〜８０％にすぐになってしまうことが増えてきており、要素の陳腐化との戦いになってきています。

# この大会で使っているアルゴリズム
そこでこの大会で行っているアプローチになっていくのですが、「過小評価をされやすい要素」自体を見つけるのではなく「過小評価をされやすい要素をもとに馬券を購入している予想家」を当てるアプローチに切り替えて予想を行っています。
様々な予想家の人の予想を見ていると半年以上のスパンで回収率が100%を超えている人はかなり少ないです。netkeibaさんがやっている俺プロという予想大会の最上位といわれる人たちの回収率が100%を超えている月を集計すると以下の図のようになります。
![スクリーンショット 2023-12-09 2.21.16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3632702/dbdabd99-56ce-a02f-8852-3fd35a8eec65.png)
最上位の回数が0から増えていくことで100%を超える率は若干減衰していく傾向にあります。これは継続的に回収率が100%を超える状態を保ち続けることが難しいということなのではないかと思います。
そういった背景から今の瞬間に回収率が高い予想をしている人を定期的に見つけていき、その人の買い方を参考に新しい予想を生成して購入していくという方法をとっています。文字通り「勝ち馬に乗る」をやっている感じになっています。さらに複数人の予想を元にリスクが低い＝ボラティリティの少ない予想を作成するために株式のポートフォリオ作成に用いられる有効フロンティアを解いてリスクの低い買い目を作成するということをやっています。

# 生成AIを使った次世代予想の方法
今までの話だと自分で予想を作るのではなく、誰かの予想を上手く組み合わせて作るという感じで確かに当たりそうだけど、発明感が少ない予想方法ですね、と思われた方も多いかと思うので最後に正方法で「過小評価されやすい要素」を見つけるための新しいアプローチについてもご紹介させていただきます。
これまでの「過小評価されやすい要素」はいわゆる競馬新聞の中で取り上げられている要素の掛け合わせやそれをインデックス化（何らかの組み合わせで指標化する）内容だったと思います。ただ、競馬新聞の中に記載されている要素の組み合わせのインデックスには限界があり、他者を出し抜く要素を見つける作業はイタチごっこになりやすいと思います。そこで最近検討をし始めているのが「ChatGPT」や「MMpose」などを使った写真や動画の指標化です。
ChatGPTは元々テキストからテキストを生成することを行う生成AIですが、最近ではVison APIがリリースされ、画層データを取り込むことができるようになっています。例えば、Vison APIにパドックの情報や前走との比較の画像を入れることで今まで見ることができなかった指標を予想に盛り込むこともできるようになると思います。
また、MMPoseは馬のモーションキャプチャ用のモデルが含まれており、パドックでの歩き方や返し馬の動きなどの馬体をモーションキャプチャすることで動きの良し悪しを評価することも可能になると思います。
これらのように今まで取れていなかった予想に使える可能性がある要素がテクノロジーの進化によって取れる機会も増えてきており、今後さらに競馬予想アルゴリズムが進化していくのではないかと思っています。

# 最後に
割とこの記事の中では本業に関係のない内容をご紹介させていただきました。ただ、インティメート・マージャーは「データ活用における革命を起こす」というミッションのもと常にデータを使うことで世の中に変化を起こして、新しい価値観を提供していくということに力を入れております。本業には少し関係ないですが、インティメート・マージャーが会社を通じて提供したい価値や文化などを知ってもらうきっかけになる記事となればいいなと思っています。


https://qiita.com/advent-calendar/2023/intimatemerger