C#による機械学習について
最近、機械学習や人工知能システム関連のお仕事が増えている中で
手軽にC#で機械学習のプログラムが組めないかなあと考えておりました。
すると、すばらしいライブラリを見つけました。
それが今回紹介するAccord.NETなのです!!
注:テレビ通販ではありません。
本ライブラリは.NET用として提供されています。
機械学習とはWEB検索すると、いろいろ数式が出てくるのですが、
簡単にいうと入力データや出力データをシステムに入力することで
パターンをシステム自体が学習し(=近似数式を自動作成し)、
教えていないパターンも自律的に予測して(=近似数式から解を求めて)
出力する機能です。
これを応用することで、計測データをシステムに教え込むだけで、
機械が動作を予想して自律的に自分自身で制御するようになります。
機械学習にはクラスタリング、マハラノビス距離、
カルマンフィルタ等の知識も必要になってきますが、
細かな数式を知らなくても利用できるライブラリの開発も進んでいます。
C言語でのソースも一般にも公開されています。
これからはライブラリを組み合わせてシステムを「カスタマイズ」する時代です。
当方は電気制御と機械学習を連携させ、人工知能で動作するシステム構築を目下研究しています。
スマフォアプリとの連携も模索しています。
研究結果は随時このサイトで報告していきます。
|