UMANARI_AI競馬予想(AIは人工知能のこと)

予想の無料公開もあり。 馬の勝率と適正オッズを解析するUMANARI_AIという人工知能の開発しています。競馬の予想に人工知能がどれだけ応用できるのかを研究しています。音楽はDooDooDooMiuMiuMiuとSUSIE LOVEが好きです。

カテゴリ:コラム > 開発・研究

以前書いた記事に追記し、2019年版として改めて投稿します。

競馬用人工知能(AI)の開発言語について 2019年版

人工知能というと難しいイメージもあるかもしれませんが基本的にはプログラムの一種ですので、作るためにはプログラミング言語を使います。

そこで今回は実際に人工知能を開発している立場から数多あるプログラミング言語を、独断と偏見でまとめてみたいと思います。

最後の方にAIの開発言語の人気ランキングの投票もありますので、AIを開発してる方は是非投票してみてください。

Python(パイソン)

人工知能といえばPython、Pythonといえば人工知能という位になりましたね。

人工知能にPythonが選ばれる理由ですが、難しいプログラミングのテクニックや知識を知らなくても比較的簡単に人工知能を利用し目的の結果を得ることが出来るからと考えます。

私の知っているデータサイエンス、科学計算分野の研究者にはPython推しが多いです。こういった分野ではプログラミングテクニック自体が重要なのではなく、得られる結果が全てですので、なるべく簡単にプログラミングできる言語が好まれるようです。

競馬用人工知能の開発にもPythonは選択肢の上位に来るはずです。

Pythonの長所
・とにかく簡単に人工知能を利用し結果を求めたい時に最適
・最新の人工知能がいち早く実装されます
・情報も多くなってきました
Pythonの短所
・処理速度は速くありません
・スタンドアロンのソフトとしては向いていません(出来ない事はありませんが)

C/C++

C言語は昔からあり、プログラミング言語の中での知名度は1番なのでは?

もちろんC言語でも人工知能は作れます。というか、コンピュータの性能を引き出すことと開発難易度のバランスから言えば、これがベストの選択のような気がします。

個人的には最も好きな言語です。

C/C++の長所
・コンピュータの性能を引き出せます(だたし、最速とは限りません)
・歴史が長く、情報が多いです
C/C++の短所
・Python等に比べると学習、開発に時間が掛かります
・Pythonに比べてコードが増えます
・難しいイメージがあること

JAVA(ジャバ)

PCだけではなくAndroidスマホやLinuxでも動きます。

個人的には人工知能のイメージは薄いですが、JAVAでも人工知能は作れます。作れますがPythonやC言語を選択してもよい条件なら、あえてJAVAを選ぶ理由は私には思いつきません。

JAVAの長所
・シェアが大きく、開発するための情報が豊富で、習得しやすい気がします
・多くのプラットフォームで実行可能です
JAVAの短所
・処理速度は速くありません

Ruby(ルビー)

日本で開発されたプログラミング言語で、Pythonと比べられることが多いです。

正直、初めて知った頃は色物かと思いましたが、特に日本では確固たる地位を築いています。

Rubyの長所
・日本で開発されただけあって日本語の情報が多いです
・Pythonと同様、初心者にもやさしいです
・Webアプリ開発ならおすすめ
Rubyの短所
・人工知能に関してはPythonの方が数歩先行している印象です
・処理速度は速くありません

C#/VisualBasic

Windows用ソフトを作るのには最適ですが、人工知能に特段適しているということはありません。

事務ソフトから科学計算分野まで幅広く使えます。

C#/VisualBasicの長所
・歴史が長いので情報が多いです
・Windowsを使った事務ソフトを作るならこれが最適と思います
・独特な癖はあるものの、初心者にもやさしいと思います
C#/VisualBasicの短所
・VisualBasicの方は時代遅れとされることも多いです
・一時期に比べC#の勢いが減っている気がします
・処理速度は速くありません

Swift

iOSを使うiPhoneやiPadで動かす人工知能を作るならSwiftでしょう。

個人的にはObjective-Cも新しい言語な気がしていましたが、流石にプログラミング言語の進化は速いです。幾ら今はPythonが人気とは言っても今後これもまた変わる事でしょう。

Swiftの長所
・長所というわけではありませんがiPhoneやiPadなら必須です
Swiftの短所
・使えるプラットフォームが限定されます

その他

プログラミング言語にはこれら以外にも沢山の種類があります。

今回は人工知能に適していると思う言語を取り上げたのですが、他の言語でも人工知能を開発するのは可能です。

敢えて他の人とは違う言語で人工知能を開発するのも面白いかもしれません。

wikiのプログラミング言語一覧

競馬用人工知能の開発に最適なプログラミング言語

競馬用の人工知能を作るのにJRA公式のJRA-VAN データラボ(Datalab.)を利用する場合が多いと思いますが、ここで提供されているSDK(ソフトウェア開発キット)はC#、C++、Delphi7、VB2015対応となっているので通常はこの中から選ぶ必要があります。それにしてもDelphiって懐かしいです。

