통계 실험실 차트
넘스탯 로고
넘스탯
LEARN · SIMULATE · VERIFY

확률부터 LLM까지, 원리부터 제대로 배우는 자기주도 학습 플랫폼

로그인
학습 메뉴
도움말

배치 정규화 실습실

깊은 신경망의 학습을 가능케 한 결정적 혁신 — Ioffe & Szegedy, 2015

원하는 개념·랩·가이드를 검색해보세요

Ctrl K
딥러닝 이론으로상세 이론 학습

층마다 값을 '표준화'하면 학습이 빨라진다

깊은 신경망에서는 층을 지날수록 값의 분포가 요동쳐 학습이 불안정해집니다. 배치 정규화는 각 층에서 값의 분포를 일정하게 맞춰 학습을 더 빠르고 안정적으로 만듭니다. 이 정규화를 켜고 끄며 학습 곡선이 어떻게 달라지는지 확인해 보세요.
이 페이지에서 배우고 나면
  • 배치 정규화가 각 층에서 무엇을 하는지 직접 관찰할 수 있습니다.
  • 정규화가 학습 속도와 안정성에 주는 효과를 비교할 수 있습니다.
  • 값의 분포가 층을 지나며 어떻게 변하는지 눈으로 확인할 수 있습니다.
내부 공변량 변화 (Internal Covariate Shift)

학습이 진행되면서 각 층의 입력 분포가 흔들립니다. 윗줄은 BN 없을 때 평균·분산이 점점 변하는 모습, 아랫줄은 BN 적용 시 분포가 매번 표준화되어 안정적인 모습입니다.

Internal Covariate Shift — BN 없으면 분포가 흐트러지지만 BN이 매번 표준화Internal Covariate Shift — BN 없으면 분포가 흐트러지지만 BN이 매번 표준화
🔧 BN 알고리즘 4단계

미니배치 입력 → 평균·분산 계산 → 정규화 → 학습 가능한 γ, β로 스케일·시프트. γ, β는 모델이 "정규화가 너무 강하다"고 판단하면 원래 분포를 복원할 수 있는 escape hatch입니다.

BN 4단계 — 정규화 + 학습 가능한 스케일/시프트BN 4단계 — 정규화 + 학습 가능한 스케일/시프트
예측 먼저 — 실험 전에 답을 정해 보세요
예측 → 실험 → 확인

정답을 몰라도 괜찮습니다 — 먼저 예측을 정해야 시뮬레이션 결과가 기억에 남습니다. 예측을 고른 뒤 아래 시뮬레이션으로 직접 확인하고, 그다음 결과를 열어 보세요.

1. 배치 정규화(BatchNorm)를 넣으면 학습에 어떤 변화가 생길까요?
2. BN이 있는 모델과 없는 모델 — 같은 (다소 큰) 학습률로 학습시키면 곡선은?
로그인하면 예측 기록이 계정에 저장됩니다

어느 기기에서든 이어서 학습하고, 오답 기반 복습 추천을 받을 수 있습니다.

카카오로 시작하기네이버로 시작하기구글로 시작하기
회원가입 절차 없음 — 닉네임만 저장하며, 이메일·연락처는 수집하지 않습니다.
배치 정규화 인터랙티브 — 활성값 분포 드리프트 비교

4층 네트워크의 각 층 활성값 분포가 학습 epoch이 진행되며 어떻게 변하는지 BN 유무에 따라 비교합니다.

관찰할 층
깊은 층(L4)일수록 드리프트가 누적되어 큼
학습률 lr = 0.10
lr ≥ 0.15면 BN 없는 모델이 발산하기 시작
Epoch
epoch 0 / 40
L3 활성값 분포
BN 없음 — μ: 0.00, σ: 0.96
BN 있음 — μ ≈ 0, σ ≈ 1
학습 손실 곡선 (전체 epoch)
BN이 안정적이고 빠르게 수렴
실측 요약 — 이 실습이 보여주는 것

4층 가상 네트워크의 각 층 활성값 분포(표본 600개 히스토그램)가 학습 epoch 0~40 동안 BN 유무에 따라 어떻게 달라지는지를 규칙 기반 시뮬레이션으로 비교하는 실험입니다. 학습률 슬라이더(0.01~0.3)로 BN 없는 모델이 발산하는 임계선을 직접 넘어봅니다.

  • 랩의 드리프트 모형 실측(시드 고정): lr=0.1일 때 BN 없는 L4 층 분포는 epoch 40에 μ=0.82, σ=2.91까지 흘러가고, 같은 시점 L1은 σ=1.38에 그친다 — 드리프트는 깊은 층일수록 누적되며, BN 쪽은 매 epoch μ≈0, σ≈1로 고정된다
  • 손실 곡선 모형에서 lr=0.1 기준 손실 0.4 도달이 BN 14에폭 vs BN 없음 34에폭이고, lr을 0.15 위로 올리면 BN 없는 쪽만 발산 곡선(epoch 40에 손실 4.3)으로 바뀐다 — BN은 같은 학습률에서 안정 수렴을 유지한다
  • BN의 실제 연산은 배치 단위로 각 층 입력을 평균 0·분산 1로 정규화한 뒤 학습 가능한 γ·β로 되돌릴 여지를 남기는 것(이 랩은 γ=1, β=0 가정) — Ioffe & Szegedy(2015)가 '내부 공변량 이동' 문제의 처방으로 제안했다

