Paper Review/Computer Vision

[Euron 8th Research 논문 리뷰] ResNet: Deep Residual Learning for Image Recognition

YeonJuJeon 2025. 3. 6. 15:24

논문 링크: 1512.03385

저자: Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun

소속: Microsoft Research

발행일: 2015. 12. 10

CVPR 2016 논문 (Computer Vision and Pattern Recognition, 2016)

발표자료:

Week1_ResNet.pdf
1.51MB


0. Abstract

딥 컨볼루션 신경망(Deep Convolutional Neural Networks, CNN)은 이미지 분류 분야에서 연이은 돌파구를 마련하며, 다양한 비전 인식(visual recognition) 과제에서 큰 성능 향상을 가져왔다. 하지만, 단순히 네트워크의 층을 깊게 쌓는 것만으로 더 나은 성능을 보장할 수 있을까?

ResNet(Residual Network)은 이러한 질문에서 출발한 연구로, 깊은 신경망의 최적화 문제를 해결하고, 획기적인 성능을 달성하며 ILSVRC 2015 및 COCO 2015 대회에서 1위를 차지했다. 본 글에서는 ResNet이 해결한 문제, 핵심 원리, 그리고 실험 결과를 정리해본다.


1. Introduction

1-1. 깊은 네트워크의 한계와 문제점

딥러닝의 발전과 깊이의 중요성

최근 연구에 따르면 네트워크의 depth는 모델 성능에 중요한 요소이다. 특히, 난이도가 높은 ImageNet 데이터셋에서 최상위 성능을 기록한 모델들은 모두 16~30층 이상의 "매우 깊은" 모델을 사용했다. 이러한 모델들은 특징 표현(feature representation)의 수준을 더욱 풍부하게 만들어 높은 성능을 발휘했다.

 

그러나 단순히 층을 많이 쌓는 것만으로 항상 좋은 성능을 얻을 수 있을까?

Problems of Deep Network: Degradation Problem

기존 연구에서는 신경망이 너무 깊어지면 학습이 어려워지는 현상을 발견했다.

  • 소실/폭발 기울기 문제(Vanishing/Exploding Gradient Problem)
    • 네트워크가 깊어질수록 역전파(Backpropagation) 과정에서 기울기(gradient)가 점점 작아지거나 커져 학습이 수렴하지 않음.
  • 성능 저하 문제(Degradation Problem)
    • 네트워크 깊이가 증가할수록 정확도가 saturation 상태에 도달한 후 오히려 감소하는 현상 발생.
    • 단순한 과적합(overfitting) 문제가 아닌, 깊이가 증가할수록 training error 조차 증가하는 심각한 문제임.

즉, 기존 네트워크는 깊어질수록 최적화가 어려워지고 성능이 저하되는 한계를 보였다.

1-2. ResNet

Residual Learning Framwork

ResNet은 깊은 네트워크의 최적화 문제를 해결하기 위해 잔차 학습(Residual Learning) 기법을 도입했다.

 


기존 방식과 ResNet의 차이는 다음과 같다.

기존 딥러닝 방식 ResNet 방식 (Residual Learning)
네트워크가 직접 H(x)를 학습 네트워크가 잔차 함수 F(x) := H(x) - x를 학습
입력 데이터를 통해 최적의 매핑 H(x)를 찾음 입력 x를 기준으로 변화를 학습하고, 최종 매핑을 H(x) = F(x) + x로 구성
최적해가 항등 매핑(Identity Mapping)일 경우에도 학습이 어려움 잔차를 0으로 수렴시키는 방식이므로 최적화가 쉬움

즉, 네트워크가 직접 최종 출력을 학습하는 것이 아니라, "잔차(residual)"를 학습하도록 변환하여 최적화를 단순화하는 것!

Shortcut Connection: 학습을 돕는 핵심 구조

ResNet의 핵심은 Shortcut Connection(단축 연결)을 추가하는 것이다.

  • 특정 층을 건너뛰어(skip) 입력을 그대로 다음 층에 전달.
  • 연산량 증가 없이 학습을 돕고, 신호 흐름이 원활해짐.
  • 항등 단축 연결(Identity Shortcut Connection)은 추가적인 파라미터 없이 계산 복잡도를 증가시키지 않음.
  • 기존 딥러닝 프레임워크(Caffe 등)에서 별도 수정 없이 쉽게 구현 가능.

