繰り返しになりますが、以下手順概要です。

競馬の指数の作り方、数値化しやすい要素とは? 公開日 2017年08月10日 更新日 2017年09月05日 指数は、自分で作ることもできます。 競馬aiの作り方(手順概要)「初心者向け」などと偉そうに書いておりますが…、私自身まだまだ未熟者です。当然、熟練者向けの競馬aiの作り方の解説なんかできない訳で。。。ただ、自分で作った競馬aiの予想が当たった時の喜びは格別であることは間違い ただ、自分で作った競馬AIの予想が当たった時の喜びは格別であることは間違いありませんので、少しでも多くの競馬ファンの方に、ぜひオリジナルの競馬AIを作ってみていただきたいという思いで本記事を書いています。, さて、以下手順概要です。(今回は、準備編なのでおそらく①だけ。次回で②③やります。), 今回は、できるだけ簡単・お手軽(ノンコーディング)に、かつ低コストで作成するという目標でやっていきます。, 今回は中央競馬の予測をさせるAIを想定しておりますので、収集元の候補としては以下3通りぐらいになるかと思います。, まずnetkeiba.comはウェブスクレイピング(ウェブサイトから情報を抽出する技術)が必要になるので、今回の簡単・お手軽コンセプトから外れてしまいます。, 残り2つの選択については、費用的にも似たようなもの(2000円前後)なので、好みの問題にもなってきますが、今回はJRA-VAN データラボで進めます。, レースや調教映像が見られる「JRAレーシングビュアー」付きのプランもありますが、今回はJRA-VAN データラボ単体のプランを選択。, ※デフォルトの設定では自動継続がONになっています。自動継続をご利用にならない場合は、有効期限日前日までに自動継続停止ボタンを押してください。, 続いて、データを入れる器(データべース)と、その器とデータラボとをつなぐツールを用意します。, 器は、わりと何でも良いですが今回は無料でも使える「SQL Server」にします。, SQL Serverのインストール手順については、以下の記事などをご参照ください。, 学習用に「SQLServerDeveloper」をパソコンにインストールする【前編】, 学習用に「SQLServerDeveloper」をパソコンにインストールする【後編】, 諸々インストールできましたら、SSMS(SQL Server Management Studio)を起動。そのままWindows認証でログインします。, [データベース]を右クリックし、[新しいデータベース]をクリック。適用な名前を付けて[OK]ボタンをクリックします。, データベースとデータラボとをつなぐツールとして、今回は「PC-KEIBA Database for JRA-VAN Data Lab.」を使用します。無料です。, ダウンロードページより、ツールをダウンロード・インストールしましょう。インストールできたら、起動します。, データベースの設定は、SSMSで各自の環境と照らし合わせながら設定をすれば、難しくないです。, 利用キーは、JRA-VANマイページより、「ご利用状況の確認・サービス購入」をクリック⇒「 JRA-VAN Data Lab. reraceでは、プログラムの専門知識がなくても誰でも直感的にオリジナル競馬予想ソフトを作ることができます。 ソフトは大きく分けて以下の2つの要素によって構成され、 1. からのデータ取得]をクリック。登録処理状況タブの[今すぐ更新]をクリック。基本、これだけです。, ちゃんとデータが入っていますね!(※結果を分かりやすくするためにレコードの追加日時(INSERT_TIMESTAMP)が新しい順に並び替えています。), PC-KEIBA Database for JRA-VAN Data Lab.では、データラボから取得するデータを選択できるようになっています。, また、”蓄積系データ”について、最初はセットアップデータを取得しないと、AIに学習させるにはデータ量が少ないと思います。, ただし、フルセットアップは時間がかかるのと、そこそこメモリを消費しますので、まずは簡易セットアップ(直近2年分のデータ取得)をおすすめします。, そのためには、テーブル結合や条件指定などが必要になってきます。(今回ですと、おそらくレース詳細と馬毎レース情報をレースコードで結合して、この条件でこの項目を取得して…というような作業が発生します), また、独自の区分を設けたいケースが出てくるかもしれません。(例えば、距離が1600m以下のレースは”0″、1600mより長いレースは”1″のような、デフォルト項目としては用意されていないもの), おそらく今回の中でここが最も難易度が高いところですが、AIに個性を出して周りとの差を付けやすいところでもあります。, こちらの記事など、インターネット上にSQLの基礎を教えてくれる記事はたくさんありますので、少し勉強すれば大丈夫かと思います。, 尚、テーブル定義(各テーブル・各項目の説明)については、こちらのページにあります。”JV-Data仕様書”ですね。, データ提供サービスのところでどうしても費用発生してしまいますが、他ツールについては、無料で調達することができました。, 難易度としても、少しだけSQLの知識は要るかもしれませんが、ゴリゴリにコードを書いて…ということは、ここでも、この後の実践編でも必要ありません。, 次回は、実践編として実際に学習をさせて精度を評価するところまで行きたいと思います。, 世界一有名なアライグマ…ではなく、データサイエンス・AI(人工知能)をかじった競馬好きシステムエンジニアがまったり開発している競馬AIです。各馬が複勝圏内に入るかどうかをディープラーニングによりスコアリングしています。, 重賞以外のレースの予想(主に上位5頭のスコア)は基本Twitterにつぶやいています。, データベース]を右クリックし、[新しいデータベース]をクリック。適用な名前を付けて[OK]ボタンをクリックします。←この部分までは出来たと思うのですが下記の部分が上手くいきません。, pc_keibaでデータ取得が出来ませんし、データベースの設定も上手くいきません。, コメントありがとうございます。

