Skip to main content
QUICK REVIEW

[論文レビュー] DyNet: Dynamic Convolution for Accelerating Convolutional Neural Networks

Yikang Zhang, Jian Zhang|arXiv (Cornell University)|Apr 22, 2020
Advanced Neural Network Applications参考文献 43被引用数 69
ひとこと要約

DyNet は、画像内容からカーネルを動的に生成する畳み込みを導入します。固定カーネルと予測係数を線形に融合させることで、FLOPs を大幅に削減するか、同等のコストで精度を向上させます。人気の CNN に適用可能で、CPU/GPU 推論をより速く実現します。

ABSTRACT

Convolution operator is the core of convolutional neural networks (CNNs) and occupies the most computation cost. To make CNNs more efficient, many methods have been proposed to either design lightweight networks or compress models. Although some efficient network structures have been proposed, such as MobileNet or ShuffleNet, we find that there still exists redundant information between convolution kernels. To address this issue, we propose a novel dynamic convolution method to adaptively generate convolution kernels based on image contents. To demonstrate the effectiveness, we apply dynamic convolution on multiple state-of-the-art CNNs. On one hand, we can reduce the computation cost remarkably while maintaining the performance. For ShuffleNetV2/MobileNetV2/ResNet18/ResNet50, DyNet can reduce 37.0/54.7/67.2/71.3% FLOPs without loss of accuracy. On the other hand, the performance can be largely boosted if the computation cost is maintained. Based on the architecture MobileNetV3-Small/Large, DyNet achieves 70.3/77.1% Top-1 accuracy on ImageNet with an improvement of 2.9/1.9%. To verify the scalability, we also apply DyNet on segmentation task, the results show that DyNet can reduce 69.3% FLOPs while maintaining Mean IoU on segmentation task.

研究の動機と目的

  • CNN における畳み込みカーネルの冗長性を動機づけ、無駄な計算につながる問題に対処する。
  • 入力内容に基づいてカーネルを生成する、シンプルで訓練可能な動的畳み込みフレームワークを提案する。
  • 動的畳み込みが主流アーキテクチャへのドロップインモジュールとなり、FLOPs を削減しつつ精度の損失を最小限に抑える、あるいは精度を向上させることを示す。
  • 複数のアーキテクチャにわたる画像分類(ImageNet)およびセグメンテーション課題でのスケーラビリティを示す。

提案手法

  • いくつかの固定カーネルを融合する重みを予測する係数予測モジュールを導入する。
  • 固定カーネルの重み付き和として動的カーネルを構築する動的生成モジュールを提案する: w~t = sum_i eta_t^i * w_t^i。
  • 固定カーネル数を制御するハイパーパラメータ g_t を用いたグループベースの設計を採用する。
  • 訓練時には特徴マップを融合して訓練を行い、式 (2) を活用して出力上のカーネル融合と同等であることを示す。
  • DyNet を MobileNetV2、ShuffleNetV2、および ResNet 系に適用して Dy-Mobile, Dy-Shuffle, Dy-ResNet18, および Dy-ResNet50 を作成する。
  • ImageNet(Top-1 精度)および Cityscapes セグメンテーションで評価し、分類とセグメンテーションの両方の利点を示す。

実験結果

リサーチクエスチョン

  • RQ1動的畳み込みは、精度の大きな低下を伴うことなく CNN の冗長な計算を削減できるか?
  • RQ2入力適応的なカーネル融合は、視覚バックボーン全体で FLOPs を削減しつつ性能を維持または向上させるか?
  • RQ3動的畳み込みは CPU/GPU 上の推論速度や、複数 GPU 環境での訓練速度にどのような影響を与えるか?
  • RQ4セグメンテーション課題およびより大きなバックボーンへの適用性はあるか?
  • RQ5グループサイズ g_t の性能とパラメータ予算への影響はどのようか?

主な発見

  • DyNet は複数のネットワークで FLOPs を大幅に削減する(例: ShuffleNetV2 で 37.0%、MobileNetV2 で 54.7%、ResNet18 で 67.2%、ResNet50 で 71.3%)が、精度低下は最小限。
  • MobileNetV3-Small/Large では、DyNet は Top-1 精度をそれぞれ 2.9%、1.9% 向上させ、FLOP の変化は最小限。
  • DyNet は CPU 上で Dy-MobileNetV2 を最大 1.87x、Dy-ResNet18 を 1.32x、Dy-ResNet50 を 1.48x の推論速度向上を実現(CPU 性能向上)。
  • セグメンテーション (Cityscapes) において、Dy-ResNet50 は FLOPs を 69.3% 削減しつつ Mean IoU を維持。
  • アブレーションにより、動的カーネルが固定カーネルベースラインを上回り、g_t の増加とともに性能が向上する(Fix-mobile/Fix-shuffle での改善など)。
  • 動的カーネルはカーネル間の相関を低減する傾向があり、冗長性が減り表現がより効率的になる。

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

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

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

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