Source-linked AI summary

Deep Residual Learning for Image Recognition

arXiv:1512.03385v1

TL;DR

이 논문은 지속되는 성능 저하와 최적화의 어려움에도 불구하고 단순히 더 많은 layer를 쌓으면 network가 더 좋아지는지 묻는다. residual learning을 도입하고, 매우 깊은 residual network가 ImageNet 및 여러 task에 걸친 강한 recognition 성능을 달성함을 보인다. 여기에는 3.57% top-5 test error도 포함된다.

  • 문제

    이 논문은 vanishing 또는 exploding gradient를 넘어 지속되는 성능 저하와 최적화의 어려움에도 불구하고 더 깊은 network가 성능을 향상시키는지 묻는다.

  • 방법

    이 논문은 H(x)를 학습하는 문제를 residual F(x)=H(x)−x를 학습하는 문제로 재정식화한 뒤, F(x)+x로 mapping을 재구성한다.

  • 결과

    ImageNet 테스트 세트에서 앙상블이 3.57% top-5 error를 달성했으며, 여러 인식 과제에서 최고 순위 결과를 함께 기록했다.

  • 시사점 및 한계

    Residual learning은 100개를 넘는 layer를 성공적으로 학습한 network를 가능하게 하며, vision recognition task 전반에 적용되는 일반 원리의 증거를 제시한다.

  • 시사점 및 한계

    작은 CIFAR-10에서는 1202-layer network가 불필요하게 클 수 있으며, 더 강한 regularization이 결과를 개선할 수 있다.

Abstract

from arXiv · show

1. 서론

깊이를 늘리면 더 깊은 모델에 구성 가능한 identity mapping 해가 존재하더라도 optimization degradation이 발생할 수 있으며, 이는 매우 깊은 network를 가능하게 하고 ImageNet 및 transfer task에서 강력한 결과를 달성하는 residual learning을 동기 부여한다. 이 framework는 stacked layer가 F(x) = H(x)−x를 학습하도록 하며, identity shortcut은 parameter와 computational complexity를 추가하지 않는다.

  • 문제: 깊이가 증가하면 plain network는 accuracy가 포화된 뒤 training error와 test error가 급격히 악화될 수 있으며, 이러한 degradation은 overfitting에 의한 것이 아니다.Figure 1은 CIFAR-10에서 20-layer와 56-layer plain network를 비교하며, 더 깊은 model에서 더 높은 error를 보여준다.
  • 문제: 더 깊은 model은 추가된 layer를 identity mapping으로 설정해 더 얕은 model과 일치하는 constructed solution을 가지지만, optimization은 그에 상응하는 수준의 좋은 solution에 도달하지 못할 수 있다.이는 no-worse solution이 construction에 의해 존재하더라도 깊이를 늘리면 더 높은 training error가 발생할 수 있는 이유를 설명한다.
  • 방법: Residual learning은 H(x)를 F(x)+x로 재구성하여, stacked nonlinear layer가 underlying mapping 전체가 아니라 residual F(x) := H(x)−x를 맞추도록 한다.이 framework는 shortcut output을 stacked-layer output에 더하는 identity shortcut connection으로 구현된다.
  • 결과: Residual network는 dataset 전반에서 효과를 유지했으며, 성공적으로 학습된 CIFAR-10 model은 100 layer를 초과했고 탐색된 model은 1000 layer를 초과했다.결과는 optimization difficulty와 residual-learning effect가 특정 하나의 dataset에 국한되지 않음을 시사한다.

2. 관련 연구

관련 연구는 residual representation을 image recognition 및 multiscale solver와 연결하고, identity shortcut을 초기 shortcut 및 gated-network 접근법 [18, 30, 3, 42, 43] 속에 위치시킨다.

  • Residual Representation: VLAD 와 Fisher Vector [30]는 residual을 인코딩해 효과적인 shallow image-retrieval 및 classification representation 을 만든다.vector quantization에서는 original vector를 인코딩하는 것보다 residual-vector encoding이 더 효과적이다 [17].
  • Residual Representation: Multigrid 와 hierarchical basis preconditioning 은 더 거친 scale과 더 미세한 scale 사이의 residual vector를 사용해 multiscale problem을 해결한다.이 부분은 Multigrid가 PDE system을 여러 scale의 subproblem으로 재구성한다고 설명한다.
  • Shortcut Connection: 초기의 shortcut 접근법은 network input을 output에 연결하고, intermediate layer에 auxiliary classifier를 부착하거나 [44] [24], response와 gradient를 중심화했다 [47].이러한 실천과 이론은 gradient vanishing 또는 exploding을 포함한 optimization 문제를 다룬다.
  • Shortcut Connection: Highway network [42] [43]은 parameterized data-dependent gate를 사용하는 반면, identity shortcut은 parameter-free이고 결코 닫히지 않으며 항상 residual function을 학습한다.Highway network는 100개를 초과하는 layer 깊이에서 accuracy 향상을 입증하지 못했다.

