[논문 리뷰] Aggregated Residual Transformations for Deep Neural Networks

“Aggregated Residual Transformations for Deep Neural Networks” 논문1을 정리하고 리뷰한 글이다.
심층 신경망 설계는 깊이(depth)와 너비(width)를 단순히 늘리는 차원을 넘어 하이퍼파라미터 튜닝 부담을 최소화하는 구조적 효율성을 요구한다. 저자들은 VGG와 ResNet의 단순하고 반복적인 모듈화 철학에 Inception의 다중 경로(split-transform-merge) 전략을 결합하여, 네트워크의 새로운 차원인 카디널리티(cardinality)를 제안한다. 이를 통해 모델 복잡도를 유지하면서도 표현력을 강화하는 표준화된 블록 구조를 완성했다.
1. Introduction
컴퓨터 비전 연구는 수작업 특징 추출(feature engineering)에서 신경망 아키텍처 자체를 설계하는 네트워크 엔지니어링(network engineering)으로 패러다임이 이동했다. 그러나 모델 레이어가 깊어질수록 채널 너비, 필터 크기, 스트라이드 등 수많은 하이퍼파라미터가 급증하여 아키텍처 설계와 탐색 비용이 급격히 증가한다.
VGGNet과 ResNet2은 동일한 토폴로지의 블록을 반복적으로 쌓아 하이퍼파라미터 설계 복잡도를 낮추며 매우 깊은 신경망을 구성하는 데 성공했다. 한편 GoogLeNet 계열의 인셉션(Inception) 모델3은 분할-변환-병합(split-transform-merge) 구조를 도입하여 분기 경로마다 서로 다른 필터를 배치함으로써 높은 표현력을 달성했다. 그러나 Inception은 경로마다 맞춤형 필터를 일일이 설계해야 하므로 확장이 까다롭다는 한계가 존재했다.
ResNeXt는 VGG/ResNet의 단순 반복 전략과 Inception의 split-transform-merge 원리를 결합하여 확장 가능하고 표준화된 블록 구조를 제안한다.
- 분할(Split): 입력 텐서를 여러 개의 저차원 임베딩(1x1 conv) 경로로 분할한다.
- 변환(Transform): 분할된 특징 맵을 동일한 토폴로지(3x3 conv)를 거쳐 변환한다.
- 병합(Merge): 변환된 결과들을 원소별 덧셈(add) 혹은 연결(concatenate)로 합산 집계한다.
복잡한 분기 튜닝 없이 동일한 형태의 경로 개수만 늘려 모델 용량을 확장한다.
- 카디널리티(cardinality): path를 결정하는 독립적인 변환 그룹의 크기(동일 경로 개수).
- 깊이(depth): 각 변환 그룹이 보유한 채널 수(bottleneck width).

- 위의 그림의 정보는 다음과 같다.
- cardinality : 32
- depth : 4
- block : 3

그림의 3가지 ResNeXt 빌딩 블록((a), (b), (c))은 수학적으로 완전히 동일한 연산을 수행한다.
- (a) Aggregated transformations: cardinality가 32, depth가 4(=채널 수)인 변환 경로를 병렬 실행한 후 모두 더한다.
- (b) Early concatenation: 각 경로의 변환 출력을 먼저 연결(concatenate)한 뒤 1x1 conv 레이어로 투영한다.
- (c) Grouped convolution: 여러 개의 작은 conv 연산을 단일 grouped convolution 레이어로 통합 실행한다.
결국 복잡한 분기 구현을 단 하나의 Grouped Convolution 레이어로 압축할 수 있다.
Grouped convolution
Grouped convolution은 입력 채널과 출력 채널을 여러 그룹으로 나누어 그룹 내부에서만 독립적으로 합성곱을 수행하는 기법이다4.

