Рекуррентная нейронная сеть с долгой краткосрочной памятью
Рекуррентная нейронная сеть с долгой краткосрочной памятью (англ. Long Short-Term Memory, LSTM) — разновидность архитектуры рекуррентных нейронных сетей (РНС), способная обучаться долгосрочным зависимостям в последовательных данных. Разработана для преодоления проблемы исчезающего градиента, характерной для классических РНС, что позволяет LSTM эффективно обрабатывать последовательности с промежутками между значимыми событиями длиной до нескольких сотен временных шагов.
История
LSTM была предложена в 1997 году немецкими исследователями Зеппом Хохрайтером (Sepp Hochreiter) и Юргеном Шмидхубером (Jürgen Schmidhuber) в статье «Long Short-Term Memory», опубликованной в журнале Neural Computation. Изначально архитектура не модернизировалась до 2000-х годов, когда исследователи предложили её улучшения, включая добавление «дверцы забывания» (forget gate) Феликсом Гёрсом (Felix Gers) и его коллегами. В 2007 году Алекс Грейвс (Alex Graves) и другие адаптировали LSTM для задач распознавания речи, что привело к широкому внедрению технологии в промышленности.
Архитектура и принцип работы
Основное отличие LSTM от стандартной РНС — наличие ячейки памяти (cell state), которая может хранить информацию на протяжении длительных периодов, и трёх типов управляющих вентилей (gates), регулирующих поток информации:
- Входной вентиль (input gate) — определяет, какая часть новой информации будет сохранена в ячейке памяти.
- Вентиль забывания (forget gate) — решает, какую часть старой информации из ячейки памяти следует удалить.
- Выходной вентиль (output gate) — управляет тем, какая часть информации из ячейки будет передана в выходной слой или следующую ячейку сети.
Эти вентили реализованы с помощью сигмоидных функций активации, значения которых лежат в диапазоне от 0 до 1, где 0 означает «полностью блокировать», а 1 — «полностью пропустить». Это позволяет сети избирательно запоминать или забывать информацию в зависимости от текущего контекста, что решает проблему исчезающего градиента.
Сравнение со стандартной РНС
Стандартная рекуррентная нейронная сеть имеет скрытое состояние (hidden state), которое пересчитывается на каждом шаге; при обратном распространении ошибки во времени градиенты могут экспоненциально убывать (исчезать) или нарастать, что делает обучение на длинных последовательностях нестабильным. LSTM благодаря вентилям и отдельной ячейке памяти обеспечивает стабильный поток градиентов через линейные преобразования, что позволяет обучаться на последовательностях длиной до тысяч шагов.
Классификация и модификации
Существует несколько вариантов архитектур LSTM, разработанных для различных целей:
- Стандартная LSTM — базовая версия с тремя вентилями, описанная выше.
- LSTM с пиковым откликом (Peephole LSTM) — добавляет связи от ячейки памяти к вентилям, что улучшает учёт её состояния.
- Свёрточная LSTM (ConvLSTM) — заменяет матричные умножения на свёртки, что делает её применимой для пространственно-временных данных (например, прогнозирование погоды).
- Групповая рекуррентная единица (GRU) — упрощенная версия LSTM с двумя вентилями (обновления и сброса), предложенная в 2014 году, разработанная для ускорения вычислений при незначительной потере производительности.
Кроме того, LSTM часто применяется в сочетании с другими архитектурами, например, в модели Encoder-Decoder LSTM для машинного перевода или в двунаправленной LSTM (BiLSTM), где обрабатываются последовательности в прямом и обратном порядке для учета контекста с обеих сторон.
Применение
LSTM получила широкое распространение в задачах, связанных с анализом последовательных данных, включая:
- Обработка естественного языка (NLP): машинный перевод, генерация текста, анализ тональности, распознавание именованных сущностей. Например, система Google Translate до внедрения трансформеров (около 2017 года) использовала LSTM-архитектуру.
- Распознавание речи: модели LSTM применялись в системах ASR (автоматического распознавания речи), таких как ранние версии Alexa от Amazon (организация признана иноагентом в РФ) и Siri от Apple, для преобразования аудиосигналов в текст.
- Прогнозирование временных рядов: финансовые рынки, прогнозирование потребления электроэнергии, спроса на товары. В энергетике LSTM используется для предсказания нагрузки на сети солнечных и ветряных электростанций.
- Медицина: анализ последовательностей ДНК, прогнозирование развития заболеваний по данным мониторинга (например, по кардиограммам или уровням глюкозы).
- Автономные системы: обработка последовательностей данных в робототехнике и управлении летательными аппаратами (квадрокоптерами) для предсказания траекторий.
Преимущества и недостатки
Преимущества
- Обработка долгосрочных зависимостей: способность учитывать информацию из далёкого прошлого в последовательностях.
- Устойчивость к исчезающим градиентам: облегчает обучение глубоких рекуррентных сетей.
- Гибкость: применима к различным типам данных (текст, звук, временные ряды) и легко комбинируется с другими архитектурами.
Недостатки
- Высокая вычислительная сложность: из-за большого числа параметров (например, для одной ячейки LSTM требуется в четыре раза больше параметров, чем для стандартной РНС) обучение требует значительных ресурсов (GPU или TPU).
- Трудности с распараллеливанием: последовательная природа обработки данных делает обучение на батчах менее эффективным, чем у архитектур на основе внимания (трансформеры).
- Чувствительность к гиперпараметрам: настройка числа ячеек, скорости обучения, коэффициентов регуляризации может требовать экспериментов и опыта.
Современное состояние
С 2017 года архитектуры на основе механизма внимания (например, трансформеры) начали превосходить LSTM в задачах обработки естественного языка, таких как машинный перевод и генерация текста. Однако LSTM по-прежнему сохраняет позиции в задачах с последовательными данными, где важен учёт порядка и локальные зависимости, особенно при ограниченных вычислительных ресурсах (например, в мобильных устройствах или встраиваемых системах). В 2020-х годах исследователи предложили гибридные подходы, сочетающие LSTM с трансформерами (например, модели LSTM-Transformer), что позволяет объединить преимущества обеих архитектур. Кроме того, LSTM активно применяется в задачах робототехники и обработки сигналов, где трансформеры не всегда показывают лучшую производительность из-за высоких требований к размеру обучающих данных.
Источники
- Hochreiter, S., & Schmidhuber, J. (1997). Long Short-Term Memory. Neural Computation, 9(8), 1735–1780.
- Gers, F. A., Schmidhuber, J., & Cummins, F. (2000). Learning to Forget: Continual Prediction with LSTM. Neural Computation, 12(10), 2451–2471.
- Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep Learning. MIT Press. Глава 10.
- Graves, A., Mohamed, A.-R., & Hinton, G. (2013). Speech recognition with deep recurrent neural networks. IEEE International Conference on Acoustics, Speech and Signal Processing.
- Документация TensorFlow и PyTorch по модулям LSTM (версии 2023–2024 гг.).
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →