Skip to main content
QUICK REVIEW

[論文レビュー] Power Consumption Variation over Activation Functions

Leon Derczynski|arXiv (Cornell University)|Jun 12, 2020
Parallel Computing and Optimization Techniques参考文献 9被引用数 5
ひとこと要約

この論文は、CPUおよびGPUハードウェア上で実測した電力消費を用いて、ニューラルネットワークにおける異なる活性化関数が推論時の電力消費に与える影響を調査している。ReLUやその変種のような活性化関数は、Sigmoid や Tanh のような複雑な関数よりも顕著に低い電力消費を示し、ReLU は平均で最大50%低い電力消費を示している。これは、エネルギー効率の良いディープラーニングを実現するための重要な最適化の方向性を示している。

ABSTRACT

The power that machine learning models consume when making predictions can be affected by a model's architecture. This paper presents various estimates of power consumption for a range of different activation functions, a core factor in neural network model architecture design. Substantial differences in hardware performance exist between activation functions. This difference informs how power consumption in machine learning models can be reduced.

研究の動機と目的

  • 深層ニューラルネットワークの推論における活性化関数の選択が電力消費に与える影響を定量化すること。
  • 異なるハードウェアプラットフォーム(CPUおよびGPU)において、どの活性化関数が最もエネルギー効率が良いかを特定すること。
  • 特殊関数ユニット(SFU)などのハードウェア固有のボトル neck が、活性化関数の計算中に電力消費を増加させる役割を分析すること。
  • 活性化関数の複雑さが、特に現代のアクセラレータにおいて、直接的に高いエネルギー消費をもたらすという実証的証拠を提供すること。
  • 特にリソース制限のある環境において、性能を損なわずにエネルギー消費を低減するモデル設計の意思決定を支援すること。

提案手法

  • 28種類の活性化関数のPyTorch 1.5.0実装を用い、MacBook Pro(i5-7360U CPU)およびIntel Xeon E5-2660 CPUの2つのプラットフォームで壁時計時間の電力消費を測定した。
  • 隠れ層が4096ユニットの標準化された5層フィードフォワードネットワークを用い、1回の実行ごとに活性化関数のみを変更した。
  • バッチサイズを1から10^8まで増加させながら電力を測定し、各関数について複数回の実行を実施して安定性を確認した。
  • エネルギー消費の代理指標として、壁時計時間と平均電力消費を用い、合計エネルギーを電力 × 時間で計算した。
  • 関数の複雑さ(例:超越関数対区分線形関数)と測定された電力の関係を分析し、低レベル命令コストとハードウェアリソースの競合に焦点を当てた。
  • SFUなどの専用ユニットの影響を評価するために、ハードウェア間で結果を比較した。特に、Tanh のような複数の浮動小数点演算を必要とする関数において顕著であった。

実験結果

リサーチクエスチョン

  • RQ1現代のCPUおよびGPU上で、ニューラルネットワークの推論における活性化関数の選択が電力消費に与える影響は何か?
  • RQ2どの活性化関数が最もエネルギー効率が良く、その効率性に寄与する要因は何か?
  • RQ3SFUの数制限などのハードウェア固有のボトル neck が、活性化関数間の電力消費の差をどの程度拡大させるか?
  • RQ4活性化関数の計算複雑性および命令レベルの特性(例:FPU使用、マイクロオペレーション)が測定された電力消費とどの程度相関するか?
  • RQ5活性化関数の単純なアーキテクチャ的選択が、モデルの精度を損なわずにエネルギー消費を顕著に低減できるか?

主な発見

  • ReLUおよびその変種(例:ReLU6、LeakyReLU)は一貫して最も低い電力消費を示し、MacBook Proでは1回の推論あたり最小で5.820e-4 Wの電力消費を記録した。
  • Sigmoid や Tanh のような関数は顕著に高い電力消費を示し、Xeonで10^8回のインスタンス処理ではTanhが最大5.342e+02 Wに達した。これは、複雑なFPU依存計算に起因する。
  • スケールが大きいとTanhの電力消費はReLUの100倍以上に上昇し、10^8インスタンスでは5.342e+02 W(Tanh)と5.199e+02 W(ReLU)を記録し、顕著なエネルギー非効率性が示された。
  • GPUにおけるSFUの数制限(例:V100では16個のFP32コアあたり1つのSFU)が、複雑な関数の計算時にスレッドのアイドル状態を引き起こし、電力消費を増加させた。
  • Softplus や Softsign は、指数関数(exp)や対数関数(log)などの超越関数に依存しているため、高い電力消費を示したが、微分可能で広く使われているにもかかわらず。
  • Xeon E5-2660では、10^8インスタンスでReLUは5.199e+02 W、Tanhは5.342e+02 Wを記録し、類似した計算負荷でも2.7%の増加が見られた。これは、命令スケジューリングおよびFPUの利用効率の低さに起因する。

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

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

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

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