1. Из авторегрессии в RNN#
В самом начале этой книги мы выяснили, что нейросеть – это ансамбль регрессий. Линейная регрессия записывалась в виде одного уравнения
Чтобы перейти от линейной регрессии к нейрону, мы завели скрытое состояние и применили к нему функцию активации
Авторегрессия – это простейшая линейная модель, которая позволяет работать с последовательностями. Мы в ней пытаемся объяснить текущее значение ряда через предыдущее
Можно изобразить такую модель на картинке следующим образом:

Давайте попробуем перейти от неё к рекуррентному нейрону по аналогии с линейной моделью. На картинке рекурретный нейрон можно изобразить следующим образом:

Выпишите уравнения, описывающие рекуррентный нейрон. На картинке не отмечены места, где используются функции активации. Додумайте сами, где в уравнениях нужна нелинейность. Можно ли ограничиться только одним уравнением?
Решение
Если мы выпишем уравнения чисто по картинке, то получим
В первом уравнении обновляется скрытое состояние нейрона. Оно учитывает в себе информацию обо всём, что до этого происходило в последовательности. Во втором уравнении на базе скрытого состояния мы строим прогноз.
Из-за того, что скрытое состоянии теперь зависит от времени, одним уравнением ограничиться не получится. Нам надо на каждом шаге обновлять его, а затем строить прогноз.
Пока что перед нами линейная модель. Давайте добавим в неё нелинейность. Для этого к каждому из уравнений применим функцию активации и получим уравнения, описывающие RNN-ячейку
В принципе, для прогнозирования необязательно применять функцию активации, но если мы это сделаем, модель станет более выразительной.