카테고리 없음
[딥러닝]배치 정규화(Batch Normalization)
玄曄
2022. 3. 24. 11:48
[딥러닝]배치 정규화(Batch Normalization)
1. 의의
2. 효과
3. 레이어 구성
==========================
[딥러닝]배치 정규화(Batch Normalization)
1. 의의
○ 모델에 투입되는 샘플들을 균일하게 만드는 방법
○ 가중치의 활성화값이 적당히 퍼지게끔함.
- 미니 배치 단위로 데이터의 평균ρ이 0, 표준편차σ가 1이 되도록 정규화
2. 효과
- 학습을 빨리 진행할 수 있음
- 학습후 새로운 데이터에 잘 일반화할 수 있도록 도와줌
- 초기값에 크게 의존하지 않아도 됨.
- 과대적합 방지
3. 레이어 구성
- 데이터 전처리 단계에서 진행도 되지만, 정규화가 되어서 층(layer)에 들어갔다는 보장이 없음.
- 주로 Dense층 또는 Conv2D층 뒤, 활성화 함수 앞에 놓임.
- 코드
model = Sequential()
model.add(Dense(32, input_shape=(28 * 28, ), kernel_initializer='he_normal'))
model.add(BatchNormalization())
model.add(Activation('relu'))
model.summary()
