딥러닝(DL)/논문 리뷰

Deep Residual Learning for Image Recognition (CVPR 2016)

Song 컴퓨터공학 2023. 8. 2. 20:01

 

 

Resnet 이란 이름으로도 유명한 이미지 분류 분야의 논문입니다. 깊이가 깊어질 수록 학습 성능이 저하되는 문제를 잔여 학습(Residual training) 이란 기법을 사용해 층이 깊어질 때 발생하는 degradation problem 을 해결한 논문으로, 간단한 아이디어로 구성되어 있지만 최신 논문들에서도 계속 인용될만큼 핵심적인 논문입니다. 제 깃허브 링크에 가시면 영문으로 2페이지 요약 작성한 PDF 파일을 다운 받으실 수 있습니다.


Deep Residual Learning for Image Recognition

Abstract

모델이 깊어질수록 학습하는 것도 더 어려워집니다. 이를 해결하기 위해 본 논문에서는 Residual Learning Framework를 제안하여 학습 과정을 더 쉽게 만들게 하였으며, 이전 논문들과는 다르게 훨씬 깊은 네트워크를 학습했다는 것이 주 특징입니다. Residual functions 라는 것을 학습할 수 있도록 하였고, 이렇게 학습한 Residual network는 더 쉽게 최적화가 가능하고, 레이어의 깊이를 증가시킴과 동시에 높은 정확도를 얻어냈습니다. ImageNet의 데이터에 대해 152 Layer라는 깊은 Residual nets 에 대한 평가를 진행하였고, 이는 이전 연구인 VGG nets에 비해 더 깊지만 복잡도가 더 낮다는 장점이 있으며 성능은 더 개선되어 3.57% error 를 얻어내 ILSVRC 2015 분류 대회 에서 1등을 하였습니다. 추가적으로 CIFAR-10에 대해서도 분석을 진행했는데 마찬가지로 향상된 성능을 얻어낼 수 있었습니다.

 

모델의 깊이는 컴퓨터 비전 task에서 중요한 역할을 수행합니다. 기본적으로 Residual nets는 훨씬 더 깊은 네트워크를 학습할 수 있게 해주는 점에 대해서 컴퓨터 비전 뿐 아니라 객체 탐지(Object detection), Segmentation 등의 타 분야에서도 좋은 성능을 보였습니다.

 

 

1. Introduction

CNN 를 깊게 쌓는 시도들은 이미지 분류 분야에서 돌파구와 같은 역할을 수행했습니다. CNN 네트워크를 이용해 학습을 진행하면 low/mid/high-level 의 feature 들이 Layer가 깊어짐에 따라서 적절히 추출되고, Layer가 깊어진다는 말은 곧 feature들의 level 또한 풍부해질 수 있다는 것을 의미합니다. 그렇기 때문에 모델의 깊이는 중요한 요소입니다. 그렇다면 Layer를 그냥 쌓는다해서 항상 성능이 좋아지는가? 라는 질문이 생기게 되는데, 이에 대한 대표적인 반례로 Vanishing or Exploding Gradients Problem 이 있습니다. 이러한 문제들을 해결하기 위해 다양한 테크닉들이 제안되어 왔는데 그 중 하나로 네트워크의 초기 가중치값들을 적절히 설정하여 학습이 잘 이뤄질 수 있도록 하는 아이디어들이 타 논문에 제안되어 왔습니다.

 

깊은 네트워크가 수렴하기 시작하면 degradation problem 이 발생할 수 있습니다. degradation problem 이란 네트워크의 깊이가 깊어지면서 정확도가 포화되고, 그 이후 빠르게 감소하는 현상을 말합니다. 이러한 성능 감소 현상은 overfitting 때문에 발생하는 것이 아니며, 단순히 Layer를 깊게 쌓는 것은 높은 training error 를 발생시킬 수 있습니다. 

