World Models : Architectures et Simulation du Réel
Architecture V-M-C fondamentale
Modèles du Monde : Apprendre à Rêver
En 2018, les chercheurs David Ha et Jürgen Schmidhuber ont publié un article qui a changé notre perception de l'apprentissage des IA. Leur idée était simple en apparence, mais profonde : et si un agent pouvait apprendre un modèle interne de son monde, puis utiliser ce modèle pour s'entraîner entièrement dans un "rêve" généré ?
Cette approche, nommée "World Models" (Modèles du Monde), s'articule autour d'une architecture élégante en trois parties : Vision (V), Mémoire (M), et Contrôleur (C).
L'ensemble du système apprend en deux phases distinctes. D'abord, il observe l'environnement pour construire son modèle interne. Ensuite, il utilise ce modèle pour apprendre une stratégie, un peu comme un athlète visualise une course avant de la courir.
La Vision : Compresser la Réalité
La première étape est de voir. Mais les observations brutes, comme les pixels d'un écran, sont trop complexes et redondantes. Le composant Vision (V) utilise un (VAE) pour résoudre ce problème. Son rôle est de compresser chaque image de l'environnement en un petit ensemble de nombres : un vecteur dans un "espace latent" que nous appelons .
Le vecteur ne capture que l'information essentielle : la position des objets, leur vitesse, etc. Tout le bruit visuel est écarté.
La Mémoire : Prédire l'Avenir
Une fois que le monde est représenté par une série de vecteurs , le composant Mémoire (M) entre en jeu. Son travail est d'être le "moteur physique" du monde rêvé. C'est un Réseau de Neurones Récurrent (RNN) qui apprend les dynamiques temporelles de l'environnement.
Concrètement, il prend le vecteur latent actuel et l'action que l'agent a choisie , puis il prédit le prochain vecteur latent . Pour gérer le fait que le monde peut être imprévisible, le modèle utilise une couche (Mixture Density Network), lui permettant de prédire une distribution de probabilités des futurs possibles, plutôt qu'un seul futur déterministe.
Avec le VAE et le RNN entraînés, l'agent possède désormais un simulateur complet et rapide de son monde. Il peut générer des séquences d'événements futurs sans jamais avoir besoin de consulter à nouveau l'environnement réel, qui est souvent lent à simuler.
Le Contrôleur et l'Entraînement par Imagination
La dernière pièce du puzzle est le Contrôleur (C). C'est la partie qui prend les décisions. Ha et Schmidhuber ont fait un choix surprenant : ils ont utilisé un contrôleur extrêmement simple, une petite fonction linéaire. Pourquoi ? Pour prouver que si le modèle du monde (V et M) est assez bon, la prise de décision n'a pas besoin d'être complexe.
La fonction du contrôleur est de prendre l'état actuel du monde rêvé (le vecteur et l'état caché du RNN ) et de produire une action .
C'est ici que la magie opère. L'agent n'interagit plus avec l'environnement réel. À la place, il "rêve". Le RNN génère un état futur, le contrôleur choisit une action, le RNN génère l'état suivant, et ainsi de suite. Des milliers de trajectoires sont simulées en un clin d'œil à l'intérieur de ce monde appris.
L'objectif du contrôleur est d'apprendre une politique qui maximise la récompense totale attendue au cours de ces épisodes imaginés. Parce que cette simulation interne est rapide et entièrement différentiable, des algorithmes d'optimisation efficaces peuvent être utilisés pour trouver rapidement une bonne stratégie.
Le transfert du rêve à la réalité (Sim-to-Real) est remarquablement efficace. Une fois que le contrôleur a trouvé une bonne stratégie dans le monde rêvé, il est déployé dans l'environnement réel. Dans de nombreux cas, la politique apprise dans l'imagination fonctionne étonnamment bien dans la réalité.
Quelle est l'architecture en trois parties de l'approche "World Models" décrite par Ha et Schmidhuber ?
Quel est le rôle principal du composant Vision (V) dans l'architecture "World Models" ?
Ce découplage entre la perception/prédiction et le contrôle est la clé de voûte des Modèles du Monde. Il permet à un agent d'apprendre un modèle complexe et riche de son environnement, puis de l'exploiter efficacement pour apprendre des comportements complexes avec un contrôleur étonnamment simple.