PoC再生支援サービス
「Re-PoC(リポック)」

停滞しているAIプロジェクトを短期間、低価格で再生します

AIプロジェクト止まっていませんか?

AI導入のためのPoCは成功したが、なかなか次のステップには進まないという状況になってはいませんか?
PoCで高精度なAIを開発できても、それをそのままマイコンに搭載するのは困難なことが多いです。 以下に挙げる2つの課題が、AIのマイコン搭載を困難にしています。

課題① AIのモデルサイズが過大で、マイコン搭載不可

多くのAIアルゴリズムは、モデル内部に多くのパラメーターを保持しており、モデルサイズが大きくなります。 アルゴリズムの種類によりますが、数MB~数GBといったモデルサイズが一般的です。
しかし、実際に製品に搭載されるマイコンのメモリは、1MB以下のことも多いです。 そのため、パソコン上では動いていたAIモデルが、実際のマイコン上では動かないといったことが起こります。
AIのモデルサイズを小さくする、枝刈り、量子化、蒸留などの圧縮手法もあります。 しかし、精度を保ったままモデルサイズを小さくするのには限界があります。

サイズの大きいモデルはマイコンに搭載不可

課題② マイコンの計算リソースが足りない

エッジAIでは、速い推論速度が求めらることが多いです。 特に自動車の自動運転などを考えると、自動車の周辺環境は毎秒ごとに大きく変化します。 そのため、AIの推論速度にもリアルタイム性が求められています。
しかし、ディープラーニングなどのアルゴリズムの推論では多くの計算が行われるので、 高速に動かすためには大きな計算リソースが必要となります。
そのため、計算リソースが潤沢ではない多くのマイコンでは、 AIアルゴリズムをリアルタイムに動かすことができず、課題となっています。

パソコンとマイコンのAI推論時間
マイコン上では制御周期以下での推論ができない

課題解決のための手段と現状

上記の2つの課題を解決するにはどうしたらよいでしょうか?
よく利用されているのは、エッジでのAI処理に特化したマイコンです。 しかし、それらの特殊なマイコンは一般的なマイコンと比べ高価であり、予算の関係上使えないことも多いです。
また、エッジAIではなく、クラウドAIを利用するという手も考えられます。 サーバーの潤沢なリソースを利用可能なクラウドAIであれば、上記の課題は解決できますが、 通信が必要ないというエッジAIのメリットを捨てることになってしまいます。
一般的なマイコンへのAI搭載を実現するために、多くの試行錯誤が必要になります。 AIモデルのパラメータチューニングや前処理手法の変更などです。 場合によっては、データの取得し直しが発生する場合もあります。
そのように試行錯誤を繰り返すうちに、プロジェクト期限が迫ってきたり、開発予算がなくなってしまったりと、 プロジェクトが凍結してしまうケースも多く存在します。 なかなかPoCが進まない様子は、PoC疲れ、PoC地獄などと言われ、AI導入の課題の一つであるとされています。

エイシングのAIアルゴリズム
“MEMORY SAVING TREE”,“MSAT++”により
マイコンへのAI搭載の課題を解決できます

エイシングは超軽量AIアルゴリズム"MEMORY SAVING TREE"や、 超軽量異常検知アルゴリズム"MSAT++(Memory Saving Anomaly Tracker ++)"を提供しています。 MEMORY SAVING TREEやMSAT++は以下2つの特徴を備えており、従来のAIアルゴリズムでは困難だった、AIのマイコン搭載を可能にします。
MEMORY SAVING TREE,MSAT++が搭載されたマイコン

特徴① 省メモリのため、マイコンに搭載可能

MEMORY SAVING TREE,MSAT++のモデルサイズは数KB~と非常に軽量です。そのため、メモリの小さいマイコンにも搭載できます。 具体的には、Arm®社が提供する、Cortex®-M0をベースとしたマイコンにも搭載可能です。
また、他のアルゴリズムと異なり、圧縮手法を用いてモデルサイズを小さくするのではなく、 始めからモデルサイズが小さくなるように設計されているのも特徴です。 そのため、省メモリであるにも関わらず、他のアルゴリズムと同等以上の精度を実現できています。

