최적화·연습 문제

RMSNorm

문제 설명PROBLEM

preview

RMSNorm

LayerNorm(80)간소화 버전. 평균을 빼지 않고 제곱평균제곱근(RMS) 으로만 정규화:

yij=xij1Djxij2+ϵγjy_{ij} = \frac{x_{ij}}{\sqrt{\tfrac{1}{D}\sum_j x_{ij}^2 + \epsilon}} \cdot \gamma_j

  • mean 계산 생략 → 더 빠름
  • bias β\beta 도 보통 생략 (Llama 등 표준 구현)
  • 실험적으로 LayerNorm 과 거의 같은 성능

LLaMA, T5 등 최신 LLM 의 기본 정규화 층.

과제

함수 rms_norm(x, gamma, eps) 를 완성하세요.

  • x shape (N, D), gamma shape (D,).
  • 반환: 같은 shape.
  • 행별 RMS 계산 → 나누기 → γ 로 스케일.

테스트 케이스

#이름검증
1γ=1 → 행별 RMS ≈ 1
2γ 스케일 적용
3shape 유지
4영벡터 행도 NaN 없음
5양수만 있는 행도 부호 보존
개념 노트와 실수 포인트

최적화 (옵티마이저)

  • GD/SGD/모멘텀/Adam. ⚠️ 학습률: 너무 크면 발산, 너무 작으면 느림.
  • 파라미터 -= lr * gradient. 모멘텀/Adam 은 과거 기울기 활용.