BN과 LN

느리·2025년 5월 15일
0

내가 보려고 아카이빙하는 BN과 LN의 차이

예제 설정

이미지 데이터 모양을 간단하게 줄여서:

배치 크기(B) = 2 → 이미지 2장

채널 수(C) = 2 → 각 이미지에 채널이 2개 (예: R, G)

공간 크기(H × W) = 1 × 2 → 너무 크지 않게 2픽셀만 있다고 가정

[Batch, Channel, Height, Width] = [2, 2, 1, 2]

이것을 숫자로 표현하면

이미지1 (배치 0)
채널0: [1, 2]
채널1: [3, 4]

이미지2 (배치 1)
채널0: [5, 6]
채널1: [7, 8]

1. BatchNorm = 채널별 정규화

BN은 같은 채널(C)에 대해, 배치(B) 전체와 공간(HXW) 전체의 값을 모아서 정규화

채널 0에 대해서

  • 모은 값들 = 1, 2 + 5, 6 → [1, 2, 5, 6]
  • 평균 = (1+2+5+6) / 4 = 3.5
  • 분산 = [(1-3.5)² + (2-3.5)² + (5-3.5)² + (6-3.5)²] / 4
    = [6.25 + 2.25 + 2.25 + 6.25] / 4 = 4.25
  • 표준편차 = √4.25 ≈ 2.06
    → 정규화 결과 (X – 평균) / 표준편차:

이미지1 채널0:
[1, 2] → [(1 - 3.5)/2.06, (2 - 3.5)/2.06] ≈ [-1.21, -0.73]
이미지2 채널0:
[5, 6] → [(5 - 3.5)/2.06, (6 - 3.5)/2.06] ≈ [0.73, 1.21]

채널 1에 대해서

  • 모은 값들 = [3, 4, 7, 8]
  • 평균 = (3+4+7+8)/4 = 5.5
  • 분산 = [(3-5.5)² + (4-5.5)² + (7-5.5)² + (8-5.5)²]/4
    = [6.25 + 2.25 + 2.25 + 6.25]/4 = 4.25
  • 표준편차 ≈ 2.06

→ 정규화 결과:
이미지1 채널1: [3, 4] → ≈ [-1.21, -0.73]
이미지2 채널1: [7, 8] → ≈ [0.73, 1.21]

결과

이미지채널원래 값정규화 결과
1 (0)0[1, 2][-1.21, -0.73]
1 (0)1[3, 4][-1.21, -0.73]
2 (1)0[5, 6][0.73, 1.21]
2 (1)1[7, 8][0.73, 1.21]

2. LayerNorm = 채널 전체 정규화

LN은 한 샘플(이미지) 안에서, 모든 채널과 공간의 값을 다 모아서 평균/표준편차를 계산

이미지1 전체 값

→ [1, 2] (채널0) + [3, 4] (채널1) = [1, 2, 3, 4]

  • 평균 = (1+2+3+4)/4 = 2.5
  • 분산 = [(1-2.5)² + (2-2.5)² + (3-2.5)² + (4-2.5)²]/4
    = [2.25 + 0.25 + 0.25 + 2.25]/4 = 1.25
  • 표준편차 = √1.25 ≈ 1.12

→ 정규화:

  • [1, 2, 3, 4] → [(1-2.5)/1.12, (2-2.5)/1.12, (3-2.5)/1.12, (4-2.5)/1.12]
    ≈ [-1.34, -0.45, 0.45, 1.34]

이미지2 전체 값

→ [5, 6] (채널0) + [7, 8] (채널1) = [5, 6, 7, 8]

  • 평균 = 6.5
  • 분산 = [(5-6.5)² + ...] = [2.25 + 0.25 + 0.25 + 2.25] / 4 = 1.25
  • 표준편차 ≈ 1.12

→ 정규화:

  • [5, 6, 7, 8] → ≈ [-1.34, -0.45, 0.45, 1.34]

결과

이미지채널원래 값정규화 결과
1 (0)채널0[1, 2][-1.34, -0.45]
1 (0)채널1[3, 4][0.45, 1.34]
2 (1)채널0[5, 6][-1.34, -0.45]
2 (1)채널1[7, 8][0.45, 1.34]

핵심 차이 요약

항목BatchNormLayerNorm
정규화 기준같은 채널, 여러 이미지하나의 이미지, 모든 채널
공간 정보 포함?포함함포함함
배치 크기 영향을 받나?✅ 예❌ 아니요
어디서 주로 사용?CNNTransformer, ViT, NLP
profile
얍얍

0개의 댓글