Skip to main content
QUICK REVIEW

[論文レビュー] Speeding up Convolutional Neural Networks By Exploiting the Sparsity of Rectifier Units

Shaohuai Shi, Xiaowen Chu|arXiv (Cornell University)|Apr 25, 2017
Tensor decomposition and applications参考文献 17被引用数 33
ひとこと要約

この論文では、ReLU活性化出力の高いスパarsityを活用することで、CPU上での深層畳み込みニューラルネットワークの推論を高速化する逆スパース畳み込み(ISC)アルゴリズムを提案する。最適化されたメモリアクセスパターンとSIMD命令を用いて、畳み込み処理中にゼロ値のニューロン計算をスキップすることで、入力スパarsityが≥0.95のLeNetおよびGoogLeNetのレイヤーで最大7.11倍の高速化を達成する。

ABSTRACT

Rectifier neuron units (ReLUs) have been widely used in deep convolutional networks. An ReLU converts negative values to zeros, and does not change positive values, which leads to a high sparsity of neurons. In this work, we first examine the sparsity of the outputs of ReLUs in some popular deep convolutional architectures. And then we use the sparsity property of ReLUs to accelerate the calculation of convolution by skipping calculations of zero-valued neurons. The proposed sparse convolution algorithm achieves some speedup improvements on CPUs compared to the traditional matrix-matrix multiplication algorithm for convolution when the sparsity is not less than 0.9.

研究の動機と目的

  • トレーニングおよび推論中に、人気の深い畳み込みニューラルネットワークにおけるReLU活性化出力のスパarsityを調査すること。
  • ネットワークアーキテクチャを変更せずに、動的にゼロ値のニューロン計算をスキップするCPU最適化畳み込みアルゴリズムを開発すること。
  • ReLUユニットに由来する内在的なスパarsityを活用することで、畳み込みレイヤーの計算効率を向上させること。
  • 一般用途のCPU上で、専用ハードウェアを必要とせず、スパarsityに配慮した計算が顕著な高速化をもたらすことを実証すること。

提案手法

  • 提案された逆スパース畳み込み(ISC)アルゴリズムは、まずゼロ値の入力要素を特定し、それらをスキップして、非ゼロ値とその空間座標のみを格納する。
  • 非ゼロ入力と同時に乗算できるように、カーネル重みを列優先順序に再配置することで、効率的なSIMDベクトル化(例:AVX/SSE)を可能にする。
  • 非ゼロ入力活性化ごとに、対応するカーネル重みとの部分的ドット積を計算し、一時バッファに結果を蓄積する。
  • 一時的な出力結果を転置することで、最終的な出力特徴マップを生成し、メモリアクセスのオーバーヘッドを最小限に抑える。
  • アルゴリズムは、ハードウェアの変更やフレームワークレベルの微調整を必要とせず、標準CPU上で直接動作するように設計されている。
  • 推論中にオンザフライでスパarsityを活用し、ゼロ値ニューロンに対する冗長な乗算とメモリ書き込みを回避する。

実験結果

リサーチクエスチョン

  • RQ1LeNet、AlexNet、GoogLeNetのような人気の深い畳み込みニューラルネットワークにおけるReLU出力の実際のスパarsityレベルはどの程度か?
  • RQ2ReLU出力のスパarsityを、一般用途のCPU上で畳み込み演算を高速化するために効果的に活用できるか?
  • RQ3スパarsityに配慮した畳み込みアルゴリズムの性能は、CPU上での標準的なGEMMベースの畳み込みと比べてどうか?
  • RQ4スパarsityが90%を超えた場合、得られる最大の高速化はどの程度で、どのネットワークレイヤーが最も恩恵を受けるか?
  • RQ5提案手法は、ネットワークアーキテクチャを変更せず、専用ハードウェアを必要とせずに顕著な高速化を達成できるか?

主な発見

  • ISCアルゴリズムは、95%の入力スパarsityを持つGoogLeNetのInception5b.5レイヤーで最大7.11倍の高速化を達成した。
  • 95%のスパarsityを持つLeNet-Conv2では、ISC法により計算時間がGEMMの0.854 msから0.123 msに短縮され、6.96倍の高速化が達成された。
  • ImageNetにおけるAlexNet(Conv4、90%スパarsity)では、ISC法により時間は4.874 msから1.660 msに短縮され、2.94倍の高速化が達成された。
  • GoogLeNetのレイヤーで90%のスパarsityが見られる場合、高速化率は1.39倍から2.87倍の範囲にあり、スパarsityが低下するにつれて一貫したが減衰する利得が得られた。
  • 高スパarsityレイヤーでは顕著な性能向上が見られ、特にInception5b.5やInception5a.1のような深く広いレイヤーで最大の高速化が観察された。
  • 結果から、ReLUに起因するスパarsityは、標準CPU上でのDNN推論を高速化するための実用的でかつ未だに活用が不十分なターゲットであることが確認された。

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

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

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

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