Читать книгу Основы глубокого обучения - Нихиль Будума - Страница 16

Глава 2. Обучение нейросетей с прямым распространением сигнала
Градиентный спуск с сигмоидными нейронами

Оглавление

В этом и следующем разделах мы будем говорить об обучении нейронов и нейросетей, использующих нелинейности. В качестве образца возьмем сигмоидный нейрон, а расчеты для других нелинейных нейронов оставим читателям как упражнение. Для простоты предположим, что нейроны не используют смещение, хотя наш анализ вполне можно распространить и на такой случай. Допустим, смещение – вес входа, на который всегда подается 1.

Напомним механизм, с помощью которого логистические нейроны вычисляют выходные значения на основе входных:


Нейрон определяет взвешенную сумму входящих значений – логит z. Затем он передает этот логит в нелинейную функцию для вычисления выходного значения y. К счастью для нас, эти функции имеют очень красивые производные, что значительно упрощает дело! Для обучения нужно вычислить градиент функции потерь по весам. Возьмем производную логита по входным значениям и весам:


Кроме того, как ни удивительно, производная выходного значения по логиту проста, если выразить ее через выходное значение:


Теперь можно использовать правило дифференцирования сложной функции, чтобы вычислить производную выходного значения по каждому из весов:


Объединяя полученные результаты, мы можем вычислить производную функции потерь по каждому весу:


Итоговое правило изменения весов будет выглядеть так:


Как вы видите, новое правило очень похоже на дельта-правило, за исключением дополнительных множителей для учета логистического компонента сигмоидного нейрона.

Основы глубокого обучения

Подняться наверх