競馬 回帰分析。 重回帰分析を使って有馬記念の1位馬を予想する!

エクセルで過去のデータから将来の予測値をシミュレーションする【回帰分析】

競馬 回帰分析

最近社内の一部で、競馬のデータ分析が流行っています。 先週の社内勉強会で話した内容をまとめます。 競馬と統計的に考える意義 競馬の予想におけるIT活用度合いは、大きく分けると3段階あります。 競馬新聞を眺めて予想 2. 過去データを集計して予想 3. 統計モデルを適用して予想 今回は3. によるアプローチなわけですが、3. 判断の尺度が得られると何が良いのかというと、分析の結果得られた判断の尺度をもとに、 賭けるルールを構築できることです。 この賭けるルールが明確になれば、PCを使ってシミュレーションを行うことができ、 賭けを行う前に、その手法が有効かを確かめることができます。 今回は過去データからモデルを作り、確率を計算し、一定のルールに従って賭け をした場合にどの程度のリターンが得られるのかを計算します。 馬券戦略 競馬において確率を計算する場合、 どのような買い方にするか 単勝・複勝・馬連・馬単・ワイド… によって、計算すべき確率が変わってきます。 したがって、分析に先立って買い方を決める必要があります。 今回は馬単をボックスで12点買う場合の確率を計算します。 2着以内に入る確率の高い馬を4頭選び、全ての組み合わせを購入します。 分析に関しては、比較的簡単なモデルであるロジスティック回帰で分析を行います。 ロジスティック回帰分析とは ロジスティック回帰分析とは1つのカテゴリカルデータを説明変数として、その説明変数を その他の変数で説明する形のモデルを使って分析する手法で、 2値のみ取りうる値の発生確率を予測することができます。 いくつかの競馬関連の論文でも、ロジスティック回帰を用いた分析がなされています。 モデルと変数 今回のモデルと説明変数・被説明変数は下記の通り。 回帰結果は下記の通りです。 馬場種別 距離 m Coefficients Estimate Sth. 2049 0. 2956 -10. 3246 0. 3894 5. 970 2. 5443 1. 0634 2. 393 0. 2122 0. 2282 -14. 0175 0. 2359 4. 313 1. 3761 0. 8230 5. 317 1. 3396 0. 2678 -8. 0090 0. 2868 3. 518 0. 7209 0. 9895 1. 739 0. 082007. 2000 Intercept -3. 5513 0. 2430 -14. 4076 0. 2293 6. 138 8. 4332 0. 8811 5. 031 4. 7367 0. 3750 -7. 298 2. 9329 0. 4015 4. 815 1. 6534 1. 4464 1. 143 0. 253 2500 Intercept -3. 1266 0. 6074 -5. 147 2. 7094 0. 8944 3. 029 0. 7080 2. 2039 0. 775 0. 43835 ダート 1200 Intercept -3. 3837 0. 1394 -24. 4241 0. 1665 8. 1467 0. 5113 10. 3797 0. 1421 -23. 5665 0. 1590 9. 7882 0. 5212 9. 3437 0. 4655 -5. 035 4. 4713 0. 8553 1. 720 0. 0854. KisyuNyusyoRatio 1. 4670 1. 7373 0. 844 0. 3984 芝・ダートとも、2000mを超えると騎手の実績であるKisyuNyusyoRatioの係数が有意ではなくなりました。 距離が長くなると、別の要因が関係しているのではないかと考えられますが、 この調査は追ってやっていきたいと思います。 他の競馬場・長い評価期間での分析も追ってやっていきたいと思います。

次の

重回帰分析を使って有馬記念の1位馬を予想する!

競馬 回帰分析

