Краткое изложение базовой модели RNN (deeplearning.ai)

искусственный интеллект глубокое обучение Нейронные сети

Желаю всем счастливого Нового года! Удачи, ешь курицу сегодня вечером!

Эта статья представляет собой заметку, основанную на модели последовательности deeplearning.ai ng, в основном для обобщения базовой модели последовательности RNN. Также надеюсь, что Бог не будет брызгать. Прочитав эту статью, я лучше пойму структуры моделей, такие как TextRNN, RCNN, Hierarchical Attention Network и т. д. Эти структуры представляют собой не что иное, как объединение и преобразование базовой структуры RNN.

Базовая модель РНН
Основная форма РНН

Я думаю, что модель RNN имеет следующеетри характеристики:

  • выбор времени,рекурсивный y_{t} = f(y_{t-1},x_{t}), общий ввод исходит из двух аспектов, один из которых — предыдущее состояниеy_{t-1}, и текущее состояние входаx_{t}.
  • совместное использование параметров, матрица параметров каждого шага является общей, а матрица основных параметров также представляет собой два вышеуказанных аспекта,W_{aa}иW_{ax}.
  • сотовый дизайн, чтобы решить проблему экспоненциальной дисперсии градиента при обновлении rnn, разработана проблема взрыва градиента и проблема управления долей информации, сохраняемой ячейками, ячейками gru и lstm, подробности см. ниже.
процесс обратного распространения
Схематическая диаграмма обновления параметров для модели «многие ко многим»

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

GRU

Ячейка ГРУ имеет двое ворот:

  • update gate:

ввод управляющего тока\tilde{c}^{<t>}и предыдущая ячейкаc^{<t-1>}Отношение баланса между ними, значение находится между 0 и 1.

  • reset gate:

ввод управляющего тока\tilde{c}^{<t>}Сколько от предыдущего вывода, между 0 и 1.

Вывод в модели ГРУ a^{<t>} с информацией, хранящейся в ячейке c^{<t>} это то же самое.

LSTM

По сравнению с GRU, LSTM имеет еще один шлюз, а именно шлюз забывания, который делит шлюз обновления в GRU на входной шлюз и шлюз забывания. А выходная информация контролируется воротами вывода, которые эквивалентны воротам сброса в ГРУ.

  • входные ворота (фиг.\Gamma_{u}) : управление пропорцией текущего входа
  • ворота забыть (рис.\Gamma_{f}): контролирует пропорцию предыдущей ячейки
  • выходной затвор (рис.\Gamma_{o}) : пропорция управляющего выхода

Благодаря конструкции ворот мы можем изучать различные параметры в соответствии с различными задачами, чтобы контролировать соотношение текущей информации к информации в предыдущей ячейке, чтобы лучше выполнять задачи синхронизации, и в то же время он также может предотвратить рассеивание и взрыв градиентов (градиент).клипса может решить эту проблему).

Двунаправленный RNN

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

deep RNN

Глубокая RNN использует несколько слоев ячеек для извлечения признаков, что эквивалентно нескольким ядрам свертки, установленным в CNN. Таким образом, эффект извлечения признаков будет лучше.

Что касается механизма внимания, word2vec напишет его снова, когда будет время в следующем году. Желаю всем процветающего собачьего года, Вангвангван~