3. Deep Residual Learning

Deep residual learning은 target을 identity shortcut에 대한 residual function으로 재정식화하여, 깊은 비선형 stack에서 identity mapping을 구현하기 어려울 때 optimization을 용이하게 한다. Residual block은 학습된 mapping을 입력에 더하며 computational overhead가 거의 없고, projection을 통해 차원 변경도 지원한다.

  • Residual learning: Residual learning은 H(x)가 아니라 H(x)−x를 학습하여, 여러 비선형 layer가 identity mapping을 근사하기 어렵다는 점에서 optimization을 돕는다.최적 함수가 zero보다 identity에 가까우면 identity 주변의 perturbation을 학습하는 편이 더 쉽다. 실험에서는 학습된 residual response가 대체로 작게 나타난다.
  • Building block: Residual block은 F(x,{W_i})+x를 계산하며, F는 일반적으로 두 개 또는 세 개의 layer를 사용하고 post-addition nonlinearity는 그 이후에 적용된다.두 layer의 경우 F=W_2σ(W_1x)이며, shortcut은 두 번째 nonlinearity 이전에 element-wise addition을 수행한다.
  • Building block: Shortcut connection은 parameter나 유의미한 computation을 추가하지 않으므로, parameter 수, depth, width, computational cost를 일치시킨 공정한 plain-versus-residual 비교가 가능하다.유일한 예외는 무시할 수 있을 정도로 작은 element-wise addition이다.
  • Shortcut connections: 입력과 출력의 차원이 다르면 linear projection W_s로 두 차원을 맞춘다. 그렇지 않으면 identity shortcut만으로 충분하므로 효율성을 위해 이를 사용한다.ImageNet architecture에서는 차원이 증가할 때 identity shortcut이 추가 zero entry를 채우는 방식도 사용할 수 있다.
  • Architectural scope: Residual formulation은 fully connected layer에서 convolutional layer로 확장되며, 이때 F는 convolutional layer로 구성되고 addition은 feature map에서 channel별로 수행된다.단일 layer F는 y=W_1x+x로 축약되며, 저자들은 이 경우 장점을 관찰하지 못했다.

4. 실험

실험 결과, residual learning은 degradation problem을 제거해 과도한 복잡성 없이 더 깊은 네트워크가 더 높은 정확도를 달성하게 했다. 또한 이 방법은 ImageNet, CIFAR-10, object detection, localization, segmentation 과제 전반에서 일반화됐다.

  • Optimization 및 ablation: Plain networks는 깊이가 증가할수록 training error가 높아진 반면, residual networks는 더 낮은 training error와 validation generalization을 달성해 degradation problem을 해결했다.더 깊은 plain network는 더 얕은 네트워크의 solution space를 포함했음에도 성능이 낮았다. 18 layers에서는 ResNet이 주로 convergence speed를 향상했다.
  • Optimization 및 ablation: Bottleneck architectures에서는 identity shortcuts가 projection shortcuts보다 효율적이었다. projection shortcuts로 대체하면 time complexity와 model size가 두 배가 되었기 때문이다.Projection shortcuts는 degradation을 해결하는 데 필수적이지 않았으며, 선택한 bottleneck design은 주로 practical efficiency를 고려해 결정됐다.
  • ImageNet 결과: 50-, 101-, 152-layer ResNets는 34-layer models보다 상당히 높은 정확도를 보였으며, 관찰된 degradation 없이 모든 evaluation metrics에서 향상됐다.Residual learning은 plain-network의 추세를 반전했다. 34-layer ResNet은 18-layer ResNet보다 2.8% 높은 성능을 보였고, top-1 error를 3.5% 줄였다.
  • ImageNet 결과: Six-model ResNet ensemble은 3.57% top-5 test error를 달성했으며, 152-layer single model은 4.49% top-5 validation error를 기록해 기존 ensemble 결과를 넘어섰다.152-layer model은 더 깊은 구조에도 불구하고 VGG-16/19보다 더 적은 FLOPs를 사용했다.
  • CIFAR-10 실험: CIFAR-10에서 110-layer ResNet은 learning-rate warmup과 함께 안정적으로 수렴했고, FitNet [35] 및 Highway [42]보다 적은 parameters를 사용하면서 6.43% error를 달성했다.Over-1000-layer model도 optimization difficulty를 피했고 training error 0.1% 미만과 7.93% test error를 달성했지만, 큰 크기로 인해 overfitting이 발생했다.
  • 분석 및 기타 과제: Residual networks는 일반적으로 plain networks보다 더 작은 layer responses를 생성해 residual functions가 zero에 더 가깝다는 동기를 뒷받침했다.동일한 detection 구현을 사용해 VGG-16 [41]을 ResNet-101로 대체한 결과, PASCAL VOC와 COCO에서 인식 과제 baseline이 향상되었으며, 이 방법은 ILSVRC와 COCO 2015의 여러 track에서 최고 성적을 거두었다.

