Skip to main content
QUICK REVIEW

[論文レビュー] Not All Ops Are Created Equal!

Liangzhen Lai, Naveen Suda|arXiv (Cornell University)|Jan 12, 2018
Advanced Memory and Neural Computing参考文献 12被引用数 19
ひとこと要約

この論文は、従来のニューラルネットワークのメトリクス(演算数とパラメータ数)が、組み込みデバイスにおける実世界の効率を予測できないことを示している。Arm Cortex-M7では、演算タイプごとにスループットとエネルギー消費が最大5倍まで変動し、活性化メモリは合計メモリフットプリントの最大30%を占めることがある。これは、効率的なエッジ推論を実現するためには、演算数とパラメータ数を超えた包括的最適化が不可欠であることを示している。

ABSTRACT

Efficient and compact neural network models are essential for enabling the deployment on mobile and embedded devices. In this work, we point out that typical design metrics for gauging the efficiency of neural network architectures -- total number of operations and parameters -- are not sufficient. These metrics may not accurately correlate with the actual deployment metrics such as energy and memory footprint. We show that throughput and energy varies by up to 5X across different neural network operation types on an off-the-shelf Arm Cortex-M7 microcontroller. Furthermore, we show that the memory required for activation data also need to be considered, apart from the model parameters, for network architecture exploration studies.

研究の動機と目的

  • 組み込みシステムにおけるニューラルネットワークの効率を評価するにあたり、演算数とパラメータ数のみが十分なメトリクスであるという仮定に挑戦すること。
  • 実ハードウェア上で、さまざまなニューラルネットワークの演算タイプにおけるスループットとエネルギー消費のばらつきを定量化すること。
  • リソース制約のあるデバイスにおいて、合計メモリフットプリントにおける活性化メモリの重要だがしばしば無視されがちな役割を強調すること。
  • 演算タイプ、スループット、エネルギー、活性化メモリを含む包括的最適化フレームワークを神戦略として提唱すること。
  • Arm Cortex-M7での実測値をもとに、マイコン上での効率的なモデルデプロイメントを支援する実証的証拠を提供すること。

提案手法

  • Arm Cortex-M7搭載のNUCULEO-F746ZGボードを用いて、さまざまなニューラルネットワークの演算タイプ(例:畳み込み、全結合、深度可分畳み込み、マックスプーリング)におけるスループット、電力、1回の演算あたりのエネルギーを測定した。
  • 一般用途のマイコン上で正確かつ代表的な性能測定が行えるように、最適化済みのCMSIS-NNカーネルを使用した。
  • Google Speech Commandsデータセットで訓練された複数のディープワイドセパラブルCNNモデルにおける演算タイプの分布を分析した。
  • ネットワークトポロジーと実行順序から、同時に存在する活性化データの最大サイズを定量化し、SRAMフットプリントを推定した。
  • 演算タイプの分布とエネルギー消費・スループットの相関関係を分析し、性能ボトルネックを同定した。
  • ハードウェアプラットフォームごとに事前に演算パフォーマンスを特徴づけ、アーキテクチャサーチ中にネットワーク効率の予測的推定を可能にした。

実験結果

リサーチクエスチョン

  • RQ1マイコン上で、さまざまなニューラルネットワークの演算タイプがスループットとエネルギー効率にどのように影響を与えるか?
  • RQ2総演算数と精度が類似している場合でも、演算タイプの分布がニューラルネットワークの合計エネルギー消費にどの程度影響を与えるか?
  • RQ3組み込みデバイスにおけるニューラルネットワークの合計メモリフットプリントにおいて、モデルパラメータと比較して活性化メモリはどの程度重要か?
  • RQ4演算固有のスループットのばらつきが、エッジAIモデルにおけるエネルギー効率の代理指標としての総演算数の使用を無効にすることはあるか?
  • RQ5ネットワークトポロジー、特にフィードフォワード接続の有無が、同時に存在する活性化データのサイズと全体のメモリフットプリントにどのように影響を与えるか?

主な発見

  • Arm Cortex-M7では、異なるニューラルネットワークの演算タイプにおけるスループットが最大5倍まで変動し、マックスプーリングは分岐が多く含まれる実装のため最も遅かった。
  • 総演算数と精度が類似したモデル間で、1回の推論あたりのエネルギー消費に最大30%の差が生じ、主に演算タイプの分布の違いに起因した。
  • 深度可分畳み込みは、出力1つあたりのMAC数が少なく、im2colのオーバーヘッドも高いため、全結合や標準畳み込みと比較して顕著にスループットが低かった。
  • 一部のモデルでは、活性化データが合計メモリフットプリントの最大30%を占め、リソース制約のあるデプロイメントにおいて重要な要因となった。
  • DenseNetやNASで生成されたアーキテクチャのような、多数のスキップ接続を持つネットワークでは、標準的なフィードフォワードネットワークと比較して活性化データが最大10倍に増加した。
  • パラメータ数だけではメモリフットプリントを正確に予測できない。正確な推定には、モデル重みに加えて同時に存在する活性化データも考慮する必要がある。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。