RSS Планета Python

Эли Бендерский: Обратный режим автоматического дифференцирования

Этот текст объясняет автоматическое дифференцирование (АД), метод для вычисления производных функций, которые можно программировать на компьютере. АД использует правило цепочки, применяя прямой и обратный режимы. Обратный режим АД обобщает обратное распространение ошибки, обрабатывая несколько выходов. Хорошее понимание правила цепочки имеет решающее значение для понимания обратного режима АД. Объяснение начинается с линейных цепных графов, используя функцию сигмоида в качестве примера. Процесс включает разложение функции на последовательность примитивных операций, представленных в виде вычислительного графа. Обратный режим АД применяет правило цепочки в обратном направлении через этот граф, начиная с конечного выхода и распространяя производные до входов. Затем текст расширяет концепцию до общих ориентированных ациклических графов (ОАГ), включающих функции с несколькими входами и выходами, используя матрицы Якоби и правило цепочки для нескольких переменных. Объяснение охватывает сценарии с узлами входа и выхода, подробно описывая, как вычисляются и распространяются производные. Наконец, полный пример с использованием более сложной функции иллюстрирует применение обратного режима АД к общему ОАГ.
favicon
eli.thegreenplace.net
Eli Bendersky: Reverse mode Automatic Differentiation