test_nn.zip ( Filesize: 218,426 )
高速スクリプト言語 LuaJIT は場合によっては、C言語より高速動作します。
使ったことの無い人には、コンパイラのC言語よりスクリプト言語のLuaJITの方が速い場合があるとは、にわかには信じられないことでしょう。でも、これは現実です。
そこで、最近注目されているニューラルネットワークによる機械学習を LuaJIT で実行してみることにしました。
この分野は最近、最もホットな分野かもしれない。
ニューラルネットワークとは、コンピュータ上に人間の脳のような再現し、学習させ、様々な情報処理に活用しようというものである。
最近では、囲碁や将棋で人間に勝ったというようなニュースが報じられているので耳にしたことがある人も多いと思うが、様々な方面への応用が期待されている。
いったん学習を終えれば、それを誰でも簡単に利用することができるが、この機械学習には、かなりの回数が必要となる。
複雑な問題になればなるほど、それなりの時間が必要になるのだ。
そこで、この学習を早く済ませるには、高速なプログラム言語の利用が必要になってくるのだ。
ニューラルネットワークの学習は、時間のかかる作業で、まさにこういう高速性が要求される分野こそ、LuaJIT が最も適した利用分野なのである。
そこで、サンプル的な意味もあり、LuaJIT で書いたニューラルネットワークプログラムを公開することにしました。
今回公開するものは、2入力、1出力の3層ニューラルネットワークです。
学習スピードに関しては、C言語より数十パーセント速い結果を確認しています。
今回公開するのは、3層ニューラルネットワーク使用するプログラムですが、他にも音楽ファイルを再生するプログラムや画像表示プログラム、データを計算してグラフ表示するプログラムなども書いていますが、いずれも高速に動作するのを確認しています。
Windows10を使用した場合などは、システム自体が遅いので、せめて使うプログラムぐらいは速いものを使用したほうが良いのではないでしょうか。
といっても、日本では、LuaJIT で書かれている MS-Windows プログラム自体をほとんどみかけませんし、情報もあまり無いと言うのが現状でしょう。
そこで、何かの参考になれば良いかと思い、今回のプログラムを公開します。
興味のある人は、試しに使ってみて欲しい。
原則、パソコン1台につき1ライセンス。転載禁止。個人利用に限る。
ソフト名: | Test_nn |
---|---|
動作OS: | Windows 10/8/7/Vista/XP |
機種: | IBM-PC x64 |
種類: | シェアウェア |
作者: | 山口 浩明 |