Глубокое обучение | Введение в долгосрочную краткосрочную память

Опубликовано: 25 Июля, 2021

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

Структура LSTM:

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

Информация сохраняется в клетках, а манипуляции с памятью производятся воротами. Есть три ворот -

  1. Забыть шлюз: информация, которая больше не используется в состоянии ячейки, удаляется с помощью шлюза забвения. Два входа x_t (вход в определенное время) и h_t-1 (выход предыдущей ячейки) подаются на вентиль и умножаются на весовые матрицы с последующим добавлением смещения. Полученный результат передается через функцию активации, которая дает двоичный выходной сигнал. Если для определенного состояния ячейки выход равен 0, часть информации забывается, а для выхода 1 информация сохраняется для будущего использования.
  2. Входной вентиль: Добавление полезной информации к состоянию ячейки выполняется входным вентилем. Во-первых, информация регулируется с помощью сигмоидной функции и фильтруется значения, которые нужно запомнить, аналогично вентилю забывания с использованием входов h_t-1 и x_t . Затем создается вектор с использованием функции tanh, которая дает результат от -1 до +1, который содержит все возможные значения из h_t-1 и x_t . Атласт, значения вектора и регулируемые значения умножаются для получения полезной информации.
  3. Выходной вентиль: задача извлечения полезной информации из текущего состояния ячейки, которая будет представлена как выход, выполняется выходным вентилем. Сначала создается вектор, применяя к ячейке функцию tanh. Затем информация регулируется с помощью сигмоидной функции и фильтрует значения, которые нужно запомнить, с использованием входов h_t-1 и x_t . Атласт, значения вектора и регулируемые значения умножаются для отправки в качестве вывода и ввода в следующую ячейку.

Некоторые из известных приложений LSTM включают:

  1. Языковое моделирование
  2. Машинный перевод
  3. Подписи к изображениям
  4. Генерация почерка
  5. Чат-боты с ответами на вопросы