勿論、少し技術のある人はJRA-VAN データラボをPython等に対応させることになるわけです。JRA-VAN データラボをPythonに対応させる方法はここでは書きませんが、プログラミングレベルとしては初級から中級の間の技術があれば難しくないはずです。

競馬用人工知能といっても特別なものではなく、一般的な人工知能の範疇になります。これから競馬人工知能を開発するのであればやはりPythonやC/C++/C#を選択すれば間違いないと思います。JAVAも悪くないですね。


最新のAI開発言語人気ランキング

最新のAIの開発言語の人気ランキングはどうなのでしょうか?非常に興味があります。

実際にAIを開発している方や勉強している方に投票してもらえると嬉しいです。

いくらAIブームといっても、実際にAIを開発している方はそれ程居ない様な気もしますので、もしかしたら投票数が0の可能性もあるのではと思っています。

AIの勉強として使っている言語でもOKです。お気軽にどうぞ。

下のブログランキングのバナーのクリック数が、このブログを続けるやる気に繋がっています。引き続きよろしくお願いします。

人気ブログランキング

最新のUMANARI_AI開発状況のつづき

AIを使った穴馬解析機能の追加に備えて、今まで考えていた細かい改良を行っています。

今行っている改良は、ブログの更新に関する部分で、解析結果には影響しません。これによりブログを続ける負担をより減らせるので、更新する身としてはとても大切な改良になりそうです。

一応考えていた改良はほぼ終わりました。

これからいよいよ人工知能を使った穴馬解析機能の作成に入ろうと思います。

どの様な結果が出るのか今から楽しみです。

下のランキングバナーのクリック数がブログを続けるやる気に繋がっています。是非クリックをお願いします。

人気ブログランキング

最新の解析はこちら

1/19(土) 中山 解析(予想) 初富士ステークス

1/19(土) 中京 解析(予想) 中京スポニチ賞

1/19(土) 京都 解析(予想) すばるステークス

最新のUMANARI_AI開発状況

UMANARI_AIにAIを使った穴馬解析機能を追加する予定ですが、この改造の前に行っておきたい事がありそちらを今進めています。

これまでUMANARI_AI競馬予想のブログを運営する為に6つのソフトを作り使っていました。

最初は気軽に始めたUMANARI_AIのブログではありましたが、定期的に投稿する為には割と面倒な作業がありまして、これを簡単にする為のソフトを必要と思ったときにその都度作ってきました。

今後も色々なアイデアを実現していきたいと思っていますので、今回穴馬解析機能を追加するのに合わせ、ブログの運営の為に作ったソフトを統合することにしました。

この記事を投稿する時点で今まで6つあった自作のソフトを4つにまでほぼ統合出来ました。

更に、単純な統合以外にもブログの投稿を簡単にする機能を追加中です。

ブログの投稿が簡単になれば、その分解析の精度向上、新機能開発のやる気に繋がりそうです。

下のランキングバナーのクリック数がブログを続けるやる気に繋がっています。是非クリックをお願いします。

人気ブログランキング

アンケートありがとうございました

今回のアンケート「UMANARI_AIにあると良い機能はありますか?」に投票していただきありがとうございました。引き続き投票をお待ちしております。

UMANARI_AI競馬予想の追加機能について

今回アンケートの質問の作り方をもっと考えればよかったなと反省しています。「その他」という選択肢を入れるべきでしたね。

今の時点の結果を参考にさせてもらい、人工知能を使って穴馬を探す機能を優先して追加してみようと思います。

穴馬を探すのにAIがどれだけ有効なのかは実際に作ってみないと分かりませんが、面白い事になるのではないかと楽しみです。

又、アンケートの中でこのままで良いという嬉しいご意見もありました。ありがとうございました。追加する機能は今までの機能とは別なものとして開発しますので、今迄の物は基本的には変わらない予定です。

そもそも穴馬とは?

AIでの穴馬の見つけ方ですが、いざ考えてみると、そもそも穴馬とは何なのかという基本的な事に行きつきます。

AIで穴馬を見つけるには、AIに穴馬がどの様なものなのかを定義する必要があります。尚、この定義する部分は今後のAIの進化により大きく様変わりする事が予想されますが、現時点では人間が定義する方法が簡単です。

本命馬とは実オッズが低い馬の事を指すわけですから、穴馬とは実オッズが比較的高い馬の事を指すはずです。しかしそう単純に定義すると当日の実オッズを取り込む必要が出てくるので、現在のUMANARI_AI競馬予想のブログの様に事前に投稿する方法にする為にはこの部分は少し工夫する必要がありそうです。

少し時間はかかるかもしれませんがお楽しみに。

下のランキングバナーのクリック数が増えると開発スピードが上がるかもしれません。是非クリックをお願いします。

人気ブログランキング