이제 깊은 네트워크도 안정적으로 학습할 수 있다!

1-3. Experiments & Results

ImageNet Image Classification

  • 기존 네트워크(Plain Network)는 깊이가 증가할수록 training error가 증가.
  • ResNet은 층이 깊어질수록 정확도가 꾸준히 향상되며, 최적화 문제 없이 학습이 가능.
  • 152층 ResNet(ResNet-152)은 기존 가장 깊은 모델(VGG-19)보다 더 깊지만 연산량이 낮음.
  • ResNet ensemble 모델은 ImageNet 테스트 세트에서 Top-5 오류율 3.57% 기록 → ILSVRC 2015 분류 대회 1위

CIFAR-10

  • ImageNet뿐만 아니라 CIFAR-10 데이터셋에서도 동일한 패턴이 관찰됨.
  • ResNet은 최적화 난이도를 줄이고, 층이 깊어질수록 정확도가 높아짐.
  • 100층 이상의 모델을 성공적으로 학습했으며, 1000층 이상의 모델도 탐색 → 오히려 성능 낮아지나 발전 가능성 있음.

Object Detection

  • Faster R-CNN과 ResNet을 결합하여 Object Detection에서도 강력한 성능을 기록.
  • 기존 VGG-16 대비, PASCAL VOC 및 MS COCO 데이터셋에서 성능 대폭 향상.
  • COCO 데이터셋에서 mAP(Mean Average Precision) 6% 증가 (상대적 28% 향상).
  • ILSVRC 2015 및 COCO 2015 대회에서 ImageNet Detection, COCO Segmentation 등 여러 부문 1위 달성

1-4. 결론: ResNet이 바꾼 딥러닝 패러다임

Novelty & Contribution

  1. 잔차 학습(Residual Learning) 도입 → 깊은 네트워크의 학습을 쉽게 만듦.
  2. Shortcut Connection 사용 → 정보 손실 없이 신호 흐름을 원활하게 유지.
  3. 층이 깊어질수록 성능이 향상되는 모델을 성공적으로 학습 → 최적화 문제 해결.
  4. ImageNet, CIFAR-10, COCO 등 다양한 데이터셋에서 최고의 성능 기록.
  5. ILSVRC 2015 및 COCO 2015 대회 여러 부문 1위

Future Works

  • ResNet은 이후 모든 딥러닝 연구에서 필수적인 네트워크 구조가 됨.
  • NLP, Medical AI, Autonomous Driving 등 다양한 분야에서 활용.
  • 후속 연구로 DenseNet, EfficientNet, Vision Transformer 등 새로운 모델들이 등장하는 계기가 됨.

2. Related Works

2-1. Residual Representations

이미지 인식 분야에서 VLAD(Vector of Locally Aggregated Descriptors)Fisher Vector는 강력한 얕은 표현(shallow representations) 방식으로 알려져 있다.

  • VLAD는 딕셔너리에 대한 잔차 벡터(residual vectors)를 인코딩하는 방식이다.
  • Fisher Vector는 VLAD의 probabilistic(확률적) version으로 볼 수 있다.
  • 이러한 방법들은 이미지 검색(image retrieval) 및 분류(classification)에서 뛰어난 성능을 보였다.

벡터 양자화(vector quantization)에서도, 원본 벡터를 직접 인코딩하는 것보다 잔차 벡터를 인코딩하는 방식이 더 효과적인 것으로 나타났다.

또한, 저수준 비전(low-level vision) 및 컴퓨터 그래픽스(computer graphics)에서는 부분 미분 방정식(Partial Differential Equations, PDEs)을 해결하는 방법으로 멀티그리드 방법(Multigrid method)이 널리 사용된다.

  • 이 방법은 문제를 여러 스케일에서 하위 문제(subproblems)로 재구성하여, 각 하위 문제는 더 거친(coarser) 스케일과 더 세밀한(finer) 스케일 사이의 잔차 해(residual solution)를 계산한다.
  • 또 다른 방법인 계층적 기저 전처리(hierarchical basis preconditioning)는 두 스케일 간의 잔차 벡터를 변수로 활용하여 최적화를 가속화하는 방식이다.

