[論文レビュー] PENNI: Pruned Kernel Sharing for Efficient CNN Inference
PENNIは、畳み込みフィルタを共有ベース核とスパース係数行列に分解することで、ハードウェア効率の高いCNN圧縮フレームワークである。この手法により、高いモデルのcompact化と推論の高速化が実現される。l1正則化と交互微調整を適用することで、ResNet18/CIFAR10において、精度に影響を与えずにパラメータを97%、FLOPを92%削減するとともに、遅延を53%低減し、メモリ消費量を44%削減した。
Although state-of-the-art (SOTA) CNNs achieve outstanding performance on various tasks, their high computation demand and massive number of parameters make it difficult to deploy these SOTA CNNs onto resource-constrained devices. Previous works on CNN acceleration utilize low-rank approximation of the original convolution layers to reduce computation cost. However, these methods are very difficult to conduct upon sparse models, which limits execution speedup since redundancies within the CNN model are not fully exploited. We argue that kernel granularity decomposition can be conducted with low-rank assumption while exploiting the redundancy within the remaining compact coefficients. Based on this observation, we propose PENNI, a CNN model compression framework that is able to achieve model compactness and hardware efficiency simultaneously by (1) implementing kernel sharing in convolution layers via a small number of basis kernels and (2) alternately adjusting bases and coefficients with sparse constraints. Experiments show that we can prune 97% parameters and 92% FLOPs on ResNet18 CIFAR10 with no accuracy loss, and achieve 44% reduction in run-time memory consumption and a 53% reduction in inference latency.
研究の動機と目的
- 剪定による高いスパarsityを示すが、リソース制約のあるデバイスではスパースCNNモデルの非効率性を解消すること。
- 既存の低ランク近似手法では、スパースモデル内の冗長性を十分に活用できないという限界を克服すること。
- ベース核の共有と係数のスパarsityを用いて、モデルのスパarsityを構造化することで、ハードウェアにやさしい推論を実現すること。
- 推論アルゴリズムやハードウェアを変更せずに、高い圧縮率と高速化を達成すること。
- 構造的スパarsityとモデルの縮小を同時に最適化することで、モデルのcompact化とハードウェア効率を向上させること。
提案手法
- 低ランク近似を用いて、畳み込みフィルタを少数の共有ベース核とそれに対応する係数行列に分解する。
- 再訓練中に係数行列にl1正則化を適用し、構造的スパarsityを誘導する。
- 交互微調整戦略を用いて、ベース核と係数を同時に最適化し、スパarsityと精度を向上させる。
- 係数行列のスパarsityを根拠に、冗長なチャネルを削除することでモデル縮小を実装する。
- 畳み込み計算を2段階に再構成する:ベース核の畳み込みと重み付き和の計算。これにより、ハードウェア上で効率的な実行が可能になる。
- ベース核の演算と係数加重和の演算を分離することで、係数のスパarsityを露呈・活用し、ゼロ計算を回避する。
実験結果
リサーチクエスチョン
- RQ1ベース核とスパース係数によるカーネル共有は、CNNにおいて高いモデル圧縮とハードウェア効率を両立できるか?
- RQ2係数行列へのl1正則化は、精度を損なわず構造的スパarsityを達成するのにどの程度有効か?
- RQ3モデル縮小は、剪定済みCNNにおける構造的冗長性をどの程度活用して、FLOPsとメモリをさらに削減できるか?
- RQ4提案された分解と計算再構成は、推論アルゴリズムやハードウェアを変更せずに推論の高速化を達成できるか?
- RQ5ベース核の数は、圧縮率、FLOPs、精度の間でどのようなトレードオフをもたらすか?
主な発見
- ResNet18/CIFAR10において、PENNIは精度に影響を与えずにパラメータを97%削減、FLOPを92%削減した。
- CPUでは遅延が53%低減され、GPUでは2.2倍の高速化が達成され、ピークメモリ消費量は44%削減された。
- VGG16/CIFAR10において、PENNIはパラメータを94.5%削減、FLOPsを76.9%削減し、精度低下はわずか0.2%にとどまった。
- ImageNetにおいて、PENNIはパラメータを87.3%削減、FLOPsを94.7%削減し、トップ1精度は2.4%低下した。
- CPUおよびGPUプラットフォームにおいて、推論遅延が1.5倍から2.2倍まで低減され、推論ソフトウェareやハードウェアの変更なしに実現された。
- 正則化を緩めることで、FLOPsの81.23%を剪定可能であり、精度低下は0.5%にとどまり、チャネル剪定手法を上回る圧縮効率を示した。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。