Grouped convolution은 컨볼루션 그룹(레이어당 여러 커널)을 사용하여 레이어당 여러 채널의 출력을 생성한다. 이를 통해 파라미터 수와 연산량을 절감하면서도 채널 간 희소 연결(sparse connectivity)을 통해 일반화 성능을 유지한다. ResNeXt는 이 모듈을 핵심 빌딩 블록으로 활용하여 파라미터와 FLOPs를 유사한 수준으로 유지하면서 ImageNet 분류 정확도를 개선했다.
2. ResNeXt Architecture
ResNeXt-50($32\times4\text{d}$) 아키텍처는 ResNet의 모듈러 설계 원칙을 엄격히 계승하면서 블록 내부만 그룹 합성곱 형태로 대체했다.

ResNet-50과 비교한 ResNeXt-50 구조는 다음과 같은 두 가지 핵심 설계 규칙을 따른다.
- 같은 크기의 공간 맵(spatial map)을 만드는 경우 블록(block)은 동일한 하이퍼파라미터(ex. width, filter size)를 공유한다.
- 공간 맵이 2의 인수로 다운샘플(downsample)될 때마다 블록의 너비(width)는 2의 인수로 곱해진다.
이 두 규칙 덕분에 FLOPs 측면에서 계산 복잡성이 모든 블록에 걸쳐 균등하게 유지된다. 실제로 ResNet-50의 파라미터 수(25.5M)와 연산량($4.1\times10^9$ FLOPs) 대비 ResNeXt-50은 25.0M 파라미터 및 $4.2\times10^9$ FLOPs로 계산 복잡도가 보존된다.

기본 잔차 블록에서 두 합성곱 레이어의 깊이는 2였다. 하지만 깊이가 2인 블록 구조에서는 중간 병목 채널을 분할·통합하는 grouped convolution을 효율적으로 적용할 수 없으므로, 병목 블록의 깊이가 최소 3 이상이어야 함을 의미한다.
3. Implementation details
실험을 통해 cardinality 확장이 모델의 깊이나 너비를 확장하는 것보다 일관되게 우수한 성능 향상을 제공함을 입증했다.

ImageNet-1K 검증 셋(single $224\times224$ crop)에서 동일한 연산 복잡도(FLOPs) 조건으로 cardinality가 1부터 32까지 증가함에 따라 top-1 에러율이 일관되게 감소했다.
- ResNeXt-50: 23.9% ($1\times64\text{d}$) $\rightarrow$ 22.2% ($32\times4\text{d}$), 1.7%p 감소 (FLOPs $\sim 4.1\times10^9$)
- ResNeXt-101: 22.0% ($1\times64\text{d}$) $\rightarrow$ 21.2% ($32\times4\text{d}$), 0.8%p 감소 (FLOPs $\sim 7.8\times10^9$)

