Slovník výrazov AI/Neurónové siete - stavebné prvky

Neurónové siete - stavebné prvky

spätné šírenie

Anglický výraz backpropagation

pokročiléheslo č. 2725 otázok a odpovedí2 odborné zdroje

Presná definícia

Čo znamená spätné šírenie?

Spätné šírenie je efektívny algoritmus na výpočet derivácií skalárnej straty podľa medzivýsledkov a parametrov zloženého výpočtového grafu. Postupuje grafom v opačnom topologickom poradí a opakovane používa reťazové pravidlo; nejde samo osebe o optimalizátor. Gradienty vypočíta, kým SGD, Adam alebo iný postup rozhodne, ako parametre zmeniť.

Skúsenosť a kontext

Ako sa pojem používa v praxi

Pri vlastnej vrstve sa dopredný výpočet implementuje z diferencovateľných operácií a gradient sa porovná s konečnými diferenciami na malom vstupe. Pred ďalšou dávkou sa gradienty vynulujú alebo zámerne akumulujú, pretože framework ich môže sčítať. Tím sleduje normy gradientov po vrstvách a testuje maskovanie či vetvenie grafu. Na inferenciu sa spätný graf nevytvára, ak nie je potrebné vysvetlenie gradientom.

Overiteľnosť

Odborné zdroje

  1. Deep Learning Book · Feedforward networksdeeplearningbook.org
  2. PyTorch · Automatic differentiationdocs.pytorch.org

Praktické odpovede

Často kladené otázky

Čo algoritmus vypočíta?

Gradient straty podľa každého relevantného parametra.

Je backprop to isté ako gradient descent?

Nie, backprop počíta gradient; optimalizátor robí krok.

Prečo ide odzadu?

Derivácia výstupu sa prenáša k jeho predchodcom.

Prečo gradienty nulovať?

Mnohé frameworky ich medzi volaniami sčítavajú.

Ako overiť vlastnú deriváciu?

Numerickým gradient checkom na malom dobre podmienenom príklade.