Conheça o YOLO26: IA de visão de próxima geração.
Ultralytics
Voltar para o Glossário da Ultralytics

Memory Bank

Aprende o que é um banco de memória em deep learning. Explora como os bancos de memória armazenam embeddings para aprendizagem contrastiva, seguimento de objetos e compreensão de vídeo.

Um memory bank é uma estrutura de dados usada em algoritmos de machine learning para armazenar e consultar informações de iterações anteriores ou amostras processadas, desacoplando efetivamente a capacidade de memória do modelo de suas restrições computacionais imediatas. No contexto de deep learning (DL), um memory bank geralmente serve como um repositório para embeddings ou vetores de características. Isso permite que um modelo compare a entrada atual com um vasto histórico de entradas anteriores sem precisar reprocessar ou manter todos esses dados na memória de acesso aleatório (RAM) ativa simultaneamente. Ao manter um buffer de representações, os modelos podem aprender a partir de um contexto mais amplo, melhorando o desempenho em tarefas que exigem consistência de longo prazo ou comparação com grandes datasets.

Link to this sectionA Mecânica de um Memory Bank#

A principal função de um memory bank é estender as informações disponíveis além do batch size atual. Durante o treinamento, à medida que os dados fluem pela rede neural, as representações de características resultantes são enviadas para o banco. Se o banco atingir sua capacidade máxima, as características mais antigas são geralmente removidas para liberar espaço para novas, um processo conhecido como fila First-In, First-Out (FIFO).

Este mecanismo é particularmente vital porque a memória da GPU é finita. Sem um memory bank, comparar uma única imagem com um milhão de outras exigiria um batch size impossível de caber no hardware padrão. Com um memory bank, o modelo pode armazenar vetores leves dessas um milhão de imagens e consultá-los eficientemente usando técnicas de similarity search, como produto escalar ou similaridade de cosseno.

Link to this sectionAplicações no Mundo Real#

Os memory banks tornaram-se uma pedra angular em vários fluxos de trabalho avançados de computer vision (CV) e processamento de linguagem natural:

  • Contrastive Learning (Self-Supervised Learning): Uma das aplicações mais famosas está no contrastive learning, especificamente em algoritmos como Momentum Contrast (MoCo). Aqui, o objetivo é ensinar o modelo a distinguir uma imagem específica de muitas amostras "negativas" (imagens diferentes). Um memory bank armazena milhares de representações de amostras negativas, permitindo que o modelo aprenda características robustas sem exigir training data rotulado. Para detalhes técnicos profundos, pesquisadores geralmente referenciam o artigo do MoCo que popularizou essa abordagem.
  • Long-Term Object Tracking: Em análise de vídeo, um objeto (como um carro ou uma pessoa) pode ser temporariamente obscurecido por um obstáculo. Rastreadores padrão podem perder a identidade (ID) do objeto durante essa oclusão. Rastreadores avançados usam um memory bank para armazenar as características visuais de objetos detectados no passado. Quando o objeto reaparece, o sistema consulta o banco para restabelecer o ID correto. Usuários que aproveitam o Ultralytics YOLO26 para object tracking se beneficiam de uma lógica interna semelhante que mantém a consistência de identidade entre frames.
  • Video Understanding: Para reconhecer ações que duram vários segundos ou minutos, os modelos precisam de contexto temporal. Um memory bank atua como um buffer para frames ou clipes passados, permitindo que a rede "lembre" o que aconteceu no início de um vídeo enquanto processa o final. Isso é crucial para um action recognition preciso.

Link to this sectionDistinguindo Conceitos Relacionados#

