Изменения

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

Batch-normalization

267 байт добавлено, 15:04, 22 января 2019
Нет описания правки
В прямом направлении, как и описано в алгоритме метода, из входа <tex>x</tex> вычисляется среднее значение по каждой размерности признакового пространства. Затем полученный вектор средних значение вычитается из каждого элемента обучающей выборки. Далее вычисляется дисперсия, и с помощью нее вычисляется знаменатель для нормализации. Затем полученное значение инвертируется и умножается на разницу входа <tex>x</tex> и средних значений. В конце применяются параметры <tex>\gamma</tex> и <tex>\beta</tex>.
В обратном направлении вычисляются производные необходимых функций. Иллюстрации из [https://kratzert.github.io/2016/02/12/understanding-the-gradient-flow-through-the-batch-normalization-layer.html статьи].
<gallery mode="nolines" widths=300px heights=300pxcaption="Шаги для вычисления градиента функции потерь.">
Файл: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: Пользуясь производной обратной величины, вычисляем следующий узел графа.
210
правок

Навигация