이러한 연구들은 적절한 문제 재구성(reformulation)과 전처리(preconditioning)가 최적화를 단순화하는 데 기여할 수 있음을 시사한다.

2-2. Shortcut Connections

단축 연결(shortcut connections)에 대한 연구는 오랜 기간 동안 다양한 방식으로 진행되었다.

  • 초기에는 MLP(Multi-Layer Perceptron)의 학습 과정에서 네트워크 입력을 출력으로 직접 연결하는 선형 계층(linear layer)이 사용되었다.
  • 이후, 중간 층(intermediate layers)을 보조 분류기(auxiliary classifiers)에 연결하는 방식이 소실/폭발 기울기 문제를 완화하는 데 활용되었다.

단축 연결을 활용한 연구들은 다음과 같다.

  1. 기울기 소실 방지
    • 일부 연구에서는 단축 연결을 통해 layer 응답, gradient, propagated errors를 정렬하는 기법을 제안했다.
  2. 인셉션(Inception) 레이어
    • 단축 연결과 더 깊은 브랜치를 결합한 Inception 구조가 도입되었다.
  3. 고속도로 네트워크(Highway Networks)
    • 게이팅 함수(gating functions)를 활용하여 데이터에 따라 단축 연결을 조절하는 방식이 연구되었다.
    • 하지만, 이 방식은 추가적인 학습 가능한 매개변수(parameters)가 필요하며, 게이트가 닫히면 특정 층이 잔차 함수(residual function)를 학습하지 못하는 문제가 발생한다.

잔차 네트워크(Residual Networks)와 기존 연구의 차이점

기존 연구와 달리, ResNet은 잔차 학습(residual learning)을 통해 깊은 네트워크에서도 학습이 원활하게 이루어지도록 설계되었다.

  • 기존 고속도로 네트워크는 층이 극단적으로 깊어질 때의 성능 향상을 입증하지 못함.
  • 반면, ResNet은 항등 단축 연결(identity shortcut connection)을 활용하여 100층 이상의 깊은 네트워크에서도 최적화가 가능함을 실험적으로 검증하였다.

잔차 네트워크는

  1. 항등 단축 연결을 사용하여 모든 정보가 항상 네트워크를 통해 전달됨.
  2. 항등 단축 연결은 닫히지 않으며, 추가적인 잔차 함수(residual function)만 학습됨.
  3. 매우 깊은 네트워크에서도 학습 및 최적화가 용이함을 실험적으로 검증함.

이러한 차별점을 통해, ResNet은 깊은 네트워크에서도 성능 저하 없이 최적화가 가능한 획기적인 방법으로 자리 잡았다.


3. Deep Residual Learning

3-1. Residual Learning

신경망이 깊어질수록 학습이 어려워지는 문제를 해결하기 위해, ResNet은 Residual Learning 기법을 도입했다.

기존 방식에서는 신경망이 직접 H(x)를 학습해야 했다. 하지만 ResNet에서는,

  • 네트워크가 직접 H(x)를 근사하는 것이 아니라,
  • 잔차 함수(residual function) F(x) := H(x) - x를 학습하도록 유도한다.
  • 즉, 최종 매핑을 H(x) = F(x) + x로 변환하여, 입력 x를 직접 참조하는 형태로 구성한다.

이러한 방식이 왜 효과적인가?

  • 만약 최적해(optimal solution)가 항등(identity) 매핑이라면, 단순히 잔차를 0으로 수렴시키는 것이 더 쉬움.
  • 기존 네트워크는 최적화를 위해 항등 매핑을 근사해야 하지만, ResNet은 항등을 기본값으로 두고 변화만 학습하면 되므로 최적화가 단순해진다.

실제 실험에서도, 학습된 잔차 함수는 일반적으로 작은 반응(small response)을 보이며, 이는 항등 매핑이 최적화를 더 용이하게 만든다는 것을 의미한다.

3-2. Identity Mapping by Shortcuts(단축 연결을 활용한 항등 매핑)

잔차 학습을 실제 신경망에서 구현하기 위해 shortcut connection을 도입한다.

