본문으로 건너뛰기
실습하기

신경망 학습을 안정화하는 배치 정규화

배치 정규화(Batch Normalization, BN)는 신경망이 더 빠르고 안정적으로 학습하도록 돕는 기법입니다.

데이터의 분포를 정규화하여 기울기 소실 문제를 줄이고, 학습 속도를 향상시킵니다.


배치 정규화가 왜 필요한가요?

딥러닝 모델이 깊어질수록, 각 층이 받는 입력 데이터의 분포가 계속 변하는 내부 공변량 변화(Internal Covariate Shift) 문제가 발생할 수 있습니다.

이는 앞쪽 층에서 데이터의 분포가 크게 달라질 경우, 뒷쪽 층이 안정적으로 학습하기 어려워지는 현상입니다.

이 문제를 해결하기 위해 배치 정규화 기법이 사용됩니다.

배치 정규화는 각 층에서 입력 데이터의 평균분산을 조정하여 분포 변화를 줄이고, 이를 통해 신경망이 보다 안정적으로 학습할 수 있도록 돕습니다.

쉽게 말하면, 배치 정규화는 신경망이 학습할 때 데이터의 분포를 일정하게 유지하여 안정적인 학습을 가능하게 합니다.


배치 정규화는 어떻게 동작하나요?

배치 정규화는 다음 단계를 거쳐 학습을 안정화합니다.


1. 미니배치 단위로 정규화

한 번의 학습에서 사용하는 데이터(미니배치)의 평균과 분산을 계산합니다.

이를 이용해 입력 데이터를 정규화하여 값의 범위를 일정하게 맞춥니다.


2. 학습 가능한 가중치 조정

단순 정규화 후에는 모델이 충분한 표현력을 갖기 어려울 수 있으므로, 새로운 가중치와 편향을 추가하여 모델이 필요한 정보는 유지할 수 있도록 합니다.


3. 학습 반복

이 과정을 각 층에서 반복하면서, 신경망이 더욱 안정적으로 학습하도록 합니다.


배치 정규화는 각 층에서 입력 데이터의 분포를 조정하여, 뉴런의 활성화 값이 지나치게 작아지는 문제를 해결하고 학습 속도를 높입니다.

다음 수업에서는 지금까지 배운 내용을 바탕으로 간단한 퀴즈를 풀어보겠습니다.

다음 내용이 궁금하다면?

코드프렌즈 PLUS 멤버십 가입 or 강의를 등록해 주세요!