É útil diferenciar o memory bank de outros conceitos de armazenamento e processamento encontrados no glossário:

  • Memory Bank vs. Vector Database: Ambos armazenam embeddings para recuperação. No entanto, um memory bank é tipicamente uma estrutura transitória, em memória, usada dinamicamente durante o treinamento ou inferência ativa de uma única sessão de modelo. Um vector database (como aqueles usados em RAG) é uma solução de armazenamento persistente e escalável destinada a durar indefinidamente e servir a múltiplas aplicações.
  • Memory Bank vs. Context Window: Uma context window (comum em Transformers) define o comprimento máximo da sequência de entrada que o modelo processa de uma só vez (por exemplo, 32k tokens). Um memory bank é um buffer externo que armazena representações comprimidas fora da janela de processamento ativa, permitindo teoricamente uma profundidade de memória infinita, como visto em arquiteturas como o Transformer-XL.
  • Memory Bank vs. Batch Size: O batch size determina quantas amostras são processadas em paralelo para atualizações de gradiente. Um memory bank aumenta o número efetivo de amostras que o modelo pode "ver" para fins de comparação sem aumentar o custo computacional das passagens direta e reversa.

Link to this sectionExemplo de Código: Simulando um Feature Bank#

O seguinte trecho em Python demonstra o conceito de um memory bank First-In, First-Out (FIFO) usando torch. Esta estrutura é frequentemente usada para manter um histórico contínuo de vetores de características durante loops de treinamento personalizados ou tarefas complexas de inferência.

import torch

# Initialize a memory bank (Capacity: 100 features, Vector Dim: 128)
# In a real scenario, these would be embeddings from a model like YOLO26
memory_bank = torch.randn(100, 128)

# Simulate receiving a new batch of features (e.g., from the current image batch)
new_features = torch.randn(10, 128)

# Update the bank: Enqueue new features, Dequeue the oldest ones
# This maintains a fixed size while keeping the memory 'fresh'
memory_bank = torch.cat([memory_bank[10:], new_features], dim=0)

print(f"Updated Memory Bank Shape: {memory_bank.shape}")
# Output: Updated Memory Bank Shape: torch.Size([100, 128])

Link to this sectionDesafios e Considerações#

Embora poderosos, os memory banks introduzem o desafio do "desvio de representação" (representation drift). Como a rede codificadora muda ligeiramente a cada passo de treinamento, as características armazenadas no banco há 100 passos podem estar "obsoletas" ou inconsistentes com o estado atual do modelo. Técnicas como usar um codificador de momentum (uma média do modelo que se atualiza lentamente) ajudam a mitigar esse problema.

Para equipes que buscam gerenciar versões de datasets e artefatos de modelos que utilizam essas técnicas avançadas, a Ultralytics Platform fornece um hub centralizado para organizar dados, rastrear experimentos e implantar modelos de forma eficiente. Gerenciar a complexidade do armazenamento e recuperação de características é essencial para passar da artificial intelligence (AI) experimental para sistemas de produção robustos.

Explore solutions

Real-time AI that works with your team

IA em robótica

Potencialize máquinas mais inteligentes com modelos Ultralytics YOLO. A IA de visão em robótica impulsiona a navegação autônoma, percepção, rastreamento de objetos e controle em tempo real.

Sabe mais
Real-time AI that works with your team

IA na Logística

Otimize a logística com modelos Ultralytics YOLO. A IA de visão permite a inspeção de pacotes, triagem, rastreamento de veículos e monitoramento de segurança em armazéns em tempo real.

Sabe mais
Real-time AI that works with your team

IA no varejo

Reinvente o varejo com modelos Ultralytics YOLO. A IA de visão impulsiona o rastreamento de inventário, monitoramento de prateleiras, gerenciamento de filas e percepções mais inteligentes sobre o cliente.

Sabe mais
Real-time AI that works with your team

IA na Saúde

Constrói soluções de saúde com modelos Ultralytics YOLO. A visão AI na saúde impulsiona imagens médicas mais rápidas, diagnósticos mais inteligentes e monitorização do paciente.

Sabe mais
Real-time AI that works with your team

IA na Fabricação

Otimize a fabricação com modelos Ultralytics YOLO. A IA de visão impulsiona o controle de qualidade, detecção de defeitos, conformidade com EPI e automação de linhas de montagem.

Sabe mais
Real-time AI that works with your operation

IA no Setor Automóvel

Aplica visão computacional no setor automóvel com modelos Ultralytics YOLO. A visão AI eleva a segurança rodoviária, a assistência ao condutor e a automação de veículos para estradas mais inteligentes.

Sabe mais
Real-time AI tailored to your operation

