はじめまして。
このブログでは、ボートレースAIの開発過程と検証結果を公開していきます。
ボートレースの予想をAIに行わせたら、どこまで実用的なものが作れるのか。
そんな疑問から、過去のレースデータを集め、選手や艇の情報を数値化し、予想順位を作る仕組みの開発を始めました。
ただし、このブログは「必ず勝てるAI」を紹介するブログではありません。
AIがどのように予想しているのか、どのような検証を行ったのか、そして実際にどの程度の結果が出たのかを、できるだけ正直に公開する開発記録です。
このブログを始めた理由
ボートレースAIや競艇予想について調べると、的中実績や高配当の結果を強くアピールしている情報が数多く見つかります。
しかし、良い結果だけを見ても、その予想方法が本当に有効なのかは分かりません。
何レースを検証したのか。
外れた予想はどのくらいあったのか。
的中率だけでなく、実際の回収率はどうだったのか。
途中で予想条件を変更していないか。
こうした情報がなければ、AIの実力を正しく判断することは難しいと考えています。
そこで、このブログでは完成した結果だけでなく、AIを作る過程から公開することにしました。
成功した改善だけでなく、効果がなかった方法や予想が外れた理由についても記録していきます。
現在開発しているボートレースAI
現在開発しているAIは、レースに出走する6艇をそれぞれ評価し、スコアの高い順に予想順位を作る仕組みです。
現時点では、次の機能が完成しています。
- レースデータの収集
- SQLiteへのデータ保存
- データの正規化
- 各艇のスコア計算
- 予想順位の算出
- バックテスト
- 信頼度の分析
- Forward Testの仕組み
AIの評価方法には、独自に作成した「Explainable Score」という仕組みを採用しています。
Explainable Scoreは、AIが出した順位だけを表示するのではなく、どの要素が評価につながったのかを確認できるようにする考え方です。
予想結果だけではなく、AIがなぜその艇を高く評価したのかを、できるだけ分かりやすく説明できる仕組みを目指しています。
詳しい計算方法や考え方については、今後の記事で順番に紹介します。
現在の検証結果
これまでに587レースを使って予想結果を評価しました。
現在の結果は次のとおりです。
| 評価項目 | 結果 |
|---|---|
| 評価レース数 | 587レース |
| 予想1位的中率 | 52.6% |
| 予想上位3艇の一致率 | 26.4% |
| 予想順位の完全一致率 | 8.7% |
予想1位的中率だけを見ると、良い数字に見えるかもしれません。
しかし、ボートレースでは1着を当てるだけで利益が出るわけではありません。
買い目、オッズ、購入金額を含めて考えなければ、本当に有効な予想なのかは判断できません。
また、この結果は過去データを使った検証結果です。
過去のレースで良い結果が出たとしても、今後のレースで同じように通用するとは限りません。
そのため、現在は過去データとは別の新しいレースを使って検証するForward Testの準備を進めています。
Forward Testで実力を確認する
AIの検証では、過去データに合わせすぎると、実際のレースでは通用しない予想方法ができてしまうことがあります。
過去の結果を見ながら条件を何度も調整すれば、バックテスト上の成績を良く見せることはできます。
しかし、それではAIが未来のレースでも有効なのかは分かりません。
そこで、このAIでは、事前に決めた条件を固定したまま、新しく追加されるレースデータで検証します。
現在採用している戦略は、AIが予想した上位3艇を使った3連複です。
さらに、AIの1位評価と2位評価の差を表す「top1_gap」という指標を使い、AIが比較的自信を持っているレースだけを対象にします。
検証に使用する閾値は、学習用データだけを使って11.02に決定しました。
Forward Testでは、この11.02という数値を途中で変更しません。
結果が悪かったから条件を変える、良かったレースだけを選ぶ、といったことは行わず、同じ条件で検証を続けます。
このブログで公開すること
今後、このブログでは主に次の内容を公開していく予定です。
AI開発日記
新しい機能を作った理由や、開発中に発生した問題、改善した内容を紹介します。
うまくいった改善だけでなく、期待した効果が出なかった方法についても記録します。
検証結果
AIの的中率、回収率、対象レース数などを公開します。
Forward Testの途中経過や、月ごとの結果についてもまとめる予定です。
AIの仕組みの解説
Explainable Score、top1_gap、Forward Test、データリークなど、AI開発で使用している考え方を、専門知識がない方にも分かるように説明します。
開発環境とブログ運営
Python、SQLite、ダッシュボード、WordPressなど、AI開発やブログ運営で使用している環境についても紹介します。
将来的には、データ収集からAI予想、記事作成、WordPressへの下書き登録までを半自動化することを目指しています。
このブログで守ること
このブログでは、次の方針を大切にします。
- 良い結果だけを選んで公開しない
- 外れた予想も記録する
- 的中率だけでなく回収率も公開する
- 検証したレース数を明記する
- 検証条件を途中で都合よく変更しない
- AIの弱点や失敗も隠さない
- 改善履歴を残す
AIの結果が良い時期もあれば、悪い時期もあると思います。
予想方法を改善した結果、逆に成績が下がることもあるかもしれません。
そうした過程も含めて公開することで、ボートレースAIが本当に役立つものになるのかを検証していきます。
ブログ運営について
このブログでは、将来的に広告などを利用し、サーバー代やブログ運営費を回収できる程度の副収入を目指します。
ただし、収益を優先して実績を大きく見せたり、「必ず勝てる」「絶対に当たる」といった表現を使用したりする予定はありません。
まずは、読者にとって役立つ情報を積み重ね、信頼して読んでもらえるブログを作ることを目標にします。
まとめ
ボートレースAIの基本的な開発は進み、これから新しいレースデータを使ったForward Testを始める段階まで来ました。
現在の予想1位的中率は52.6%ですが、この数字だけでAIの実力を判断することはできません。
今後は、実際のレースを使った検証を続け、的中率だけでなく回収率や予想の安定性についても確認していきます。
成功した結果だけでなく、失敗や外れも含めて公開していきます。
このAIがどこまで成長するのか、開発の過程とともに記録していきます。


コメント