Haribo ML, AI, MATH, Algorithm

여러 Norm들 + Modulation 연산

2025-11-16
Haribo

Norm

FLUX, QWEN-IMAGE 모듈 중 norm을 알아보자.

  • (내가아는 오픈소스중 2황이기 때문에…)
API FLUX QWEN-IMAGE
VAE Group Norm RMSNorm
LDM LayerNorm, RMSNorm RMSNorm, AdaLayerNorm(?)

RMSNorm 이놈이 챔피언인거같은데, 파보기 전에 틀딱 Norm들 먼저 리마인드 하고 가야겠음.

예전 Norm들.

학부, 대학원 때 개 븅신같은 이미지로 각종 Norm 기법 비교해놓은 이미지 기억나는데 당시에 이해도 못했고, 그냥 숫자, 테서로 파악하는게 나을꺼같아서 다시 정리해본다.

BatchNorm

CNN에서 특히 강력하고 RNN/Transformer 같은 sequence 모델과 궁합 구림. 그래서 아예 사장되었나보다.
특히 BatchNorm은 배치 사이즈 작으면 아예 학습이 안되는데 최소 64개였나? 그정도 필요하다고 했던거같다.
예전에 GAN 학습할 때 InstanceNorm 대신 BatchNorm batch=8로 학습했었을 때 이미지가 엄청 뿌옇게 거의 스모커 대령처럼 나오는걸 확인한 적이 있었음.

그러나 이것부터 좀 알아야 각종 변형 Norm들이 구체적으로 파라미터 어떻게 생겼는지 탁 보고 감 잡힐듯.

  • 입력: (B, C, H, W), $\mu, \sigma$: (C,)

배치 싹 끌어와서 통계를 내다. (C, B x H x W )로 생각하면 편할듯. CNN에서 image latent channel별로 다른 특성을 지닌다고 가정하기에 채널별로만 평/분 계산 후 뿌려준다.

요약하면

“해당 축에 있는 값들이 같은 의미의 feature인가?” 를 기준으로 Norm을 진행한다. 같은 의미를 지닌 애들끼리 평/분 정규화. CNN에서 C(channel)는 “의미가 고정된 feature map”이다.

  • C=0 → edge detector
  • C=1 → texture detector
  • C=2 → color mixing

InstanceNorm

이건 특징이 이미지에서 채널별로 평/분을 구한다. 이렇게 되면 이미지별로 독특하고, 두드러지는 특징들이 완화 되는데, 그렇게 perceptual한 특징을 날려버리는 순간 이미지 복원시 매우 안좋은 이미지가 생성될 꺼같다.
그러나 뭔가 주요 특징만 살리고 그 외에껄 바꾸고싶은 edit, image-to-image 태스크에서는 뭔가 InstanceNorm이 도움될꺼 같은 생각이든다.

  • 입력: (B, C, H, W), $\mu, \sigma$: (B, C, 1, 1)

(B, C, HxW) 로 만들어놓고 배치, 채널 단위로 평/분을 때려버린다. 이미지마다 가지는 고유한 특징들이 완화된다.

GroupNorm

FLUX-VAE, 그리고 SDXL VAE+Unet 에서 쓰는 norm.
QWEN에서 안쓰는거 보면 뭔가 꼬롬하다.

BN vs IN 문제를 동시에 해결하려고 나온 놈이라고 한다.

BN의 문제

  • batch size 가 작으면 통계가 흔들림 → 모델 훈련 불안정
  • 습에서 SyncBN 필요 → 느려짐

IN의 문제

  • 너무 aggressive → style/contrast를 많이 없애버림
  • CNN task에서 성능 저하
nn.GroupNorm(num_groups=32, num_channels=out_channels, eps=1e-6, affine=True)

Similar Posts

Comments