잔차 학습의 기본 구조는 다음과 같이 정의된다.

  • 입력 x에 대해, 학습할 잔차 함수 F(x, W_i)를 거친 후,
  • 이를 입력 x와 합산하여 최종 출력 y = F(x, W_i) + x를 생성.
  • 즉, 기존 방식과 다르게 F(x) + x 연산을 단축 연결을 활용하여 수행.

이 방식의 장점

  • 단축 연결은 추가적인 매개변수(parameter)나 계산 복잡도를 증가시키지 않음.
  • 따라서, 일반 네트워크(Plain Network)와 잔차 네트워크(Residual Network)를 fair comparison할 수 있음.
  • 네트워크의 깊이(depth), 너비(width), 계산 비용(computation cost)가 동일하므로, 성능 향상이 순수하게 잔차 학습 덕분인지 확인 가능.

차원이 다를 경우, 어떻게 해결할까?

  • 입력과 출력 차원이 다르면, 1×1 컨볼루션을 사용한 선형 변환(linear projection) W_s를 적용.
  • 하지만, 실험적으로 identity mapping만으로도 성능 저하 문제를 해결하는 데 충분함이 확인됨.
  • 따라서, 선형 변환 W_s는 차원 변환이 필요할 때만 사용.

3-3. Network Architectures

잔차 학습이 실제 모델에서 어떻게 적용되는지 알아보자.

Left: the VGG-19model [41] (19.6billionFLOPs)asareference. Middle:aplainnetworkwith34parameterlayers(3.6billionFLOPs). Right: aresidualnetworkwith34parameter layers (3.6billion FLOPs).

(1) Plain Network

VGG 네트워크(VGG-19)의 설계를 기반으로 한다.

  • 대부분의 컨볼루션 층은 3×3 필터를 사용.
  • 특징 맵 크기가 절반으로 줄어들 때마다 필터 개수를 두 배로 증가.
  • 다운샘플링(downsampling)은 stride=2 컨볼루션을 통해 수행.
  • 네트워크는 글로벌 평균 풀링(global average pooling) 후, 1000-클래스 Softmax 레이어로 종료.
  • 34개 가중치 층(weighted layers)으로 구성됨.

연산량 비교

  • VGG-19: 19.6 billion FLOPs
  • 우리의 34층 일반 네트워크: 3.6 billion FLOPs (VGG-19의 18%)

(2) Residual Network

위의 일반 네트워크에 shortcut connections을 추가하여 잔차 네트워크로 변환.

  • 입력과 출력의 차원이 동일한 경우 → identity shortcut connections 사용.
  • 입력과 출력의 차원이 다른 경우 → 두 가지 옵션 고려
    1. 항등 매핑 유지: 추가적인 zero 패딩을 활용하여 차원 증가.
    2. 투영 단축 연결(projection shortcut): 1×1 컨볼루션을 통해 차원 변환.
  • 특징 맵 크기가 다를 경우, stride=2를 적용하여 해상도 조정.

3-4. Implementation

(1) Data Preprocessing

  • 이미지 크기 변환
    • 짧은 변(shorter side)의 길이를 256~480 범위에서 랜덤 샘플링 후 크기 조정.
    • 이후, 224×224 크기 random crop 및 horizontal flip 적용.
    • 각 픽셀별 평균(per-pixel mean) 값을 빼서 정규화(normalization).
  • 색상 변환(color augmentation)
    • 기존 연구에서 사용된 표준 기법 적용.

(2) Training

  • 배치 정규화(Batch Normalization, BN) [16]
    • 모든 컨볼루션 층 뒤에 추가, 활성화 함수(activation) 전에 배치.
  • 가중치 초기화 (Weight Initialization)
    • 기존 연구 [13]에서 제안된 방식 적용.
  • SGD(Stochastic Gradient Descent) 최적화
    • 미니배치 크기: 256
    • 초기 학습률: 0.1
    • 학습률 감소: 오류(error) 수렴 시 10배 감소
    • 최대 학습 횟수(iterations): 60 × 10⁴
    • 가중치 감소(weight decay): 0.0001
    • 모멘텀(momentum): 0.9
    • 드롭아웃(dropout): 사용하지 않음 (기존 연구 [16] 방식 준수)

