Skip to main content
QUICK REVIEW

[論文レビュー] Computation-Performance Optimization of Convolutional Neural Networks with Redundant Kernel Removal

Chih‐Ting Liu, Yiheng Wu|arXiv (Cornell University)|May 30, 2017
Advanced Image Processing Techniques参考文献 17被引用数 3
ひとこと要約

本稿では、埋め込みシステムへの効率的なデプロイを目的として、深層畳み込みニューラルネットワーク(CNN)における冗長な畳み込みカーネルの削減を目的とした2つの計算性能最適化(CPO)手法——層別磨き上げ(LWP)と勾配最適化(GO)——を提案する。スパarsityに基づくカーネルの pruning と、PSNR や計算量の制約下での削除率の最適化により、スーパーレゾリューションタスクにおいて最大50%のモデル圧縮を達成し、PSNRの低下はたった0.25 dBにとどまる。

ABSTRACT

Deep Convolutional Neural Networks (CNNs) are widely employed in modern computer vision algorithms, where the input image is convolved iteratively by many kernels to extract the knowledge behind it. However, with the depth of convolutional layers getting deeper and deeper in recent years, the enormous computational complexity makes it difficult to be deployed on embedded systems with limited hardware resources. In this paper, we propose two computation-performance optimization methods to reduce the redundant convolution kernels of a CNN with performance and architecture constraints, and apply it to a network for super resolution (SR). Using PSNR drop compared to the original network as the performance criterion, our method can get the optimal PSNR under a certain computation budget constraint. On the other hand, our method is also capable of minimizing the computation required under a given PSNR drop.

研究の動機と目的

  • 高コストな計算とメモリ要件のため、リソース制限のある埋め込みシステムへの深層CNNのデプロイの課題に対処すること。
  • 顕著な性能低下を伴わずに、冗長な畳み込みカーネルの削除によってモデルの複雑さを低減すること。
  • 適応的カーネルプルーニングにより、計算コストとモデル精度の間で柔軟なトレードオフを実現すること。
  • アーキテクチャ固有のチューニングを回避し、多様なネットワークアーキテクチャとハードウェアプラットフォームに適用可能な手法を開発すること。
  • スパarsityに基づくプルーニングと回帰に基づく最適化を用いて、厳密な計算量または精度制約下で最適なパフォーマンスを達成すること。

提案手法

  • 層ごとのスパarsityを用いてカーネルの冗長性を定義:層内で重みの絶対値の平均未満のカーネルを冗長とみなす。
  • 層別磨き上げ(LWP)を適用:カーネルをスパarsity順にソートし、指定された計算予算内で最も冗長なカーネルを削除することで、PSNR低下を最小化する。
  • ランダムなプルーニング比のデータセット上で訓練された回帰モデルを用い、PSNR低下を予測することで、目標PSNR制約下での削除率の勾配ベース最適化を可能にする。
  • 予測されたPSNR低下と目標PSNR低下の差の二乗平均誤差損失関数を用いて、減少要因ベクトル $\mathbf{r}$ を勾配降下法で最適化する。
  • アーキテクチャの知見(例:深層層でのカーネル保持の優先順位付け)を組み込み、最適化された $\mathbf{r}$ を微調整する。
  • PSNR低下を主なパフォーマンス指標として用い、スーパーレゾリューション用CNN上でアプローチを検証する。

実験結果

リサーチクエスチョン

  • RQ1CNNにおける計算コストの低減を図る上で、顕著な性能低下を伴わず、冗長な畳み込みカーネルを効果的に同定・削除できるか?
  • RQ2固定された計算予算下で、層全体にわたるカーネルプルーニングを最適化することで、PSNRの劣化を最小限に抑えることができるか?
  • RQ3ランダムなプルーニング比に対して、学習された回帰モデルがPSNR低下を正確に予測でき、自動最適化を可能にするか?
  • RQ4異なるネットワーク層におけるプルーニング比の分布が、全体のモデルパフォーマンスにどのように影響を与えるか?
  • RQ5提案手法は、埋め込みプラットフォーム上でのモデルサイズ、推論速度、精度のバランスをどの程度効果的にとれるか?

主な発見

  • LWPは、Set5 ×2 で0.24 dB、Set14 ×2 で0.26 dB のPSNR低下で、モデルサイズを20層から10層へ50%削減した。
  • 初期層ではプルーニング比を高め、深層層では低く保つことで、ネットワークセグメントごとのプルーニング比を調整した結果、PSNR低下は0.24 dBにまで低減された。
  • GOは、Set5 ×2 で0.29 dB、Set14 ×2 で0.26 dB のPSNR低下を達成し、目標値と非常に近い結果を得た。
  • ランダムなプルーニング比のデータセット上で訓練された回帰モデルにより、勾配ベースの最適化が可能となり、微調整後にはPSNR低下が0.24 dB/0.25 dBにまで低減された。
  • 最終的な最適化されたプルーニング方針では、1層あたり44〜60個のカーネルを保持し、唯一の層でのカーネル数は1つにまで減少した。これは、スパarsityに配慮した効果的な圧縮を示している。
  • 本手法は柔軟性に富み、アーキテクチャに依存しない。低レベルのハードウェアチューニングを要せず、多様な埋め込みシステムへのデプロイが可能である。

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

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

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

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