Sobes.tech
Middle — Senior

Koje vrste normalizacije postoje (Batch, Layer, Instance, Group, RMSNorm)?

sobes.tech АИ

Одговор од АИ

Normalizacija u neuronskim mrežama pomaže stabilizaciji i ubrzanju obuke, smanjujući unutrašnje pomeranje distribucije aktivacija. Glavne vrste normalizacije:

  • Batch Normalization (BatchNorm) — normalizacija po seriji. Računa srednju vrednost i dispersiju za svaku osobinu na mini-seriji, zatim skalira i pomera vrednosti. Efikasna je, ali zavisi od veličine serije.

  • Layer Normalization (LayerNorm) — normalizacija po sloju. Računa statistike za sve neurone sloja za svaki pojedinačni primer, nezavisno od veličine serije. Često se koristi u RNN i transformatorima.

  • Instance Normalization (InstanceNorm) — normalizacija po primeru i kanalu, često primenjivana u zadacima obrade slika, na primer u transferu stila.

  • Group Normalization (GroupNorm) — deli kanale u grupe i normalizuje unutar svake grupe. Stabilno radi pri malim veličinama serije.

  • RMSNorm (Root Mean Square Normalization) — normalizacija po korenu iz srednje vrednosti kvadrata, bez oduzimanja srednje vrednosti. Pojednostavljena alternativa LayerNorm, ponekad daje bolje rezultate u transformatorima.

Primer BatchNorm u PyTorch:

import torch
import torch.nn as nn

batch_norm = nn.BatchNorm1d(num_features=10)
x = torch.randn(32, 10)  # serija od 32 primera
output = batch_norm(x)