위는 기본적인 CNN nets에 대해 layer를 깊게한 그래프인데 56 layer가 20 layer에 비해 더 높은 traing error 와 test error 를 보이는 것을 알 수 있습니다. 즉, 일반적인 CNN 네트워크에서는 깊이를 늘리면 학습이 잘 안된다는 문제가 있습니다.

 

성능 악화가 일어난다는 것은 곧 모델이 Optimize(최적화)가 안 되었다는 뜻입니다. 본 논문에서는 Gradient Vanishing, Exploding, overfitting 등과 같은 degradation problem을 해결하기 위해 Deep Residual Learning Framework 를 제안합니다. 원래의 학습하려 했던 Underlying mapping $\mathcal{H}(x)$ 대신에 더 학습하기 쉬운 residual mapping $\mathcal{F}(x) := \mathcal{H}(x) - x$을 따로 정의해서 이를 대신 학습할 것입니다.

 

원래의 의도하는 mapping 인 $\mathcal{H}(x)$ 가 아닌, 문제를 조금 바꾸어  $\mathcal{F}(x)$  를 대신 학습하게 만드는 것입니다. 이 때 실질적으로 내보내는 output 값은  $\mathcal{F}(x)+x$  이기 때문에 결과적으로 학습을 하게 되는 함수가 위처럼 $\mathcal{F}(x) := \mathcal{H}(x) - x$ 로 정의되는 것입니다.

 

극단적으로 생각을 해보면 만약 identity mapping 이 optimal 하다고 가정할 때, 즉 $\mathcal{H}(x)$ 가 $x$가 될 때 $\mathcal{F}(x)$ 는 $0$이 되고, 이는 곧 residual 이 $0$ 임을 의미합니다. 즉, 본질적으로 학습하고자 했던 mapping 이 identitiy 라고 했을 때 residual 값이 0이 되도록 학습을 하는 것이 난이도가 더 쉬울 수 있다고 설명하고 있습니다.

결과적으로 $\mathcal{F}(x)+x$ 처럼 결과에 Input인 $x$를 더한 것을 Shortcut Connection 이라고 부릅니다. 이 때 Short connection 은 두 개의 Layer를 건너뛰므로 Skip Connection으로 부르기도 합니다. 본 논문에서는 이러한 shortcut connection 을 identity mapping 으로 사용할 수 있다고 말하고 있으며 단순히 입력 $x$를 더하는 것이기 때문에 추가적인 파라미터가 필요하지 않고 복잡하지 않습니다. 또한 전체적인 네트워크가 쉽게 학습될 수 있다는 장점 또한 가지고 있습니다. 이 네트워크를 ImageNet에 실험하여 다음과 같은 효과들을 검증하였습니다.

 

  1. Deep Residual Networks 는 optimize 하기 쉽다.
  2. Depth가 증가함에 따라 정확도 또한 증가하였다.

또한 비슷한 현상을 CIFAR-10 set과 ImageNet 에 대해 공통적으로 Resnet을 이용할 때 성능이 개선된 것이 보여졌으므로 특정 데이터셋에 국한된 방법이 아님을 보여주고 있으며 Optimize가 잘 되는 것을 확인하기 위해 100개, 1000개가 넘는 Layer에 대해 학습을 성공하였고, 152개의 Layer를 쌓은 모델이 VGG에 비해 모델 복잡도도 더 낮으면서 훨씬 높은 정확도를 보였습니다. 여러 분야의 대회에서 수상을 하였고, 이는 residual learning principle 이 generic 하고, 비전 분야 뿐 아니라 타 분야에서도 적용될 수 있을 것으로 기대합니다.

 

 

2. Related Work

Residual Representations.

