한 줄 정의
신경망의 활성화 값들을 배치 단위가 아닌 개별 토큰(샘플)의 피처 단위로 평균과 표준편차를 구하여 정규화하는 기법.
핵심 요지
- 토큰 단위 독립 정규화: 배치 크기나 시퀀스 길이에 구애받지 않고, 개별 토큰 벡터 내부의 피처(Feature) 값을 기준으로 평균 0, 표준편차 1이 되도록 정규화한다. 이는 배치 전체의 통계량에 의존하는 배치 정규화(Batch Normalization)와의 주요 차별점이다.
- 학습 안정성 향상: 학습 과정에서 레이어 간 활성화 값의 척도(Scale) 변동을 제어하여 기울기 소실(Vanishing Gradient) 및 기울기 폭주(Exploding Gradient) 문제를 예방한다.
- 트랜스포머의 필수 구성요소: 트랜스포머 아키텍처 내의 멀티 헤드 어텐션(Multi-Head Attention)과 피드포워드(Feed-Forward) 신경망 블록의 출력단 혹은 입력단에 배치되어 데이터의 수치적 안정성을 묵묵히 지탱한다.
상세
수학적 정의
레이어 정규화는 각 샘플 (여기서는 차원 토큰 벡터)의 평균 와 분산 을 다음과 같이 구한다.
이를 바탕으로 정규화된 값 를 계산한다. (은 분모가 0이 되는 것을 방지하기 위한 아주 작은 상수)
마지막으로 모델이 원래의 표현 능력을 스스로 학습할 수 있도록 조정 파라미터인 스케일 (Gamma)와 시프트 (Beta)를 피처마다 각각 곱하고 더해 최종 출력을 결정한다.
배치 정규화(BatchNorm)와 차이점
- BatchNorm: 미니 배치 전체를 통틀어 동일한 채널(피처) 차원별로 평균과 분산을 계산한다. 배치 크기가 작거나, 텍스트 데이터처럼 문장의 길이가 가변적일 경우 배치 통계가 요동쳐 학습이 불안정해진다.
- LayerNorm: 단일 배치 내의 각 토큰 벡터가 독립적으로 정규화되므로 배치 크기가 1인 실시간 추론(Inference) 단계나 가변 길이 문장이 주어지는 환경에서도 일관된 정규화 성능을 보장한다.
트랜스포머 아키텍처에서의 동작 메커니즘
트랜스포머 블록 내부에서는 다음 두 가지 형태로 주로 쓰인다.
- Post-LN (후-정규화): 초기 논문 구조로, 셀프 어텐션과 피드포워드 연산을 수행한 뒤 잔차 연결(Residual Connection)을 더한 값에 레이어 정규화를 수행한다. 깊은 네트워크에서 학습 초기 학습률의 급격한 미세조정이 없으면 불안정하다는 한계가 있다.
- Pre-LN (선-정규화): 최신 LLM 대부분에서 차용하는 구조로, 셀프 어텐션과 피드포워드 신경망을 통과하기 전에 먼저 레이어 정규화를 적용한다. 학습 안정성이 매우 우수하여 웜업(Warm-up) 구간을 간소화할 수 있으나, 매우 깊어지면 특정 깊은 레이어의 영향력이 얕은 레이어에 희석될 수 있다.
예시
토큰 정규화 시뮬레이션
“The dog sat .” 문장을 처리할 때, 특정 멀티 헤드 어텐션 레이어를 통과한 뒤의 벡터 차원을 4차원으로 단순화하여 예를 들어본다.
the토큰 벡터:- 이 벡터 내 4개 원소의 평균:
- 이 벡터 내 4개 원소의 표준편차:
- 평균 를 뺀 수치:
- 표준편차 로 나눈 최종 정규화 벡터:
이처럼 토큰 벡터 내부 원소들의 들쑥날쑥한 수치가 에서 내외의 안정적인 범위로 정돈되어 다음 레이어로 전파된다. 다른 토큰(dog, sat, .) 또한 배치 내 다른 데이터의 영향을 받지 않고 각자 독립적으로 이 정규화 과정을 적용받는다.
충돌
- Warm-up 필요성 vs 학습 효율성: Post-LN 방식은 초기 학습 단계에서 기울기가 폭주(Exploding Gradient)하여 극도로 작은 학습률로 시작하는 웜업 기법이 없으면 수렴하지 않는 반면, Pre-LN은 웜업에 덜 민감하여 손쉽게 학습이 진행된다. 그러나 표현력 관점에서는 Post-LN이 Pre-LN에 비해 더 역동적인 피처 추출이 가능하다는 논쟁이 존재한다.