IA na Agricultura

Leva a visão AI para a agricultura inteligente com os modelos Ultralytics YOLO. Potencia a monitorização de culturas, o seguimento de gado e a agricultura de precisão para colheitas maiores e mais inteligentes.

Sabe mais
Real-time AI that works with your team

IA em robótica

Potencialize máquinas mais inteligentes com modelos Ultralytics YOLO. A IA de visão em robótica impulsiona a navegação autônoma, percepção, rastreamento de objetos e controle em tempo real.

Sabe mais
Real-time AI that works with your team

IA na Logística

Otimize a logística com modelos Ultralytics YOLO. A IA de visão permite a inspeção de pacotes, triagem, rastreamento de veículos e monitoramento de segurança em armazéns em tempo real.

Sabe mais
Real-time AI that works with your team

IA no varejo

Reinvente o varejo com modelos Ultralytics YOLO. A IA de visão impulsiona o rastreamento de inventário, monitoramento de prateleiras, gerenciamento de filas e percepções mais inteligentes sobre o cliente.

Sabe mais
Real-time AI that works with your team

IA na Saúde

Constrói soluções de saúde com modelos Ultralytics YOLO. A visão AI na saúde impulsiona imagens médicas mais rápidas, diagnósticos mais inteligentes e monitorização do paciente.

Sabe mais
Real-time AI that works with your team

IA na Fabricação

Otimize a fabricação com modelos Ultralytics YOLO. A IA de visão impulsiona o controle de qualidade, detecção de defeitos, conformidade com EPI e automação de linhas de montagem.

Sabe mais
Real-time AI that works with your operation

IA no Setor Automóvel

Aplica visão computacional no setor automóvel com modelos Ultralytics YOLO. A visão AI eleva a segurança rodoviária, a assistência ao condutor e a automação de veículos para estradas mais inteligentes.

Sabe mais
Real-time AI tailored to your operation

IA na Agricultura

Leva a visão AI para a agricultura inteligente com os modelos Ultralytics YOLO. Potencia a monitorização de culturas, o seguimento de gado e a agricultura de precisão para colheitas maiores e mais inteligentes.

Sabe mais
Real-time AI that works with your team

IA em robótica

Potencialize máquinas mais inteligentes com modelos Ultralytics YOLO. A IA de visão em robótica impulsiona a navegação autônoma, percepção, rastreamento de objetos e controle em tempo real.

Sabe mais
Real-time AI that works with your team

IA na Logística

Otimize a logística com modelos Ultralytics YOLO. A IA de visão permite a inspeção de pacotes, triagem, rastreamento de veículos e monitoramento de segurança em armazéns em tempo real.

Sabe mais
Real-time AI that works with your team

IA no varejo

Reinvente o varejo com modelos Ultralytics YOLO. A IA de visão impulsiona o rastreamento de inventário, monitoramento de prateleiras, gerenciamento de filas e percepções mais inteligentes sobre o cliente.

Sabe mais
Real-time AI that works with your team

IA na Saúde

Constrói soluções de saúde com modelos Ultralytics YOLO. A visão AI na saúde impulsiona imagens médicas mais rápidas, diagnósticos mais inteligentes e monitorização do paciente.

Sabe mais
Real-time AI that works with your team

IA na Fabricação

Otimize a fabricação com modelos Ultralytics YOLO. A IA de visão impulsiona o controle de qualidade, detecção de defeitos, conformidade com EPI e automação de linhas de montagem.

Sabe mais
Real-time AI that works with your operation

IA no Setor Automóvel

Aplica visão computacional no setor automóvel com modelos Ultralytics YOLO. A visão AI eleva a segurança rodoviária, a assistência ao condutor e a automação de veículos para estradas mais inteligentes.

Sabe mais
Real-time AI tailored to your operation

IA na Agricultura

Leva a visão AI para a agricultura inteligente com os modelos Ultralytics YOLO. Potencia a monitorização de culturas, o seguimento de gado e a agricultura de precisão para colheitas maiores e mais inteligentes.

Sabe mais

Vamos construir o futuro da IA juntos!

Começa a tua jornada com o futuro da aprendizagem automática