Image Recognition에서 VLAD는 Residual Vector 를 이용하여 Encoding 하는 방법입니다. Low-level의 비전과 그래픽스 분야의 PDE를 풀기 위해 여러 개의 scale로 subproblems를 재구성하는 Multigrid method를 사용하기도 하였고, 여러 스케일을 연결하기 위해 Residual vector를 사용하였습니다. 등등의 본 논문 뿐 아니라 이전부터 사용되었던 Residual 관련 연구의 소개가 이어집니다.

Shortcut Connections.

이전 연구에서도 MLP에서 Linear layer에 input 과 output을 연결해주는 방법이 존재하였습니다. Auxiliary classifier을 통해 vanishing gradients 를 해결한 연구가 있었고, 그 중 [ Highway networks, Training very deep networks ]에서 제시한 Highway Networks는 Shortcut connection을 발표하였고 gate function을 이용한 부분에서 비슷해보이지만 이 논문과 다른 점으로 해당 논문에서는 파라미터 수를 증가시키지만 본 논문에서 제안한 identity shortcut은 파라미터를 가지고 있지 않다는 점입니다. 또한 gate를 열고 닫는 방식이 아닌 항상 residual functions를 학습하는 게이트가 열린 형태를 사용합니다. 추가적으로 high-way networks는 100 층이 넘는 깊은 깊이에 대해 정확도가 검증되지 않았음을 본 논문과의 차별점으로 소개하고 있습니다.

 

 

3. Deep Residual Learning

3.1. Residual Learning

 $\mathcal{H}(x)$ 를 우리가 원래 의도했던 underlying mapping 이라 생각하고 $x$를 입력이라고 가정하겠습니다 뉴럴 네트워크가 하는 일은 여러 개의 nonlinear layer 를 이용해서 점진적으로 복잡한 함수를 근사하는 것으로 생각할 수 있는데, 이는 이론적으로 $\mathcal{H}(x)-x$와 같은 residual function 를 학습(approximate)하는 것과 동일하다고 할 수 있습니다. (input과 output의 차원이 동일하다고 가정). 이 때 Residual funtion을 $\mathcal{F}(x) := \mathcal{H}(x) - x$ 로 정의하게 되면 원래의 $\mathcal{H}(x)$는 $\mathcal{F}(x)+x$로 정의됩니다. 따라서 이는 Residual function 에 Input 을 더한 것을 Approximate 하는 과정과 동일합니다. 이는 자칫 수학적으로 생각해보면 똑같아 보이지만 $\mathcal{F}(x)$를 이용한 방법의 학습 난이도가 더 쉬워진다는 것이 핵심입니다.

 

동일한 답을 도출한다고 해도 이렇게 식을 reformulation 하는 것이 앞서 보았던 degradation problem 에 대해 직관에 반하는 것처럼 보일 수 있는데, 앞서 언급했던 것처럼 추가되는 Layer가 identity mapping 으로 구성되어 있는 더 깊은 모델은 최소한 더 얕은 모델에 비해 traing error 가 더 높아지지 않을 것이라는 추측을 할 수 있습니다. 여러 개의 nonlinear layer 를 겹처 놓은 상황에서 identity mapping 을 학습하는 것 자체가 어려울 수 있는데, 이를 Residual Learning 을 이용해 해결할 수 있습니다. 만약 identity mapping이 optimal 하다면 기존의 여러 개의 nonlinear layers의 weight들을 모두 0으로 만들고 identity mapping 이 되도록 만듭니다. 즉 기존의 Convolution layer를 따라 입력이 전달되는 것이 아닌 새로 추가된 Short connection 을 따라 identity mapping 이 적용된 결과가 output으로 도출되는 것입니다.

 

사실 real case에서 identity mapping 이 optimal 한 경우는 많지 않습니다. 하지만 이런 방법은 전제조건을 제시해 optimal function 이  Zero mapping 보다 identity mapping에 유사할 때, 매번 새로운 함수를 학습하는 것에 비해 residual function을 이용한 학습이 더 쉽습니다. 이후 소개될 실험 결과에서도 residual functions 자체가 일반적으로 더 작은 response 값을 보여줬다는 것을 통해서 identity mappings 가 합리적인 사전근거를 제공하는 것을 알 수 있습니다.

 