(3) Testing

  • 비교 실험에서는 표준 10-크롭 테스트(10-crop testing) [21] 적용.
  • 최상의 결과를 위해, fully convolutional 형태로 변환하여 다중 스케일 평가(multi-scale evaluation) 수행.
    • 이미지를 서로 다른 크기(224, 256, 384, 480, 640)로 변환 후 평균화하여 최종 성능 평가.

4. Experiments 

4-1. ImageNet Classification

ResNet은 ImageNet 2012 분류 데이터셋에서 성능을 평가하였다.

  • 1000개 클래스, 학습 데이터 128만 개, 검증 데이터 50,000개, 테스트 데이터 100,000개
  • Top-1 오류율: 가장 높은 확률 예측이 정답과 다른 비율
  • Top-5 오류율: 상위 5개 예측 중 정답이 포함되지 않은 비율

Plain Networks

  • 18층 및 34층 일반 네트워크를 학습한 결과,
    • 34층 네트워크가 18층보다 검증 오류가 더 높음 → 깊어질수록 성능이 저하됨.
    • degradation problem 발생: 네트워크가 깊어질수록 학습이 어려워짐.
    • 단순히 층을 추가하는 것만으로는 성능이 향상되지 않음.
  • BN (Batch Normalization)을 사용했음에도 불구하고 학습이 어려운 현상 확인

Residual Networks

  • residual learning 기법을 적용한 18층 및 34층 ResNet을 평가함.
  • 단축 연결(shortcut connection)을 사용하여 기존 네트워크에 항등 매핑(identity mapping)을 추가.
  • 실험 결과:
    • 34층 잔차 네트워크(ResNet)가 18층보다 성능이 더 뛰어남 (오류율 2.8% 감소).
    • 잔차 학습을 적용하면 성능 저하 문제 해결 → 깊은 네트워크에서도 학습 가능.
    • 34층 ResNet은 동일한 층을 가진 일반 네트워크보다 오류율이 3.5% 낮음.
    • 18층 ResNet도 일반 네트워크보다 학습 속도가 빠름 → 최적화가 더 쉬워짐.

Identity vs. Projection Shortcuts

잔차 네트워크에서 단축 연결 방식 비교:

  • 항등 단축 연결 (identity shortcut, 매개변수 없음)
  • 투영 단축 연결 (projection shortcut, 매개변수 추가됨, 1×1 컨볼루션 사용)

실험 결과:

  • 항등 단축 연결만으로도 충분한 성능 향상 가능.
  • 투영 단축 연결을 추가하면 성능이 소폭 개선되지만, 연산량 증가.
  • 최적의 성능과 모델 효율성을 위해 항등 단축 연결을 기본으로 사용.

Deeper Bottleneck Architectures

Deeper Bottleneck

  • 기존 잔차 함수 F(x)는 3×3 컨볼루션 2개로 구성되었음.
  • 병목 구조(bottleneck design)에서는 1×1, 3×3, 1×1 컨볼루션을 사용하여 모델을 경량화.
    • 첫 번째 1×1 컨볼루션: 입력 채널 수 감소 → 연산량 줄임.
    • 중간 3×3 컨볼루션: 주요 정보 처리.
    • 마지막 1×1 컨볼루션: 원래 차원으로 복원.

Deeper Bottleneck 장점

  • 연산량을 줄이면서도 깊은 네트워크 구축 가능.
  • VGG-16 (15.3B FLOPs)보다 연산량이 적음 → 더 깊지만 더 효율적인 모델.

50-layer ResNet (ResNet-50)

  • 기존 34층 네트워크에서 2층 블록을 3층 병목 블록으로 변경.
  • 차원 증가 시 투영 단축 연결(projection shortcut) 사용.
  • 연산량: 3.8 billion FLOPs.

ResNet-101, ResNet-152

  • 더 많은 3층 병목 블록을 추가하여 101층, 152층 ResNet 구축.
  • 152층 ResNet의 연산량 (11.3 billion FLOPs) < VGG-16 (15.3 billion FLOPs)
  • 깊어질수록 정확도가 지속적으로 향상됨 (표 3, 4 참고).
  • 성능 저하 문제 없음 → 매우 깊은 네트워크에서도 안정적으로 학습 가능.

