卒業研究発表 〜機械学習による競馬の予測〜 福永研究室 学部4年 石田 希望.

Slides:



Advertisements
Similar presentations
知能情報工学 年4月26日 吉川雅博 第3回第3回 k最近傍法. プロトタイプによるNN法の流れ 2 AD変換前処理部特徴抽出部識別部 ・標本化 ・量子化 ・ノイズ除去 ・正規化 識別辞書 (プロトタイプ) 音声や画像 (アナログ信号) 識別 結果 識別が容易な 特徴を抽出 プロトタイプと比較.
Advertisements

本日のスケジュール 14:45~15:30 テキストの講義 15:30~16:15 設計レビュー 16:15~16:30 休憩
Building text features for object image classification
「わかりやすいパターン認識」 第1章:パターン認識とは
Deep learningによる 読唇システム
MySQLに接続するデータベースプログラム
Scalable Collaborative Filtering Using Cluster-based Smoothing
実証分析の手順 経済データ解析 2011年度.
アンサンブルハインドキャスト実験結果を用いたイネ葉いもち病の発生確率予報の精度検証
Perlによる競馬予想支援システムの構築
圧縮類似度を用いた方言の自動分類 ~ライス符号を用いた前処理~ ~連結クラスタリング法~ ~余弦類似度を用いた方言分類木の評価~
データ構造と アルゴリズム 理工学部 情報システム工学科 新田直也.
上坂吉則 尾関和彦 文一総合出版 宮崎大輔2003年6月28日(土)
TextonBoost:Joint Appearance, Shape and Context Modeling for Multi-Class Object Recognition and Segmentation 伊原有仁.
PSOLA法を用いた極低ビットレート音声符号化に関する検討
データ構造と アルゴリズム 知能情報学部 新田直也.
プロジェクトの選択基準 と CBAの役割と限界
統計リテラシー育成のための数学の指導方法に関する実践的研究
主成分分析と因子分析 による競馬の勝因の研究
ベイズ基準によるHSMM音声合成の評価 ◎橋本佳,南角吉彦,徳田恵一 (名工大).
Semi-Supervised QA with Generative Domain-Adaptive Nets
回帰モデル・クラス分類モデルを 評価・比較するための モデルの検証 Model validation
政策SPD 問題解決までに導く力をつける.
シミュレーション論 Ⅱ 第15回 まとめ.
Fuzzy c-Means法による クラスター分析に関する研究
人工知能特論 7.決定木の学習 北陸先端科学技術大学院大学 鶴岡 慶雅.
決定木とランダムフォレスト 和田 俊和.
グラフアルゴリズムの可視化 数理科学コース 福永研究室 高橋 優子 2018/12/29.
あらまし アンサンブル学習の大きな特徴として,多数決などで生徒を組み合わせることにより,単一の生徒では表現できない入出力関係を実現できることがあげられる.その意味で,教師が生徒のモデル空間内にない場合のアンサンブル学習の解析は非常に興味深い.そこで本研究では,教師がコミティマシンであり生徒が単純パーセプトロンである場合のアンサンブル学習を統計力学的なオンライン学習の枠組みで議論する.メトロポリス法により汎化誤差を計算した結果,ヘブ学習ではすべての生徒は教師中間層の中央に漸近すること,パーセプトロン学習では
教師がコミティマシンの場合の アンサンブル学習
IIR輪講復習 #17 Hierarchical clustering
第14章 モデルの結合 修士2年 山川佳洋.
深層学習を用いた音声認識システム 工学部 電気電子工学科 白井研究室 T213069 林健吉.
TIME SIGNAL: 集合知を利用した赤信号点灯時間の取得手法
多変量解析ゼミ 第10回 第12章クラスター分析 発表者 直江 宗紀.
ソフトウェア設計検証 研究室の紹介 知能情報学部 准教授 新田直也.
数量分析 第2回 データ解析技法とソフトウェア
予測に用いる数学 2004/05/07 ide.
ソースコードの特徴量を用いた機械学習による メソッド抽出リファクタリング推薦手法
2018/9/10 ACL読み会 名古屋大学大学院 M2 佐藤・松崎研 土居裕典.
主成分分析 Principal Component Analysis PCA
決定木 Decision Tree DT 明治大学 理工学部 応用化学科 データ化学工学研究室 金子 弘昌.
Data Clustering: A Review
AIを用いたドローンの 新たな姿勢制御方法に関する研究
部分的最小二乗回帰 Partial Least Squares Regression PLS
Data Clustering: A Review
顔特徴点移動量・点間距離変化量の組み合わせに基づく顔表情認識
適応的近傍を持つ シミュレーテッドアニーリングの性能
Number of random matrices
ノイズ.
SIFTとGraph Cutsを用いた 物体認識及びセグメンテーション
第3章 線形回帰モデル 修士1年 山田 孝太郎.
ベイズ最適化 Bayesian Optimization BO
シミュレーション論 Ⅱ 第1回.
教師がコミティマシンの場合の アンサンブル学習
自己組織化マップ Self-Organizing Map SOM
クロスバリデーションを用いた ベイズ基準によるHMM音声合成
「ICAによる顔画像特徴量抽出とSVMを用いた表情認識」
過学習を考慮した IS1-60 AAMパラメータの選択と回帰分析による 顔・視線方向同時推定 顔・視線同時推定 研究背景
HMM音声合成における 変分ベイズ法に基づく線形回帰
ベイズ基準による 隠れセミマルコフモデルに基づく音声合成
ベイズ音声合成における 事前分布とモデル構造の話者間共有
本当は消去できていない!? ~データを完全消去する方法~
本当は消去できていない!? ~データを完全消去する方法~
アンサンブルハインドキャスト実験結果を 用いた葉いもち発生確率予報の精度検証
バイオインフォマティクスII 遺伝子発現データの AdaBoostによる判別
CSP係数の識別に基づく話者の 頭部方向の推定
ベイジアンネットワークと クラスタリング手法を用いたWeb障害検知システムの開発
ランダムプロジェクションを用いた音響モデルの線形変換
教師がコミティマシンの場合のアンサンブル学習 三好 誠司(神戸高専) 原 一之(都立高専) 岡田 真人(東大,理研,さきがけ)
Presentation transcript:

卒業研究発表 〜機械学習による競馬の予測〜 福永研究室 学部4年 石田 希望

目次 研究背景 機械学習とは 3つの手法 データの収集、加工 実験結果 考察 まとめ

人間による予測 先入観に頼る、主観的になりがち 競馬でどの馬が勝つか(人間が)予測してみると、、、 人気馬 自分のお気に入り 新聞の◎印 なんとなく強そう 直感 先入観に頼る、主観的になりがち

機械(コンピュータ)の強み 機械学習により、客観的なデータをもとに 予測ができるのではないか 過去何年ものレース結果を集めて 感情がない(人間が手を施さなければ) 速い、ミスのない計算 大量のデータを保持することができる 機械学習により、客観的なデータをもとに 予測ができるのではないか 過去何年ものレース結果を集めて 人間の限界を超える

機械学習とは データベース (訓練データ) 規則 判断基準 予測結果 競馬の場合 過去のレース結果からどのような馬が勝ちやすいか学習して、次のレース結果を予測する 解析 新たなデータ 予測結果

競馬の場合 関数(分類器) あるレースで走った馬Aの特徴(♂, 500kg, ...) → 結果1着(勝) 同じレースで走った馬Bの特徴(♀, 420kg, ...) → 結果10着(負)   ・・・ 予測したい馬Cの特徴(♂, 450kg, ...) を分類器に入れると、「勝」という結果が返ってくる 実際レースで走ってみたら勝ちました、バンザーイ 特徴量 ラベル 関数(分類器) 訓練データをこういう風に分類すればどんな馬でも分類できる テストデータ ラベル

3つの手法 k近傍法(kNN) 決定木(Decision Tree) Random Forest

k近傍法 特徴が似ている訓練データの点を見つける ①多次元ベクトル空間に訓練データが与えられている ②その中にテストデータsを与えた時に、k個の最近傍 (ユークリッド距離)のデータを選択する ③多数決によりsのクラスが決定する ・2次元の例 k=3の時の最近傍 赤1個、黄2個で クラス2に分類される 赤=クラス1 黄=クラス2

決定木(Decision Tree) 特徴量に関する条件分岐により、クラス分けする木を作る ①訓練データを、なるべくクラスが混ざらないように特徴量の条件 を決めて、データを分割していく ②過学習に陥る可能性があるので、ある程度の深さで打ち切る ③テストデータを作成した木に入れて、分類させる ε-δが使えるか 数学ガチ率分類 Depth=3 Y N ジョルダン標準型が求まるか GPAはいくつか 3.0未満 Y N 3.0以上 数学ガチ 普通 普通 ・・・

過学習とは 訓練データに過剰に適切に分類しすぎてしまうこと テストデータに適合できなくなる 適当 過学習

Random Forest 決定木をたくさん作って多数決で決める ①訓練データからランダムにn個の標本を抽出する ③ ①②をk回繰り返す(k個の決定木をつくる) ④テストデータをそれぞれの木に入れる ④k個の分類結果をまとめて、多数決によりクラスを決定する

使用した言語、ソフト Python 3.6.3 Spyder developer communityが開発

データの収集 JRA-VAN ( jra-van.jp ) JRA公式のデータが揃う競馬情報サービス データをcsvファイルで出力できるソフト”馬吉”

データベース 馬毎レース情報 JRA-VAN データラボ 仕様書 レース詳細

データの選定 中央競馬のみ(東京、中山、京都、阪神など10箇所) 障害競争は対象外とする 出走条件は3歳以上、4歳以上のみ セン馬(去勢馬)は対象外とする