競馬aiの作り方を逆算しながら解説します! かしこめの小4くらいに分かるように書きます!全3篇、総行数は100行くらいを目標にします! 早速2行使ってしまいました!そんなことを言ってたら3行目を使ってしまいました! 逆算しながらとはどういう意味か。 競馬AIの作り方(手順概要)さて、実践編です。準備編は、以下の記事をご参照ください。繰り返しになりますが、以下手順概要です。・手順①:データを集める... 競馬AIの作り方(手順概要) AI戦略室の坂本です。近今のブームによりAIが注目されるのは良いのですが、じゃあAIの何が凄いのか、という話になると、どうも未だに誤解が多くはびこっているように感じます。そんなときに、AIで「これが出来た」→「それは凄い!」と直結するような、【鉄板ネタ】があれば、話が進みやすいと思いませんか?, そこで今回は、『競馬予想AIを作る』として、JRA主催の競馬レースを予想する人工知能について書こうと思います。, 今回解説する人工知能は、ココングループ内のいわば余興で作成したもので、社内の忘年会で発表するLTで2017年有馬記念のAI予想を行う、という目的で作成したものです。しかし、作ってみると意外なほど良いものが出来上がり、少なくとも数字上は馬券の購入金額以上の払い戻しが期待できるモデルが作成されました。このモデルは、以下のGitHubにて公開しています。https://github.com/cocon-ai-group/turf-tipster, ちなみにライセンスはGNU AGPLv3でどなたでも無償利用可能ですが、このモデルを組み込んだシステムを配布しソースコードを開示したくない場合(AGPLライセンスに準拠したくない場合)などは、AI戦略室までお問い合わせください。, ・馬の数がとても多い(2万以上)が、それぞれの馬のレース数は少ない(〜46)・勝負事である(絶対評価で求められたデータでは無く、相対評価のセット)・その時々の調子とかがある、馬も成長する(時系列的データ)・騎手、競馬場の特徴、天候、馬場状態などにも結果が左右される, というものです。特に、レースという結果が相対的な着順で争われる以上、学習データを相対評価のセットとして扱わなければならないという点が通常の機械学習とは異なっており、そのデータをどのように扱うかが予想AI開発の焦点となります。機械学習で利用される回帰分析では、入力されるデータから出力の値を予測しますが、これはあくまで絶対評価として与えられる値の予測であって、その馬のラップタイムを予測しろ等は可能ですが、勝ち負けを予測するのには不向きなのです。ではかといって、「勝ちそうな馬」を予測するのが全く不可能であるかと言えばそんなはずはなく、少なくとも人間は過去のレースから「この馬は強い」だとか、「この馬は弱い」などの知見を得ていると考えられます(少なくとも競馬をやっている人はそうだと言うはずです)。そこでここでは、機械学習モデルを作成する上で、ある仮定を作成しました。それは、, というもので、一見すると当然の事に思えますが、重要なものです。そして、相対評価の問題ですが、それが本当に問題であるならば、人間はなぜ「この馬は強い馬だ」と認識できるのでしょうか?一頭の馬が生涯に走るレース数が少ない点は確かに問題になり得ますが、まずシンプルなモデルとして、「弱い相手に勝った馬」と、「強い相手に負けた馬」が居たとき、それをどのように扱うかについて考えます。, ここで、Aは弱い馬に勝ち、Bは強い馬に負けたとします。この場合のAとBの格付けがどうなるか、というと、単純に勝利数の多いAの方が上、とはゆかない事は解ると思います。しかし、この場合、そもそも「強い馬」「弱い馬」というのは、どのように評価されたのでしょう?それは、結局、別の勝負の結果を参照して行われた、強さの格付けに基づいているはずです。つまり、別のレースで、, というのがあったはずなのです(あるいは、さらに別のレースの結果を元にした序列が作成された)。, ここまで考えを進めれば、機械学習モデルの作成方針が見えてきました。前述の仮定が成り立つのであれば、「結局のところ、レース全ての組合せを考えれば、その順位の組合せ内に、全出走馬の強さ情報が含まれているはず」という仮説が成立するはずです。(ただし、勝つときは圧勝するが負けるときはボロ負けする、みたいな馬は前述の仮定にもこの仮説にも当てはまりませんね。なので、当然のようにも思える仮定が重要なのです)そして、馬の「強さによる序列」は、機械学習で扱える「ベクトルの大きさの並び順」として表現する事が出来ます。そこで、今回の機械学習モデルの作成方針は、, 「その「強さベクトル」は、過去の全てのレースにおいて、勝った馬 > 負けた馬となる。」, ように機械学習すれば、レースに出走する馬の中での強い馬、すなわち勝つ可能性の高い馬を発見できるはずです。つまり、ここでは、出力のベクトルを並べると出走馬の順位順になるような機械学習モデルを構築し、その「強さベクトル」を元にレースの予想を行うAIを作成します。, さて、それでは実際の学習モデルを作成してゆきます。今回のように単純な回帰やクラス分類ではない問題を扱う場合、やはり柔軟なモデルが作成可能なニューラルネットワークを使用するのが良いでしょう。まず、ニューラルネットワークへの入力ですが、これは当然、出走する馬と騎手の組合せが必要です。それらの情報は予め馬名と騎手名から一意な番号を作成しておきます。そして、Embed層を使用することで、各位の「馬ベクトル」「騎手ベクトル」と言うべきベクトルデータとなるようにモデルを作成します。さらにここでは、距離、天候、トラックの種類(芝かダートか障害か)などをレース情報として入力し、全結合層でもって最終的な結果となるようにマージします(図には現れていませんが、レース情報にもEmbed層が存在します)。, そして、その結果として出力されるベクトルを、レース結果と同じ順番に並ぶようにディープラーニングさせます。さらに、「馬の成長」というファクターを扱う為にRNNを組み込んだモデルは以下のようになります。, ここで、それぞれの馬・騎手ペアに対するニューラルネットワークは、それぞれ別々に学習させたいので、1レース分のデータはミニバッチ次元方向へと並べます。つまり、1レースにおける最大出走数(出走枠)が18ならば、バッチサイズ=18となり、ミニバッチ内のデータは一回のレースのデータとなる訳です。, そして、ニューラルネットワークへの学習に必要な損失関数です。今回の機械学習モデルでは、ミニバッチ次元方向へ1レース分のデータを並べているので、バッチサイズが18であっても、そこから出力される損失の値は1個であることに注意してください。(通常の学習手法では、バッチサイズが18なら損失の値も18個作成される)このようなひねくれたモデルを作成する際、現状Chainerが最も解りやすいコードを書けるので、ここではChainerを使用してプログラムを作成します。また、バッチサイズを増やして計算を効率化する手法は、ここでは使用できません(最大出走数の整数倍なら可能ですが実装が面倒になるので実装していません)。さて、それでは、ニューラルネットワークの出力結果が「レース結果と同じ順番に並ぶように」学習させるための損失関数は、どのようになるでしょう?, 実は、ニューラルネットワークでこのような「並べ替え問題」を扱う事は、とても難しいものだったりします。その理由は「並べ替え(ソート)」のアルゴリズムについて考えてみれば解ります。ソートのアルゴリズムにはいくつかの種類がありますが、それらは全て「値の比較(IF演算)」を必要としています。しかし、ニューラルネットワークの損失関数内部では、基本的には「値の比較(IF演算)」によって処理を切り替えることが出来ません。なぜかというと、ディープラーニングの為には、ニューラルネットワーク内の全ての計算グラフを作成して、その微分を行う必要があるのですが、「値の比較(IF演算)」によって処理を変更すると、その計算グラフの形が学習毎に変化してしまい、学習アルゴリズムによる損失の伝播が一定化しないためです。そこで、「値の比較(IF演算)」を使用せずに、微分可能な関数のみを使用して、ニューラルネットワークの出力結果が「レース結果と同じ順番に並ぶように」学習させるための損失関数を作成する必要があります。さらに、ニューラルネットワークの出力結果が「レース結果と同じ順番に並ぶ」だけではなく、「空間内に均等に分布する」ような力が働く損失関数であればより優れているでしょう。なぜなら、そのような力が働かなければ、ニューラルネットワークの出力が空間内の一点に固定されてゆき、ベクトル間の差が消失する方向へと学習されてゆくことが予想されるからです。それらを踏まえた上で、どのような損失関数を作成すれば良いかを考えます。, 上の図は、単純に二つの結果に対してどのような損失を計算すべきかを表した図です。まず、ニューラルネットワークは損失の値が少なくなる方向へと学習してゆきます。なので、二つの結果が「正しい順序」になっている場合は、「逆の順序」の場合よりも損失の値が小さくなります。, さらに、「正しい順序」のまま、ベクトルの大きさの差が拡大するほど、損失の値は小さくなり、「逆の順序」のまま、ベクトルの大きさが拡大するほど、損失の値は大きくなります。そしてさらに、「正しい順序」でベクトルの大きさの差が拡大したときよりも、「逆の順序」でベクトルの大きさの差が拡大したときの方が、損失の値の変化は大きくならなくてはなりません。このような関数を、レース結果となる全てのベクトル同士について組合せ演算する事で、結果として、ニューラルネットワークの出力結果となるベクトルの大きさが「レース結果と同じ順番に並んだ」時に最も損失が小さくなるような、損失関数が作成出来ます。, そのようにして作成した損失関数の数式を、上に乗せます。そのための関数には、色々なパターンが考えられます。ここでは、「正しい順序」よりも「逆の順序」の時に大きく損失を変化させるためにsoftplus関数を使用し、「正しい順序」と「逆の順序」を符号として扱う為に、tanh関数またはatan関数を使用しています。, それでは実際に競馬レースのデータを使って学習した例について書いてゆきます。まずは競馬レースのデータを入手する必要がありますが、それにはJRAのデータサービスであるJRA-VAN(https://jra-van.jp/)にアプリ開発者として登録し、公式のデータをダウンロードするのが良いでしょう。(他にも競馬情報サイトからスクレイピングする手もありますが、その場合は各サイトの利用規程を守り個人利用の範囲で行う必要があります)後はダウンロードしたデータを、csvファイルに保存します。ここで紹介するAIで使用するには、レース情報と着順、馬名、機種名のリストを、以下のような形式で保存する必要があります。, レースのデータは、過去3000レース分を用意し、そのうち古い2500件を学習に、新しい500件を検証に利用しました。今回のような時系列データを学習させる場合、データからランダムに検証用データを取り分けると、未来のデータを利用して学習したモデルを検証することになってしまうので、不正確に良い結果が出てしまいます。ここでは最新の500件を検証用にしているので、おおむね5ヶ月前時点のデータを元に学習したモデルを、直近5ヶ月の結果で検証していることになります。また、検証の値は損失の値だけではなく、オッズを元に計算した払い戻し金も表示するようにします。以下がオッズを元に払い戻し金を計算する評価関数ですが、馬券の買い方によるそれぞれの払い戻し金を計算し、500レースにおける平均値を求めています。, ちなみにオッズの表記は100円分の勝ち馬投票券を買って、何円の払い戻しがあるかを表しているので、100を超えれば勝ちの目ということになります。それでは実際に学習させた際の評価を以下に提示します。, 単勝馬券のみを購入し続けた場合の、期待リターンはどちらのモデルも驚異の500超えです。また、複勝馬券を1枚だけ買った場合も100を超えますが、それ以外の買い方だと100を下回るようですね。三単連とか、確率は低いが当たれば万馬券のような馬券は、500レース程度のレース数では正しく評価できないでしょう(それでも5ヶ月間ずっと同じ戦略で買い続ける必要がありますが)。, スクレイピングのプログラムにバグがあり、単勝馬券の期待リターン率が実際より高く出るようになっていました(現在は修正済み)。より精度の良い予想を目指して、ランキング学習のアルゴリズムを使用した版も作成したので、そちらの方も参考にしてみてください。, ※新しいアルゴリズムを使用した記事を作成しました。・競馬予想AI再び -前編- 〜LambdaRank編〜・競馬予想AI再び 後編- 〜アンサンブル学習編〜, いかがでしたか?このAIでは、勝つ馬だけではなくレースに出走する全ての馬の結果を予測するので、仮想の馬/騎手の組合せによる「夢のレース」をシミュレーションしたり、過去のレースから騎手だけ入れ替えてみたり、全ての馬に同じ騎手を乗せた場合のシミュレーションをしてみたりと、他にも色々な楽しみ方があると思います。単なる余興から始まった今回のAI開発ですが、勝負事であるレースの結果を予測するという特性上、単純にデータをニューラルネットワークに突っ込めば良いというものではなく、きちんと考えを巡らせた機械学習モデルを作成する必要がありました。ディープラーニングの手法は確かに非常に柔軟な学習を可能にしてくれますが、対象となるデータの形によっては、なかなか単純に突っ込んでそれでOKという訳にはゆかないのが現状です。とは言っても、きちんと予想の前提となる仮説を立て、適切なモデルを考えて機械学習を行えば、相当高度なAIであっても作成する事が出来るのです。最後になりましたが、今回紹介したAIを使用したとしても、馬券で勝つことが出来るとは、坂本もココングループも全く保証しません。馬券の購入はあくまで自己責任の上、ギャンブルであることを自覚して適度に楽しみましょう。, 広報の馬場です。4年に一度のOpenIDの祭典「OpenID Summit Tokyo 2020」が渋谷ストリーム・ホールにて1月2…, 世界のハッカーが競う「DEF CON CTF Finals 2019」参加者インタビュー, 広報の馬場です。 DEF CONの人気コンテンツの一つである「DEF CON CTF」は、熾烈な予選を勝ち抜いたチーム…, ココングループのAI TOKYO LABの細川です。AI、特にディープラーニング系のホットな技術を実際に動かすと…, 競馬予想AIを作る 〜ニューラルネットワークによる相対評価データセットの取り扱い例〜, https://github.com/cocon-ai-group/turf-tipster.