Comparison with State-of-the-Art Methods(SOTA)

  • 기존 최신 모델과 비교한 결과,
    • 34층 ResNet도 매우 경쟁력 있는 성능 기록.
    • 152층 ResNet의 Top-5 검증 오류율: 4.49%.
    • 이 단일 모델(single model) 성능이 기존 모든 앙상블(ensemble) 모델보다도 낮은 오류율 기록.

Ensemble Results

  • ResNet 모델 6개(깊이가 다른 모델)를 조합하여 앙상블 구성.
  • 152층 ResNet 2개만 포함하여 제출했을 때도,
    • 최종 테스트 세트에서 Top-5 오류율 3.57% 기록.
    • ILSVRC 2015 대회 1위 달성.

4-2. CIFAR-10 and Analysis

  • 데이터셋: CIFAR-10
    • 학습 데이터: 50,000개
    • 테스트 데이터: 10,000개
    • 클래스 개수: 10개

Architecture

  • Plain Network & ResNet
  • 입력: 32×32 이미지, 픽셀별 평균값 정규화
  • 구성:
    • 3×3 컨볼루션 레이어로 시작
    • 총 6n개의 3×3 컨볼루션 블록 포함
    • 다운샘플링(stride=2 컨볼루션 사용)
    • Global Average Pooling, Fully Connected Layer, Softmax

  • Residual Network:
    • 3×3 컨볼루션 pair에 shortcut connection 적용
    • 3n개의 residual connection 포함
    • identity shortcut, option A 사용

Training Setup

  • 최적화 기법
    • SGD with Momentum (0.9)
    • Weight Decay: 0.0001
    • Batch Normalization (BN) 적용
    • Dropout 사용 안 함
  • 학습률 스케줄
    • 초기 학습률: 0.1
    • 32k, 48k iterations에서 10배 감소
    • 64k iterations에서 학습 종료
  • 데이터 증강(Data Augmentation)
    • 4픽셀 패딩 → 32×32 랜덤 크롭 → 수평 반전
    • 테스트 시 원본 32×32 이미지 평가

Experimental Results & Analysis

Degradation in Plain Networks

  • 층이 깊어질수록 훈련 오류 증가 (그림 6, 왼쪽)
  • ImageNet 및 MNIST에서도 동일한 현상 발생
  • 깊은 일반 네트워크에서의 최적화 문제는 근본적인 문제

ResNets Improve Optimization & Accuracy

  • 층이 증가할수록 정확도 향상 (그림 6, 가운데)
  • 잔차 학습이 최적화 문제를 해결하는 역할 수행

110-layers ResNet training Strategy

  • 초기 학습률 0.1 → 수렴 지연
  • 해결책:
    • 초기 학습률 0.01로 낮춰 워밍업(warm-up) 학습 (약 400 iterations)
    • 이후 0.1로 증가하여 학습 진행
  • 결과:
    • 110층 ResNet이 성공적으로 학습
    • FitNet 및 Highway Networks보다 적은 매개변수로 최고 성능 (6.43% 오류율)

CIFAR-10 Test Set

  • ResNet-110이 기존 최신 모델보다 적은 매개변수로 최상의 성능 기록
  • 그러나 ResNet-1202에서는 성능 저하 발생너무 깊은 네트워크는 최적화 문제 발생 가능

Analysis of Layer Responses

  • 잔차 네트워크는 일반 네트워크보다 반응 크기가 작음 (그림 7)
  • 더 깊은 ResNet(110층 이상)은 개별 층의 변화가 더 적음
  • 이는 정보가 효과적으로 전달되고 있음을 의미

Exploring Over 1000 Layers

  • 1202-layers ResNet 실험
    • 훈련 오류 < 0.1% 달성
    • 테스트 오류: 7.93%
  • 최적화 문제 없음, 그러나 overfitting 발생
  • 매개변수 수(19.4M)가 CIFAR-10에 비해 과도하게 큼
  • Maxout/Dropout 등 강력한 정규화 기법 필요

4-3. Object Detection on PASCAL VOC & MS COCO

PASCAL VOC Object Detection (Table 7)

  • VGG-16 → ResNet-101 변경 시 3.2~3.4% 성능 향상
  • 잔차 네트워크의 표현 학습 능력이 객체 검출에서도 효과적임

