[Survey]Deep Networks with Stochastic Depth

5077 단어 DeepLearning
Deep Networks with Stochastic Depth
본고는 특히 ResNet을 대상으로 하는 Very Deep 네트워크를 효과적으로 학습하고자 합니다.
본고는 랜덤으로 층수를 변경함으로써 범용성을 높이는 동시에 계산 시간을 단축하고 학습 효율을 높인다.Dropout이 노드를 닫아서 네트워크를 가로로 작게 하는 것에 비해 Stochastic Depth는 층수를 바꾸어 네트워크를 세로로 작게 합니다.
최근 몇 년 동안 성능을 높이기 위해 층수를 늘려 더욱 깊은 네트워크로 만드는 경향이 있다.그러나 very deep 모델에는 다음과 같은 문제가 존재한다.
1. 경사가 사라짐
작은 Weight를 곱하면 경사가 사라집니다.
대책으로는'careful initialization','hidden layer supervision','Batch 정규화'가 있다.
2. 피처의 재사용 줄이기
경사가 사라지는 것은 뒷면이 전파될 때의 문제지만, 이것은 Forward Porpagation의 문제이다.forward propagation에서 random이 초기화된 Weight를 여러 번 곱하면 전달된 정보를 잃어버릴 수 있습니다.대책에는 ResNet에서 사용하는 Identity mapping이 있습니다.
3. 견인시간 증가
인터넷이 Very Deep일수록 학습 시간이 문제가 된다.152layer ResNet은 몇 주 동안 공부해야 합니다.
shorternetwork는 정보의 전파를 효과적으로 진행할 수 있고 학습도 효과적이고 실용적인 시간 안에 진행할 수 있지만 복잡한 문제에 대해 네트워크 자체의 표현 능력이 부족하다.반면 Deep의 네트워크는 구조를 복잡하게 할 수 있지만 다른 한편, 학습은 매우 어렵고 많은 시간이 필요하다.
본고의 개념은 학습할 때 네트워크를 짧게 설정하고 테스트할 때 네트워크를 Deep하는 것이다.Deep ResNet 구조를 사용하여 구현합니다.

Residual Networks(ResNets)


네트워크 지점을 identity function의 Path와 잔차의 Path에 통합함으로써 경사도의 사라짐을 억제하고 더욱 Deep 설정을 실현할 수 있다.

식으로 쓰면 다음과 같다.
$H_{l-1}$입력, $H_l$는 출력, $id (\cdot) $는 identitytransformation, $f_l(\cdot)$은(는) convolutional transformation입니다.

Dropout


Dropout은 무작위적으로hiddennode와connectiondrop을 통해 범용성을 향상시킵니다.

Deep Networks with Stochastic Depth


・ 기본적으로 모든 minibatch는 random skip layer를
· 잔차 Path skip skip을 random까지 identity skip connection path는 변하지 않습니다.
식으로 쓰면 다음과 같다.
여기, $b_l$는 bernoulli random 변수입니다.

잔차 유지 Path 또는 Skip은 생존 확률에 따라 달라집니다$p_$에 의해 결정됩니다. $p_L$을(를) hyper parameter, 후단으로 $p_l$를 작게 만듭니다.
식으로 쓰면 다음과 같다.


Training time saving


$p_L=0.5달러면 학습 시간이 약 25% 단축됩니다. $p_L=0.2달러면 40퍼센트 줄어든다.

Stochastic depth during testing


테스트 시 $p_로 출력l$로 재배치합니다.드롭아웃과 같은 느낌.

Results


CIFAR-10


CIFAR-10의 성능 비교테스트 오류 속도는 6.41%에서 5.23%입니다.다른 방법으로 best는 6.05%로 그것보다 낫다.

다음은 epoch마다testerrorrate입니다.stochastic depth의 성능은 좋아졌지만 값의 변동이 매우 크다.

CIFAR-100


27.22%→24.58%
데이터 augmentation이 없으면 CIFAR-10, CIFAR-100은 각각 13.63%→11.66%, 44.74%→37.8%이다.

SVHN


Stochastic Depth가 없으면 첫 번째로 덮어씁니다.

Training time comparison


$p_L=0.5달러로 25% 감소합니다.

Training with a 1202-layer ResNet


만약layer수가 1202이면 일반적인 방법치가 6.72% 감소합니다.Stochastic Depth의 성능 향상

Vanishing gradients


경사의 절대값 평균을 나타내는 그림입니다.

Hyper parameter sensitivity


Hyper parameter $p_이것은 L$를 변경할 때의 도표입니다.
Stochastic Depth에서 실선은 선형으로 변환되고 허선은 고정됩니다.

감상


이 글은 Dropout이 layer 방향이라고 볼 수 있습니다.
이로써 범용 성능의 향상과 계산량의 삭감을 실현하였다.

좋은 웹페이지 즐겨찾기