やることをザーって書く。 第22回 人工知能
今までのをまとめると
では、さっそく、この間、盛大に予測を外した競馬のコードを書いていく。
でもその前に、予測の方法を考える。
何を中心にして予測をすべきか? これ色々ある。
今回は、レースタイムを予測するという方法に絞った。
レースタイムに影響をする全般のデータかな?と思う。
過去のデータは
にしよう。
他にも色々とあるんだけどね。斤量とか。
入れたい人は入れても大丈夫。
自分の予想メソッドに沿ったデータを入れるべき。
前回、大きく予想を外した菊花賞を再度予想してみます。
必要なデータは、さきほど2で書いた通り。
必要な範囲は、出馬するデータの過去データを全部取りましょう。
Yahoo 競馬の情報を使ってまとめます。
2019年の今回の菊花賞の出馬はこんな感じ↓
過去のレースデータが長くなるので、今回のサンプルコードは、2頭だけにします。
まとめて16頭予想するときはデータを拡張するだけです。
じゃ、今回は、1番のザダルと2番のニシノデイジーだけでいきます。
まずデータ整理として先程の出馬をこうします。↓
カラム名を[馬ID]を[umaID]、[騎手ID]を[kishuID]に変更して、これをbase.csvで保存しておく。
base.csvの中身はこう↓
IDと名前のどちらかがいるだけなので、IDのみ残します。
この2頭の過去のレースは、
これも必要な分だけにまとめます。
ここまでが過去のデータです。
これもカラム名を
[馬ID] を [umaID]
[レースID] を [raceID]
[騎手ID] を [kishuID]
[日付] を [r_date]
[開催場所] を [r_place]
[芝ダ] を [r_shibada]
[距離] を [race_meter]ter]
[タイム] を [r_time]
へと変更し、これをkako.csvで保存。
kako.csvの中身はこう↓
で、予想したい条件は菊花賞。京都で3000m。なのでこう↓
カラム名は上と同じ変更をします。- データを用意する。
- データにラベルを貼る。
- データを訓練用、テスト用にわける
- 学習させて、予想用データを入れる
- 予想結果をもらう
では、さっそく、この間、盛大に予測を外した競馬のコードを書いていく。
でもその前に、予測の方法を考える。
1. 予想するにあたって
何を中心にして予測をすべきか? これ色々ある。
今回は、レースタイムを予測するという方法に絞った。
2. 何のデータが必要か?
レースタイムに影響をする全般のデータかな?と思う。
過去のデータは
- レースタイム
- 距離
- 開催場所
- 騎手
- レース日?
にしよう。
他にも色々とあるんだけどね。斤量とか。
入れたい人は入れても大丈夫。
自分の予想メソッドに沿ったデータを入れるべき。
3. データ用意しよう
前回、大きく予想を外した菊花賞を再度予想してみます。
必要なデータは、さきほど2で書いた通り。
必要な範囲は、出馬するデータの過去データを全部取りましょう。
Yahoo 競馬の情報を使ってまとめます。
2019年の今回の菊花賞の出馬はこんな感じ↓
番 | 馬ID | 馬名 | 騎手ID | 騎手名 |
1 | 2016104772 | ザダル | 01077 | 石橋 脩 |
2 | 2016103444 | ニシノデイジー | 05339 | C.ルメール |
3 | 2016104668 | カリボール | 05525 | 藤井 勘一郎 |
4 | 2016110103 | ユニコーンライオン | 05203 | 岩田 康誠 |
5 | 2016104854 | ワールドプレミア | 00666 | 武 豊 |
6 | 2016104291 | ディバインフォース | 00660 | 横山 典弘 |
7 | 2016104656 | ヒシゲッコウ | 05271 | C.スミヨン |
8 | 2016105526 | メロディーレーン | 01163 | 坂井 瑠星 |
9 | 2016100272 | ヴァンケドミンゴ | 01093 | 藤岡 佑介 |
10 | 2016104549 | カウディーリョ | 05212 | M.デムーロ |
11 | 2016105272 | シフルマン | 01126 | 松山 弘平 |
12 | 2016105292 | レッドジェニアル | 01034 | 酒井 学 |
13 | 2016104529 | ヴェロックス | 01088 | 川田 将雅 |
14 | 2016104659 | サトノルークス | 01014 | 福永 祐一 |
15 | 2016104816 | ホウオウサーベル | 00663 | 蛯名 正義 |
16 | 2016103387 | ナイママ | 01009 | 柴田 大知 |
17 | 2016100527 | タガノディアマンテ | 01075 | 田辺 裕信 |
18 | 2016102192 | メイショウテンゲン | 01032 | 池添 謙一 |
過去のレースデータが長くなるので、今回のサンプルコードは、2頭だけにします。
まとめて16頭予想するときはデータを拡張するだけです。
じゃ、今回は、1番のザダルと2番のニシノデイジーだけでいきます。
まずデータ整理として先程の出馬をこうします。↓
馬ID | 騎手ID |
2016104772 | 01077 |
2016103444 | 05339 |
カラム名を[馬ID]を[umaID]、[騎手ID]を[kishuID]に変更して、これをbase.csvで保存しておく。
base.csvの中身はこう↓
IDと名前のどちらかがいるだけなので、IDのみ残します。
この2頭の過去のレースは、
馬ID | レースID | 騎手ID | レース名 | レース日 | 開催場所 | 芝ダ | 距離 | タイム | 3F | 着順 |
2016103444 | 1801020511 | 01025 | 札幌2(GIII) | 2018-09-01 | 札幌 | 芝 | 1800 | NULL | 37.0 | 1 |
2016103444 | 1802020205 | 01025 | 新馬 | 2018-07-08 | 函館 | 芝 | 1800 | 113.6 | 36.0 | 2 |
2016103444 | 1802020501 | 01025 | 未勝利 | 2018-07-21 | 函館 | 芝 | 1800 | 109.7 | 35.7 | 1 |
2016103444 | 1805050511 | 01025 | 東ス2(GIII) | 2018-11-17 | 東京 | 芝 | 1800 | 106.6 | 33.9 | 1 |
2016103444 | 1806050911 | 01025 | ホープ(GI) | 2018-12-28 | 中山 | 芝 | 2000 | 121.9 | 35.3 | 3 |
2016103444 | 1905021211 | 01025 | 東京優(GI) | 2019-05-26 | 東京 | 芝 | 2400 | 143.1 | 34.3 | 5 |
2016103444 | 1906020411 | 01025 | 弥生賞(GII) | 2019-03-03 | 中山 | 芝 | 2000 | 123.7 | 37.1 | 4 |
2016103444 | 1906030811 | 01025 | 皐月賞(GI) | 2019-04-14 | 中山 | 芝 | 2000 | 120.1 | 35.9 | 1 |
2016103444 | 1906040511 | 01025 | セント(GII) | 2019-09-16 | 中山 | 芝 | 2200 | 132.1 | 35.0 | 5 |
2016104772 | 1809050605 | 05495 | 新馬 | 2018-12-16 | 阪神 | 芝 | 2000 | NULL | NULL | NULL |
2016104772 | 1905020810 | 01077 | プリン(L) | 2019-05-12 | 東京 | 芝 | 2000 | 118.3 | 33.7 | 1 |
2016104772 | 1906010306 | 01077 | 新馬 | 2019-01-12 | 中山 | 芝 | 1600 | 97.4 | 34.8 | 1 |
2016104772 | 1906020606 | 01075 | 3歳 | 2019-03-10 | 中山 | 芝 | 2000 | 121.2 | 34.8 | 1 |
2016104772 | 1906040511 | 01077 | セント(GII) | 2019-09-16 | 中山 | 芝 | 2200 | 131.9 | 35.8 | 3 |
これも必要な分だけにまとめます。
馬ID | レースID | 騎手ID | 日付 | 開催場所 | 芝ダ | 距離 | タイム |
2016103444 | 1801020511 | 01025 | 2018-09-01 | 札幌 | 芝 | 1800 | NULL |
2016103444 | 1802020205 | 01025 | 2018-07-08 | 函館 | 芝 | 1800 | 113.6 |
2016103444 | 1802020501 | 01025 | 2018-07-21 | 函館 | 芝 | 1800 | 109.7 |
2016103444 | 1805050511 | 01025 | 2018-11-17 | 東京 | 芝 | 1800 | 106.6 |
2016103444 | 1806050911 | 01025 | 2018-12-28 | 中山 | 芝 | 2000 | 121.9 |
2016103444 | 1905021211 | 01025 | 2019-05-26 | 東京 | 芝 | 2400 | 143.1 |
2016103444 | 1906020411 | 01025 | 2019-03-03 | 中山 | 芝 | 2000 | 123.7 |
2016103444 | 1906030811 | 01025 | 2019-04-14 | 中山 | 芝 | 2000 | 120.1 |
2016103444 | 1906040511 | 01025 | 2019-09-16 | 中山 | 芝 | 2200 | 132.1 |
2016104772 | 1809050605 | 05495 | 2018-12-16 | 阪神 | 芝 | 2000 | NULL |
2016104772 | 1905020810 | 01077 | 2019-05-12 | 東京 | 芝 | 2000 | 118.3 |
2016104772 | 1906010306 | 01077 | 2019-01-12 | 中山 | 芝 | 1600 | 97.4 |
2016104772 | 1906020606 | 01075 | 2019-03-10 | 中山 | 芝 | 2000 | 121.2 |
2016104772 | 1906040511 | 01077 | 2019-09-16 | 中山 | 芝 | 2200 | 131.9 |
ここまでが過去のデータです。
これもカラム名を
[馬ID] を [umaID]
[レースID] を [raceID]
[騎手ID] を [kishuID]
[日付] を [r_date]
[開催場所] を [r_place]
[芝ダ] を [r_shibada]
[距離] を [race_meter]ter]
[タイム] を [r_time]
へと変更し、これをkako.csvで保存。
kako.csvの中身はこう↓
で、予想したい条件は菊花賞。京都で3000m。なのでこう↓
馬ID | レースID | 騎手ID | 日付 | 開催場所 | 芝ダ | 距離 | タイム |
2016104772 | 1908040711 | 01077 | 2019-10-20 | 京都 | 芝 | 3000 | 求めたいところ |
2016103444 | 1908040711 | 05339 | 2019-10-20 | 京都 | 芝 | 3000 | 求めたいところ |
[馬ID] を [umaID]
[レースID] を [raceID]
[騎手ID] を [kishuID]
[日付] を [r_date]
[開催場所] を [r_place]
[芝ダ] を [r_shibada]
[距離] を [race_meter]ter]
ただし、タイムのところだけは削除。
これをpred_data.csvで保存
pred_data.csvのの中身はこう↓
さぁ準備が整った。
次回ラベル貼り。
コメント
0 件のコメント :
コメントを投稿