A. 객체 검출 Baselines

검출 방법은 Faster R-CNN [32]을 기반으로 하며, ImageNet으로 사전 학습된 ResNet-50/101 모델을 객체 검출에 맞게 fine-tuning한다. ResNet의 convolutional feature를 NoC [33]를 통해 조정하고, fine-tuning 중 batch-normalization 통계를 고정해 메모리 사용량을 줄인다.

  • A. 객체 검출 Baselines: 이 방법은 Faster R-CNN [32]을 위해 초기화된 ImageNet 사전 학습 ResNet-50/101 모델을 사용하고, 객체 검출 데이터로 fine-tuning한다.이 모델들은 ILSVRC 및 COCO 2015 검출 대회에서 탐색되었다.
  • A. 객체 검출 Baselines: NoC [33]는 stride가 최대 16 pixels인 conv4_x까지 shared full-image convolutional feature map을 계산해 ResNet에 없는 hidden fully connected layer를 대체한다.ResNet-101의 경우 conv1부터 conv4_x까지로 구성되며, 총 91개의 convolutional layer로 VGG-16의 13개 convolutional layer에 해당한다.
  • A. 객체 검출 Baselines: Batch-normalization layer는 ImageNet training의 mean과 variance를 사용하며, 검출 fine-tuning 중 이를 고정해 constant offset과 scale을 갖는 linear activation이 된다.통계는 fine-tuning 중 업데이트되지 않으며, 주로 Faster R-CNN training의 메모리 소비를 줄인다.

PASCAL VOC

PASCAL VOC에서 ResNet-101은 VGG-16보다 mAP를 3% 초과 향상하며, 이득은 오직 feature 개선에 기인한다. 평가는 표준 VOC training split과 [32]의 Faster R-CNN hyperparameter를 사용한다.

  • PASCAL VOC: PASCAL VOC에서 ResNet-101은 VGG-16보다 mAP를 >3% 향상하며, Table 7에 그 결과가 보고된다.이 문단은 이러한 이득이 오직 feature 개선에 기인한다고 설명한다.
  • PASCAL VOC: VOC 2007의 경우, [32]에 따라 5k VOC 2007 및 16k VOC 2012 trainval 이미지(“07+12”)로 학습한다.
  • PASCAL VOC: VOC 2012의 경우, 10k VOC 2007 trainval+test 및 16k VOC 2012 trainval 이미지(“07++12”)로 학습하며, Faster R-CNN hyperparameter는 [32]와 일치한다.

MS COCO

MS COCO에서 ResNet-101은 VGG-16을 크게 능가했으며, 표준 및 PASCAL VOC metric에서 recognition과 localization을 모두 향상했다. 평가는 80개 object category에 걸쳐 80k train image와 40k validation image를 사용했다.

  • MS COCO: MS COCO benchmark는 80개 object category로 구성되며, 80k train image와 40k validation image를 mAP@.5 및 mAP@[.5, .05:.95]로 평가했다.본문은 표준 COCO metric을 mAP @ IoU = .5:.05:.95로 표기한다.
  • MS COCO: RPN과 Fast R-CNN stage는 모두 0.001에서 240k iteration 동안 학습한 뒤, 0.0001에서 80k iteration 동안 학습했다.8-GPU 구현에서는 RPN과 Fast R-CNN의 mini-batch로 각각 8개와 16개 image를 사용했다.
  • MS COCO: VGG-16 대비 6.0% absolute mAP@[.5, .95] 향상(상대적으로 28%)은 ResNet-101이 recognition과 localization을 모두 개선함을 보여준다.이에 대응하는 mAP@.5 증가는 6.9%였다.

B. 객체 검출 개선

