[논문 리뷰] Dynamic Convolution: Attention over Convolution Kernels
이 논문은 Dynamic Convolution (DY-CNNs)을 도입하며 입력 의존적 주의(attention)를 통해 레이어당 여러 작은 커널을 모아 動的 합성으로 성능을 향상시키되 추가 FLOPs를 최소화하고, ImageNet 및 COCO에서 MobileNet 및 ResNet 백본 전반에 걸쳐 주목할 만한 이득을 얻습니다.
Light-weight convolutional neural networks (CNNs) suffer performance degradation as their low computational budgets constrain both the depth (number of convolution layers) and the width (number of channels) of CNNs, resulting in limited representation capability. To address this issue, we present Dynamic Convolution, a new design that increases model complexity without increasing the network depth or width. Instead of using a single convolution kernel per layer, dynamic convolution aggregates multiple parallel convolution kernels dynamically based upon their attentions, which are input dependent. Assembling multiple kernels is not only computationally efficient due to the small kernel size, but also has more representation power since these kernels are aggregated in a non-linear way via attention. By simply using dynamic convolution for the state-of-the-art architecture MobileNetV3-Small, the top-1 accuracy of ImageNet classification is boosted by 2.9% with only 4% additional FLOPs and 2.9 AP gain is achieved on COCO keypoint detection.
연구 동기 및 목표
- 초고효율 CNN에서 엄격한 계산 예산 하에 표현 능력의 필요성을 촉진한다.
- 주의를 통해 다수의 작은 커널을 모아 집계하는 대체(드롭인 대체재)로 dynamic convolution을 제안한다.
- 다이나믹 커널과 주의(attention)를 효과적으로 학습하기 위한 학습 전략을 제시한다.
- DY-CNN을 ImageNet과 COCO에서 평가하여 다양한 아키텍처 전반의 정확도와 효율성 이득을 정량화한다.
제안 방법
- 동적 퍼셉트론을 입력 의존적 주의가 1이 되도록 합이 K인 선형 함수의 합으로 정의한다.
- 동적 퍼셉트론을 K개의 동렬 커널(동일한 크기)을 가지는 dynamic convolution으로 인스턴스화하고 주의\\pi_k(x)에 의해 집계한다.
- 소프트맥스(온도 제어)를 사용하는 squeeze-and-excitation(SE) 스타일 블록으로 커널 어텐션을 계산하여 볼록 결합을 보장한다.
- 깊이/너비를 유지하면서 모델 용량을 증가시키기 위해 커널 간 출력 채널을 공유한다.
- DY-CNN 학습에 대한 가이드를 제공한다. 초기 학습에서 소프트맥스 온도를 크게 두고 온도 조절(temperature annealing)을 적용한다.
- 기존 아키텍처에서 1x1, 3x3, depthwise 등 어떤 정적 컨볼루션이라도 대체할 수 있음을 시연한다.
실험 결과
연구 질문
- RQ1여러 작은 컨볼루션 커널을 동적으로 결합하여 깊이/너비를 늘리지 않고 표현력을 어떻게 증가시킬 수 있는가?
- RQ2동적 컨볼루션에서 커널과 주의를 공동으로 최적화하기 위한 효과적인 학습 전략은 무엇인가?
- RQ3MobileNet 변형 및 얕은 ResNet과 같은 경량 아키텍처에 동적 컨볼루션을 적용했을 때 성능 및 계산 상의 절충은 어떤가?
- RQ4동적 컨볼루션이 SE 및 NAS 유도 아키텍처에 보완적 이점을 제공하는가?
주요 결과
| 네트워크 | #Param | MAdds | Top-1 | Top-5 |
|---|---|---|---|---|
| MobileNetV2 × 1.0 | 3.5M | 300.0M | 72.0 | 91.0 |
| DY-MobileNetV2 × 1.0 | 11.1M | 312.9M | 75.2 (3.2) | 92.1 (1.1) |
| MobileNetV2 × 0.75 | 2.6M | 209.0M | 69.8 | 89.6 |
| DY-MobileNetV2 × 0.75 | 7.0M | 217.5M | 73.7 (3.9) | 91.3 (1.7) |
| MobileNetV2 × 0.5 | 2.0M | 97.0M | 65.4 | 86.4 |
| DY-MobileNetV2 × 0.5 | 4.0M | 101.4M | 69.9 (4.5) | 89.0 (2.6) |
| MobileNetV2 × 0.35 | 1.7M | 59.2M | 60.3 | 82.9 |
| DY-MobileNetV2 × 0.35 | 2.8M | 62.0M | 65.9 (5.6) | 86.4 (3.5) |
| MobileNetV3-Small | 2.9M | 66.0M | 67.4 | 86.4 |
| DY-MobileNetV3-Small | 4.8M | 68.5M | 70.3 (2.9) | 88.7 (2.3) |
| ResNet-18 | 11.1M | 1.81G | 70.4 | 89.7 |
| DY-ResNet-18 | 42.7M | 1.85G | 72.7 (2.3) | 90.7 (1.0) |
| ResNet-10 | 5.2M | 0.89G | 63.5 | 85.0 |
| DY-ResNet-10 | 18.6M | 0.91G | 67.7 (4.2) | 87.6 (2.6) |
- 동적 합성은 MobileNetV2, MobileNetV3, ResNet 백본 전반에서 약 4%의 추가 FLOPs로 상위-1 정확도를 일관되게 향상시킨다.
- ImageNet에서 DY-MobileNetV2/0.5는 정적 대비 유사 FLOPs에서 상위-1이 69.9%로 65.4% 대비 4.5포인트 상승; DY-MobileNetV3-Small은 상위-1 70.3%로 2.9포인트 상승을 달성한다.
- 유사한 설정의 CondConv와 비교할 때 DY-CNN은 레이어당 커널 수가 더 적고 파라미터 수와 FLOPs가 낮은 여러 구성에서 더 높은 정확도를 달성한다.
- COCO 키포인트 검출에서 DY-CNN은 백본과 헤드에 적용될 때 유의미한 AP 개선을 보이며, 예를 들어 DY-ResNet-18 및 DY-MobileNetV2가 정적 대비 이득을 보인다.
- 두 가지 학습 인사이트가 중요하다: (1) 학습의 용이성을 위해 어텐션의 합이 1이 되도록 제약한다; (2) 초기 에폭에서 거의 균일한 어텐션(소프트맥스의 높은 온도)을 사용해 학습을 안정시키고 이후에 점진적으로 온도를 감소시킨다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.