MEMORY SAVING TREE,MSAT++はモデルサイズが小さく、マイコンに搭載可能

特徴② 計算リソースの少ないマイコン上でも高速推論

MEMORY SAVING TREE,MSAT++は内部で行われる計算回数も少ないため、パソコン上はもちろん、 計算リソースの少ないマイコン上でも高速な推論を行うことができます。 従来のAIだと難しかった制御周期以下でのリアルタイムな推論も可能となります。
NASAによるデータセット"Airfoil Self-Noise"(※)を用いて作成した 5入力1出力のMEMORY SAVING TREEモデルを、マイコン"STM32H747"(400MHz)上で動かすと、 1データ当たりの推論時間が約62マイクロ秒となります。

※無響風洞で実施された2次元および3次元翼の翼断面の一連の空力・音響試験の結果を表すデータセット

MEMORY SAVING TREE,MSAT++は制御周期内での推論が可能
各アルゴリズムの詳細についてはこちらのページをご覧ください。
■ MEMORY SAVING TREE
■ MSAT++

PoC再生支援サービス「Re-PoC(リポック)」提供中

エイシングでは、MEMORY SAVING TREE,MSAT++を活用したPoC再生支援サービス「Re-PoC(リポック)」を提供しています。
下記の応募条件に当てはまる場合、過去のPoCデータを利用することにより、最短1~2週間でMEMORY SAVING TREE,MSAT++を使ったPoCを実施することができます。工数が減る分、通常のPoCと比較して費用も低減可能です。
詳しくはお問い合わせください。

応募条件

・過去のPoC案件で、次の①②いずれかの課題に直面した経験をお持ちであること
 ①AIのモデルサイズが大き過ぎる
 ②ハードウェアへの実装時に推論速度が不足する
・当社と秘密保持契約を締結後、過去のPoC案件でAIモデル作成に用いたデータ、要求される精度、モデルサイズ、推論速度などの要件を提供可能であること

ご参考①:軽量性と精度の両立を実現

上段でも触れましたが、一般にAIを省メモリ化するためには、精度を犠牲にする必要があります。 一度高精度なモデルを作成した後、それを圧縮してメモリ量を減らす必要があるためです。
しかし、MEMORY SAVING TREE,MSAT++は始めから省メモリになるように設計されており、高精度かつ省メモリを実現しています。
RandomForestとMEMORY SAVING TREEのメモリ量と精度の比較
このグラフは、MEMORY SAVING TREEとRandomForestの2つのアルゴリズムでモデルを作成したときの、モデルサイズと精度の関係を表したものです。 モデルの作成には、NASAが公開するデータセット"Airfoil Self-Noise"を使用しています。
縦軸のRMSEは予測結果の誤差を表していて、この値が小さいほどよいモデルであるとされます。 一方、横軸のMoel Sizeは、AIモデルの大きさを表しています。
同じ精度で2つのアルゴリズムを比べた時、MEMORY SAVING TREEはRandomForestと比べ、 モデルサイズが約144分の1になっており、精度が低くなることなく、省メモリになっていることが分かります。
また、2つのプロットを比べると、MEMORY SAVING TREEの方が左下に位置しており、精度、軽量性がともに優れていることが分かります。

ご参考②:MEMORY SAVING TREE,MSAT++は
ディープラーニングと比べ機械制御に特化

MEMORY SAVING TREE,MSAT++とディープラーニングの比較
MEMORY SAVING TREE,MSAT++は、ディープラーニングと比べ、軽量で処理時間が短いことを活かし、機械制御や異常検知などを得意としています。
一方ディープラーニングは、複雑なデータの処理に向いており、画像認識、行動計画、言語処理などを得意としています。
記事発行日: 2021年8月31日 最終更新日: 2022年1月5日