第8回の理論記事では線形回帰と一般化線形モデルの一種であるロジスティック回帰による競馬予測に挑戦します。 線形回帰 走破タイムや着順といった結果を予測するためには、1つのファクターだけに注目するのは不十分で、複数のファクターから受ける影響を同時に考える必要があります。 その一方で、目的変数と特徴量が線形の関係にあること、特徴量同士は独立した変数であることなどの仮定がおかれているため、特徴量選びや白色化などの前処理に注意しなければなりません。 そうとはいえ、まず回帰問題を解くというときは最も簡単な線形モデルを使うのが常套手段でしょう。 学習のためのコスト関数は一般に以下で表される平均二乗誤差が使われます。 最小化するコスト関数は以下で表される交差エントロピーが用いられます。 そのため勝ち馬かどうかの二値分類問題では、交差エントロピーを最小化することにより、勝ち馬の特徴ベクトルを持った馬の予測勝利確率が高くなるような重みパラメータの学習がなされます。 実験設定 今回は東京芝2,400mの古馬戦の条件で実際に競馬予測を行っていきます。 線形回帰では走破タイム予測、ロジスティック回帰では複勝圏内に入るかどうかの2値分類タスクを解きます。 評価方法はで紹介した通りTop-1からTop-5までのBox買いの的中率・回収率で比較します。 また、キタサンブラックが優勝したで定性評価を行ないます。 今回使用した特徴量は以下の通りです。 また、モデルのパラメータはscikit-learnのデフォルト値としました。 線形回帰によるタイム予測 予測走破タイムと実際の走破タイム比較 テストデータにおける予測走破タイムと実際の走破タイムの結果は以下の図のようになりました。 もしも完璧にタイムが予測できている場合は綺麗な斜め45度の直線になります。 このグラフを見ると完璧には程遠いですが、予測タイムが速くなるにつれて実際の走破タイムも若干速くなっている傾向は見受けられ、何かしら意味のある予測が出力されているように見えます。 Top-N Box 評価 Top-N BOXのモデルの性能は以下の通りです。 235 1. 335 4. 273 place 0. 529 0. 897 1. 382 1. 043 2. 343 place 0. 765 0. 960 0. 819 quinella place 0. 265 1. 159 2. 943 quinella 0. 118 0. 421 1. 228 exacta 0. 118 0. 376 1. 500 0. 853 1. 567 place 0. 882 0. 858 0. 553 quinella place 0. 441 0. 832 1. 368 quinella 0. 235 0. 747 1. 984 exacta 0. 235 0. 782 2. 311 trio 0. 059 0. 685 2. 904 trifecta 0. 059 0. 584 2. 529 0. 714 1. 212 place 0. 941 0. 740 0. 409 quinella place 0. 529 0. 680 0. 958 quinella 0. 235 0. 374 0. 992 exacta 0. 235 0. 391 1. 155 trio 0. 118 0. 443 1. 395 trifecta 0. 118 0. 284 0. 618 0. 700 1. 037 place 0. 971 0. 752 0. 444 quinella place 0. 676 0. 849 1. 100 quinella 0. 441 0. 661 1. 299 exacta 0. 441 0. 600 1. 278 trio 0. 265 0. 817 2. 242 trifecta 0. 265 0. 500 1. 254 また、ベースライン(確定単勝人気)の評価は以下の通りです。 314 0. 717 1. 132 place 0. 629 0. 786 0. 486 0. 680 0. 787 place 0. 800 0. 766 0. 466 quinella place 0. 314 0. 697 1. 085 quinella 0. 143 0. 457 1. 168 exacta 0. 143 0. 527 1. 543 0. 536 0. 561 place 0. 914 0. 754 0. 331 quinella place 0. 543 0. 634 0. 765 quinella 0. 200 0. 250 0. 529 exacta 0. 200 0. 245 0. 539 trio 0. 086 0. 466 1. 690 trifecta 0. 086 0. 253 0. 686 0. 669 0. 642 place 0. 971 0. 746 0. 254 quinella place 0. 743 0. 638 0. 609 quinella 0. 343 0. 405 0. 696 exacta 0. 343 0. 381 0. 670 trio 0. 171 0. 416 1. 032 trifecta 0. 171 0. 292 0. 800 0. 765 0. 668 place 0. 971 0. 741 0. 269 quinella place 0. 886 0. 710 0. 642 quinella 0. 514 0. 608 0. 831 exacta 0. 514 0. 595 0. 878 trio 0. 314 0. 507 1. 064 trifecta 0. 314 0. 513 1. 回収率は133. 2と大きめなのでコンスタントに穴を当てているというよりは大きな当たりを一度出していると読み取れます。 特徴量の重み係数 各特徴量の重み係数は以下のようになりました。 このグラフの上にある特徴量の値が大きいほどタイムが速くなり、下にある特徴量の値が大きいほどタイムが遅くなることを表しています。 235 0. 532 1. 026 place 0. 559 0. 738 0. 324 0. 415 0. 652 place 0. 765 0. 737 0. 532 quinella place 0. 235 0. 491 0. 926 quinella 0. 088 0. 250 0. 807 exacta 0. 088 0. 285 0. 382 0. 381 0. 570 place 0. 824 0. 651 0. 449 quinella place 0. 382 0. 556 0. 989 quinella 0. 176 0. 580 1. 738 exacta 0. 176 0. 508 1. 450 trio 0. 059 0. 526 2. 378 trifecta 0. 059 0. 343 1. 588 0. 626 0. 970 place 0. 941 0. 779 0. 404 quinella place 0. 706 0. 779 0. 995 quinella 0. 353 0. 859 1. 653 exacta 0. 353 0. 818 1. 720 trio 0. 147 0. 635 2. 065 trifecta 0. 147 0. 704 2. 647 0. 698 1. 022 place 0. 941 0. 728 0. 368 quinella place 0. 765 0. 762 0. 911 quinella 0. 471 0. 771 1. 184 exacta 0. 471 0. 776 1. 350 trio 0. 294 0. 751 1. 678 trifecta 0. 294 0. 841 1. 858 ベースライン、タイム予測の線形回帰に比べると全体的に成績があまり良くない傾向があります。 回収率もあまり高くないのは的中している馬券のほとんどが人気サイドであることを示唆しています。 特徴量の重み係数 各特徴量の重み係数は以下のようになりました。 このグラフの上位の特徴量の値が大きいほど複勝確率が高く、下位の特徴量の値が大きいほど複勝確率が低いことを表しています。 たしかに近年のジャパンカップではウオッカ、ブエナビスタ、ジェンティルドンナ、ショウナンパンドラなどの牝馬の活躍が目立っているので、それがしっかりと反映されているのでしょう。 2016年ジャパンカップを予測する 最後に線形回帰とロジスティック回帰で2016年ジャパンカップを予測してみます。 まず、は以下の通りです。 着順 馬番 馬名 人気 走破タイム 1 1 キタサンブラック 1 2:25. 8 2 12 サウンズオブアース 5 2:26. 2 3 17 シュヴァルグラン 6 2:26. 3 4 3 ゴールドアクター 3 2:26. 4 5 16 リアルスティール 2 2:26. 4 6 14 レインボーライン 8 2:26. 4 7 5 イキートス 16 2:26. 4 8 7 ワンアンドオンリー 14 2:26. 6 9 4 ルージュバック 7 2:26. 8 10 6 ラストインパクト 13 2:26. 9 11 10 トーセンバジル 12 2:26. 9 12 15 ナイトフラワー 9 2:26. 9 13 9 ディーマジェスティ 4 2:27. 1 14 8 イラプト 10 2:27. 1 15 13 ヒットザターゲット 17 2:27. 2 16 2 ビッシュ 11 2:27. 2 17 11 フェイムゲーム 15 2:27. 3 次に、線形回帰による予測走破タイムです。 予測順位 馬番 馬名 予測タイム 1 1 キタサンブラック 2:23. 9 2 14 レインボーライン 2:24. 0 3 16 リアルスティール 2:24. 0 4 9 ディーマジェスティ 2:24. 2 5 17 シュヴァルグラン 2:24. 3 6 10 トーセンバジル 2:24. 3 7 12 サウンズオブアース 2:24. 3 8 2 ビッシュ 2:24. 5 9 3 ゴールドアクター 2:24. 5 10 6 ラストインパクト 2:24. 6 11 7 ワンアンドオンリー 2:24. 8 12 4 ルージュバック 2:24. 9 13 11 フェイムゲーム 2:25. 1 14 13 ヒットザターゲット 2:25. 2 15 15 ナイトフラワー 2:25. 8 16 8 イラプト 2:25. 8 17 5 イキートス 2:26. 0 最後に、ロジスティック回帰による予測複勝確率です。 予測順位 馬番 馬名 予測複勝確率 1 1 キタサンブラック 0. 7 2 16 リアルスティール 0. 7 3 12 サウンズオブアース 0. 6 4 3 ゴールドアクター 0. 5 4 17 シュヴァルグラン 0. 5 4 14 レインボーライン 0. 5 7 10 トーセンバジル 0. 4 7 6 ラストインパクト 0. 4 7 9 ディーマジェスティ 0. 4 7 4 ルージュバック 0. 4 11 2 ビッシュ 0. 3 11 15 ナイトフラワー 0. 3 11 7 ワンアンドオンリー 0. 3 14 8 イラプト 0. 2 15 13 ヒットザターゲット 0. 1 15 11 フェイムゲーム 0. 1 15 5 イキートス 0. 1 線形回帰でもロジスティック回帰でもキタサンブラックを最上位に推薦できています。 タイム予測では実際のタイムよりも速いタイムとなっていますが、キタサンブラックを最上位に評価できていることがわかります。 ロジスティック回帰では定量評価はあまり結果が良くなかったものの、馬券内に絡んだ3頭をトップ6までに全頭推薦できています。 ちなみに2016年ジャパンカップ当時のを見てみると、フェイムゲームやらヒットザターゲットやら結果的に大敗している大穴ばかりを狙っており、見境の無いギャンブラーのような予測をしていました。 しかし、この結果は開発者にニューラルネットの"気持ち"を伝え、以降の飛躍的な精度向上のきっかけとなりました。 この話はいずれ理論解説で触れたいと思います。 おわりに 今回は線形回帰とロジスティック回帰で競馬予測を試してみましたが、ベースラインの壁を越えるのはこれだけでは足らないようです。 しかしキタサンブラックをちゃんと取れていたことは評価したいと思います。 次回は非線形モデルの代表格サポートベクターマシン(SVM)による競馬予測に挑戦したいと思います。 2016年ジャパンカップの定性評価は今後も続きます。 お楽しみに。 AlphaImpactでは当時の競馬AIが圧倒的強さで勝ったキタサンブラックを低評価してしまった悔しさから、2016年ジャパンカップをよく定性評価レースとして使うようになった。 線形回帰に使用したライブラリ:• ロジスティック回帰に使用したライブラリ:.

