Prior Knowledge
Normalization이란?
normalization이란 간단히 말하면 데이터 혹은 피쳐의 값의 범위를 일정 범위로 제한해주는 것이다.
0~1사이 값이 될 수도 있고, 어떠한 분포 ( e.g. 표준정규분포 ) 일수도 있다.
➡️ 왜 해주어야 하는가 : 만약 집값에 대한 feature들이 존재한다고 했을 때, 하나는 방의 개수, 하나는 얼마나 오래 전에 지어졌느냐라고 한다면, 상대적으로 scale이 큰 얼마나 오래 전에 지어졌느냐에 치우쳐서 예측을 하게 될 것이다. 이를 방지하기 위해 데이터를 비슷한 scale로 조정해주어야하고, 그것이 normalization이다. 이는 input data뿐 아니라 neural network의 중간 featuresr값에도 해당되는 이야기이기 때문에 우리는 batch normalization, instance normalization 등을 사용한다.
- ex) logistic regression에서 input data를 표준정규분포(평균이 0, 분산이 1) 로 normalization하기
Batch Normalization
Batch normalization 글 참조
Batch Normalization Biases Residual Blocks Towards the Identity Function in Deep Networks(Camera-ready version of NeurIPS 2020)
BN이 residual network의 학습 가능한 depth를 크게 증가시켰지만, 이는 학습 초반 BN이 skip connection에 대해 residual branch를 downscale하기 때문에 발생하는 것이라고 주장하며, 이를 실험으로 증명하는 논문입니다. 이는 결국 BN이 적용된 residual blocks의 연산이 거의 identity function($x=x$)에 가깝고, 이 사실을 기반으로 BN없이 deep residual network를 학습시킬 수 있는 Skipinit 방식을 제안합니다.
Introduction
skip connection + batch normalization ⇒ 학습 가능한 nerual network 의 depth를 크게 증가시켰지만 BN의 효과의 기원이 잘 이해되지 않아왔다.
그럼에도 layer noramlization과 transformer 구조가 소개됨에 따라 대부분의 SOTA모델이 skip connection + normalization 조합을 사용하고 있다.
contributions
- 왜 BN이 deep residual network를 쉽게 학습시키는지 설명한다
- BN이 hidden activations를 $\sqrt{network \;\;depth}$ 차수로 downscale한다는 것을 증명 ( 학습 초기에 )
- depth가 깊어질수록 residual blocks는 점점 skip connection에 지배되게 되고 residual blocks에 의해 연산되는 함수들은 identity에 가깝게 된다. 그래서 signal propagation을 보존하고 well-behaved gradients를 보장해준다.
- 위의 주장이 맞다면 normalization 없어도 residual branch만 downscale해준다면 deep residual network의 학습이 가능할 것이다.
- 그래서 Skipinit이라는 방식을 소개한다. 1000개의 레이어를 갖는 deep residual network를 학습가능하게 하는 normalization을 대체하는 방식이다.
- batch size의 범위에 따라 residual network에 대한 경험적 연구를 제공한다
- BN이 residual network를 큰 learning rate로 학습할 수 있게 하지만, 이는 batch size가 클 때만 적용된다는 사실을 증명한다
- batch size가 작으면 normalize를 사용하건 안하건 최적의 lr은 비슷하다. 그러나 normalized networks가 더 높은 test accuracies와 더 낮은 training losses를 달성하긴 한다.
- 이 실험은 residual network에서, 가장 큰 안정적인 lr이 BN의 주된 benefit이 아니라는 것을 증명한다(이전의 연구들을 반대)
Why are deep normalized residual networks trainable?
- normalized residual network가 non-residual 인 모델들보다 2배정도 더 깊은 network를 학습할 수 있다.
이 효과 이해 위해 학습 초반 single training example의 hidden activations를 분석하였다.