MS COCO Object Detection (Table 8)

  • COCO 데이터셋에서도 ResNet-101이 VGG-16 대비 성능 향상
  • 특히, mAP@[0.5, 0.95] 지표에서 6.0% 향상 (상대적으로 28% 개선)

ILSVRC & COCO 2015 대회 1위 달성

ResNet을 기반으로 다음 대회 트랙에서 1위 기록

  • ImageNet Detection (ILSVRC 2015)
  • ImageNet Localization (ILSVRC 2015)
  • COCO Detection (MS COCO 2015)
  • COCO Segmentation (MS COCO 2015)

5. conclusion

  • Residual Learning: 딥러닝에서 층이 깊어질수록 발생하는 최적화 문제를 획기적으로 해결했다.
  • 항등 단축 연결: 네트워크 정보를 직접 전달해 기울기 소실을 줄이고, 추가 파라미터 없이 구현 가능.
  • 깊이가 늘어날수록 성능 향상: ResNet은 깊은 네트워크에서도 성능 저하 없이 학습 가능함을 입증했다.
  • 폭넓은 영향: 이후 DenseNet, EfficientNet, Vision Transformer 등 다양한 모델에서 ‘ResNet 개념(잔차 블록, 단축 연결)’이 변형·확장되어 활용됨.
  • 미래 전망: ResNet은 단순 이미지 분류뿐 아니라 객체 검출, 세그멘테이션, 의료 영상, 자율 주행, NLP 분야에 이르기까지 폭넓게 확산되어 딥러닝 연구의 중요한 기반이 되었다.

Take-home-message

  1. 깊이가 늘어날수록 좋을까?
    1. 딥러닝 모델이 깊어질수록 표현력이 좋아지지만, 학습 과정에서 기울기 소실·폭발 문제나 'degradation problem'이 발생해 오히려 성능이 떨어질 수 있음을 배웠다.
  2. Residual Learning의 효용
    1. 네트워크가 $\mathbf{H(x)}$를 직접 학습하는 대신 $\mathbf{F(x) = H(x) - x}$로 잔차를 학습하면, 최적화가 훨씬 쉬워진다.
    2. 최적해가 항등(Identity)이면 단순히 잔차(Residual)를 0으로 수렴시키면 되므로, 이를 통해 매우 깊은 네트워크도 안정적으로 학습할 수 있다.
  3. Shortcut Connection의 가치
    1. 항등 단축 연결(Identity Shortcut)을 통해 입력을 직접 다음 층으로 전달하면, 기울기의 흐름이 원활해져서 학습이 용이해진다.
    2. 추가 파라미터 없이 간단히 구현할 수 있고, 학습 난이도를 낮추는 핵심 아이디어임을 깨달았다.
  4. 병목(bottleneck) 구조의 설계 철학
    1. ‘1×1 → 3×3 → 1×1’ 구조를 통해 연산량 증가를 억제하면서도 네트워크를 깊게 만들 수 있음을 배웠다.
    2. ResNet-50/101/152 등은 VGG보다 더 깊지만 연산량(FLOPs)이 적고, 결과적으로 더 뛰어난 성능을 달성했다.
  5. 일관된 성능 향상
    1. ImageNet, CIFAR-10, MS COCO 등 다양한 데이터셋에서 ResNet이 최고 수준의 성능을 달성한 것을 통해, 잔차 학습이 일반적이고 강력한 기법임을 확인했다.
  6. ResNet 이후의 모델들
    1. DenseNet, EfficientNet, Vision Transformer 등 다양한 후속 연구들이 ‘잔차(residual) 개념’과 ‘단축 연결’을 변형·계승했다. ResNet이 딥러닝 패러다임을 크게 바꾼 계기가 되었다.
  7. 추가 정규화와 설계의 중요성
    1. CIFAR-10에서 1000층 이상으로 네트워크를 깊게 했을 때 오버피팅이 발생하는 등, 모델 설계와 정규화 기법이 중요하다는 점도 다시금 깨달았다.
    2. 모델 규모에 따라 적절한 정규화나 하이퍼파라미터 튜닝 전략이 필요함을 학습했다.