Skip to main content
QUICK REVIEW

[論文レビュー] Learning both Weights and Connections for Efficient Neural Networks

Song Han, Jeff Pool|arXiv (Cornell University)|Jun 8, 2015
Advanced Neural Network Applications参考文献 22被引用数 666
ひとこと要約

本稿では、低マグニチュードの接続を pruning し、再訓練することで、同時に最適なネットワーク重みと接続を学習する3段階の手法を提案している。ImageNet における精度損なわず、AlexNet と VGG-16 ではそれぞれ 9× および 13× のパラメータ削減を達成している。

ABSTRACT

Neural networks are both computationally intensive and memory intensive, making them difficult to deploy on embedded systems. Also, conventional networks fix the architecture before training starts; as a result, training cannot improve the architecture. To address these limitations, we describe a method to reduce the storage and computation required by neural networks by an order of magnitude without affecting their accuracy by learning only the important connections. Our method prunes redundant connections using a three-step method. First, we train the network to learn which connections are important. Next, we prune the unimportant connections. Finally, we retrain the network to fine tune the weights of the remaining connections. On the ImageNet dataset, our method reduced the number of parameters of AlexNet by a factor of 9x, from 61 million to 6.7 million, without incurring accuracy loss. Similar experiments with VGG-16 found that the number of parameters can be reduced by 13x, from 138 million to 10.3 million, again with no loss of accuracy.

研究の動機と目的

  • モバイルおよび組み込みデプロイメントのための大型ニューラルネットワークの高い計算コストとメモリコストに対処する。
  • 従来の訓練における固定アーキテクチャの制限を克服し、訓練中にアーキテクチャ学習を可能にする。
  • 精度を損なわずモデルサイズとエネルギー消費を低減し、特に高コストなオフチップ DRAM アクセスを最小限に抑える。
  • モデルをより小さく、よりメモリ効率よくすることで、モバイルデバイス上でのディープニューラルネットワークの効率的デプロイメントを可能にする。
  • pruning がモデルの圧縮にとどまらず、最適なネットワーク容量を特定することで一般化性能の向上にも寄与することを示す。

提案手法

  • 標準的なバックプロパゲーションを用いて、重要な接続を学習するため、通常通りに密なニューラルネットワークを訓練する。
  • グローバルまたはレイヤー固有のマグニチュード閾値以下の接続を pruning し、密なレイヤーをスパースなレイヤーに変換する。
  • L2正則化を用いて、残存する重みを微調整し、精度を回復させるために、pruning されたスパースネットワークを再訓練する。
  • モデルサイズのさらなる縮小とスパarsity の向上を図るため、pruning と再訓練のプロセスを繰り返し行う。
  • 各レイヤーごとの感度分析を用いて個別の pruning 閾値を設定し、より感受性の高いレイヤー(例:最初の畳み込み層)はより慎重に pruning する。
  • 重みをスパース行列として、圧縮インデックス(全結合層では 5 ビット、畳み込み層では 8 ビット)で保存することで、ストレージオーバーヘッドを 15.6% に削減する。

実験結果

リサーチクエスチョン

  • RQ1低マグニチュードの接続を pruning することで、精度を損なわずニューラルネットワークのパラメータを削減できるか?
  • RQ2一回の pruning と再訓練に比べ、繰り返し pruning と再訓練を適用することで、より高いモデル効率性と精度が得られるか?
  • RQ3畳み込み層と全結合層の両方を効果的に pruning し、性能を維持できるか?
  • RQ4pruning がネットワーク重みの分布とモデルの一般化能力に与える影響は何か?
  • RQ5スパarsity が、特に重みをオンチップに保存可能にするために、メモリアクセスエネルギーをどの程度低減できるか?

主な発見

  • AlexNet のパラメータは 6100 万個から 670 万個(9× 圧縮)に削減され、ImageNet におけるトップ1精度に損なわれることなく維持された。
  • VGG-16 のパラメータは 13800 万個から 1030 万個(13× 圧縮)に削減され、同じ精度が維持された。
  • 繰り返し pruning により、最大で 9× の圧縮が達成され、精度の低下はなく、一部の pruning 水準では過学習が軽減され、精度がわずかに向上した。
  • 最初の畳み込み層は、入力チャネル数が少なく、冗長性も少ないため、pruning に対して最も感受性が高く、慎重な閾値設定が求められた。
  • pruning と再訓練後、重みの分布は二峰性になり、より広がった形状を示し、より強固で明確な接続が形成された。
  • 圧縮インデックスを用いたスパースストレージにより、メモリフットプリントが顕著に削減され、オンチップへの重み保存が可能になり、高コストなオフチップ DRAM アクセスを回避できた。

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

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

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

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