개념 정리
- Batch Normalization에서는 각 layer에 들어가는 input을 normalize 시킴
- Batch normalization의 효과 : 학습 가속화, 정규화
- Internal Covariance Shift라는 현상은 Network의 각 층이나 Activation 마다 input의 distribution이 달라지는 현상을 의미하는데 Batch normalization은 이를 방지하기 위함
- 순서 : Input --> Batch normalization --> activation function--> Next Hidden layer
- Training과정에서는 mini-batch에서 평균과 표준편차를 구하여 활용
- Test 과정에서는 training 과정에서 미리 계산해둔 이동평균과 편차를 활용하여 normalization을 진행, gamma와 beta를 활용하는것은 동일
CNN에서 Batch normalization
- Convolution layer에서 보통 activation function에 값을 넣기 전 Wx+b 형태로 weight를 적용시키는데, Batch Normalization을 적용하면 beta 값이 b의 역할을 대체할 수 있기 때문에 b를 없앤 Wx의 형태로 weight적용
- CNN의 경우 convolution의 성질을 유지시키고 싶기 때문에, 각 channel을 기준으로 각각의 Batch Normalization 변수들을 생성
- 각 Layer의 channel 숫자만큼 Mean, Variance가 생성됨.
'AI,ML,DL 지식공유' 카테고리의 다른 글
Computer vision 전반(classification, detection, Image segmentation) (0) | 2021.05.03 |
---|---|
Label Smoothing이란 (0) | 2021.01.20 |