이 대회 시스템은 Faster R-CNN과 ResNet-101을 사용해 box refinement, global context, multi-scale testing을 결합했으며 COCO 2015 detection에서 최우수 성적을 거뒀다. test-dev에서 단일 모델은 55.7% mAP@.5와 34.9% mAP@[.5, .95]를 기록했고, 세 네트워크 ensemble은 59.0%와 37.4%를 달성했다.

  • MS COCO Box refinement: Box refinement는 각 regressed box에서 feature를 pooling해 새로운 classification 및 regression prediction을 생성하고, IoU 0.3에서 NMS를 수행하기 전에 이를 원래 prediction과 결합했다.이 방법은 새로운 prediction 300개를 생성하고 원래 prediction 300개와 결합했다.
  • Global context: Global context는 sibling classification과 box regression 전에 full-image spatial-pyramid-pooled feature를 각 per-region feature와 concatenate했다.Global feature는 전체 image bounding box를 RoI로 취급해 얻었다.
  • Ensemble: 세 네트워크 Faster R-CNN ensemble은 COCO test-dev에서 59.0% mAP@.5와 37.4% mAP@[.5, .95]를 기록하며 COCO 2015 detection 과제에서 최우수 성적을 거뒀다.이 ensemble은 region proposal과 각 region의 classification을 수행하는 네트워크들을 결합한다.
  • Multi-scale testing: Multi-scale testing은 인접한 두 pyramid scale에서 RoI feature를 pooling하고 maxout으로 병합해 mAP를 2 point 초과 향상시켰다.시간이 제한되어 multi-scale training 없이 multi-scale testing을 사용했다.
  • Validation data 사용: 80k+40k trainval set으로 학습한 single-model system은 20k test-dev set에서 55.7% mAP@.5와 34.9% mAP@[.5, .95]를 달성했다.test-dev ground truth는 공개되지 않았으므로 evaluation server를 통해 평가했다.

PASCAL VOC

box refinement, context, multi-scale testing을 적용해 COCO로 학습된 모델을 fine-tuning하면 PASCAL VOC detection 성능이 크게 향상된다. VOC 2007에서 85.6% mAP, VOC 2012에서 83.8%를 달성해 VOC 2012의 이전 state of the art보다 10 points 높다 [6].

  • PASCAL VOC: box refinement, context, multi-scale testing 개선을 적용해 단일 COCO 모델에서 fine-tuning한다.COCO 모델은 PASCAL VOC에서 fine-tuning하기 전에 55.7% mAP@.5를 달성한다.
  • PASCAL VOC: PASCAL VOC 2007에서 85.6% mAP, PASCAL VOC 2012에서 83.8% mAP를 달성한 결과는 뛰어난 detection 성능을 보여준다.이 결과는 Tables 10 and 11에 보고되어 있다.
  • PASCAL VOC: VOC 2012 결과는 이전 state-of-the-art 결과 [6]보다 10 points higher로, 상당한 개선을 이룬다.

ImageNet 검출

ImageNet DET에서 제안한 detector는 3개 모델 ensemble로 62.1% mAP를 달성해 차순위보다 8.5 절대 포인트 앞서며 ILSVRC 2015에서 우승했다. 이 task는 200개 category를 다루며 mAP@.5로 detection 정확도를 평가한다.

  • 평가: ImageNet DET는 mAP@.5를 사용해 200개 객체 범주에 대한 검출을 평가한다.
  • 평가 프로토콜: 검출 모델은 ImageNet classification pretraining을 사용하고, DET training data와 val1에서 fine-tuning하며, 검증에는 val2를 사용한다.검출 알고리즘은 Table 9의 MS COCO에 사용된 것과 동일하다.
  • 결과: 3개 모델 ensemble로 62.1% mAP를 기록한 detector가 ILSVRC 2015의 ImageNet detection task에서 우승했으며, 차순위보다 8.5 절대 포인트 앞섰다.단일 모델은 DET test set에서 58.8% mAP를 달성했다.

C. ImageNet Localization

클래스별 RPN/R-CNN localization framework는 ensemble로 9.0% top-5 localization error를 달성해 ILSVRC 2015에서 최우수 성적을 거두었으며, ILSVRC 2014보다 상대적으로 64% 뛰어났다. ResNet-101 single-model 변형은 10.6% error를 기록했고, oracle-class testing에서는 dense multi-scale evaluation으로 11.7%를 기록했다.

  • 방법: 이 방법은 별도의 binary classification 및 box-regression 출력을 갖는 클래스별 RPN을 사용한 뒤, R-CNN classifier를 위해 class-dependent proposal을 생성한다.RPN은 Faster R-CNN [32]에 기반하며, R-CNN classifier는 R-CNN [8]을 따른다.
  • 결과: dense fully convolutional 및 multi-scale testing에서 ground-truth class를 사용한 ResNet-101은 11.7% localization error를 달성한다.ground-truth class를 사용하면, 동일한 framework는 비교 가능한 설정 [41]에서 VGG의 33.1% center-crop error를 13.3%로 낮춘다.
  • 결과: ensemble을 사용한 test set의 9.0% top-5 localization error는 ILSVRC 2014를 크게 앞섰으며, 상대적 error 64% 감소와 ILSVRC 2015 최우수 성적을 달성했다.이 비교는 ILSVRC 2014 결과를 기준으로 보고되었다.
  • 결과: validation set에서 single-model method는 10.6% top-5 localization error를 달성한다.이는 classification 및 localization network를 ensemble하기 전 보고된 single-model 결과다.
Loading 1512.03385v1…