Odborná definice
Odborná definice
Batch normalization je vrstva, která během tréninku štandardizuje aktivace pomocí průměru a rozptylu vypočítaného z mini-batchu a potom aplikuje naučitelnou škálu a posun. Při inferenci se zpravidla používají průběžně odhadnuté populačné statistiky, ne statistiky aktuální požadavky. Metoda často umožňuje vyšší rychlost učení a stabilnější trénink, ale její chování závisí na velikosti a reprezentativnosti dávky. Při velmi malých batchoch, sekvenčních modelech nebo distribuovanom tréninku může být vhodnější jiná normalizace.
Srozumitelné vysvětlení
Srozumitelné vysvětlení
Hodnoty ve uvnitř hluboké sítě se během učení mění a mohou dosahovat velmi rozdílně rozsahy. Batch normalization jejich v každé dávce přepočítá do kontrolovanejšieho meradla, ale zároveň ponechá vrstvě možnost naučit si vlastní škálu a posun. Trénink tak často znesie agresívnejšie kroky a je méně citlivý na inicializaci. Důležité je, že tréninkový a produkční režim používají odlišné statistiky. Pokud se running mean a variance aktualizují nesprávně nebo se změní distribuce dat, model může po nasazení degradovat.
Časté otázky
Časté otázky
Proč má batch normalization naučitelné gamma a beta?
Samotná štandardizace by nútila aktivace na pevný průměr a rozptyl. Gamma a beta umožnia síti obnovit vhodnou škálu a posun, pokud jejich úloha potřebuje. Vrstva tedy normalizuje, ale neobmedzí reprezentaci na jediný tvar.
Co se mění mezi train a eval režimom?
V train režime se používají statistiky aktuálního batchu a aktualizují se running estimates. V eval režime se používají uložené populačné odhady. Zabudnutie prepnutia režimu způsobuje nestabilní nebo dátovo závislé predikce.
Proč je batch normalization problém při malých dávkách?
Průměr a rozptyl z několika příkladů jsou hlučné a mohou špatně reprezentovat populaci. Výsledkem je nestabilita nebo rozdíl mezi tréninkem a inferencí. Alternatívou bývá layer normalization, group normalization nebo synchronizace statistik.
Je batch normalization pouze regularizace?
Ne. Může mít regularizačný efekt přes šum batchových statistik, ale primárně mění parametrizaci a dynamiku optimalizace. Její přínos nelze zredukovat na jednu historickou hypotézu o internal covariate shift.
Kde se BN vrstva obvykle umiestňuje?
V CNN se často používá po lineární nebo konvolučnej transformaci a před aktivačnou funkcí, ačkoli architektury se liší. Pořadí je součástí návrhu modelu a při prenose váh se nesmí měnit bez nového tréninku nebo validace.
Související pojmy
Související pojmy
Zdroje a redakční stopa
Zdroje a redakční stopa
- Ioffe a Szegedy, Batch Normalization, ICML 2015
- Google Machine Learning Glossary
Definícia je autorská odborná syntéza. Pri právnych a regulačných rozhodnutiach má prednosť aktuálne oficiálne znenie predpisu a posúdenie konkrétneho prípadu.
