メディア

マイコンで実現!実践AIソリューション〜「組み込みAI」の復習とプロジェクトの概要ハイレベルマイコン講座 【組み込みAI実践編】(1)(2/3 ページ)

» 2020年09月29日 11時00分 公開

3. 「組み込みAI」のメリット/デメリット

 組み込みAIのメリットは、ネットワーク接続なしでスタンドアロン動作ができるため、膨大な生データを送る通信(有線、Wi-Fi、LTEなど)が不要になり、ネットワーク遅延なく高速な応答処理が可能になる点である。最近話題になっているセキュリティの観点で考えると、生データをネットワークへアップロードしないため、プライバシー確保やセキュリティ面のリスクも低減できる。

 また、低消費電力マイコンを使うと長時間のバッテリー駆動が可能になる点や、コストを低く抑えられる点も挙げられる。さらに、クラウドでの処理やサーバ、GPU(Graphics Processing Unit)が不要になるため、組み込みシステムを小型化でき、サーバやGPUが使えない環境にも適応可能である(図2)

図2:組み込みAIのメリット

 一方、推論アルゴリズムを変更したり、新しいアルゴリズムを追加したりする場合に、クラウドサービスやGPU内蔵のPCやサーバなどのディープラーニングフレームワークまでさかのぼらなくてはならない点はデメリットとなる。また、追加の学習(追学習)を行った推論アルゴリズムを使用したい場合は、追学習させた推論アルゴリズムをマイコンに再インストールする必要が出てくる。

4. 通常のAIと「組み込みAI」との違い

 マイコンの内蔵メモリは、ディープラーニングしたモデルを格納するには小さすぎるし、メモリを外付けにしたとしても限界がある。そのため、人工ニューラルネットワークモデルの学習結果をそのままマイコンに移植することはできない。また一般的に、人工ニューラルネットワークはC言語など組み込みで使用される言語では記述されず、Pythonなどの高水準言語(高級言語)が使用されるため、そのままマイコンに実装することができない。

 そのため、人工ニューラルネットワークモデルの学習結果の推論アルゴリズムを、マイコンで演算可能なコードに変換するインタフェースプログラムが必要になる。

すなわち、組み込みAIでは「推論アルゴリズムをマイコン用コードに変換する」必要がある。この工程が、通常のAIとマイコンを使った「組み込みAI」で最も異なる点だ。

 マイコンが動作する言語は、マイコンによって異なる。従って、この工程は各マイコンメーカー、またはマイコンを使ったシステム開発を手掛ける企業のサービスを活用するのが便利だ。

 STマイクロエレクトロニクスは、32ビットマイコン「STM32ファミリー」用に「STM32Cube.AI」※1)というツールを無償で提供している。このツールを使うと、人工ニューラルネットワークの学習で構築された推論アルゴリズム部分をオブジェクトコードに変換でき、その推論アルゴリズムとマイコンとのインタフェース部分はC言語で生成される。C言語はマイコンのAPI(Application Programming Interface)としてマイコンにインポートすることができる。取り込まれたAPIはマイコン内で処理され、使用可能かどうかを分析され、使用可能であれば推論アルゴリズムのインポートが完了する。

※1)STM32Cube.AIについて

Copyright © ITmedia, Inc. All Rights Reserved.

RSSフィード

公式SNS

EDN 海外ネットワーク

All material on this site Copyright © ITmedia, Inc. All Rights Reserved.
This site contains articles under license from AspenCore LLC.