다시 말해 이전 Layer 에서의 값인 $x$를 보존하고 추가적으로 필요한 정보를 학습하는 방식으로 동작하기 때문에 만약 이러한 부분이 없다고 하면 함수 자체는 매번 새로운 weight 마다 새로운  mapping을 학습을 진행해야 하기 때문에 학습이 더 어렵습니다. 이러한 문제점을 해결하기 위한 기법으로 residual function을 정의해 사용할 수 있습니다.

 

 

3.2. Identity Mapping by Shortcuts

본 논문에서는 하나의 block을 다음과 같이 정의합니다.

 

$$ y = \mathcal{F}(x, {W_i}) + x $$

 

$x$와 $y$는 각각 입출력 벡터, 함수 $\mathcal{F}(x, {W_i})$ 는 residual mapping을 의미하고, $x$는 identity mapping, 즉 shortcut connection 을 의미하기도 합니다.

위 그림에서 나타나는 2 layer에서는 $ \mathcal{F} = W_2\sigma (W_1 x)$로 나타낼 수 있습니다. $\sigma$ 는 ReLU 를 의미하며 또한 이 식에서는 bias 값을 고려하지 않도록 정의되었습니다. $\mathcal{F} + x$의 경우 Element-wise addition (각각의 Element끼리 더한다는 뜻)을 사용하였습니다. 그리고 합친 후에 Nonlinear function을 거칩니다. 이와 같은 shortcut connection은 파라미터 수와 계산 복잡도를 증가시키지 않는다는 장점이 있고 이것이 Plain networks 와의 차이점입니다. 또한 identity ampping 에서 Linear Projection 을 추가할 수 있습니다. $x$의 차원과 $ \mathcal{F}$를 거친 결과의 차원이 다를 수 있기 때문입니다. 

 

$$ y = \mathcal{F}(x, {W_i}) + W_s x $$

 

$W_s$ 는 Linear Projection에 사용되는 행렬입니다. $ \mathcal{F} $  는 여러 개의 Layer가 될 수 있지만, 만약 Layer가 1개라면 이점을 얻기 어렵습니다. 왜냐하면 이런 경우 식을 $y = W_1x + x$ 로 정의되는데, 이는 $ y = (W_1 + 1)x $ 와 같은 식이며 그저 weight 에 1을 더한 Linear Layer 와 다른 것이 없기 때문입니다.

 

 

3.3. Network Architectures

Plain Networks와 Residual Networks의 성능을 비교하고자 합니다.

 

Plain Networks.

Baseline 으로 VGG nets 에서 제안된 기법들을 따라 34개의 Layer 를 가진 모델을 준비하였습니다. 대부분의 경우 $3 \times 3$ Filter 로 이루어져 있으며, Feature Map Output Size와 Filter의 개수가 동일하고, Filter의 차원이 2배가 될 때, Feature Map Size 가 절반이 되도록 구성됩니다. 이는 Layer 당 복잡도를 유지하기 위함입니다. 또한 별도의 pooling layer 를 사용하지 않고 stride 값이 2인 Convolution을 사용해 downsampling 을 진행하였습니다. 

결과적으로 본 모델은 일반적인 VGG 네트워크와 비교했을 때 더욱 적은 파라미터와 낮은 복잡도를 가진다는 장점에 대해 언급하고 있습니다.

가장 왼쪽 사진이 VGG19, 중간이 Plain network 입니다.

 

Residual Networks.