さて、実践編です。

1ポイントの振り方の設定 「特定条件下の競走馬に対し+(-)○ポイント」といったように、お好みの条件に当てはまる馬を探し出し、基準となるポイントを振り分けます。 2. ・手順①:データを集める 最近ではオセロや将棋、チェスなどでAI人工知能が人を上回る活躍をし注目を集めています。AI同士の対決も見ものですが、やはり人間対AIの対決が盛り上がっています。かねてから言われていたAIが人間を超える時代は確実に近づいており今後も目が離せないコンテンツとなっています。, さらに競馬や競艇、オートレースなど公営ギャンブルの予想にもAIが多く用いられるようになってきました。データを入力し、シミュレーションを繰り返し学習させることで、精度を磨くことができ実際に多くの的中実績を積み重ねています。, 中には自分でAIを開発したいと考える人も少なくないのではないでしょうか?無料で予想を見ることが出来るサイトもありますが、大手のAI予想では有料のコンテンツになっている場合も珍しくありません。, 自分が開発したAIシステムで高い的中率を実現できれば、もっと競馬が楽になる思うと思います。しかし公営ギャンブルのAI開発は簡単ではなく、将棋やチェスなどとは大きく異なる難点があるのでご紹介していきたいと思います。, 最近の競馬は大量のデータを使用することで的中率がアップするとも言われており、馬の調子や実力だけではなくレース展開がスムーズに行きやすい枠や、レース会場と脚色の相性など様々な観点から競走馬を見て予想を組み立てる必要があります。, 競馬の歴史も古くなってきており、データの量が膨大になっているため人間が把握することはとても困難になってきています。そこでAIを利用したデータ整理を行うサイトが増加しています。, 過去のレースと競走馬の成績やタイム、騎手の実力などを駆使してAI予想をし、熟練の予想師を上回る予想を展開することも増えてきています。競馬予想AIサイトも合わせて増えてきており、かなり激しいせめぎ合いをしている印象があります。, またAI予想サイトでは悪徳だと感じるサイトが少ない事も特徴の一つだと思います。AIの勉強のために開発し公開しているサイトなどもあり、無料で情報を閲覧できることも珍しくありません。利用者としても情報を購入する必要がなく、安心して利用できるというメリットもあります。, 残念ながらAIによる予想はメリットだけではなくデメリットも存在します。例えばAIの予想は過去のデータを考慮することが多いので、リアルな情報に弱いという特徴があります。もちろん中には当日の馬場状態や、馬の調子などを反映させるサイトもありますが、前日までの情報で予想を展開しているサイトが多いのが現状です。, またデータや情報などで全てを把握することができないのが競馬です。その日のジョッキーの調子や、競走馬の調子、気温や会場の雰囲気など様々ことが順位に影響を及ぼします。, その独特な情報はまだAIでは把握しきれない部分なので、人間が手を加える必要があります。最終的な判断や予想は人間が調整し行うことで買い目が完結します。AIだけで予想が出来るようになることはもしかしたら今後もあり得ないかもしれません。, さらにこれはメリットでもありデメリットでもありますが、もしAIによる予想で毎レース的中できるシステムが完成してしまった時はギャンブルが成り立たなくなる可能性があります。JRAも必ず赤字になるようになってしまうと開催することは難しくなると思います。100%的中は不可能だと思っていますが、AIの進歩も未知数なので可能性は0ではないと思います。, 今後AIによって100%的中が実現するかもと言いまわしたが実際にはとても難しいです。これからのAIの成長にもよりますが、競馬とAIはあまり相性が良いとは言えない理由があります。AIを開発する時にも多くの人がこのポイントに悩んできており、常に課題となっています。そこでAIの作り方を説明するのも良いですが、ここからは開発する時の難しいポイントを紹介していきます。, 例えば将棋のAIを開発するなら、「こう打たれたらこう打ち返す」「この状況になったらもう勝ちまで持っていける」と様々なパターンを記憶させることで最善の一手を導き出すことが出来ます。簡単ではないですが、打つパターンは無限ですがある程度記憶させることが出来ます。言ってしまえば絶対的なパターンや行動を把握することが出来ます。, しかし競馬では、どれだけデータを読み込ませて、何万とレース予想のシミュレーションを行っても絶対的な行動はありません。, 競走馬の実力や騎手の実力、その日の馬場状態や馬体重の増減などを考慮し、どの競走馬が勝つか何度もシミュレーションをし勝率が高い馬を導き出すことは可能です。, しかし、その日の馬が実力の何%を発揮できるのか不明ですし、騎手がらしからぬミスをする可能性もあります。さらに前のレースから急激に成長している馬もいれば、力が衰えてしまった馬もいます。, どれだけ頭が良いAIでも馬の成長まで把握することは難しいですよね?その日の騎手の調子までは分からないですよね?レースの展開も競走馬のかかっている時などは一気に変わることもあります。計り知れない情報が多い競馬はAIとは相性が悪いのです。, 競馬に限らず公営ギャンブルではオッズというものが存在します。的中した時に賭けた金額が何倍になるのか?その倍率のことを指しますが、これの計算方法をご存知でしょうか?競馬ではオッズを計算する時に控除率というのがあり、約26%と言われています。控除率とは競走馬が勝った時の賞金やジョッキーの賞金、JRAの運営費など必要なお金が引かれるを言います。, 控除率がなかった場合を説明します。例えば2頭立てのレースがあったとします。競走馬Aに1万円、競走馬Bに1万円賭けられたとして、それぞれ10人が1000円ずつ購入していた場合、競走馬Aが勝てば一人2000円貰える計算になりますよね?オッズで言えば2倍になります。, しかしこれは胴元がいない場合しかあり得ません。主催者側には1円も入っていないため競馬ではこのような倍率にはなりません。では実際にどのようなオッズになるのかというと、26%の控除率を引くので全体に賭けられた金額の2万円から5200円を引いた14800円が還元される金額なので2倍ではなく1.48倍となります。, これで何が言いたいのかと言うとAIで勝てるような馬券を予想したくても、プラス収支にすることはとても難しいということです。2頭立てのレースで実力が全く一緒なら勝率は50%ですが、払い戻しは2倍にならないので必ず勝てないというのが原則になります。, この計算を18頭立てで行ったとしても、的中率は上げることが出来ても回収率が低くなったりします。, 競走馬の実力を計れないだけではなく、把握した上でもプラスにできないことが多いのです。そのため全てのレースは買わずにオッズに妙味が出た時だけ購入する必要も出てきます。, 将棋、チェスなどで重要なことは経験を1つでも多く積んで、様々なパターンを記憶していくことです。これはAIととても相性が良く、最初にAIで注目された理由だと思います。開発側は少しでも効率が良いシミュレーション方法を実施したり、無駄がない学習をすることが重要になります。逆に言えばパターンから最良の1手を導き出すことだけできれば勝てるようになるのです。, しかし競馬では血統、距離、相性、属性、調子、実力、調教状況、枠、レース間隔、年齢、騎手、乗り替わり、馬場状態、気温、天候、落ち着き具合、輸送のストレスなど上げればキリがないほどの情報が存在します。さらにリアルタイムで変動し続けるオッズを考慮し、買い目の信頼度やプラス収支にする予測などを行うことは簡単ではありません。, そのため現在AIに反映している情報はある程度少なくしているサイトが多くあります。せいぜい10項目くらいから買い目を予想していたり、全く異なる7項目を考慮しているAIを2つ掛け合わせたりしています。順調に行っているAIもありますが、やはりそれでは回収率がそこまで高くはないのが現状です。, ここまで競馬予想をするAI開発の難しさを紹介しましたが、実際に現状AI予想はどこまで信頼できるのでしょうか?回収率300%超え!とか書かれて推しているサイトも多くありますが、完全に信頼することは危険だと言えるでしょう。ある程度データや情報で予測をすることができるため、的中実績も多く報告されていますし、時には万馬券も出ているので利用する人も増えています。, しかし、冒頭でも言いましたが、最終的な判断は人間が行う必要はまだまだあると思います。むしろ、その判断の精度を上げることが的中率アップに繋がると思います。そのため自分の競馬の勉強を怠らずに、上手にAI予想を使うことが必要になると思います。, AIはドンドンシミュレーションを繰り返し学習することで精度が上がることが特徴です。今はまだ未熟な点も残っていますが今後に期待はできると思います。, 今回は競馬をAI予想する難しさについて紹介させていただきました。最近では本当に多くのAI予想サイトが誕生しており、注目度が上がっていることをひしひしと感じます。そこには面白い予想や、実際に頼りになる買い目の予測などがあるからだと思います。, まだまだ改良の余地が大いにありますが、一緒にAIの成長を見届けても楽しいかもしれませんよ?ガチの予想として使うのではなく、参考程度にしてAIと一緒に競馬の予想を楽しむのが今の使い方のような気がします。, もし今AI開発を志している方がいるのであれば、今回解説した3つのポイントに注意しながら精度が高いAIを作って欲しいと思います。, 地方競馬をAIを駆使して予想しているサイトは数は多くないですが存在します。中央競馬だけではなく地方でも競馬を楽しみたいという方におすすめのサイトを3つ紹介します!, ドワンゴが主催の電脳賞は競馬予想AIの普及や宣伝に大きな効果を発揮するものです。過去3回開催されている大会の結果と優勝チームについてまとめて紹介していきたいと思います。, 競馬予想AIのソフトはこれからの時代必要になる!?無料で利用できるお試し期間がるものなどおすすめのソフトを3つ紹介します!興味がある人は是非参考にしてみてください。, 競馬予想をAIを利用し提供しているサイトの中でも無料コンテンツがあるおすすめのサイトを3つご紹介します!利用することに抵抗がある人や興味がある人は是非参考にしてみてください。, 競馬予想をAIで行うサイトは日々増加しており、精度の高さか注目度も増しています。そこでこの記事ではAI予想を行っているアプリについて解説します。より便利に使えるアプリを3つ紹介します!, 競馬予想をAIで行っているサイトはどうやって使えばいいのか分からない人に使い方をご説明します!さらに賢くサイトを利用するための方法も5つご紹介しているので是非参考にしてみてください。, 競馬予想AI「AlphaTwinkle」で大井競馬を制覇!使い方・特徴・回収率を調査. 後ほど、画面キャプチャと合わせてメールにて詳しく解説いたします。, 次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。.