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

Сетевая архитектура

Теперь на левом экране отображается все необходимое уравнение, а символ в синей рамке называется «Активация кандидата». (Обозначим их как CA для краткости). Также пока игнорируйте красный прямоугольник, однако это становится очень важным при выполнении обратного распространения.

R (t) → Сбросить строб при отметке времени t
CA (t) → Возможная функция активации при отметке времени t
Z (t) → Обновить строб при отметке времени t
S (t) → Состояние на отметке времени t

Как обычно, я буду использовать функцию стоимости L2, которая является самым нижним уравнением, показанным в левой части экрана.

Очень важно отметить одну вещь - количество весов, которые у нас есть для всего уравнения. Как видно выше, всего 6 гирь. Это означает, что при выполнении обратного распространения нам необходимо вычислить коэффициент ошибок по 6 показанным выше весам!

Таким образом, в общей сложности мы можем ожидать 6 уравнений.

Два изображения выше представляют собой графическое изображение спецназа ГРУ.

Процесс прямой подачи

Как видно выше, операция прямой подачи очень проста и легко вычисляется, для каждой временной отметки мы можем вычислить частоту ошибок, используя функцию стоимости L2. И, как указано в верхней части экрана, TS представляет отметку времени.

Обратное распространение на отметке времени 2

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

1 → Частота ошибок на отметке времени 2 относительно веса Wz
2 → Частота ошибок на отметке времени 2 относительно веса Wrecz
3 → Частота ошибок на отметке времени 2 относительно веса Wca
4 → Частота ошибок на отметке времени 2 относительно веса Wrecca
5 → Частота ошибок на отметке времени 2 относительно веса Wr
6 → Частота ошибок на отметке времени 2 относительно веса Wrecr

Примечание: я не выполнял уравнение 6, попробуйте сами.

Обратное распространение на отметке времени 1 относительно Wz

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

Также обратите внимание на красные подчеркнутые символы, все обратное распространение имеет эту переменную. Это означает, что если мы сначала вычислим общую переменную, мы сможем сэкономить время вычислений.

Красный прямоугольник → частота ошибок при отметке времени 1
Зеленая рамка → частота ошибок при отметке времени 2

Сумма двух переменных - это общий градиент, необходимый для обновления веса.

Математический символ показан выше, а фактическое уравнение показано ниже.

Заключительные слова

Так что это часть 1 на данный момент, я скоро дам вам обновления для частей 2 и 3… (я надеюсь на это). Если будут обнаружены какие-либо ошибки, напишите мне по адресу [email protected].

Тем временем подпишитесь на меня в моем твиттере здесь и посетите мой веб-сайт или мой канал Youtube для получения дополнительной информации. Я также сделал вывод обратного распространения по простой RNN здесь, если вам интересно.

Эта история опубликована в The Startup, крупнейшем предпринимательском издании Medium, за которым следят более 295 232 человека.

Подпишитесь, чтобы получать наши главные новости здесь.