Memória autoassociativa, também conhecida como memória de autoassociação ou rede de autoassociação, é qualquer tipo de memória que pode recuperar um dado a partir de apenas uma pequena amostra de si mesmo. Essa capacidade a torna eficaz para remover ruídos de entradas, eliminar interferências e determinar se uma entrada dada é "conhecida" ou "desconhecida" com base em padrões armazenados. Em redes neurais artificiais, exemplos incluem autoencoders variacionais, autoencoders de remoção de ruído e redes de Hopfield. Em sistemas de memória de computador, o conceito também é referido como memória endereçável por conteúdo (CAM). Diz-se que a rede reconhece um vetor "conhecido" se produz um padrão de ativação de saída idêntico a um dos vetores armazenados.
Histórico
O armazenamento padrão de dados é indexado por endereços de memória posicionais, que são usados para recuperação. Memórias autoassociativas, em contraste, são organizadas em uma estrutura semelhante a um grafo, onde os pesos das conexões refletem as conexões associativas inerentes entre memórias. Isso permite consultas usando um fragmento de memória como chave, recuperando essa memória e aquelas intimamente conectadas simultaneamente. Redes de Hopfield demonstraram atuar como memória autoassociativa porque podem lembrar dados observando uma parte deles.
Redes Autoassociativas Iterativas
Em alguns casos, uma rede autoassociativa não reproduz um padrão armazenado na primeira tentativa, mas se a saída for realimentada como entrada, o padrão armazenado emerge. Existem três tipos adicionais: o autoassociador linear recorrente, a rede Brain-State-in-a-Box e a rede de Hopfield discreta. A rede de Hopfield é o exemplo mais conhecido de memória autoassociativa.
Rede de Hopfield
Redes de Hopfield servem como sistemas de memória endereçável por conteúdo (associativa) com nós de limiar binário. Elas demonstraram atuar como memórias autoassociativas porque podem recordar padrões completos a partir de entrada parcial. A dinâmica da rede converge para atratores armazenados, permitindo conclusão de padrões e remoção de ruído.
Memória Heteroassociativa
Memórias heteroassociativas, por contraste, recordam um dado associado de uma categoria ao apresentar dados de outra categoria. Por exemplo, o padrão "banana" pode desencadear a recordação do padrão diferente "macaco". Memórias associativas bidirecionais (BAM) são redes neurais artificiais usadas há muito tempo para recordação heteroassociativa.
Exemplo
Os fragmentos de frase abaixo são suficientes para a maioria dos adultos falantes de inglês recordar a informação ausente:
- "Ser ou não ser, eis _____."
- "Vim, vi, _____."
Muitos leitores perceberão que a informação ausente é:
- "Ser ou não ser, eis a questão."
- "Vim, vi, venci."
Isso demonstra a capacidade das redes autoassociativas de recordar o todo a partir de algumas de suas partes.
Aplicações
Memórias autoassociativas são amplamente usadas em Machine learning para tarefas como remoção de ruído de imagens, compressão de dados e detecção de anomalias. Arquiteturas de Deep learning como redes neurais incorporam princípios autoassociativos em modelos generativos e modelos de linguagem de grande escala para conclusão de contexto. Em hardware, a memória endereçável por conteúdo é implementada em processadores AMD e Intel para operações de busca de alta velocidade.
Conceitos Relacionados
A memória autoassociativa está intimamente relacionada à memória associativa e à memória endereçável por conteúdo. Em inteligência artificial, ela sustenta técnicas como autoencoders de remoção de ruído e redes de Hopfield. O conceito também se conecta à memória heteroassociativa e à memória associativa bidirecional.