使用した特徴量 最初は以下の8種を用いた 性別 馬齢 斤量 …騎手体重を含めた負担重量 馬体重 増減 …前走からの体重増減 斤量 …騎手体重を含めた負担重量 馬体重 増減 …前走からの体重増減 脚質 …中盤までの位置どりの傾向(前側から逃、先、差、追) 複勝率 …3着以内の入着率 前走3F …前走の最後3ハロン(600m)タイム

データの加工 特徴量を作成するのに必要な処理を行う ラベル付け 訓練データのサンプリング レースの条件ごとにモデルをつくる 上記対象馬、競走中止馬などの削除 別のパラメータから計算をする必要のある特徴量の設定 ラベル付け ラベル1←3着以内    ラベル0←その他 訓練データのサンプリング ラベル0とラベル1の数を同じにする レースの条件ごとにモデルをつくる 競馬場、芝orダート、距離

実験方法 kNN Decision Tree Random Forest 訓練データ…2016年 東京芝1600m Depth=15とする Random Forest 決定木の個数=51、Depth=15とする 訓練データ…2016年 東京芝1600m テストデータ…2017年 東京芝1600m それぞれ10回実行して、的中率、単勝回収率の平均を算出

競馬の賭け方 回収率…1年間、ラベル1(3着以内)と判断した馬に同じ額を賭けて、その年どれくらいの払い戻しがあったか 単勝・・・1着になるかどうかを当てる 他、7種類の馬券がある 当たったら、( 賭けた金額×その馬のオッズ )が払い戻される 例:11.4倍の馬に100円を賭けたら的中した→1140円払い戻し 回収率…1年間、ラベル1(3着以内)と判断した馬に同じ額を賭けて、その年どれくらいの払い戻しがあったか 勝つ確率を示す値 人気馬ほど低い

目標 回収率80%が目標 何も考えず、新聞を一瞬読むだけでも 80%の回収率が望まれる 2015年~2017年の全レース 0.213 (参考)1~3番人気だけに同額を賭けた場合の的中率、回収率 的中率 回収率 0.213 0.791 何も考えず、新聞を一瞬読むだけでも 80%の回収率が望まれる 回収率80%が目標

実験結果(1) 各方法の比較 ・RandomForestが一番精度が高い ・回収率はいずれも50%未満

特徴量を再設定 前回の8種に加え、以下の11種(計19種)を設定 馬番 …スタート位置 馬の獲得賞金額 前レース結果 調教師獲得賞金額 馬番 …スタート位置 馬の獲得賞金額 前レース結果 調教師獲得賞金額 調教師勝ち数 調教師勝率 調教師複勝率 騎手獲得賞金額 騎手勝ち数 騎手勝率 騎手複勝率

実験結果(2) 特徴量の数による比較 ・的中率はさほど変わらない ・k近傍法の回収率がとても良くなった

特徴量の評価 ランダムフォレストは各特徴量の重要度を測る事ができる 重要度…学習した結果、分類に影響する指標 重要度が低い特徴量を消去することで、より精度の高い分類器ができるのではないか

重要度の測定 重要度が低い性別、馬齢、斤量、増減を消去する

実験結果(3) 特徴量選定による比較 ・特徴量選定はk近傍法に悪い影響が出た ・その他の結果は大きな影響が出ていない

考察 kNNは総合的に精度が低い 特徴量を増やしたことによる精度の上昇 重要度の低い特徴量を消去しても良い影響が出るわけではない 欠損を定数で埋める量が多かった ノイズデータに弱いのではないか 特徴量を増やしたことによる精度の上昇 できるだけ多くの特徴量を設定したいところだが、ただ多くしても計算量が増えるし、分類に邪魔な特徴量が入るリスクが高い 重要度の低い特徴量を消去しても良い影響が出るわけではない

まとめ 目標(回収率80%)達成できず 今実験では以下の条件で最も高い精度の結果を出すことが出来た 手法:ランダムフォレスト 特徴量:15種 ラベル1:3着以内 結果:的中率60% 回収率60% 目標(回収率80%)達成できず

より精度を上げるには 他の方法でも試してみる 1レースの中で相対評価をする その馬の過去の成績から得意不得意を見つける 特徴量の調整 回帰分析(「勝ち負け」ではなく「タイム」を予測する) 1レースの中で相対評価をする 過去データを学習する→「この馬は勝つだろう」 ⇨過去データを学習する→「このレースなら、この馬が勝つだろう」 その馬の過去の成績から得意不得意を見つける 芝、ダート 短距離、長距離 右回り、左回り 特徴量の調整 ノイズが少なくなるように

参考文献 Sebastian Raschaka(2016)『Python機械学習プログラミング 達人データサイエンティストによる理論と実践』 (インプレス) AlphaImpact(2017)『第10回 決定木とランダムフォレストで競馬予測』<https://alphaimpact.jp/2017/03/30/decision-tree/>

昨日(3月4日)のレース 賭金:\8,000 払戻:\4,440 回収率:56%