Изменения

Перейти к: навигация, поиск

Batch-normalization

60 байт добавлено, 15:19, 22 января 2019
Обучение нейронных сетей с пакетной нормализацией
В обратном направлении вычисляются производные необходимых функций. Иллюстрации из [https://kratzert.github.io/2016/02/12/understanding-the-gradient-flow-through-the-batch-normalization-layer.html статьи].
<gallery mode="nolines" widths=300px 350px heights=300px 350px caption="Шаги для вычисления градиента функции потерь.">
Файл:step9.png|Шаг 9.
Файл:step8.png|Шаг 8.
</gallery>
* '''Шаг 9''': Сначала вычисляется производная по параметру <tex>\beta</tex>, как в уравнении <tex>(6)</tex>, так как к нему применяется только операции суммирования. И значение градиента выхода передается без изменений.* '''Шаг 8''': Далее, пользуясь правилом вычисления производной при умножении, как в уравнении <tex>(5)</tex>, вычисляется градиент по параметру <tex>\gamma</tex>, и градиент выхода умножается на данную константу.* '''Шаг 7''': Данный шаг вычисляется аналогично предыдущему, получая уравнение <tex>(1)</tex>.* '''Шаг 6''': Пользуясь производной обратной величины, вычисляем следующий узел графа.* '''Шаг 5''': Вычисляем производную квадратного корня с добавлением <tex>\epsilon</tex>.* '''Шаг 4''': Вычисляем производную суммы по всем компонентам входного вектора, получая матрицу.* '''Шаг 3''': Получаем производную квадрата.* '''Шаг 2''': На данном шаге в одном узле сходятся ветки, поэтому полученные производные просто складываются, получая уравнение <tex>(2)</tex> для дисперсии.* '''Шаг 1''': Аналогично шагу 4 вычисляем матрицу по сумме для производной по математическому ожиданию, получая формулу <tex>(3)</tex>.* '''Шаг 0''': В начальной вершине получаем уравнение <tex>(4)</tex>, складывая входящие производные.
==Пакетная нормализация в [[Сверточные нейронные сети | свёрточных сетях]]==
210
правок

Навигация