次の

競馬場 特徴分析 傾向 攻略法レポート

競馬 回帰分析

先日、たまたま映画「男はつらいよ」を鑑賞しました。 私はその劇中で寅さんが競馬で大勝している姿を目撃しました。 勝因はなんと 「馬が語りかけてきやがった」というものです。 なるほど、それでは本当に馬が語りかけてきて勝利を導いてくれるものなのか実践してみたいと思います。 データ分析でやってみる 本当に馬が喋ってくるはずがないのでデータを分析します。 しかし、私は競馬のド素人でどうやって勝馬を予想すればいいのか分かりません。 ここはデータ分析の出番です。 さすが大人気のギャンブルである競馬には様々なデータが提供されており、血気盛んに分析が行われているようです。 今回は、ロジスティック回帰分析を用いて予測モデルを作成し、対象レースの出走馬の勝ち馬を調べることにします。 (難しい説明は省きますが、R言語を使えばやること自体は簡単です。 データを集めるのが大変でしたが。。 ) 勝馬を求めるモデル式には、 ・対象馬の過去2年間の出走レースのうち3着以内に入る確率 ・対象騎手の過去2年間の出走レースのうち3着以内に入る確率 という値を変数として用いるのが良いようです。 まずはそれらを求める為に、各データを集めました。 今回は日本中央競馬会が公開している過去のレースデータをお借りします。 対象となるデータは、期間を2015年1月1日~2015年7月30日、新潟競馬場、ダート、1800mを条件にしています。 結果として、以下のモデル式ができました。 (太字の係数を回帰分析で求めました。 7882) 実際に予想してみた。 このモデル式に従って 、8月29日の新潟競馬場、「11R BSN賞」の出走馬について検討します。 各馬のデータから得られる変数を先ほどのモデル式に代入し、2着以内に入る可能性が高い順に馬を並べてみます。 その結果、以下のような予想が立ちました。 1位アジアエクスプレス 2位フィールザスマート 3位トウショウフリーク 4位ストロングサウザー 5位ヴォーグトルネード 6位ダノンリバティ 7位サンマルデューク 8位ダブルスター 9位ダイヤノゲンセキ 10位トウシンイーグル 11位ベルゲンクライ 12位ナリタポセイドン 13位ツクバコガネオー 14位オメガブレイン うーん、ほんとにこれで大丈夫なのかな? 全然、馬が語りかけてこないじゃん!!! 実際に買ってみた 実はちょっと前にやってみた話なのでタイムリーな話じゃなくて申し訳ありません。 8月29日に近所の馬券場に行ってきました。 回帰分析の予想を手に意気揚々と乗り込みました。 しかしまず、行ってみて気が付いたのは、来場者は 競馬新聞をどこかで買ってから来ているということです。 新聞も持たずに来るなんて素人丸出しです。 そんな人間はどこにもいません。 …このおおばか野郎!おれっちがなあ、この分析に何時間かけたと思ってやがるんでい!(寅さん風) 気が済んだので、レースの内容の報告をします。 アジアエクスプレスがレースを引っ張る展開でしたが、ゴール間際に力尽き大きく順位を落としました。 予想では6着だったダノンリバティが一気にまくる展開で着順1位。 唯一救いだったのは、トウショウフリークの健闘です。 なんとか2着以内に入ってくれました。 反省会 次があるかどうかは置いといて、反省会を開きます。 失敗こそ成長への第一歩です。 とにかく予想がひどい。 2着予想のフィールザスマートはなんと最下位に沈むなど、全然ダメです。 まずは、予想の順位と当日の着順で相関を調べてみます。 簡単に説明すると赤い直線が約45度の角度で右肩上がりになっていれば、モデルの精度が良いということです。 もう少し詳しく説明してみると、回帰モデルの精度を表現する指標として 重相関があります。 それは、赤い直線の傾きで表されます。 1に近ければ精度が良くなり、0に近ければ精度が悪くなるという指標ですが、今回はこれが0. 257!めちゃくちゃ精度わる!予想と結果でやや相関がある程度です。 たった1回の試行回数とはいえ、ここまでひどいとは。。 まとめ これでは荒稼ぎなど夢のまた夢。 馬は生き物ですからあらゆる不確定要素が重なったのかもしれません。 競馬には様々な分析要素があります。 馬場の状態、芝orダート、体重、調子、平均タイムなどなど。 過去の実績のみではなくて、もう少しモデル式に変数を加えてみても良いのかもしれません。 もう少し検討してみたいところですが、今回はこの辺で。 てやんでいばーろー!.

次の