배치 정규화(Batch Normalization)
앤드류 응 교수에 따르면 배치 정규화를 통해 두 가지 효과를 얻을 수 있다고 한다.
링크 : www.youtube.com/watch?v=nUUqwaxLnWs
효과
1. 공변량 변화 문제점 해결
머신러닝 모델의 문제점 중 하나는 관측 함수가 바뀌는 것이 아니더라도 Input Data가 달라짐으로써
공변량 변화가 일어나면 학습을 다시해야 한다.
또한 인공신경망의 경우 깊은 층의 가중치는 앞쪽 층의 가중치에 영향을 덜 받는다.
이제 임의의 노드
a1x1 + a2x2 + ... +anxn을 받는 깊은 층 w3b3를 봤을 때.
이 노드는 앞의 층에서 계속해서 값이 변화하기 때문에 공변량 변화의 문제가 생기게 된다.
배치 정규화는 이 은닉층에 들어오는 값들의 분포가 변화하는 양을 줄여주는 효과를 얻을 수 있다.
w3b3에 들어오는 값(4개라 치고) a1x1 + a2x2 + ... +a4x4를 배치 정규화해서
z1 + z2 두개로 줄인다면 앞에서 값이 얼마가 바뀌든지 간에
두 개의 평균과 분산을 0,1로 만들어 줄 수 있다.
다시 요약해보면,
배치 정규화는
앞선 층에서의 매개변수가 바뀌었을 때(입력 값이 바뀌어서 발생하는 문제를),
깊은 층의 값이 받아들여서 학습해야 할 값의 분포를 제한할 수 있다.
또한 배치 정규화를 통해 앞쪽 층의 매개변수와 뒤의 매개변수간의 관계를 약화시켜 각 층이 더 적절하게 배울 수 있게 만드는 효과도 있다.
2. 규제 효과
드롭아웃은 0,1을 곱하기 때문에 곱셈 잡음이 존재한다.
배치 정규화는 표준편차로 나눔으로써 곱셈 잡음이 존재하며, 평균을 빼니 덧셈 잡음도 존재한다.
그런데 각각의 미니 배치에서 계산한 평균과 분산은 전체 데이터에 비해 노이즈가 존재한다.(더 적으니까)
즉 이 추정치에도 잡음이 다소 존재한다. 그래서 드롭아웃처럼 약간의 일반화 효과가 존재한다.
다만 잡음이 크지는 않아서 일반화 효과 역시 크지는 않다.(미니배치가 클수록 일반화 효과가 줄어든다.)
강력한 일반화를 원한다면 드롭아웃과 함께 사용하자.
앤드류 응 교수는 일반화를 목적으로 배치 정규화만 쓰지는 않는다고 한다.