Изучите сети с длинной краткосрочной памятью (LSTM). Узнайте, как LSTM решают проблему исчезающего градиента в RNN для задач анализа временных рядов, NLP и видео.
Long Short-Term Memory (LSTM) — это специализированный тип архитектуры рекуррентных нейронных сетей (RNN), способный обучаться зависимости порядка в задачах прогнозирования последовательностей. В отличие от стандартных нейронных сетей с прямой передачей , LSTM имеют обратные связи, которые позволяют им обрабатывать не только отдельные точки данных (например, изображения), но и целые последовательности данных (например, речь или видео). Эта способность делает их уникально подходящими для задач, в которых контекст из предыдущих входных данных имеет решающее значение для понимания текущих данных, устраняя ограничения «кратковременной памяти» традиционных RNN.
Чтобы понять инновационность LSTM, полезно рассмотреть проблемы, с которыми сталкиваются базовые рекуррентные нейронные сети. Хотя RNN предназначены для обработки последовательной информации, они испытывают трудности с длинными последовательностями данных из-за проблемы исчезающего градиента. По мере того как сеть проходит обратную пропагацию во времени, градиенты — значения, используемые для обновления весов сети — могут становиться экспоненциально меньше, что фактически мешает сети обучаться связям между удаленными событиями. Это означает, что стандартная RNN может запомнить слово из предыдущего предложения, но забыть контекст, установленный тремя абзацами ранее. LSTM были специально разработаны для решения этой проблемы путем внедрения более сложной внутренней структуры, которая может поддерживать контекстное окно в течение гораздо более длительных периодов времени.
Основной концепцией LSTM является состояние ячейки, которое часто описывают как конвейерную ленту, проходящую через всю цепочку сети. Это состояние позволяет информации проходить по ней без изменений, сохраняя долгосрочные зависимости. Сеть принимает решения о том, что хранить, обновлять или удалять из этого состояния ячейки, используя структуры, называемые воротами.
Регулируя этот поток информации, LSTM могут преодолевать временные задержки более чем в 1000 шагов, значительно превосходя обычные RNN в задачах, требующих анализа временных рядов.
LSTM стали основой многих важных прорывов в области глубокого обучения за последнее десятилетие. Вот два ярких примера их применения:
В современном компьютерном зрении LSTM часто используются вместе с мощными экстракторами признаков. Например, можно использовать YOLO для detect в отдельных кадрах и LSTM для track траекторий или прогнозирования будущего движения.
Вот концептуальный пример использования torch определить простую LSTM, которая могла бы обрабатывать последовательность векторов признаков,
извлеченных из видеопотока:
import torch
import torch.nn as nn
# Define an LSTM model for processing sequential video features
# Input size: 512 (e.g., features from a CNN), Hidden size: 128
lstm_model = nn.LSTM(input_size=512, hidden_size=128, num_layers=2, batch_first=True)
# Simulate a batch of video sequences: 8 videos, 10 frames each, 512 features per frame
video_features = torch.randn(8, 10, 512)
# Pass the sequence through the LSTM
output, (hidden_state, cell_state) = lstm_model(video_features)
print(f"Output shape: {output.shape}") # Shape: [8, 10, 128]
print("LSTM successfully processed the temporal sequence.")
Полезно отличать LSTM от других архитектур обработки последовательностей:
В то время как механизм внимания занял центральное место в генеративном ИИ, LSTM по-прежнему остаются надежным выбором для более легких приложений, особенно в пограничных средах ИИ, где вычислительные ресурсы ограничены. Исследователи продолжают изучать гибридные архитектуры, которые сочетают в себе эффективность памяти LSTM с представительной мощью современных систем обнаружения объектов.
Для тех, кто хочет управлять наборами данных для обучения последовательных моделей или выполнения сложных задач машинного зрения, Ultralytics предлагает комплексные инструменты для аннотирования и управления наборами данных. Кроме того, понимание принципа работы LSTM обеспечивает прочную основу для освоения более сложных временных моделей, используемых в автономных транспортных средствах и робототехнике.