2020年度版一口馬主用AI(6月版)
2020年6月ごろから本格的に2019年生まれ1歳馬の一口馬主募集が始まります。
POG版から一部変更して2019年生まれの馬の評価に使う今回の機械学習の設定について以下まとめておきます。
学習用データ
1994年〜2016年生まれの
・セリにて購入された馬(落札価格が公開されている)
・一口馬主クラブ馬(募集総額が公開されている)
約40000頭分のデータを使います。
目的変数
2つあります。
1.収支=総獲得賞金ー購入金額ー2歳以降は毎月30万円で計算(単位:万円)
購入金額=一口馬主クラブ馬の場合:募集総額。その他セリ購入馬の場合:落札価格+200万円(500万円から減らしました)
これで計算された収支金額を、正規分布にある程度近づけるために10を底にした対数値を計算し、さらに計算後の0〜3はもとの値は0〜1000万円となり、あまり違いに意味がないので0.1としてまとめてしまう。これを正負ともに実施。ヒストグラムを見ると-2〜0あたりが異常に高いいびつな形にはなるがひとまずこれを使います。
2.勝ち上がり=データ処理の都合上、総獲得賞金1000万円以上を勝ち上がりとみなして2値(0または1)に分類。勝ち上が率について詳しくはこちら
勝ち上がり=1のデータは全体の3割
説明変数
・母馬との年齢差
・毛色(また、父・母と同じ色かどうかも)
・クロスの数、総本数
・クロスの総血量、およびクロスの1〜6までの各血量
・性別
・生まれた月、日
・ファミリーナンバー
・中央競馬の東西(美浦・栗東)いずれの所属か
・何番目の仔か
・母馬の初戦馬体重
・母馬の獲得賞金
・父馬*1
・牧場*1
・一口馬主クラブ
・調教師*1
・クロス種牡馬名(1つめのクロスのみ)*1
*1 上位100番目以外は”その他”とする処理
<説明変数から外したもの>
・ひとつ上のきょうだいの初戦馬体重 *2
・ひとつ上のきょうだいの獲得賞金 *2
*2 2019年生まれの馬のひとつ上はまだ出走していないため
・価格:募集総額がまだ取得できてないデータも多いので外した。
その他説明変数に入れてないこと
・きょうだい、近親の活躍馬:一口購入時に通常真っ先に見られるポイントかと思うので、あえて外しました。あと海外も含めての定量化も難しいという問題もあったため。
・馬の見た目、動き、持病等:写真については今後の課題として着手始めてます。動画は難しいですねえ。
機械学習モデル評価(収支)
収支の予想値を返すモデルですが、こちらは精度が低いのでやはり勝ち上がり率を軸に馬選びを進めます
機械学習モデル評価(勝ち上がり率)
勝ち上がり率については2値分類となるので現状最も精度が高いモデル(2つ比較)でのROC曲線を御覧ください。
曲線の下の面積が大きいほど=曲線が、真ん中の斜めの線から離れるほど、精度が高いということになります。
True Positive:AIは勝ち上がりと評価→実際に勝ち上がり(アタリ)
False Positive:AIは勝ち上がりと評価→勝ち上がりできず(ハズレ)
False Negative:AIは勝ち上がりできないと評価→勝ち上がり(ハズレ)
True Negative :AIは勝ち上がりできないと評価→実際に勝ち上がりできず(アタリ)
重要なのはAIが勝ち上がりと評価したものがどれだけ信用できるかです。
上の指数では
Precision = True Positive / (True Positve + False Positive)
= 56.3%と正直よくないですが、Threshold(しきい値)を0.5からあげていくとこれがだいぶ改善されます。0.7あたりでは80%近くにまでなります。つまり当サイトの勝ち上がり率=70% → 結果的に勝ち上がる確率は80%弱まで期待できるということになります。