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

확률부터 LLM까지 — 데이터 사이언스 자기주도 학습 플랫폼

로그인
학습 메뉴
도움말

Layer Norm과 잔차 연결

마일스톤 학습법으로 단계별 완전 정복
LLM
Layer Normalization
잔차 연결
Residual Connection
Pre-LN
Post-LN
Transformer
딥러닝
이 학습을 통해 달성할 수 있는 목표
기초 이해
  • • 잔차 연결이 기울기의 지름길을 만든다는 직관 이해
  • • Layer Norm이 토큰 벡터를 자기 차원 방향으로 정규화함을 이해
  • • 두 장치가 깊은 Transformer 학습을 가능하게 하는 이유 파악
심화 학습
  • • Layer Norm의 평균·분산·정규화·γβ 적용을 손으로 계산
  • • BatchNorm과 Layer Norm의 통계 방향 차이 구분
  • • Post-LN과 Pre-LN 배치의 차이와 Pre-LN이 안정적인 이유 설명
실무 적용
  • • 잔차 스트림 관점에서 Transformer 블록의 정보 흐름 해석
  • • RMSNorm 등 정규화 변형과 설계 선택의 실무적 영향 이해
  • • 절제 실험으로 두 장치의 역할 분담을 검증하는 방법 파악
한눈에 보기

Layer Normalization과 잔차 연결은 수십~수백 층의 Transformer를 안정적으로 학습시키는 두 장치로, 잔차 연결은 기울기가 지나가는 지름길을 만들고 Layer Norm은 각 토큰 벡터를 자기 차원 방향으로 정규화한다.

학습 로드맵

각 단계를 클릭하면 해당 학습 내용을 볼 수 있습니다

기초 이해
개념 정의와 기본 원리
15
클릭
심화 학습
공식 유도와 다양한 예시
35
클릭
실무 적용
실제 케이스와 고급 응용
50

학습 진도 (완료한 단계)

0%

기초 이해지름길과 볼륨 조절기

기초 이해: 지름길과 볼륨 조절기

난이도 2/5
약 15분

층을 수십 개 쌓으면 신경망은 오히려 학습이 안 되는 문제가 생깁니다. 오차 신호(기울기)가 많은 층을 거슬러 내려가며 약해지거나 폭주하고, 층마다 값의 크기가 제멋대로 커지거나 작아지기 때문이에요. Transformer는 두 가지 장치로 이 문제를 풉니다. 잔차 연결은 입력을 층의 출력에 그대로 더해 신호가 지나갈 지름길을 만들고, Layer Normalization은 각 토큰 벡터의 값 크기를 일정한 범위로 맞춰 줍니다. 이 둘 덕분에 GPT 같은 수십~수백 층 모델이 학습 가능해집니다.

Skip Connection — 입력을 건너뛰어 더한다출력 H(x) = F(x) + x — 항등 지름길로 기울기가 잘 흘러 아주 깊은 망도 학습x층 F(가중치·활성화)F(x)+지름길: 항등(x 그대로 전달)H(x)=F(x)+x출력※ “잔차 F(x)”만 학습하면 되므로 최적화가 쉬워짐 · ResNet(He 등, 2016)이 152층 학습을 가능케 했다
핵심 포인트
  • 잔차 연결: 출력 = 입력 + 층의 변환, 즉 Loading... — 입력이 그대로 더해지는 지름길
  • 지름길 덕분에 역전파 때 기울기가 층을 우회해 아래까지 직접 전달됨 (기울기 소실 완화)
  • Layer Norm: 각 토큰 벡터를 자기 차원 방향으로 평균 0, 분산 1 근처로 정규화
  • 배치에 몇 문장이 들었는지와 무관하게 동작 — 토큰 하나만 있어도 계산 가능 (BatchNorm과 다른 점)
간단한 예시

4차원 토큰 벡터 x = [2, 4, 6, 8]을 Layer Norm에 넣어 봅니다. 1) 평균: (2 + 4 + 6 + 8) / 4 = 20 / 4 = 5 2) 분산: ((2-5)² + (4-5)² + (6-5)² + (8-5)²) / 4 = (9 + 1 + 1 + 9) / 4 = 5 3) 표준편차: √5 ≈ 2.236 4) 정규화: [(2-5)/2.236, (4-5)/2.236, (6-5)/2.236, (8-5)/2.236] ≈ [-1.342, -0.447, 0.447, 1.342] 결과의 평균은 0, 분산은 1이 됩니다. 이 계산에 배치의 다른 문장은 전혀 필요 없었다는 점에 주목하세요 — 벡터 하나로 끝납니다.

Python으로 직접 실행해보기

아래 코드는 브라우저에서 바로 실행됩니다. 숫자를 바꿔가며 결과를 눈으로 확인해 보세요.

Layer Norm 직접 계산해 보기

라이브러리 없이 벡터 하나를 정규화합니다. 위 손계산과 같은 값이 나오는지 확인하세요.

첫 실행 시 파이썬 런타임을 내려받습니다 (수 초 소요)

이해도 확인하기

정답: 입력이 그대로 더해지는 항등 경로가 생겨, 역전파 때 기울기가 층을 우회해 아래층까지 약해지지 않고 전달됩니다. 또 층은 원본 전체가 아니라 원본에 더할 변화량(잔차)만 배우면 되므로 학습이 쉬워집니다.

정답: 배치가 아니라 각 토큰 벡터 자신의 차원들을 기준으로 구합니다. 벡터 하나 안에서 평균·분산을 계산해 정규화하므로, 배치 크기가 1이어도 동작합니다.

정답: 기울기가 많은 층을 거치며 소실·폭주해 아래층이 거의 학습되지 않고, 층마다 값의 크기가 제멋대로 변해 학습이 불안정해집니다. 잔차 연결이 기울기 통로를, Layer Norm이 값 크기의 안정을 담당합니다.

딥러닝 이론 페이지로 돌아가기