위키득계정 ↗
기술

배치 정규화

배치 정규화기술
영문명
Batch normalization
학습 통계
현재 배치의 평균과 분산
일반 추론 통계
저장된 이동평균 통계
학습 매개변수
배율 γ와 이동 β
배치 정규화는 신경망 학습 중 배치에서 구한 평균과 분산으로 활성값을 변환하는 방법이다. 보통 채널이나 특징마다 통계를 계산한다. 학습에서는 현재 배치의 통계를, 일반적인 추론에서는 누적해 둔 통계를 사용하는 차이가 있다.

기본 변환

한 특징의 평균을 μ, 분산을 v라 하면 정규화 값은 (x-μ)/√(v+ε)다. 이어 학습 배율 γ와 이동 β를 적용할 수 있다. 통계를 계산하는 축은 자료의 구조에 따라 정한다. 각 입력 안의 특징들만 묶는 층 정규화와 같은 연산은 아니다.

같은 입력도 배치에 따라 달라진다

단일 특징의 배치가 (2,6)이면 평균 4, 분산 4다. ε의 영향을 생략하면 입력 2의 정규화 값은 -1이다. 배치가 (2,10)으로 바뀌면 평균 6, 분산 16이고 입력 2의 결과는 역시 -1이다. 그러나 (2,2,10)이면 평균 14/3, 분산 128/9여서 입력 2의 결과는 -1/√2다. 다른 표본의 구성도 계산에 관여한다.

저장된 통계로 추론하기

추론 때 저장된 평균이 4, 분산이 4라면 입력 2는 같은 배치의 다른 표본과 무관하게 약 -1로 변환된다. 여기서는 γ=1, β=0이고 ε를 생략했다. 이동 통계가 실제 추론 자료의 분포와 크게 다르면 적절한 보정을 기대하기 어렵다.

이동평균의 계수

기존 이동평균이 5, 현재 배치 평균이 9이고 기존 값의 비중이 0.9라면 새 평균은 5.4다. momentum이라는 설정 이름이라도 라이브러리마다 계수 규약을 확인해야 한다. 이 계수는 최적화기의 모멘텀 속도와 별개의 상태를 제어한다.

관련 문서

층 정규화 / 분산 / 인공 신경망 / 활성화 함수 / 드롭아웃 / 모멘텀 (최적화)