競馬AI競馬AIとは~競馬AI開発日記(1)~AI開発2022.08.16今回の記事は「競馬AIを作りたい」ということで、競馬AIについて紹介する。ここでは、競馬AIの簡単な歴史と仕組み、作る目的のようなものを簡単にまとめる目次AIとは競馬AIとは競馬AIを作りたい開発についてAIとはまず、一般的概念のAIについて説明する。一般的な意味合いで理解されているが、決まった定義があるわけではないAIの一般的理解はあるものの、共通の定義があるものではない。「知性の一部」とあるように人の全てではない。人間が行うあるタスクにおいて専門的に学習し再現すると言う認識を持つと良いだろう。特定の分野に特化して使用すれば人間と同等、いやそれ以上に能力を発揮する可能性がある。歴史的には、1950年代からAIの概念は存在している。その昔は、プログラムに「〇〇という条件のときは、〇〇をする」のようなルールを人間が決め、そのルールに沿ってAIが自動的にその行動をするものであった。一度ルールを決めればプログラムは忠実に行う。人間だと見逃しや、設定範囲のギリギリの条件を見誤ることもある。それがプログラムにはないのだから、すでに優秀である。競馬に例えると、「前走4着馬の単勝をすべて購入する」とルールを人間が決めてあげれば、見逃すことなくすべて購入する、というイメージだとわかりやすいだろう。人間が「この馬は前走4着だけど、今回は好走しないだろう」と思って買わない選択を取るところや、「この馬も前走4着だった。見逃してしまった」となるところを、プログラムは感情抜きで淡々と購入するという感じである。この技術を「ルールべース」技術と呼ぶ。次に、機械学習と呼ばれる技術が出現した。機械学習は、予測に重要だと思われるデータを人間が設定し、データと実際の結果の関係性をプログラム自身が学習する。予測するためのデータをプログラムに与えると、プログラム自身が学習した傾向に沿って結果を予測して出力するというものである。これも競馬に例えると、過去のレースデータを準備し「着順が上位に来るには、前走の走破タイムが重要だ」とファクター(これを特徴量と呼ぶ)を設定してプログラムに入れると、着順と前走の走破タイムの関係を学ぶ。今回のレースデータを入れると、プログラム自信が学習した経験則に基づいて結果を予測する。ここで注目したいのは、プログラム自身がデータと結果の関係性や傾向を学習してその通りに結果を予測するということだ。「ルールベース」から「機械学習」に進化しただけで、ほとんど人間に近い思考ができるようになるのである。組み込まれており、下手な人間よりよっぽど能力が高いものとなる。機械学習には与えられたデータ以外の情報がないため、人間がパドックの馬の雰囲気や気配、騎手の心理のようなものを予測に組み込むことはできない。言え、データが多ければそれだけ能力が上る可能性があり、この時点で人間と十分に戦える。近年話題の「ディープラーニング」という技術が出現した。ディープラーニングは深層学習とも呼ばれており、機械学習のカテゴリの中の一部の技術という位置づけである。入力データから着順に影響がありそうなデータを見つけ、組み合わせ、学習する。機械学習と異なるのが人間が設定していた特徴量自身もディープラーニング自身で見つけて学習する点である。ディープラーニングは学習したことが間違っているとわかると、更にそれを自分で修正して学習し直し成長していく例を挙げると、人間がプログラムに過去のデータを入れる。すると「直線1000mのレースでは、斤量が着順に影響する」と学習する。その後、実際の結果を入力すると「斤量だけが影響しているわけではないな、斤量÷体重をした数値のほうが影響しそうだ」と再度学び直し、成長していく。人間のように学んでいくのがすごいところである。このようにAIの技術はものすごいスピードで成長している。具体的な事例については、この書籍を読んでほしい。近年の競馬AIの全貌が理解できるため、おすすめしたい。競馬AIとはAIは特定の分野に特化した専門家と表現するのが良い。競馬という分野に特化させてみよう。いうのが競馬AIの考え方である。最近「競馬AI」というワードはよく目にする方も多いだろう。松風やゆまに代表される競馬AIが、競馬データを学習し予測した結果をもって自動で馬券を購入している。パルミューチュアル方式と呼ばれる日本の馬券システムの中で、一般の競馬ファンとしのぎを削っている。馬連馬単、3連複3連単等の組み合わせ馬券から、人間が見つけるには時間が足りず困難なオッズ妙味を見つけ出し購入する。これがAIには可能になる。競馬AIは、機械学習やディープラーニングの技術を用いて開発された、勝ち馬を予測するプログラムのことである。これを予測モデルと呼ぶ。その予測モデルを利用し、勝つと予測された馬や上位と予測された馬の馬券を自動で購入するプログラムとかけ合わせて、運用する。これが、現在の競馬AIである。開発に関して、機械学習やディープラーニングの技術を利用するために確率論や統計学、学習モデルのアルゴリズム等、知識として知っておくべきことがたくさんある。プログラミング言語の中には、そのような知識を詰め合わせて作られたライブラリというパーツみたいなものが存在する。そのライブラリを使って開発すると、1から機械学習モデルを作らなくても、適切なデータと予測したいもの、設定値の調整程度を行うことで、簡単に開発が可能である。ここで「簡単に」と表現したが、ライブラリの使い方、引数、プログラミング言語を使った開発力、アルゴリズム等を理解していなければ開発することはできない。相応の学習と知識の習得は必須となっている。競馬AIを作りたいここからが本題である。私はデータサイエンティストとしてIT企業で勤務する人間で、統計学的知識を使ったデータ分析やAIモデルの開発業務を行っている。今までの知識や、これから学習する知識を集結させて競馬AIの開発をしたいと考えている。現在単勝オッズの予測モデルを開発している。某競馬サイトの予想オッズよりも精度が高く、予想の目安になるものを目指して開発している。今後も精度改善は行うものの、ある程度開発が終了し、次の開発で馬券になる馬を予測するモデルの開発をしたいと考えている。このモデルを簡単に「競馬AI」と呼ぶことにする。現在は(2022年8月16日現在)、開発準備を行っている。本格的な開発はこれから行っていくが、やるからには本気で開発し実際に勝てるモデルを作成したい。開発について開発についての「開発日記」を今後記事としてアップしていくことにする。開発視点から見える情報が競馬予想の役に立つこともあると思っているからである。費用がかかることが予想される。そのため即座に開発することはできないが、時間をかけてゆっくり開発していくことにする。開発中には、AI予想情報をTwitter(@chance)で投稿する。いろいろな意見を頂きたいと思っている。応援よろしくお願いいたします。コメントをキャンセルメールアドレスが公開されることはありません。※サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。上に表示された文字を入力してください。ΔホームAI開発ちゃんわちゃんわと申します。競馬データを分析し、面白いデータを発信していきます。統計学×データサイエンスを競馬に応用して様々な有益な情報を発信できるよう頑張ります。メタ情報ログイン投稿フィードコメントフィードWordPress.orgちゃんわちゃんわと申します。競馬データを分析し、面白いデータを発信していきます。統計学×データサイエンスを競馬に応用して様々な有益な情報を発信できるよう頑張ります。初心者向けマインドセット競馬データコラム競馬予想AI開発プロフィールお問い合わせTwitter検索タイトルとURLをコピーしました。