STの汎用マイコンでAIに挑戦!【前編】注目の組込みAI、メリットと実現までの開発ステップ

ヨーロッパの大手総合半導体メーカーのSTマイクロエレクトロニクス(ST)は、AIによるセンサ情報の処理や解析、推論などの処理をクラウドなしでも行うことができる「組込みAI」に対応した汎用マイコンを提供しています。今回は、「組込みAI」の特徴や仕組み、STの汎用マイコンを搭載し「組込みAI」が手軽に体験できるIoT端末開発キット「SensorTile Kit」(センサタイル・キット)とAI開発ツール「STM32Cube.AI」の解説、実際に使ってみた体験レポートを、前後編の2回にわたってお送りします。


「SensorTile Kit」。こんなに小さい開発キットでも、AI機能を使った認識や推論ができます

後編は、ロボスタ編集部のエバンジェリストの西田が、STのIoT端末開発キット「SensorTile Kit」と専用アプリでサンプル・デモを体験。さらには、組込みAI開発ツール「STM32Cube.AI」を使った自作AIシステムを開発するためのAI学習用教材データ収集を体験してみました。


超小型・低消費電力マイコンで「組込みAI」

「組込みAI」とは、産業機器、生活家電、ウェアラブル機器、センサ・ノードなど、さまざまなIoT端末に搭載された汎用マイコンに組み込まれるAIを指します。マイコンは消費電力が少ないというメリットがある代わりに、プロセッサなどに比べると演算能力やメモリ環境が劣るため、これまでAI機能を使うのが困難でした。しかし、STは独自の技術で組込みAI用ツール「STM32Cube.AI」を開発、超小型で低消費電力のマイコンでもAIの推論が使えるようになったのです。

「組込みAI」のメリットは、ネットワーク接続や高額なGPUが不要で、スタンドアロンで動作すること。消費電力がとても少ないのでバッテリでの長期間使用も可能となります。ネットワークが不要なため、遅延やトラブルの影響を受けず、生データを常時クラウドに送る必要もないため、通信回線やクラウドシステムへの負荷もかからない、といった多くの副次的なメリットも生まれます。


超小型・低消費電力マイコンを搭載したIoT端末開発キット「SensorTile Kit」。販売代理店や直販サイト($86.0)で購入できて、手軽にAI機能を体験したり、AI開発のための深層学習用データの収集などができます。

その体験レポートをお伝えする前に、まずはSTのマイクロコントローラ製品部の木村氏に「SensorTile Kit」と「STM32Cube.AI」の話を聞きました。「組込みAI」を詳しく聞いてみましょう。


STマイクロエレクトロニクス株式会社 マイクロコントローラ・メモリ・セキュアMCU製品グループ マイクロコントローラ製品部 アシスタントマネージャー 木村崇志氏


IoT端末にもAI技術を

編集部

汎用マイコンでもAIが活用できるようになってきている、と聞きました

木村氏

現在、AIの認識や解析、予測という作業の多くは、画像や音声など、センサが認識したデータをネットを通じてクラウドに送信して処理されています。AIの「深層学習」や「トレーニング」には膨大なコンピュータの演算能力が必要なので高性能なクラウド・コンピュータで処理するのが最適ですが、学習したニューラル・ネットワーク(NN)・モデルで「推論」するAI機能の活用は、端末側で処理することで多くのメリットが生まれます。

具体的には、IoT端末を例にすれば、さまざまなセンサからの情報をすべてクラウドに送信して解析して異常を検知したり、予測の処理をしていることが多いのですが、その処理をある程度は端末側で行えば、リアルタイム性も向上し、ネットワークやクラウドへの負担も軽減され、結果として全体のコスト削減にもつながります。

当社が無料で提供している「STM32Cube.AI」というツールを使うと、認識や解析、予測などのAIの推論機能を弊社のマイコン上で利用できるようになります。


編集部

「SensorTile Kit」を使うとそれが可能になるのでしょうか

木村氏

「SensorTile Kit」は弊社の超小型のIoT端末開発キットです。マイコンだけでなく、各種センサやスマホと通信する無線モジュールなどが搭載されている基板やバッテリなどがセットになっています。これを活用するための各種ソフトウェア・ツール類は無償でダウンロードでき、AI関連の開発ツール「STM32Cube.AI」もそのうちのひとつです。サンプル・デモも提供しています。

今回、ロボスタさんで試してもらったサンプル・デモは、「SensorTile Kit」を手で持ってユーザが移動すると、歩いているのか止まっているのか、それとも走っているのか、あるいは自転車やクルマで移動しているのか、といった行動の状況がスマホのアプリ上に表示されるものです。これは実際に歩いたり走ったりして収集したデータをAIに学習させたもので、ハードウェアとしては通常のマイコンのみでAI機能の実装を実現しています。

編集部

そのようなAI活用はビジネスでも実際に応用できるのでしょうか?

木村氏

はい。工場や生産現場では同様のしくみを活用したものが既に増えはじめています。例えば、機械の故障の予兆を検知したり、予測するシステムです。故障の予兆データを学習したNNモデルをマイコンに組み込んだ小さな端末を機械の内部や配管などに設置し、振動、音、超音波など、人間では判別しにくい故障の予兆を検知して知らせてくれます。故障予知については、海外では鉄道の車両にも使われていて、車軸や車輪の振動から故障を予知します。すべてのデータをクラウドに送信していると負荷が大きいので、車軸側で振動の検知と判別を検知しています。

それらの基本的な仕組みや機械学習の方法は、今回試してもらう開発キットのサンプル・デモと全く同じです。もちろん、現場の状況や用途によって使うセンサは異なってきます。