위 사진의 가장 오른쪽 모델로, Plain Network 기반에 중간에 Shortcut connection이 추가되었습니다. Input과 Output이 같은 차원이면 더하는데 문제가 없지만, Convolution 결과가 차원이 2배 증가되었을 때는 2 개의 옵션이 있습니다. padding 을 붙인 이후 Identity mapping 을 진행하는 방법이 있고, 두 번째는 앞에서 소개한 Projection Shortcut을 사용하는 방법입니다. 이 두 가지 옵션 모두 Feature map의 크기를 맞추기 위해 Stride 를 2로 하고, 위 그림에서는 점선으로 표시된 부분을 말합니다. 또한 구조를 살펴보면 Shortcut connection이 3번, 4번, 6번, 3번 진행되는 것을 확인할 수 있는데

위 테이블의 34-layer 를 보면 동일하게 나타나는 것을 확인할 수 있고, 다른 layer에 대해서도 동일하게 해석하면 됩니다.

 

 

3.4. Implementation

실제 구현 상의 테크닉에 대해 설명하고 있습니다. ImageNet에 사용할 때 Image의 크기를 $256 \times 480 $ 으로 Resize하고 Random crop을 통해 $224 \times 224$ 크기의 이미지를 생성하였습니다. Horizontal Flip을 이용하여 좌우 반전을 줘 Data Augmentation 을 진행하였으며 Convolution과 Activation function 사이에 Batch normalization 을 추가하였고, Weight initialize 를 직접 진행하였습니다. SGE optimizer를 사용하였으며 256의 mini-batch, lr = 0.1부터 Error가 수렴할 때마다 10씩 나눠주는 방식으로 진행하였습니다. Weight Decay 는 0.0001을 사용하였고 Momentum 은 0.9를 사용하였습니다.

 

 

4. Experiments 

4.1. ImageNet Classification

1000개의 클래스로 이루어진 2012 ImageNet Classification Dataset으로 실험을 진행하였습니다. 

 

Plain Networks.

18-layer와 34-layer plain nets에 대한 실험에서 34-layer plain nets 가 18-layer보다 더 낮은 성능을 보임을 아래 그래프에서 확인할 수 있습니다.

34-Layer Plain 모델은 18 Layer Plain 모델에 비해 더 높은 Validation Error 를 보였습니다. 위 그래프를 통해 전체 학습 과정에서 Training Error 가 높은 것을 확인할 수 있는데 이를 통해 Vanishing Gradients 로 인해 Optimization 이 어렵다 는 것을 알 수 있습니다. 본 논문에서는 이 문제가 Gradient vasishing 때문에 발생하는 것이 아니라고 언급하고 있습니다. 실제 실험에서 Forward 와 backward signal 을 체크할 때 점진적으로 사라지는 문제는 발견되지 않았다고 말하고 있으며 이는 더 깊은 Plain network가 너무 작은 Convergence Rates(exponentially low convergence rates) 를 가져서 Training Error가 줄어드는 것이라 하고 있습니다.

 

Residual Networks.

이번에도 18-layer와 34-layer nets 를 비교하나 이번에는 Residual network 를 이용합니다. 첫 번째 옵션으로 Identity mapping 을 할 때, Demention 을 늘리기 위해 Zero padding 을 사용했습니다. 아래 그래프의 오른쪽이 Residual networks를 이용한 결과입니다.

Residual netwrok를 이용해 학습을 진행한 경우 34개의 Layer를 가지는 모델이 18개의 Layer를 가지는 모델보다 Error 가 작게 나오는 것을 확인할 수 있습니다. 이것을 통해 모델이 깊어지면서 발생하는 degradation problem을 해결했다고 볼 수 있으며 이를 통해 Residual Learning 의 효과를 검증할 수 있습니다. 마지막으로 결론적인 Error 외에도 Resnet이 Plain network 보다 초반 단계에서 빠르게 convergence 되는 것 또한 확인할 수 있습니다.

 

Identity vs. Projection Shortcuts.

