상세 컨텐츠

본문 제목

[2주차 / 황민아 / 논문리뷰] Deep Residual Learning for Image Recognition

방학 세션/CV

by hwangmina 2023. 1. 31. 23:56

본문

1. Introduction

심층 신경망은 low/mid/high-level feature를 classifier와 함께 multi-layer 방식으로 통합한다. 그리고 feature의 level은 쌓는 층의 수, 즉 깊이에 따라 더 높아질 수 있다. 최근의 연구는 신경망의 깊이가 중대한 역할을 하며, ImageNet 데이터셋에 대해 뛰어난 성능을 보이는 모델들은 모두 16에서 30개의 층으로 구성된 심층 신경망 구조를 사용한다. 하지만 신경망의 깊이를 늘림으로써 발생하는 학습 과정의 문제가 존재한다.

  1. vanishing/exploding gradient problem - 이는 normalization 기법과 intermediate normalization layer를 통해 어느정도 해결이 가능하였다.
  2. degradation problem - 신경망의 깊이가 깊어질수록 정확도가 포화되고, 이후 빠르게 감소한다. 이 때, degradation의 원인은 overfitting이 아니며, 하단의 그래프와 같이 층을 늘릴수록 training error가 증가하는 것을 확인할 수 있다.

본 논문에서는 degradation 문제를 해결하기 위해 deep residual learning이라는 개념을 도입한다.

2. Deep Residual Learning

Residual Learning

입력을 x라고 했을 때, fit하고자 하는 underlying mapping을 H(x)라 하면, 해당 논문에서는 nonlinear mapping F(x)=H(x)-x를 제시한다. 이 때 원 함수는 F(x)+x가 된다. 즉, 쌓인 층들이 기본 mapping으로 fit되는 것이 아닌, 잔차 mapping에 fit되게끔 하는 것이다. 이는 unreferenced mapping보다 residual mapping을 최적화하는 것이 더 쉽다는 가정을 기반으로 한다.

Identity Mapping by Shortcuts

Residual learning은 몇 개의 층마다 적용되며, 해당 논문에서는 building block을 다음과 같이 정의한다. x와 y는 각각 층의 입력, 출력 벡터이며 F는 학습해야하는 residual mapping을 나타낸다.

위와 같은 residual learning은 shortcut connection과 element-wise addition을 통해 구현된다. 이 때 위 식에서 사용된 shortcut connection은 추가적인 파라미터나 계산 복잡도를 요구하지 않는다는 이점이 있다.

Network Architectures

Plain Network

Plain baseline은 VGG net을 기반으로 하며 두가지 특징을 갖는다.

  1. 출력 feature map의 size가 같은 경우, 층들은 같은 수의 필터를 갖는다.
  2. feature map의 size가 절반이 된 경우, 필터의 개수는 2배로 늘려 층 당 시간 복잡도를 보존한다.

Residual Network

Plain network을 기반으로 shortcut connection을 추가한다. 입력과 출력의 차원이 동일한 경우 identity shortcut을 직접적으로 사용할 수 있다. 차원이 증가하는 경우 zero-padding 후 identity mapping을 하거나 projection shortcut을 사용한다.

3. Experiments

Deeper Bottleneck Architectures

ImageNet 데이터셋을 학습하기 위한 심층 신경망에서는 training time을 고려하여 building block을 bottleneck design으로 수정하였다. 각 residual function F에 대해 2개 대신 3개의 층을 사용하였으며, 각 층은 1x1, 3x3, 1x1 convolution 층이다. 이 때 1x1 층은 차원의 축소와 증가를 통해 3x3 층이 더 작은 입출력 차원을 갖게끔 한다. 이를 통해 파라미터의 수를 감소시키고, 결과적으로 연산량을 감소시킨다.

ImageNet Classification

결과적으로 ResNet-34는 ResNet-18에 비해 더 적은 training error과 generalization 성능을 보였다. 이는 degradation 문제가 해결되었으며, 깊이가 증가를 통해 정확도 향상을 얻을 수 있다는 것을 나타낸다. 또한 ResNet-34는 plain-34보다 error가 3.5% 감소하였으며, 이는 residual learning이 심청망에 효율적으로 적용될 수 있음을 보인다.

관련글 더보기

댓글 영역