AIと言えばGPUを思い浮かべますが、GPUはAIの処理能力で優れるものの、比較的高価で消費電力が大きいことが欠点です。一方、STのSTM32マイコンは、低価格で消費電力が圧倒的に低いことが特徴です。すなわち、GPUとマイコンは競合するものではなく、高性能な処理求められるシステムにはGPUを採用し、低コストで消費電力の少ないシステムにはマイコンを採用するといった使い分けが重要になってきます。

具体的なユースケースとして例えば、高速道路などのインフラに多くのセンサを設置してAIで情報処理したい場合、乾電池で長期間利用できるのは大きなメリットになるはずです。また、製造現場に設置された各種センサによる故障の予知などでも導入例が増えています。

編集部

マイコン×AIという点で、STの強みはなんでしょうか?

木村氏

IoT端末には欠かせないマイコン、各種センサ、通信IC、電源制御IC、各種モータ・ドライバなど、非常に幅広い製品ポートフォリオを持っていることです。「SensorTile Kit」には、マイコンのほか、加速度センサ、ジャイロ・センサ、地磁気センサ、大気圧センサ、MEMSマイク、温湿度センサ、 Bluetooth® low energy通信ICなどが載っています。

また、AIを使った行動認識がすぐに体験できるように、AI学習済みのサンプル・ソフトウェアが無償でダウンロードできますので、マイコンのプログラミングに詳しくない方でも組込みAIの仕組みと性能がすぐに実感いただけるものになっています。ぜひ使ってみてください。


編集部

MEMSマイクを搭載しているということは音も取得することができるのですか?

木村氏

はい。今回ロボスタさんに体験してもらうのとは別のサンプル・デモには、周囲の音を解析して、そこが室内なのか屋外なのか車の中なのかという3つの分類をAIで判別するものもあります。こちらも誰でもダウンロードして簡単にご利用頂けます。




「組込みAI」を開発するステップ

組込みAIを実現するまでのステップの概要は以下の通りです。多くのAIシステムと同様の開発ステップに、学習済みNNをマイコン用コードに変換するステップ以降が加わっているのが変わっている点です。



1.教材データ収集
まず「SensorTile Kit」を使って、AIに機械学習させるためのデータを収集します。歩行データを集めるには、実際に「SensorTile Kit」を持って歩いて、そのセンサ・データをスマートフォンを使って収集します。

2.教材データのラベリング
次に教材データのラベリング。いわゆる「教師あり学習」のため、多くのデータを収集するとともに、データごとにラベリングする必要があります。例えば、歩いて収集したデータなら「walk」、走って収集したなら「run」、自転車なら「bicycle」など(名称は任意で構わないが)、ラベルを付けたデータを膨大に用意します。

3.NNモデルの学習
収集したデータを使ってNNを学習させます。NNの学習のためのディープラーニング・フレームワーク自体はSTから提供されていないため、各自で用意する必要があります。STの開発環境でサポートされているディープラーニング・フレームワークは、Caffe、Keras、Lasagne、Convnet(KerasはTensorFlowバックエンドと組み合わせて使用)。今後もONNX(Open Neural Network Exchange)やTensorFlow Liteなど、対応するフレームワークは増やしていく予定です。

4.学習済みNNをSTM32用コードへ変換
NNの学習が済んだらその学習済モデルをSTM32用コードに「STM32Cube.AI」で変換します。更に「SensorTile Kit」にインストールして組み込みます。このとき別売の「NUCLEO開発キット」が必要になります。パソコンからUSBケーブル等を使って「NUCLEO開発キット」を経由して「SensorTile Kit」にNN学習済モデルを組み込む仕組みです。

5.学習済みNNによるSTM32での処理&分析
「SensorTile Kit」にNN学習済モデルが組み込まれたので、センサからの情報を認識・解析して、Walk、Run、Bicycleなどを分類することができるようになります。

「3.NNモデルの学習」以外の作業を「SensorTile Kit」と「STM32Cube.AI」で行うことができます。


後編は「組込みAI」のセンシングを体験レポート!

「SensorTile Kit」ではスマホアプリを使って、組込みAIを手軽に体験することができます。スマホアプリはiOS用とAndroid用が用意されています。いくつかサンプル・デモが用意されていて、そのひとつが前述のとおり、ユーザの行動状況(止まる/歩く/走る/自転車/自動車など)を「SensorTile Kit」が判別してスマホのアプリに通知するものです。これは、センサが収集したデータのパターンをAIが解析して特徴点を見つけ出し、「歩いている」「走っている」といった特徴を判別しています。



これらを踏まえて、後編ではエヴァンジェリストの西田が「SensorTile Kit」と「STM32Cube.AI」を使った体験レポートをお送りします。深層学習用のデータ収集とラベル付けの実践も体験します。5月30日公開予定、お楽しみに!



「ET & IoT Technology West 2019」で組込みAIのデモが体験できる

STは、組込みAIのデモや講演を、2019年6月13日(木)~14日(金)に大阪で開催される「ET & IoT Technology West 2019」(組込み総合技術展&IoT総合技術展関西)で実施する予定です。「組込みAI」に興味があれば、体験できるチャンスです。イベント情報は下記の公式ページで。

記事で紹介したAI × IoT端末開発キットを抽選で5名様にプレゼント

AIを活用したIoT端末の作成を体験できるIoT端末開発キット「SensorTile Kit」と、SensorTile Kitにソフトウェアを組み込む際に使用する「NUCLEO-L476RE」のセットを5名様にプレゼントします。応募は下記より。

> AI × IoT端末開発キット「SensorTile Kit」のセットを5名様に【ロボスタプレゼント】

ABOUT THE AUTHOR / 

ロボスタ編集部

ロボスタ編集部では、ロボット業界の最新ニュースや最新レポートなどをお届けします。是非ご注目ください。

PR

連載・コラム