データマイニング競走馬の勝敗を予測するモデル
2010年4月より、従来の走破速度を予測するモデルに加え、競走馬の勝敗を予測するモデル(以降、対戦型モデル)の運用を開始いたしました。このモデルは、同じレースへ出走する競走馬の任意の2頭の勝ち負けを予測するモデルで、同レースに出走する競走馬が勝つ可能性をスコア(点数)化しています。
1.予測モデルの概要
対戦型モデルは、芝、ダート共にレースクラス別に各3区分、計6個のモデルで運用しています。競走馬の勝ち負けを予測しますので、走破タイム型のように距離によるモデルの区分化は行っていません。詳細は、以下の通りです。
レースクラス | 予測モデル数 | |
---|---|---|
芝 | 新馬・未勝利戦 |
3個 |
ダート | 新馬・未勝利戦 |
3個 |
※2010年4月時点では、障害の対戦型モデルは提供しておりません。
2.使用した主なデータ項目
予測に使っているデータ項目は、競走馬の属性や成績を元にしております。以下に対戦型モデルで使っているデータ項目を一部ご紹介します。予測レースの距離、馬場などへの適性が使われている点が大きな特徴です。走破タイム型モデルでは、距離や、コース区分、馬場状態は走破タイムに直接影響しますので、レースの共通因子として、これらのデータ項目を使用していますが、対戦型では、レース共通因子への適性有無を使用しています。
予測対象馬 今回情報 | |
---|---|
馬体重 | 馬体重が他の因子や勝敗とどのような因果関係があるのかを学習させる |
馬体重増減割合 | 一日あたりの増減差を計算して入力し、年齢やその他の項目との因果関係を導き、学習させる |
負担重量 | 負担重量が勝敗に与える影響を学習させる |
負担重量率 | 負担重量は馬体重と因果関係があることは既知の事実なので、関連性を外側でつけてから因子として利用する |
騎手 | 騎手の勝利数をランク分け(6段階)し、騎手の成績が結果に与える影響を学習させる |
予測対象馬 背景情報 | |
血統系統 | 血統の特性を学習させる |
調教師 | 調教師の勝利数をランク分け(6段階)し、調教師の成績が結果に与える影響を学習させる |
馬齢 | 年齢が他の因子や勝敗とどのような因果関係があるのかを学習させる |
性別 | 性別が他の因子や勝敗とどのような因果関係があるのかを学習させる |
予測対象馬 過去走実績 | |
脚質傾向 | レースにおける脚質傾向を学習させる |
出走回数 | 競走馬の経験値として使用 |
1着回数 | 競走馬の経験値として使用 |
3着内回数 | 競走馬の経験値として使用 |
出走回数(同トラック) | 競走馬の経験値として使用 |
1着回数(同トラック) | 競走馬の経験値として使用 |
3着内着回数(同トラック) | 競走馬の経験値として使用 |
前走のレースのレベル | 前走の情報として使用 |
前走のレースタイム比 | 前走のレース平均タイム/自身のタイム 前走での該当競走馬の実績として使用 |
前走の上がりタイム比 | 前走の上がり平均レースタイム/自身の上がりタイム 前走での該当競走馬の実績として使用 |
前2走のレースのレベル | 前走と同様 |
前2走のレースタイム比 | 前走と同様 |
前2走の上がりタイム比 | 前走と同様 |
前3走のレースのレベル | 前走と同様 |
前3走のレースタイム比 | 前走と同様 |
前3走の上がりタイム比 | 前走と同様 |
休養明け状況フラグ | 休養明けという状況が結果に与える影響を学習させる |
叩き2戦目フラグ | 叩き2戦目という状況が結果に与える影響を学習させる |
格上挑戦フラグ | 格上挑戦という状況が結果に与える影響を学習させる |
重・不良馬場適性 | 競走馬の重・不良馬場での適性(連対有無)を学習させる |
天候適性 | 競走馬の悪天候(雨・雪等)での適性(連対有無)を学習させる |
競馬場適性 | 競走馬の特定の競馬場での適性(連対有無)を学習させる |
距離適性 | 競走馬の特定の距離での適性(連対有無)を学習させる |
乗り替わりフラグ | 騎手の乗り替わり状況が結果に与える影響を学習させる |
展開有利フラグ | 同レースに出走する競走馬の脚質に対する自身の脚質の影響を学習させる |
3.予測スコアについて
JRA-VAN NEXTブラウザで表示している各競走馬の予測スコアについて解説します。
対戦型モデルは、過去のレース成績データから算出した競走馬2頭間の対戦結果(1:勝ち、0:負けと定義)を教師データとし、競走馬の属性、騎手、調教師、レース情報などから、次回レースの任意の競走馬2頭間の対戦結果を予測します。予測結果は、0から1までの連続値で表現されます。例えば、次回レースで、A馬がB馬と対戦する場合、予測結果が1に近いほど、A馬がB馬に勝つ可能性が高いといえます。このような予測結果を次回レースに出走する競走馬の全ての組合せで作成して、競走馬1頭1頭の予測スコアを計算し、予測スコアの高い順に着順を決定しています。尚、JRA-VAN NEXTブラウザでは、予測する馬が対戦相手に対して全て勝つと予測された場合には100点となるよう予測スコアを補正しています。
例えば6頭立てレースの場合、馬番1の予測スコアは、下図の黒い太枠部分を元に行います(○×は勝ち負けを表します)。ここでのポイントは、馬番1が馬番2と対戦した結果と馬番2が馬番1と対戦した結果を分けて扱っているという点です。すなわち、対戦型モデルでは、馬番1の予測スコアは、馬番1からみた馬番2〜6の予測結果(赤い○×)と、馬番2〜6から見た馬番1の予測結果(青い○×)の両方の予測結果を総合して計算しています。
モデルの性能検証については、2007年以前の成績データをもとにモデルを作成し、2008年〜 2009年 7月に開催されたレースを予測し、実績データと比較しました。以下は、2008年から2009年7月ダートレースにおける予測スコアの分布です。10点〜90点までの分布が50点を境にほぼ左右対称となっておりますので、偏った予測をしていないことがわかります。
4.予測順位と実際の着順の相関
対戦型モデルを元にした予測順位と、実際の着順の関係を以下の表に示します。
2008年 1月〜2009年 7月に開催された全てのレース(レース数:5,026)
予測と実際の着順を、縦・横軸にとっていますので、着順が一致したところを青色で示しています。また、各予測順位について、実際の着順件数が最も多いところを赤枠で示しています。青色と赤枠が一致するほど予測精度が高いといえます。上記の表を見ると、予測順位の上位に若干ばらつきがありますが、かなり一致していることがわかります。
また、以下は、馬連4頭BOX6点での的中率・回収率を比較したものです。 ※この結果は、今後の予測性能を保証するものではありません
本検証においては、対戦型モデルを使用すると、走破タイム型モデルの的中率と比べての的中率が3.5%上昇しました。レースに換算すると、175レースに相当します。以上の結果より、対戦型モデルを運用することとしました。