지금까지 Dimension 증가를 위해 Zero padding 을 사용했지만 비교를 위해 Projection 도 사용해볼 것입니다. 먼저 3개의 경우로 나눌 수 있습니다. (A) Zero padding 을 통해 Dimension 증가를 시키는 것과 (B) Projection을 통해 Dimension 을 증가시키는 것과 (C) 모든 Shortcut을 Projection 하는 것으로 나눌 수 있는데, 모든 3가지의 경우는 Plain Network 보다 ResNet에서 성능이 더 우수하게 나왔으며, B의 경우는 A보다 조금 성능이 좋게 나옵니다. C번이 가장 성능 자체는 높게 나오는 것을 확인할 수 있지만 projection shortcuts 이 성능 증가에 있어 esstntial 하지는 않다고 소개하고 있습니다. Identity shortcuts 의 중요성에 대해 다시금 확인할 수 있으며 특히 bottlenect 아키텍쳐 같은 경우 복잡도를 증가시키지 않기 위해서 사용될 수 있다고 하고 있습니다.

 

 

Deeper Bottleneck Architectures.

이제 모델을 더 깊게 만드려고 합니다. 깊은 모델의 문제는 학습 시간이 오래 걸린다는 것입니다. 이를 충당하기 위한 Bottleneck architecture 를 제안합니다.

각각의 residual function $\mathcal{F}$에 대해서 2개의 Layer 대신 3개의 Layer를 사용하였으며, 이는 각각 $1\times1$, $3\times3$, $1\times1$ Convolution 으로 이루어져 있습니다. $1\times1$ Layer는 Dimension을 줄였다가 키우는 역할을 합니다. 단순히 파라미터 측면에서 보았을 때 작은 커널을 사용함으로써 파라미터의 수가 줄어든다고 할 수 있습니다.

 

이런 상황에서 identity shortcuts 는 파라미터가 존재하지 않기 때문에 이러한 bottlenect architecture 에 대해 효과적으로 파라미터의 수를 줄이는데 기여할 수 있습니다. 결론적으로 idenetity shortcut은 특히 bottlenect design에 대해서 효과적으로 모델을 효율적으로 만들어줄 수 있습니다.

 

50-layer ResNet: 

34개의 Layer 로 이루어진 모델에서 2개로 이루어진 Layer Block 을 3개 Layer로 이루어진 Bottlenect으로 바꾸었고, Dimention 증가 방법은 Option (B) 를 선택하였습니다.

101-layer and 152-layer ResNets:

3개 Layer로 이루어진 Block 으로 101개와 152개의 Layer 를 사용한 모델을 만들었습니다. 깊이가 크게 증가하였지만 VGG16 / VGG19 보다 높은 정확도를 보였으며, 이 과정에서 degradation problem 은 발생하지 않았습니다.

 

Comparisons with State-of-the-art Methods.

Table 4 에서 이전의 좋은 성능을 보였던 모델보다 ResNet이 더 우수한 성능을 보인 것을 확인할 수 있고, Table 5에서 확인할 수 있듯 앙상블 기법을 이용하여 더 낮은 Error 를 기록했습니다.

 

4.2. CIFAR-10 and Analysis

ImageNet 뿐 아니라 CIFAR-10 데이터셋에 대해서도 실험을 진행하였습니다. 앞의 34 Layer 모델과 비슷한 구조의 모델을 구성하였고, 입력 이미지의 경우 $32\times 32$로 ImageNet에 비해 훨씬 작기 때문에 CIFAR-10에 맞게 파라미터를 줄인 ResNet을 사용합니다. 첫 번째 Layer는 $3\times3$로 사용하고 각각의 feature map size $\{32, 16, 8\}$을 가지는 layer 들을 $6n$개 만큼 stack 해서 사용했습니다. filter의 개수는 $\{16, 32, 64\}$개를 사용했습니다. 네트워크의 마지막으로 FC와 softmax까지 사용하여 전체적으로 $6n+2$개의 Layer로 구성됩니다. 아래 테이블은 아키텍쳐의 요약입니다.

 

