Robocikowo>ROBOCIKOWO

Sieci neuronowe od podstaw do nowoczesnej AI · Regularyzacja — jak uniknąć przeuczenia

Layer Normalization: kiedy BatchNorm zawodzi i jak go zastąpić

Regularyzacja — jak uniknąć przeuczenia

Wprowadzenie

Layer Normalization (Ba, Kiros, Hinton 2016) powstała jako odpowiedź na słabości BatchNorm w zadaniach sekwencyjnych i przy małych batchach. Zamiast normalizować po wymiarze batcha, LN normalizuje po wymiarze cech (features) w obrębie pojedynczego przykładu — μ i σ liczone są niezależnie dla każdej próbki, więc batch size nie ma znaczenia, a tryby train i eval są identyczne. Ta zmiana matematycznie drobna, ale konsekwencje architektoniczne ogromne: LN jest standardem w transformerach (Vaswani et al. 2017, GPT, BERT, Llama), Vision Transformerach, ConvNeXt, w RNN (LSTM z LN) i wszędzie tam, gdzie batch jest mały, sekwencje są zmiennej długości, lub trening jest rozproszony. Lekcja pokrywa: dokładny wzór LN i różnice względem BN, miejsce LN w bloku transformerowym (Pre-LN vs Post-LN, decyzja On Layer Normalization in the Transformer Architecture, Xiong et al. 2020), warianty (RMSNorm Zhang & Sennrich 2019 — używany w Llama 2/3), oraz kiedy LN sam może być patologiczny (zbyt małe d_model, brak γ/β, ε numeryczne).