Yolo Vision Shenzhen
Shenzhen
Junte-se agora
Glossário

Memória de Longo Prazo (LSTM)

Explore as redes de memória de longo prazo (LSTM). Saiba como as LSTMs resolvem o problema do gradiente desaparecido nas RNNs para tarefas de séries temporais, NLP e análise de vídeo.

A Memória de Curto Prazo Longa (LSTM) é um tipo especializado de arquitetura de rede neural recorrente (RNN) capaz de aprender a dependência de ordem em problemas de previsão de sequências. Ao contrário das redes neurais feedforward padrão, as LSTMs têm conexões de feedback que lhes permitem processar não apenas pontos de dados únicos (como imagens), mas sequências inteiras de dados (como fala ou vídeo). Essa capacidade torna-as especialmente adequadas para tarefas em que o contexto de entradas anteriores é crucial para a compreensão dos dados atuais, resolvendo as limitações de "memória de curto prazo" das RNNs tradicionais.

O problema com as RNNs padrão

Para compreender a inovação das LSTMs, é útil analisar os desafios enfrentados pelas redes neurais recorrentes básicas. Embora as RNNs sejam projetadas para lidar com informações sequenciais, elas têm dificuldade com sequências longas de dados devido ao problema do gradiente desaparecido. À medida que a rede se retropropaga ao longo do tempo, os gradientes — valores usados para atualizar os pesos da rede — podem tornar-se exponencialmente menores, impedindo efetivamente a rede de aprender conexões entre eventos distantes. Isso significa que uma RNN padrão pode lembrar-se de uma palavra da frase anterior, mas esquecer o contexto estabelecido três parágrafos antes. As LSTMs foram explicitamente projetadas para resolver essa questão, introduzindo uma estrutura interna mais complexa que pode manter uma janela de contexto por períodos muito mais longos.

Como as LSTMs Funcionam

O conceito central por trás de um LSTM é o estado da célula, frequentemente descrito como uma correia transportadora que percorre toda a cadeia da rede. Esse estado permite que as informações fluam ao longo dela sem alterações, preservando as dependências de longo prazo. A rede toma decisões sobre o que armazenar, atualizar ou descartar desse estado da célula usando estruturas chamadas portas.

  • Forget Gate: Este mecanismo decide quais informações não são mais relevantes e devem ser removidas do estado da célula. Por exemplo, se um modelo de linguagem encontra um novo assunto, ele pode "esquecer" o género do assunto anterior.
  • Porta de entrada: Esta porta determina quais novas informações são significativas o suficiente para serem armazenadas no estado da célula.
  • Porta de saída: Por fim, esta porta controla quais partes do estado interno devem ser enviadas para o próximo estado oculto e usadas para a previsão imediata.

Ao regular esse fluxo de informações, as LSTMs podem preencher lacunas temporais de mais de 1.000 passos, superando em muito as RNNs convencionais em tarefas que exigem análise de séries temporais.

Aplicações no Mundo Real

As LSTMs impulsionaram muitos dos principais avanços na aprendizagem profunda na última década. Aqui estão dois exemplos proeminentes da sua aplicação:

  • Modelagem sequência a sequência na tradução: LSTMs são fundamentais para sistemas de tradução automática. Nesta arquitetura, um LSTM (o codificador) processa uma frase de entrada em um idioma (por exemplo, English) e a comprime em um vetor de contexto. Um segundo LSTM (o descodificador) usa então esse vetor para gerar a tradução em outro idioma (por exemplo, francês). Essa capacidade de lidar com sequências de entrada e saída de diferentes comprimentos é fundamental para o processamento de linguagem natural (NLP).
  • Análise de vídeoe reconhecimento de atividades: Embora as redes neurais convolucionais (CNNs), como a ResNet-50 , sejam excelentes na identificação de objetos em imagens estáticas, elas não têm noção do tempo. Ao combinar CNNs com LSTMs, os sistemas de IA podem realizar o reconhecimento de ações em fluxos de vídeo . A CNN extrai características de cada fotograma e a LSTM analisa a sequência dessas características para determinar se uma pessoa está a caminhar, a correr ou a cair.

Integrando LSTMs com visão computacional

Na visão computacional moderna, as LSTMs são frequentemente utilizadas em conjunto com poderosos extratores de características. Por exemplo, pode-se utilizar um YOLO para detect em quadros individuais e uma LSTM para track trajetórias ou prever movimentos futuros.

Aqui está um exemplo conceitual usando torch para definir um LSTM simples que pudesse processar uma sequência de vetores de características extraídos de um fluxo de vídeo:

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.")

Conceitos Relacionados e Distinções

É útil distinguir as LSTMs de outras arquiteturas de processamento de sequências:

  • LSTM vs. GRU: A Unidade Recorrente com Porta (GRU) é uma variação simplificada da LSTM. As GRUs combinam as portas de esquecimento e entrada numa única «porta de atualização» e fundem o estado da célula e o estado oculto. Isso torna as GRUs computacionalmente mais eficientes e rápidas de treinar, embora as LSTMs ainda possam superá-las em conjuntos de dados maiores e mais complexos.
  • LSTM vs. Transformadores: A arquitetura do transformador, que se baseia em mecanismos de autoatenção em vez de recorrência, substituiu amplamente os LSTMs em tarefas de PLN, como as realizadas pelo GPT-4. Os transformadores podem processar sequências inteiras em paralelo, em vez de sequencialmente, permitindo um treinamento muito mais rápido em conjuntos de dados massivos. No entanto, os LSTMs continuam relevantes em cenários com dados limitados ou restrições específicas de séries temporais, onde a sobrecarga dos mecanismos de atenção é desnecessária.

Evolução e futuro

Embora o mecanismo de atenção tenha assumido o papel principal na IA generativa, as LSTMs continuam a ser uma escolha robusta para aplicações mais leves, particularmente em ambientes de IA de ponta, onde os recursos computacionais são limitados. Os investigadores continuam a explorar arquiteturas híbridas que combinam a eficiência de memória das LSTMs com o poder de representação dos modernos sistemas de deteção de objetos.

Para aqueles que desejam gerenciar conjuntos de dados para treinar modelos de sequência ou tarefas complexas de visão, a Ultralytics oferece ferramentas abrangentes para anotação e gerenciamento de conjuntos de dados. Além disso, compreender como as LSTMs funcionam fornece uma base sólida para entender modelos temporais mais avançados usados em veículos autônomos e robótica.

Junte-se à comunidade Ultralytics

Junte-se ao futuro da IA. Conecte-se, colabore e cresça com inovadores globais

Junte-se agora