[論文レビュー] NeuralPower: Predict and Deploy Energy-Efficient Convolutional Neural Networks
NeuralPower は、GPU 上の CNN の電力、実行時間、エネルギーを層ごとの多項式回帰で予測するフレームワークを提供し、トレーニング前のエネルギーを考慮したアーキテクチャ選択を可能にします。さらに、正確性とエネルギー効率のバランスを取る Energy-Precision Ratio を導入します。
"How much energy is consumed for an inference made by a convolutional neural network (CNN)?" With the increased popularity of CNNs deployed on the wide-spectrum of platforms (from mobile devices to workstations), the answer to this question has drawn significant attention. From lengthening battery life of mobile devices to reducing the energy bill of a datacenter, it is important to understand the energy efficiency of CNNs during serving for making an inference, before actually training the model. In this work, we propose NeuralPower: a layer-wise predictive framework based on sparse polynomial regression, for predicting the serving energy consumption of a CNN deployed on any GPU platform. Given the architecture of a CNN, NeuralPower provides an accurate prediction and breakdown for power and runtime across all layers in the whole network, helping machine learners quickly identify the power, runtime, or energy bottlenecks. We also propose the "energy-precision ratio" (EPR) metric to guide machine learners in selecting an energy-efficient CNN architecture that better trades off the energy consumption and prediction accuracy. The experimental results show that the prediction accuracy of the proposed NeuralPower outperforms the best published model to date, yielding an improvement in accuracy of up to 68.5%. We also assess the accuracy of predictions at the network level, by predicting the runtime, power, and energy of state-of-the-art CNN architectures, achieving an average accuracy of 88.24% in runtime, 88.34% in power, and 97.21% in energy. We comprehensively corroborate the effectiveness of NeuralPower as a powerful framework for machine learners by testing it on different GPU platforms and Deep Learning software tools.
研究の動機と目的
- 多様な GPU プラットフォームでの展開に備え、トレーニング前に CNN 推論時のエネルギーを予測する必要性を動機づける。
- ネットワークを実行することなく、サービス中に CNN の電力、実行時間、エネルギーを推定する層単位予測フレームワークを開発する。
- エネルギー効率を考慮したアーキテクチャ探索を導くため、実行時、電力、またはエネルギーのボトルネックを迅速に特定できるようにする。
- 複数の CNN アーキテクチャと GPU プラットフォームに跨る指標と検証を提案し、精度と一般化可能性を実証する。
提案手法
- 疎多項式回帰を用いて、畳み込み層、全結合層、プーリング層の層レベルの電力と実行時間をモデル化する階層的 NeuralPower フレームワークを提案する。
- 層モデルを 2 部に分けて使用する:1) 層構成特徴量に対する通常の多項式項、2) メモリアクセスや FLOPs などの演算を捕捉する特殊項。Lasso と交差検証を適用してモデル項を選択する。
- 層レベルのモデルを、各層の実行時間を合計してネットワークレベルの予測に拡張し、層ごとの電力と実行時間の推定からエネルギーを計算する。
- 固定された GPU 状態、TensorFlow、nvidia-smi 測定を用いて Nvidia Titan X 上で一連の CNN アーキテクチャをプロファイリングしてデータセットを収集し、モデルを訓練する。
- 複数の CNN(例:VGG、NIN、CIFAR nets)にわたる実測とネットワークレベルの予測を比較して、実行時間、電力、エネルギーの精度を定量化する。
- アーキテクチャ選択時に、分類精度とエネルギー消費のトレードオフを評価する指標として Energy-Precision Ratio を導入する。
実験結果
リサーチクエスチョン
- RQ1異なるアーキテクチャやフレームワークにわたって、層レベルの多項式回帰が CNN の各層の電力と実行時間を正確に予測できるのだろうか?
- RQ2NeuralPower は、さまざまな CNN を GPU プラットフォーム上で、ネットワークレベルの実行時間、電力、エネルギーをどれだけ正確に予測できるか?
- RQ3Energy-Precision Ratio は、過度な精度を失うことなく、エネルギー効率の高い CNN アーキテクチャの選択を効果的に導けるだろうか?
主な発見
- NeuralPower は、テスト対象の CNN 全体で、実行時間のネットワークレベル精度平均約 88.24%、電力は 88.34%、エネルギー予測は 97.21% の平均精度を達成します。
- 疎多項式回帰を用いる層レベルモデルは、ランタイム予測で前任の最先端 Paleo モデルを上回り、RMSE/RMSPE 指標で最大 68.5% の改善を達成します。
- 層レベルでの電力予測は、畳み込み層、プーリング層、全結合層のいずれでも RMSPE が 9% 未満を示します。
- ネットワークレベルのエネルギー予測は、層ごとの実測と比較して平均 RMSPE が約 2.79% に達します。
- フレームワークは、ネットワーク内の実行時間、電力、エネルギーのボトルネックを特定するための層別の詳細な内訳を提供します。
- Energy-Precision Ratio は、精度とエネルギーのバランスを調整する tunable 指標を提供し、異なるアプリケーション要件に応じたエネルギー効率の高い CNN の選択を導きます。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。