エッジAIの可能性を広げる「MST」、なぜCortex-M0+マイコンでも動くのか組み込み開発 インタビュー(1/2 ページ)

エッジAIスタートアップのエイシングは、マイコンを使って、AIによる推論実行だけでなく学習も行えるアルゴリズム「MST」を開発した。ローエンドの「Cortex-M0+」を搭載するマイコンでも動作するMSTだが、より多くのメモリ容量が求められるランダムフォレストと同等の精度が得られるという。開発の背景を同社 社長の出澤純一氏に聞いた。

» 2021年04月06日 10時00分 公開
[朴尚洙MONOist]

 ディープラーニング(深層学習)の進化をきっかけに2015年ごろから盛り上がりを見せている第3次AI(人工知能)ブームだが、もはやAIはブームというよりは基盤技術として定着を見せつつある。製造業でも進展しているDX(デジタルトランスフォーメーション)における代表的な技術となっているのもAIやIoT(モノのインターネット)になるだろう。

 現在のAI技術をけん引するディープラーニングは、畳み込みニューラルネットワーク(CNN)に代表されるように強力な演算処理能力が求められるため、高性能のCPUの他GPUやFPGA、専用のAIアクセラレータなどが必要になる。しかし、製造業で広く用いられている組み込み機器は、サイズや消費電力などの制限もあって、そういった高性能チップを用いていないことが多い。その一方で、これらの組み込み機器は、AIも含めた演算処理の結果として制御を行う際にミリ秒レベルのリアルタイム性が求められる。このため、AIの処理を強力な演算能力を持つクラウド上で行うという手法は、通信によって発生する遅延時間を考慮すると取りづらい。

 そこで、組み込み機器に搭載可能なプロセッサを用いて、より高速かつ高効率にAIの処理を行う技術として「エッジAI」の開発に注目が集まっている。ただし、多くのエッジAIは、最低でもインテルのCPUや、Armでも「Cortex-Aシリーズ」を用いるのが一般的だ。より低コストで省電力ではあるものの、処理能力が低く、使用可能なメモリ量も少ないマイコンでエッジAIを運用することは難しいといわれている。

エッジAIアルゴリズム「MST」が実装可能なマイコン「STM32G0」 エッジAIアルゴリズム「MST」が実装可能なマイコン「STM32G0」。STM32G0のパッケージサイズが4.9×6mmであることから「“指先大”のマイコンにも実装可能」(エイシング)としている(クリックで拡大) 出典:エイシング

 エッジAIの開発に注力しているスタートアップのエイシングは2021年1月、このマイコンを使って、AIによる推論実行だけでなく学習も行えるアルゴリズム「MST(Memory Saving Tree)」を開発した。さらに、ここで言う“マイコン”は、ハイエンドのマイコンに限られず、Armの「Cortex-Mシリーズ」でもローエンドの「Cortex-M0+」を搭載するマイコンに対応する。

 これまでのエッジAIは、現場にあるセンサーなどの末端の機器に組み込むのではなく、それらの機器をIoT技術によってつなげた高性能のゲートウェイなどで処理するものがほとんどだった。しかし、MSTを用いれば、センサーなどにAIを組み込んでより効率的な制御などが行える。また、処理負荷が小さく、使用するメモリ量も少ないので、既存の機器に無理なく追加することも可能になるというわけだ。

「DBT」と同じ木構造のAIアリゴリズム

 エイシングは、MSTの発表からさかのぼること2年前の2019年1月、ディープラーニングとは異なる木(Tree)構造のAIアルゴリズム「DBT(Deep Binary Tree)」を発表している。DBTは、AIの学習に高性能のCPUやGPU、FPGA、AIアクセラレータなどを用いた大規模な計算環境が必要となるディープラーニングに対して、Cortex-Aシリーズなどを搭載するプロセッサでリアルタイムにエッジ側で学習を行えることが特徴。DBTを実装した「Raspberry Pi Zero」では、学習は50μ〜200μs、推論は1μ〜5μsで応答可能としていた。

ディープラーニングとDBTの比較 ディープラーニングとDBTの比較(クリックで拡大) 出典:エイシング
エイシングの出澤純一氏 エイシングの出澤純一氏(クリックで拡大)

 ただし、DBTは高性能のプロセッサを必要としないものの、MBオーダーのメモリ容量が必要だった。エイシング 社長の出澤純一氏は「組み込み機器に幅広く利用してもらえるエッジAIとするには、より省メモリである必要がある。そこで、DBTと同じ木構造のAIアリゴリズムとして開発したのがMSTだ」と語る。

 今回のMSTの動作確認では、STマイクロエレクトロニクスのマイコン「STM32G0」を用いている。STM32G0は、Cortex-Mシリーズでもローエンドの「Cortex-M0+」(動作周波数64MHz)を搭載し、メモリ容量がフラッシュ32KB、SRAM8KBとなっている。DBTがMBオーダーであるのに対し、MSTはKBオーダーで済んでいるので、必要とするメモリ容量は1000分の1以下に削減できている。

 出澤氏は「まさに段違いの省メモリ化を実現したが、AIとしての性能は従来と同等以上の精度を維持できている」と強調する。実際に、NASA(米国航空宇宙局)が行っているベンチマーク試験では、木構造AIアルゴリズムの1つであるランダムフォレストが数十MBのメモリ容量を必要としたのに対し、MSTはランダムフォレストと同等の精度をメモリ容量32KBで実現したという。

       1|2 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.