Skip to main content
QUICK REVIEW

[論文レビュー] Network Pruning for Low-Rank Binary Indexing

Dongsoo Lee, Se Jung Kwon|arXiv (Cornell University)|May 14, 2019
Neural Networks and Applications参考文献 27被引用数 5
ひとこと要約

本稿では、低ランク二値行列分解を用いてプリーニングインデックスを圧縮する、新しい細分化ネットワークプルーニング手法を提案する。この手法により、高い圧縮比と効率的で並列化可能な推論が可能になる。二つの小さな二値行列に二値プリーニングマスクを分解することで、AlexNetの全結合層において最大8.2倍のインデックス圧縮を達成しつつ、モデルの精度を維持することができる。

ABSTRACT

Pruning is an efficient model compression technique to remove redundancy in the connectivity of deep neural networks (DNNs). Computations using sparse matrices obtained by pruning parameters, however, exhibit vastly different parallelism depending on the index representation scheme. As a result, fine-grained pruning has not gained much attention due to its irregular index form leading to large memory footprint and low parallelism for convolutions and matrix multiplications. In this paper, we propose a new network pruning technique that generates a low-rank binary index matrix to compress index data while decompressing index data is performed by simple binary matrix multiplication. This proposed compression method finds a particular fine-grained pruning mask that can be decomposed into two binary matrices. We also propose a tile-based factorization technique that not only lowers memory requirements but also enhances compression ratio. Various DNN models can be pruned with much fewer indexes compared to previous sparse matrix formats while maintaining the same pruning rate.

研究の動機と目的

  • 不規則なスパarsityと高いインデックスメモリオーバーヘッドにより、ハードウェア上で細分化プルーニングが非効率であるという問題に対処すること。
  • スパースDNN推論において、高い並列性と低いメモリフットプリントを実現する、構造的で規則的なインデックス表現を開発すること。
  • 二値行列分解を用いてインデックスデータサイズを削減することで、細分化プルーニングの実用的導入を可能にすること。
  • 従来のスパース行列形式(CSR や Viterbiベースのインデックス)と比較して、顕著に高い圧縮比を達成しつつ、高いモデル精度を維持すること。

提案手法

  • プリーニングマスクを二つの低ランク二値行列の積として表現する二値行列分解(BMF)を提案し、コンactで規則的なインデックス表現を実現する。
  • 元の二値プリーニングマスクを最小限の不一致ビット数で近似する低ランク二値因子分解を求めるヒューリスティックアルゴリズムを用いる。
  • 大きな重み行列を小さなブロックに分割して処理するタイルベースの因子分解技術を適用し、計算コストを低減するとともに圧縮効果を向上させる。
  • BMFの前段階で重みの絶対値スケーリング(1/(1-S)を乗算)を実施し、より多くの近似ゼロ重みを削除可能にする。
  • 単純な二値行列乗算によりインデックスデータを復元可能であり、これは現代のハードウェアで非常に並列化可能である。
  • 階層制御とタイル化を導入し、異なる層において圧縮比、精度、計算コストのバランスを最適化する。

実験結果

リサーチクエスチョン

  • RQ1低ランク二値行列分解は、モデル精度を維持しつつ、プリーニングインデックスデータを効果的に圧縮できるか?
  • RQ2提案手法は、CSR や Viterbiベースのインデックスといった従来のスパース形式よりも高い圧縮比を達成できるか?
  • RQ3得られたインデックス表現は、GPU やマルチスレッドCPU上で効率的かつ高度に並列化された推論を可能にするか?
  • RQ4タイル化技術は、大きな全結合層における圧縮効果と計算効率にどのように影響を与えるか?
  • RQ5重みの絶対値スケーリングは、プルーニングに向けた二値行列分解の有効性にどのような影響を与えるか?

主な発見

  • AlexNetのFC5およびFC6層において、最大8.2倍の圧縮を達成。インデックスサイズはCSR-16bitの10.06 MBから812 KBに削減された。
  • 70%のプルーニング率を適用したResNet32では、91.8%の精度を維持しつつ3.09倍の圧縮が達成された。
  • PTB言語モデルでは、1.82倍の圧縮が達成され、PPWの低下は0.6にとどまり、89.0 PPWの性能を維持した。
  • 階層制御により、Viterbiベースの手法が整数比に制限されるのとは異なり、合理的な圧縮比(例:8.2倍、5.12倍)を実現可能となった。
  • FC5とFC6層をそれぞれ16×8および8×8のブロックにタイル化することで、圧縮効果が向上し、計算コストが低減された。
  • Viterbiベースのインデックスと比較して、本手法は圧縮比とハードウェア効率の両面で優れており、必要なXORゲート数と遅延ユニット数が少ない。

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

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

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

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