新エネルギー・産業技術総合開発機構(NEDO)と東京工業大学(東工大)は8月23日、スマートフォンやロボットなどのエッジ機器において、高効率な畳み込みニューラルネットワーク(CNN)推論処理を行うプロセッサアーキテクチャを開発し、それを用いたLSIを試作。実測で最大26.5TOPS/Wの実効効率を達成したことを発表した。

同成果は、東工大 科学技術創成研究院 AIコンピューティング研究ユニットの本村真人教授、同・安藤洸太特任助教らの研究チームによるもの。詳細は、8月22日から24日までオンラインで開催されたプロセッサLSIの主要国際会議「Hot Chips 33」のポスターセッションにて発表された。

アプリケーションの高度化に伴い、大規模化した畳み込みニューラルネットワーク(CNN)は応用範囲が急速に広がる一方で、特に電力・面積的制約の大きな端末(エッジ)機器で利用する場合に、要求される計算量とメモリ容量の肥大化が問題となっている。

これに対処するため、アルゴリズム面から提案されてきたのが、CNNの枝刈り(プルーニング)に代表される、CNNモデルの冗長性を利用し、認識精度を保ったままモデル規模を縮小(スパース化)する手法だが、同手法では、計算量とメモリ容量の削減はできるものの、メモリへのアクセスが不規則となり、データ再利用性と演算器の稼働率が低下するため、並列処理の計算効率が低下することが課題とされている。

こうした背景を踏まえ研究チームは今回、NEDOが進める「高効率・高速処理を可能とするAIチップ・次世代コンピューティングの技術開発」(2018~2022年度)において、エッジ機器での高効率なCNN推論処理を行うプロセッサアーキテクチャの開発に取り組んだという。

具体的には、CNNの並列演算の計算効率の改善についての検討や、計算効率のアルゴリズムの改善についての検討を行ったほか、既存のCNNモデルの変形として、同一座標のカーネル要素を優先して枝刈りする学習アルゴリズムを構築。このアルゴリズムは、既存の学習済みモデルに対して連続的にカーネル要素数を減らしながら再学習を行うもので、求める処理時間・効率と認識精度から、スパース率のトレードオフ点を任意に選択することが可能になったという。

  • スパースモデルLSI

    直積型並列演算の概念図 (出所:NEDO Webサイト)

  • スパースモデルLSI

    畳み込み演算の分割と枝刈りされたカーネルにおける処理効率化 (出所:NEDO Webサイト)

  • スパースモデルLSI

    連続的枝刈り・再学習技術とその効果 (出所:NEDO Webサイト)

これらを盛り込んだアーキテクチャを搭載したLSIをTSMCの40nmプロセスで試作。並列演算アレイサイズは32×32、活性値・係数値には4ビット固定小数点(INT4)量子化が採用された。

  • スパースモデルLSI

    試作されたLSIの顕微鏡画像 (出所:NEDO Webサイト)

実際に演算したところ、最大動作周波数534MHz、動作電圧1.1Vにおいて、電力消費は400mW以内であることが確認されたという。これは、カーネル要素数を9分の1まで枝刈りした後のスパース化した不要カーネル要素の省略を考慮すると、スマートフォンなどのエッジ機器向けCNN推論プロセッサとしての実効効率26.5TOPS/Wに相当するという。

研究チームでは今後、今回の研究の試作チップで実証した技術をさらに発展させることを計画しているとするほか、枝刈り後の精度向上のための学習技術や、RISC-Vプロセッサなどとのシステムレベル統合技術の開発など、より高精度・高効率なニューラルネット推論チップの実現を目指すとしている。