저자들은 ResNet-101 대비 약 $2\times$ FLOPs 증가(약 $15.6\times10^9$ FLOPs) 조건에서 모델 확장 전략(cardinality, deeper, wider)의 성능 개선 효과를 비교했다.
- Deeper: 네트워크를 200층까지 깊게 확장했다 ($\rightarrow$ ResNet-200, $1\times64\text{d}$).
- Wider: 병목 너비(bottleneck width)를 넓게 확장했다 ($\rightarrow$ ResNet-101 wider, $1\times100\text{d}$).
- Cardinality: 변환 경로 수(cardinality)를 64로 확장했다 ($\rightarrow$ ResNeXt-101, $64\times4\text{d}$).
그 결과, 동일한 $2\times$ FLOPs 연산량 조건에서 cardinality를 증가시킨 ResNeXt-101($64\times4\text{d}$)이 더 깊거나 더 넓은 모델보다 낮은 에러율을 기록했다.
- Top-1 / Top-5 Error 비교 (ImageNet-1K, single $224\times224$ crop):
- ResNeXt-101 ($64\times4\text{d}$, cardinality 확장): Top-1 20.4% / Top-5 5.3%
- ResNeXt-101 ($2\times64\text{d}$, cardinality 확장): Top-1 20.7% / Top-5 5.5%
- ResNet-101 wider ($1\times100\text{d}$, 너비 확장): Top-1 21.3% / Top-5 5.7%
- ResNet-200 ($1\times64\text{d}$, 깊이 확장): Top-1 21.7% / Top-5 5.8%
동일한 연산량을 투입할 때 깊이나 너비를 단순히 늘리는 것보다 변환 경로 수(cardinality)를 확장하는 편이 에러율 개선 폭이 컸다.
4. 한계 및 트레이드오프
- 실제 학습 시간(Wall-clock latency) 오버헤드: 이론적 FLOPs는 ResNet-101과 ResNeXt-101($32\times4\text{d}$)이 약 $7.8\times10^9$ 수준으로 유사하지만, 논문 저자들의 8 GPU(NVIDIA Tesla M40) 실험에서 미니배치당 훈련 시간은 ResNet-101(0.70초) 대비 ResNeXt-101(0.95초)로 약 35.7%의 지연 오버헤드가 발생했다. 이는 당시 프레임워크(Torch)의 grouped convolution 기본 구현이 메모리 병렬화에 최적화되지 않았기 때문이다.
- 카디널리티와 병목 채널 너비 간의 한계: FLOPs를 보존한 채 카디널리티($C$)를 계속 늘리려면 그룹당 병목 너비($d$)를 줄여야 한다. 병목 너비가 1~2채널 수준으로 극단적으로 좁아지면 채널별 연산 효율과 메모리 대역폭 활용도가 급격히 떨어지므로, 무제한 확장이 불가능하고 적정 병목 너비(논문 기준 $d \ge 4$)를 유지해야 한다.
- 하드웨어 커널 의존성: Grouped convolution은 표준 밀집 GEMM(행렬 곱셈) 연산과 달리 다중 소형 커널 연산 또는 메모리 분할을 수반하므로, 저수준 라이브러리(CUDA/cuDNN)의 그룹 합성곱 가속 지원 여부에 따라 실제 처리량(throughput) 차이가 크게 벌어지는 트레이드오프를 갖는다.
5. 핵심 요약 및 시사점
- 새로운 설계 차원 카디널리티(Cardinality): 깊이(depth)와 너비(width)에 의존하던 전통적 스케일링에서 벗어나, 독립적인 변환 경로의 개수인 카디널리티라는 새로운 축을 제시했다.
- Split-Transform-Merge의 단순화: Inception의 이종 필터 튜닝 문제를 해결하고, 동일한 토폴로지의 병렬 경로를 집계함으로써 설계 및 탐색 복잡도를 낮췄다.
- Grouped Convolution과의 동치성: 다중 경로 앙상블 구조가 실제로는 표준 grouped convolution 한 층으로 동치 변환되어 단일 레이어로 간결하게 구현된다.
- 동일 연산량 대비 뛰어난 표현력: FLOPs와 파라미터 수를 고정한 상태에서도 단순히 cardinality를 키우는 것만으로 ImageNet 분류 에러율을 지속해서 낮출 수 있음을 실험적으로 증명했다.
References
-
Saining Xie, Ross Girshick, Piotr Dollár, Zhuowen Tu, Kaiming He, “Aggregated Residual Transformations for Deep Neural Networks”, CVPR 2017 ↩
-
Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun, “Deep Residual Learning for Image Recognition”, CVPR 2016 ↩
-
Christian Szegedy, Wei Liu, Yangqing Jia, Pierre Sermanet, Scott Reed, Dragomir Anguelov, Dumitru Erhan, Vincent Vanhoucke, Andrew Rabinovich, “Going deeper with convolutions”, CVPR 2015 ↩
-
Alex Krizhevsky, Ilya Sutskever, Geoffrey E. Hinton, “ImageNet Classification with Deep Convolutional Neural Networks”, NeurIPS 2012 ↩
댓글남기기