Shortcut Connection이 사용될 때에는 $3\times3$ Layer로 연결하였으며 이 때 $n$을 3, 5, 7, 9 일 때로 나눠서 성능을 테스트했고 각각 20, 32, 44, 56개의 Layer 로 구성된 모델이 나왔습니다. 아래 표를 통해 ResNet이 모델이 깊어질 수록 더 좋은 성능을 보이는 것을 확인할 수 있습니다.

$n=18$ 인 경우, 즉 Layer가 110 인 경우 초기 lr 이 학습하기에는 0.1이라는 값이 너무 큰 값이기 때문에 학습이 잘 안된것으로 생각되어 lr을 0.01로 줄이고 Error 가 80% 이하가 되면 다시 0.1로 돌아가도록 구성하였습니다. 결과적으로 Converge가 잘 되었고 이 모델의 경우 다른 FitNet이나 Highway보다 훨씬 적은 파라미터 수를 가지면서 더 높은 성능을 보였습니다.

 

Analysis of Layer Responses

Figure 7에서 표준 편차를 통해 Layer Response 를 확인할 것이고, $3\times3 $ Layer의 Output을 확인하는 것입니다. 이를 ResNet에 적용했을 때 ResNet은 일반적으로 Plain Net보다 작은 Response 를 보였습니다. 이를 통해 앞서 언급했던 non-residual function 보다 residual function 이 0에 가깝다 라는 것을 보여줍니다. 즉 identity mapping이 되도록 weight가 0이 되도록 학습이 되었다는 겁니다. 더 깊은 모델일수록 Response의 크기가 더 작았으며 Layer가 증가할 수록 신호의 변화가 줄어드는 경항을 보입니다.

 

 

Exploring Over 1000 layers.

그렇다면 모델의 Layer를 계속해서 늘리면 성능이 계속 증가하는가? 라는 의문을 가지고 실험을 진행하였습니다. 1202개의 Layer를 가진 모델을 실험하였고, Optimization 과정에서는 문제가 발견되지 않았습니다. 위의 Table 6에 제시된 성능을 보면 준수한 성능을 보이지만 110 Layer와 비교해보면 Training Error 는 두 모델이 비슷하지만, 1202 Layer의 모델이 110 Layer 모델보다 성능이 좋지 않습니다. 그 이유는 본 논문에서 Overfitting 이라 소개합니다. 1202 Layer 모델은 ImageNet을 학습하기엔 너무 큰 모델이며, 여기서 큰 모델이라는 것은 파라미터 수가 많다는 것을 말합니다. Regularzation Method(Dropout, maxout)을 사용해보지는 않았으며 본 논문에서는 모델이 깊어지면 overfitting 이 발생하기 쉽다는 것을 말해주기 위함이라고 합니다. 이에 대해서는 추후 연구가 될 소재라고 소개하고 있습니다.

 

 

4.3. Object Detection on PASCAL and MS COCO

 

이 연구는 Classification 뿐 아니라 다른 Recognition task 에서도 일반적인 성능 향상을 보여줍니다. 위의 표를 통해 Object detection task인 PASCAL VOC 2007, 2012, COCO Dataset 에 대해 기존 VGG-16보다 좋은 성능을 보였습니다. Faster R-CNN 모델을 사용하여 Backbone을 VGG-16에서 ResNet-101로 교체하였으며 다른 모델들보다 높은 성능을 보입니다. 이를 통해 Backbone인 ResNet이 Representation을 잘 학습하여 성능이 향상된 것을 확인할 수 있습니다.

 

Reference :

원본 논문 : https://arxiv.org/abs/1512.03385

 

Deep Residual Learning for Image Recognition

Deeper neural networks are more difficult to train. We present a residual learning framework to ease the training of networks that are substantially deeper than those used previously. We explicitly reformulate the layers as learning residual functions with

arxiv.org