PR

ロードマップ3: ファーストモデルの開発

データサイエンス
この記事は約595分で読めます。
スポンサーリンク
スポンサーリンク

はじめに

本シリーズでは、動画として解説しなかったロードマップ3のファーストモデルの開発で詳細な部分を解説しています。

ロードマップ2で決定したモデル作成時の前提一覧については以下のページを参照ください。

競馬予想モデル詳細
競馬予想プログラムをPythonを使って開発しています。よくある回収率100%を超える競馬予想AIを目指すのではなく、違った視点から回収率100%を超える競馬予想AIの開発をしていきます。

競馬予想プログラムソフト開発の制作過程動画リスト

スポンサーリンク

ファーストモデルの概要

これから作成するすべてのモデルにおいて、最低限こいつにだけは勝つ必要があるベースラインとなるモデルがファーストモデルとなります。

ベース前処理を施した競馬データを使って、モデルの学習をし所定の期間のレースデータを予測した結果をもとにパフォーマンスを評価します。

その評価を比べることでモデルの優劣を決めます。比べ方はまた別途で解説しようかと考えています。

スポンサーリンク

学習時の前提

詳しくはNoteBookで解説していますが、以下のような学習・検証・テストのデータセットを作成してモデルを作成しています。

以下イメージ図です。

画像のように検証とテストのデータセットの期間を半年ごとにシフトして検証データ以前の期間を学習データとしてモデルを学習しています。

半年ごとに区切った理由としては新馬の影響を考慮してです。毎年1月から3歳馬の新馬が6月から2歳馬の新馬が出走し始めるため、データの性質が変わってしまうことを危惧しての配慮です。

正直、6月から翌年5月までを1期間として判断するやり方もあるので、如何ともしがたいです。いったん半年ごとに区切るやり方でベースラインではモデルを作ろうと思います。

テスト期間は2018年から2023年までとするので、データセットはテストデータを2018年上期 → 2018年下期 → 2019年上期 → ・・・ → 2023年下期と半年ごとにシフトして作っていくため、全部で12個のモデルができると思ってください。

ここの期間指定も12モデルも作るのが結構大変になってくるかもなので、もしかしたらもう少し期間を狭めるかも・・・

競馬自体2019年から降級制度がなくなったりと一つの転換点になっているようでもあるので、なるべくその前後期間からパフォーマンスを評価したいという気持ちもあり、、ここはトライ&エラーになるかと。

スポンサーリンク

モデル概要

使用する機械学習モデルは、lightGBM(ver4.1.0)を使用します。以下モデルの設定です。

設定項目説明
モデルlightGBM
タスク2値分類
問題設定3着以内に入るかどうか
使用年度2014年~2023年データ
予測年度2018年~2023年データ
説明変数オッズや人気を含む18項目
詳細はNotebook参照
スポンサーリンク

学習結果

どの人気に賭けているか?

説明変数にオッズを入れてるので当然ですがほとんどが1番人気に賭けています。

オッズには市場参加者が考えているすべてのファクターが含まれていると考えれば、オッズを頼りに学習するというのは致し方無い結果でしょう。

特徴量重要度

空欄は0だったものです。

結果をみるとオッズが非常に高く出ているので想定通りではありますが、意外だったのが調教師や騎手の特徴量もそれなりにあるというところです。

オッズにそういった調教師や騎手の特徴も織り込まれていると思っていたので、特徴量重要度としてはほとんど0に近いものになると思っていました。しかし、結果を見るとオッズに対して2桁程度の差しかなく、オッズだけが勝利の決定要因にならない可能性があるのかもしれないという印象を持ちました。

つまり、オッズ以外の特徴量を用いてもオッズを入れた場合と同等のパフォーマンスは最低限目指せそうだということです。(勘です。検証もするかどうか分かりません)

とはいえ、オッズを特徴量として入れないまでも何かしらの形でオッズを反映したモデルを作らなければならないことは確かなので、今後もオッズの特徴量は入れ続けるべきだと考えます。

予測結果と勝率のオッズグラフ

上段から学習データ、検証データ、テストデータとなっており、横軸がオッズで縦軸が勝率を表しています。青線がモデルの予測結果に対する勝率であり、オレンジ色がオッズに基づく支持率を表し、緑線が各オッズに関して回収率が100%超えるための勝率を表しています。

グラフの見方は単順に、最低限モデルのパフォーマンスである青色の線支持率の線をほとんどのオッズで超えていること、理想は青色の線回収率100%超えとなる緑線をほとんどのオッズで超えていることになります。

グラフをみると学習段階でほとんどのオッズ帯で青色の線がオレンジ色の線に沿っている結果になっていることからオッズが一桁台の競走馬に賭け続けていることが分かります。オッズを特徴量として入れているので想定通りの結果と言えるでしょう。

スポンサーリンク

ファーストモデル開発時のソースコード

以下にファーストモデル開発時のソースコードを載せます。モデルの設計方針からモデル作成、パフォーマンスの確認まで行っています。今後もこのようなNotebook形式で同じような流れで分析を進めることになるかと思います。

Notebookの最終更新:2024年3月28日

008_make_baseline

コメント

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