予測対象の選択:勝ち馬予測かレースタイム予測か
LightGBMで競馬予測を行う際のターゲット設定には、「その馬が1位になるかどうか」を予測する分類アプローチと、「馬の走破タイム」を予測する回帰アプローチの2つの方法があります。勝ち馬予測を行う場合、分類問題として「1位になる確率」を予測するのが一般的であり、精度が高ければ賭けの判断にも直結しやすいです。
特徴量の選定
競馬の予想モデルの作成において、特徴量の一例を挙げます。
- 馬の情報:馬の体重や調子、年齢などのフィジカルデータ
- 騎手の情報:騎手の体重や過去成績
- レース環境:天候、トラックコンディション、距離、馬の枠位置
- 過去の成績:馬の過去の順位や、特定の条件でのパフォーマンス
特徴量のデータ型の設定
特徴量はタイムや年齢といった数値データを示す「数値型」と性別や競馬場といったカテゴリーを示す「カテゴリ型」に分けられます。LightGBMはカテゴリ型データをネイティブに扱うことができるため、数値型とカテゴリ型の使い分けの重要です。ここでの目的は、モデルが各特徴量を適切に解釈できるようなデータ形式を選ぶことです。
競馬予測における主な特徴量とデータ型の具体例
枠(ゲート位置)_カテゴリ型 vs 数値型
枠(ゲート位置)は「1~8」などの数値で示されますが、実際には枠の番号が競走結果にどう関わるかは明確ではありません。LightGBMを使う場合、枠はカテゴリ型として扱うのが一般的です。これにより、特定の枠が他と異なる影響を与える可能性をモデルが学習しやすくなります。数値型で扱う場合は、数値的な意味合いがあるとき、例えば内枠と外枠の距離差や位置の影響を学習したい場合に限られるでしょう。
馬の年齢・性別
年齢は数値型で直接入力するのが標準です。数値が大きいほど年齢が高いことをモデルに理解させることができます。性別はカテゴリ型として扱います。LightGBMでは「牡・牝・セ」などの性別を直接カテゴリ型として扱うことが可能です。これにより、性別ごとの特徴をモデルが認識しやすくなります。
騎手と調教師
騎手と調教師の名前やIDもカテゴリ型として扱います。この場合、モデルが騎手や調教師ごとの過去のパフォーマンス傾向を把握できるため、予測の精度向上が期待できます。また、騎手や調教師の「過去の勝率」「過去の連対率」などの数値データも追加可能です。これらは数値型として扱い、騎手や調教師の技量を定量化することで、モデルの解釈性が向上します。
カテゴリ型と数値型の違いが予測に与える影響
例えば、枠(ゲート位置)は通常「1~8」の番号で表現されますが、枠番号の大小には特別な順序があるわけではありません。もしこれを数値型として扱ってしまうと、モデルが「1番枠」と「8番枠」の間に大きな差があると誤解するかもしれません。確かに1番枠と8番枠では、内側に近い1番枠の方がタイムに有利です。ですが、8番枠は1番枠の8倍不利かと言うとそうではありません。数値型だとこの部分で適切に解釈がされずモデルの精度が落ちる要因になります。枠についてカテゴリー型に設定すればlightGBMは1番枠はタイムに有利、8番枠はタイムに不利といったように枠ごとに固有の影響を学習してくれます。数値データとして用いる場合は内枠からの距離に変換するなど加工が必要です。
分類モデルの選び方
競馬の予想モデルを分類モデルで作成しようとした場合、その目的変数(分類の仕方)として、有効なのは2値分類とランキング学習です。2値分類とランキング学習の特徴は以下になります。
2値分類
2値分類は、最も基本的な分類問題の一つで、データを2つのクラスに分類するタスクです。例えば、「この馬が1位になるか?」といった問題では、予測結果が「1位になる」または「1位にならない」という2つのクラスに分かれます。
入力:馬の過去の成績、年齢、体重、騎手の情報、レースの条件(距離、天候など)
出力:1位になるかどうか(0 = 1位にならない、1 = 1位になる)
ランキング学習
ランキング学習は、複数のアイテムを順位付きで予測する問題です。競馬の予測においては、「次に1位になる馬を予測する」という問題がまさにこれに当たります。ランキング学習では、予測結果として「順位」を出力します。
入力:馬の過去のパフォーマンスデータ、騎手の情報、レースの特徴(天候、距離など)
出力:馬の順位(例えば、1位から10位までの順位)
まとめ
- 2値分類は、「YES/NO」や「1位になるかどうか」といったクラスに基づく予測に適しています。単純で扱いやすく、多くの場面で有効です。
- ランキング学習は、順位や優先順位を予測するタスクに特化しています。競馬予測のように、馬を「1位から10位まで順位付けする」といった問題に適しています。
両者は目的や評価方法が異なりますが、順位予測が重要な場合はランキング学習が、単純な二択予測で十分な場合は2値分類が有効です。それぞれの問題に合ったアプローチを選ぶことで、予測精度を向上させることができます。
投稿者プロフィール
-
独学でpythonを学び競馬予測しています。これまでの競馬成績は以下の通り。回収率150%を目指します。
2021年回収率:119%
2022年回収率:104%
2023年回収率:121%
2024年回収率:88%
最新の投稿
- 競馬データの前処理・特徴量作成2024年12月30日騎手勝率
- 競馬よもやも話2024年11月28日競馬予想モデルと狙うべき馬券
- 競馬データの前処理・特徴量作成2024年11月27日馬年齢(日齢)と日齢を使った派生特徴量
- 競馬よもやも話2024年11月24日予想モデルの改良タイミング