仮想通貨がいい流れになってきました(競馬用AIにとっては)

2018年12月25日、GMOインターネットのマイニングマシン開発中止のニュースが入ってきました。

個人的にはビットコインをはじめとする仮想通貨投資にはあまり興味はありませんが、仮想通貨をマイニングするコンピュータには興味があります。

仮想通貨のマイニングの詳しい事はここでは省きますが、ここ数年の仮想通貨バブルに伴い、マイニング用コンピュータの界隈が非常に賑わっていました。

中にはGMOインターネットの様にマイニング用のコンピュータを開発する会社も現れ、コンピュータ好きとしては非常に心が躍りました。

プロセスルール7nmの独自チップ、33テラハッシュ/秒なんてのを見ただけでわくわくしましたが結局販売停止との事です。仮想通貨で儲けることが目的ですからそれが出来ないのなら当然と言えば当然です。

マイニング用PCを競馬用人工知能に利用

実は個人的にはこの流れを待っていました。

マイニング用のコンピュータは特殊な計算が高速で演算できるように特化しているある意味スーパーコンピュータ的なものなのですが、これを競馬用人工知能を動かすコンピュータとして利用したいのです。

因みにこういったマイニング用コンピュータの事をマイニングリグと言い、単にリグとも言われます。

このまま仮想通貨のマイニング需要が減ればマイニングリグがより中古市場に流れるのではないかと期待しています。

例えばNVIDIAのGeForce GTX 1080 Tiを8枚積んだ構成にしたらどれだけ高速でUMANARI_AIが動くのか興味があります。高速で演算できるほどより確からしい解析が出来るはずです。勿論最適化には相当時間が掛かりそうですが。

下のブログランキングのバナーのクリック数が、このブログを続けるやる気に繋がっています。引き続きよろしくお願いします。

人気ブログランキング

UMANARI_AI競馬予想にご訪問ありがとうございます。

サイエンスに「AlphaGo Zero(アルファ・ゴ・ゼロ)」の論文が掲載されました

「AlphaGo Zero」はグーグル系が開発している囲碁用の人工知能(AI)ですが、これを将棋やチェスに応用し、こちらでも世界最強になったようです。

詳しくは学術誌のサイエンスに掲載されていますので、興味のある方は見てみる価値があると思います。

サイエンスの掲載ページへ

人工知能に限界はあるのか?

現時点で人工知能に限界があるのかという問いに対して、その答えを考えるのは無意味と思っています。
ほんの数年前に「AlphaGo Zero」の強さを想像できる人がどれだけいたのか?

競馬用人工知能の開発も待ったなしです。

今後も人工知能の発展から目が離せません。

下のブログランキングのバナーのクリック数が、このブログを続けるやる気に繋がっています。引き続きよろしくお願いします。

人気ブログランキング

UMANARI_AI競馬予想にご訪問ありがとうございます。

もうすぐ4年目に入ります

人工知能の競馬への応用について、個人的な興味から始めたUMANARI_AI競馬予想ですが、おかげさまで今月で4年目となります。

この3年目も、結局アイコン画像も何も作らず、文中にも画像を使わない等、シンプルすぎるブログのスタイルは変わりませんでした。今後もこのスタイルは変わらないような気がします。

こんな文才も面白味もないブログですが、もしよければまた見に来てもらえると嬉しいです。

4年目の方向性について

また今度の機会にまとめようと思ってはいますが、今後の開発の方向性を少し書こうと思います。

3年目では解析勝率の精度の向上、解析適正オッズの算出等を実現しました。

4年目は回収率の追求を目標にしようと考えています。

UMANARI_AIの回収率への応用

こんなことを言っては何ですが、現在のUMANARI_AIは回収率を追求する人工知能ではありません。あくまでそれぞれの馬の勝率を算出する人工知能です。

この事は競馬の仕組みを知っている方なら当然の事と理解してもらえるはずです。幾ら予想した馬が的中したとしてもオッズが低くければ回収率は下がります。

回収率を上げる為には、それぞれの馬の勝率を求めたうえで、実際のオッズ値を考慮し馬券を買う必要があります。どんなに勝率が低くても、オッズ値が高ければ結果的に回収率が上がります。

もしUMANARI_AIの解析結果を利用して実際に馬券を購入する場合、現状ではオリジナルのルールを開発する事になります。(これが競馬の醍醐味といえるかも?)

どうやって回収率を上げるか

これまた詳細は今度の機会にしようと思いますが、競馬には必勝法が存在します(条件はありますが)。例えば馬法の方程式などが考えられてきています。これらをUMANARI_AIと組み合わせる事を考えています。

その他、色々とアイデアが溜まってきているのでそれらをこれからの1年で実現していこうと考えています。

これからもどうぞよろしくお願いします。

下のブログランキングのバナーのクリック数が、このブログを続けるやる気に繋がっています。引き続きよろしくお願いします。

人気ブログランキング

↑このページのトップヘ