Reguła łańcuchowa

Analiza jednowymiarowa od pierwszych zasad

Reguła łańcuchowa (ang. chain rule) to podstawa algorytmu propagacji wstecznej (backpropagation). Wyjaśnia, jak różniczkować złożenie funkcji: funkcję wewnątrz innej funkcji, taką jak f(g(x)).

Aby różniczkować funkcje złożone "od zewnątrz do wewnątrz", należy najpierw obliczyć pochodną funkcji zewnętrznej (pozostawiając funkcję wewnętrzną bez zmian), a następnie pomnożyć wynik przez pochodną funkcji wewnętrznej. Tempa zmian mnożą się wzdłuż łańcucha.

Pomyśl o tym jako o ścieżce: x → g → f. Mała zmiana wartości x jest modyfikowana przez g′, a następnie ta zmiana jest ponownie modyfikowana przez f′. Całkowita zmiana to iloczyn obu tych wartości. Rysunek pokazuje, jak pochodne mnożą się wzdłuż złożenia.

Gdzie to występuje w MLBackpropagation to reguła łańcuchowa zastosowana od końca sieci. Głęboka sieć neuronowa to jedna wielka złożona funkcja (warstwa w warstwie), a gradient straty względem wcześniejszych wag jest iloczynem lokalnych pochodnych, po jednej dla każdej warstwy, wymnażanych wstecz wzdłuż ścieżki. Z tego powodu występuje problem "zanikającego gradientu" (vanishing gradient): mnożenie wielu małych…
▶ Reguła łańcuchowa
← Pochodna iloczynu i ilorazuRóżniczkowanie funkcji uwikłanych →