바로잡는 오개념: "정규화는 입력 데이터에 한 번 해주면 충분하다"는 생각 — 깊은 망에서는 학습이 진행되는 동안 각 층의 입력 분포 자체가 계속 흘러가므로 층마다 매 스텝 정돈이 필요하고, 그래야 큰 학습률과 깊은 구조를 감당할 수 있다.

AI 튜터에게 물어보기
베타

— 정답 대신 힌트로 유도합니다. 지금 화면의 실험 상태를 알고 답해요.

예: “방금 결과가 이론과 다른데 왜죠?”, “이 값을 올렸는데 왜 반대로 변하죠?”

AI 답변은 부정확할 수 있습니다. 핵심 개념은 반드시 시뮬레이션 실측으로 확인하세요. 질문 0/5 · 하루 질문 한도가 있습니다
BN이 허용하는 큰 학습률

BN 없으면 lr=0.1은 발산합니다. BN을 추가하면 같은 lr=0.1이 안정적으로 수렴 — 약 10배 빠른 학습이 가능해집니다.

BN은 더 큰 학습률을 허용해 학습 가속BN은 더 큰 학습률을 허용해 학습 가속
📐 BN / LN / IN / GN — 어떤 차원으로 정규화?

4D 텐서 (N, C, H, W)에서 어떤 차원을 따라 평균·분산을 계산하느냐가 정규화의 종류를 결정합니다.BN은 배치, LN은 특징, IN은 샘플별 채널별, GN은 채널 그룹 단위입니다.

4종 정규화: 배치/특징/채널 어느 차원을 따라 평균·분산을 계산4종 정규화: 배치/특징/채널 어느 차원을 따라 평균·분산을 계산
🎭 학습 시 vs 추론 시 — BN의 두 얼굴

학습 시에는 미니배치 통계를 사용하지만 추론 시에는 학습 중 누적한 이동평균(EMA)을 사용합니다. 이 분리가 BN의 가장 까다로운 부분이며, model.eval() 호출을 잊으면 결과가 매번 달라질 수 있습니다.

학습 시 미니배치 통계 → 추론 시 고정 EMA 통계 사용학습 시 미니배치 통계 → 추론 시 고정 EMA 통계 사용
정규화 기법별 사용 가이드
Batch Norm (BN)

CNN의 표준. 배치 ≥ 16에서 잘 작동. ResNet, EfficientNet 등 거의 모든 백본에서 사용.

CNN
배치 ≥ 16
Layer Norm (LN)

Transformer/RNN의 표준. 시퀀스 길이·배치 크기에 독립적. ViT, BERT, GPT 모두 LN 사용.

Transformer
RNN
LLM
Group Norm (GN)

Detection/Segmentation의 표준. 배치 크기 1~4에서도 안정. Mask R-CNN 등에서 BN 대신 사용.

Detection
작은 배치
RMSNorm

평균 빼지 않고 RMS만으로 정규화 — 더 빠름. LLaMA, T5의 표준.

대규모 LLM
속도
직접 해보기 — 실습 과제
  1. 드리프트 확인: L4 + lr=0.2 + 재생. BN 없는 분포가 점점 평균에서 멀어지고 분산이 커지는 것 관찰.
  2. 발산 시뮬레이션: lr=0.25로 올리고 손실 곡선 확인. BN 없는 모델이 발산하지만 BN 있는 모델은 안정.
  3. 층별 영향: L1 → L4로 옮겨가며 epoch 30 시점 비교. 깊은 층일수록 BN 없는 분포의 드리프트가 심함.
  4. 이론과 연결: 위 4종 정규화 다이어그램과 사용 가이드를 비교하며 "내 프로젝트에는 어떤 정규화가 맞을까?" 판단해보세요.
📖 더 깊이 학습하기
  • Ioffe & Szegedy, Batch Normalization (ICML 2015): BN 원논문
  • Santurkar et al., NeurIPS 2018: BN의 진짜 효과 = 손실 표면 매끄러움
  • Ba et al., Layer Normalization (2016): LN 논문
  • Wu & He, Group Normalization (ECCV 2018): GN 논문