Episodic Memory
La mémoire épisodique en IA stocke des expériences passées précises d’un agent avec leur contexte, puis les récupère ultérieurement, qu’il s’agisse du rejeu en apprentissage par renforcement ou de la mémoire d’un agent LLM.
La mémoire épisodique en intelligence artificielle est un stockage des expériences passées propres à un agent, chacune conservée avec son contexte — ce qui s’est passé, où et quand — et consultée plus tard par l’agent pour éclairer une décision actuelle. Le terme vient de la psychologie, où Endel Tulving a distingué en 1972 la mémoire épisodique, le souvenir d’événements personnels, de la mémoire sémantique, les connaissances générales sur les faits. En IA, la mémoire épisodique prend la forme d’un stockage externe dans lequel un agent écrit pendant son exécution : les agents d’apprentissage par renforcement conservent les transitions et les retours passés, les agents IA fondés sur des modèles de langage gardent des traces des conversations et actions précédentes, et les robots et assistants portables enregistrent ce que leurs caméras ont vu.
Mémoire épisodique, sémantique et procédurale#
Un réseau de neurones entraîné stocke des connaissances générales dans ses poids de modèle, qui ne changent que pendant l’entraînement ; se souvenir d’un événement précis de la veille nécessite donc un stockage distinct, modifiable à l’exécution. Le cadre Cognitive Architectures for Language Agents (CoALA), proposé par Theodore Sumers, Shunyu Yao, Karthik Narasimhan et Thomas Griffiths en 2023, applique les catégories psychologiques aux agents fondés sur des grands modèles de langage (LLM). La mémoire de travail correspond à l’invite actuelle, la mémoire épisodique contient les expériences passées de l’agent, la mémoire sémantique contient des faits sur le monde et la mémoire procédurale contient des compétences sous la forme de poids de modèle et de code d’agent.
Un agent doté d’une mémoire épisodique la consulte et l’alimente à chaque étape :
Mémoire épisodique en apprentissage par renforcement#
La relecture d’expérience, introduite par Long-Ji Lin en 1992, est le stockage épisodique le plus simple : l’agent enregistre ses transitions et s’entraîne sur des échantillons aléatoires de celles-ci ; l’agent DQN qui a appris à jouer aux jeux Atari en 2015 conservait ses 1 million de transitions les plus récentes. Le contrôle épisodique utilise le stockage pour agir directement. Model-Free Episodic Control, conçu par Charles Blundell et ses collègues de DeepMind en 2016, enregistrait le meilleur retour obtenu après chaque état et action, et estimait la valeur de nouveaux états à partir de leurs plus proches voisins en mémoire ; il apprenait ainsi plus vite que DQN au début de l’entraînement. L’agent Never Give Up de DeepMind (2020) se récompense lorsqu’il atteint des états éloignés de tous ceux stockés dans la mémoire de l’épisode en cours ; cette prime d’exploration a aidé son successeur, Agent57, à devenir le premier agent d’apprentissage profond par renforcement à dépasser le niveau humain de référence dans les 57 jeux Atari.
Mémoire épisodique dans les agents LLM#
Un modèle de langage ne se souvient que de ce qui tient dans sa fenêtre de contexte ; les agents de longue durée enregistrent donc leurs expériences dans un stockage externe et récupèrent les éléments pertinents dans l’invite. Dans Generative Agents, présenté à UIST 2023, Joon Sung Park et ses collègues de Stanford et Google ont doté 25 personnages simulés d’un flux de mémoire composé d’observations en langage naturel. Chaque souvenir est évalué selon sa récence — une décroissance exponentielle avec un facteur de 0,995 par heure de jeu depuis sa dernière récupération —, son importance — un entier de 1 à 10 attribué par le modèle de langage — et sa pertinence — la similarité cosinus entre l’incorporation vectorielle du souvenir et celle de la requête. Les trois scores sont normalisés par min-max puis additionnés avec des pondérations égales.
Cet exemple applique ce calcul aux souvenirs d’un robot domestique, avec le modèle d’incorporation de phrases all-MiniLM-L6-v2 :
import numpy as np
from sentence_transformers import SentenceTransformer
# Episodic memories of a home robot: what happened, hours since last recalled, importance from 1 to 10
memories = [
("Saw the car keys on the kitchen counter", 30, 5),
("Charged the battery at the docking station", 2, 2),
("Watered the plants in the living room", 5, 3),
("Saw the car keys in the coat pocket in the hallway", 4, 5),
("The user said the back door sticks when it rains", 50, 8),
]
texts, hours, importance = zip(*memories)
model = SentenceTransformer("all-MiniLM-L6-v2")
query = model.encode("Where are my car keys?", normalize_embeddings=True)
relevance = model.encode(list(texts), normalize_embeddings=True) @ query # cosine similarity to the query
recency = 0.995 ** np.array(hours) # exponential decay per hour
# Generative Agents retrieval: min-max normalize each signal to 0-1, then add them with equal weights
signals = [recency, np.array(importance, dtype=float), relevance]
score = sum((s - s.min()) / (s.max() - s.min()) for s in signals)
for i in np.argsort(-score)[:3]:
print(f"score {score[i]:.2f}, relevance {relevance[i]:.2f}: {texts[i]}")L’observation dans le couloir arrive en tête avec un score de 2,44, devant celle du comptoir de la cuisine, à 1,89, même si le souvenir plus ancien correspond légèrement mieux à la question (0,71 contre 0,70). La récence départage les deux résultats ; le robot indique donc l’endroit où il a vu les clés le plus récemment. Reflexion, conçu par Noah Shinn et ses collègues en 2023, stocke dans un tampon épisodique les réflexions que l’agent rédige sur ses tentatives infructueuses et a atteint 91 % de réussite pass@1 sur le benchmark de programmation HumanEval, contre 80 % pour GPT-4.
Mémoire épisodique dans les agents vidéo et incarnés#
Pour l’IA incarnée et les caméras portables, la mémoire épisodique consiste à répondre à des questions sur ce qu’une caméra a vu auparavant. Le jeu de données Ego4D, publié par Meta et des universités partenaires en 2021 et constitué de 3 670 heures de vidéos à la première personne tournées par 931 porteurs de caméras dans 74 lieux répartis sur 9 pays, comprend un benchmark de mémoire épisodique articulé autour de questions comme « Où ai-je mis mes clés ? ». Ses tâches consistent à localiser le moment de la vidéo qui répond à une question en langage naturel, à trouver la dernière apparition d’un objet présenté dans une image de référence et à trouver chaque occurrence d’une activité. Dans le package Ultralytics, VisualAISearch calcule l’incorporation de chaque image d’un dossier avec CLIP et classe les images selon leur similarité cosinus avec une requête textuelle ; il s’agit de l’étape de pertinence d’une telle mémoire pour les images enregistrées par la caméra d’un robot.
Mémoire épisodique et termes apparentés#
- Banque de mémoire : Stocke des vecteurs utilisés par les calculs d’un modèle, comme des exemples négatifs contrastifs, des images vidéo passées ou des segments d’image normaux. La mémoire épisodique stocke les expériences d’un agent pour guider ses décisions.
- Génération augmentée par récupération (RAG) : Récupère des passages de documents externes pour étayer les réponses d’un modèle. La mémoire épisodique applique le même mécanisme de récupération à l’historique propre de l’agent.
- Base de données vectorielle : Couche de stockage et de recherche par similarité qui héberge souvent les souvenirs épisodiques des agents en production.
- Apprentissage continu : Apprend de nouvelles tâches sans oublier de façon catastrophique les anciennes, souvent en rejouant des exemples stockés. Gradient Episodic Memory (GEM), conçu par David Lopez-Paz et Marc’Aurelio Ranzato en 2017, conserve un petit ensemble d’exemples de chaque tâche antérieure et contraint chaque mise à jour de sorte que la perte sur ces exemples n’augmente pas.










