Electronics

2017.08.10

プロジェクトに機械学習を取り入れる

Text by Takumi Funada

筆者が電子工作を含むプロトタイピングの発表を見てきて、機械学習が取り入れられているプロジェクトに出会うようになったのは3年くらい前のこと。「センサのデータはSVM(サポートベクターマシン)で分類しました」といった説明をされて、慌てて意味を調べたりしたものだ。最近は、当たり前のように機械学習のフレームワークを使って判断の機能を持つ作品を作ってしまう人が増えてきた。

fokaさんもそんなひとりかもしれない。「メガネな人を見つめてくれるWebカメラ」という見出しで、そのものずばりの作品を公開している。KerasというPythonベースの深層学習ライブラリとArduinoでのモーター制御を試すために作ったらしい。

Kerasは「機械学習ライブラリであるTensorFlowやCNTK、Theanoをラップしてくれるライブラリです。それぞれを直接使うよりもコードの記述量がグッと減ります」とのこと。残念ながら、筆者はこれらの単語を聞いても、TensorFlowのパズルぽいロゴを思い出すくらいしかできないが、きっと取っつきやすい環境なのだろう。少しでも簡単になるなら使わない手はない。

fokaさんの記事では、学習からカメラコントロールまでの行程をコードスニペットや参考リンクとともに公開している。こんなふうに進めればいいのか、というおおまかな納得感が得られる説明でありがたい。