ResNet

1. Introduction

Network의 depth가 깊어지면 feature의 level을 높일 수 있지만 training error와 test error가 높아진다.

layer의 깊이에 따른 training error(왼쪽), test error(오른쪽)

layer의 깊이에 따른 training error(왼쪽), test error(오른쪽)

vanishing/exploding gradients 문제(기울기 소실/폭주)

→ normalized initialization,, intermediate normalization layers 를 통해 해결

하지만 degradation problem이 발생(overfitting 때문에 발생하는 것이 아님) (accuracy가 변화가 없고 오히려 감소하거나, 빠르게 저하되는 문제)

→ degradation problem 문제를 해결하기 위해 residual learning을 함

3. 1 Residual Learning

Untitled

우리가 원하는 mapping인 $H(x)$를 직접적으로 학습하기 보다는 더 학습하기 쉬운 residual mapping을 정의하여 학습

실제 원하는 결과는 $F(x)+x$ (= $H(x)$) 이지만 우리는 $F(x) = H(x) - x$ 를 학습,

극단적으로, identity mapping(입력 값을 그대로 출력)하는 것이 optimal한 해일 때, $F(x)$를 0으로 만드는 것이 학습 난이도가 더 쉬울 것임

우리는 $H(x)-x$를 학습하는 것이고, 수학적으로 보면 $H(x)$를 그대로 학습하는 것이랑 별 차이가 없어 보이지만 학습 난이도가 더욱 쉬워짐