Qu'est-ce que l'apprentissage par différence temporelle ?
La programmation dynamique et les méthodes de Monte Carlo présentent toutes deux des avantages notables ainsi que des inconvénients majeurs.
Programmation dynamique
La programmation dynamique permet de calculer efficacement la fonction de valeur d'état et d'en déduire une politique optimale. Elle utilise le bootstrapping — calcul de la valeur de l'état actuel à partir des valeurs des états futurs — pour atteindre cet objectif.
Bien que l'idée du bootstrapping soit puissante, la programmation dynamique présente deux inconvénients majeurs :
- Nécessité d'un modèle complet et explicite de l'environnement ;
- Calcul des valeurs d'état pour chaque état, même si l'état est très éloigné du chemin optimal.
Méthodes de Monte Carlo
Les méthodes de Monte Carlo corrigent les deux inconvénients de la programmation dynamique :
- Elles ne nécessitent pas de modèle, car elles apprennent à partir de l'expérience ;
- Leur mode d'apprentissage limite l'exploration, de sorte que les états non importants sont rarement visités.
Cependant, elles introduisent un nouvel inconvénient — le processus d'apprentissage n'a lieu qu'après la conclusion de l'épisode. Cela limite l'applicabilité des méthodes de Monte Carlo à des tâches épisodiques de petite taille, car les tâches plus grandes nécessiteraient un nombre d'actions extrêmement élevé avant la fin de l'épisode.
Apprentissage par différence temporelle
L'apprentissage par différence temporelle (TD) résulte de la combinaison des idées issues à la fois de la programmation dynamique et des méthodes de Monte Carlo. Il adopte l'apprentissage par l'expérience des méthodes de Monte Carlo et le combine avec le bootstrap de la programmation dynamique.
En conséquence, l'apprentissage TD corrige les principaux problèmes des deux méthodes :
- L'apprentissage par l'expérience résout le problème de la nécessité d'un modèle et celui des grands espaces d'états ;
- Le bootstrap résout le problème de l'apprentissage épisodique.
Fonctionnement
L'apprentissage par différence temporelle (TD) fonctionne selon une boucle simple :
- Estimation de la valeur : l'agent commence avec une estimation initiale de la qualité de l'état actuel ;
- Exécution d'une action : il effectue une action, reçoit une récompense et se retrouve dans un nouvel état ;
- Mise à jour de l'estimation : en utilisant la récompense et la valeur du nouvel état, l'agent ajuste légèrement son estimation initiale pour la rendre plus précise ;
- Répétition : au fil du temps, en répétant cette boucle, l'agent construit progressivement des estimations de valeur meilleures et plus précises pour différents états.
Tableau comparatif
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Awesome!
Completion rate improved to 2.7
Qu'est-ce que l'apprentissage par différence temporelle ?
Glissez pour afficher le menu
La programmation dynamique et les méthodes de Monte Carlo présentent toutes deux des avantages notables ainsi que des inconvénients majeurs.
Programmation dynamique
La programmation dynamique permet de calculer efficacement la fonction de valeur d'état et d'en déduire une politique optimale. Elle utilise le bootstrapping — calcul de la valeur de l'état actuel à partir des valeurs des états futurs — pour atteindre cet objectif.
Bien que l'idée du bootstrapping soit puissante, la programmation dynamique présente deux inconvénients majeurs :
- Nécessité d'un modèle complet et explicite de l'environnement ;
- Calcul des valeurs d'état pour chaque état, même si l'état est très éloigné du chemin optimal.
Méthodes de Monte Carlo
Les méthodes de Monte Carlo corrigent les deux inconvénients de la programmation dynamique :
- Elles ne nécessitent pas de modèle, car elles apprennent à partir de l'expérience ;
- Leur mode d'apprentissage limite l'exploration, de sorte que les états non importants sont rarement visités.
Cependant, elles introduisent un nouvel inconvénient — le processus d'apprentissage n'a lieu qu'après la conclusion de l'épisode. Cela limite l'applicabilité des méthodes de Monte Carlo à des tâches épisodiques de petite taille, car les tâches plus grandes nécessiteraient un nombre d'actions extrêmement élevé avant la fin de l'épisode.
Apprentissage par différence temporelle
L'apprentissage par différence temporelle (TD) résulte de la combinaison des idées issues à la fois de la programmation dynamique et des méthodes de Monte Carlo. Il adopte l'apprentissage par l'expérience des méthodes de Monte Carlo et le combine avec le bootstrap de la programmation dynamique.
En conséquence, l'apprentissage TD corrige les principaux problèmes des deux méthodes :
- L'apprentissage par l'expérience résout le problème de la nécessité d'un modèle et celui des grands espaces d'états ;
- Le bootstrap résout le problème de l'apprentissage épisodique.
Fonctionnement
L'apprentissage par différence temporelle (TD) fonctionne selon une boucle simple :
- Estimation de la valeur : l'agent commence avec une estimation initiale de la qualité de l'état actuel ;
- Exécution d'une action : il effectue une action, reçoit une récompense et se retrouve dans un nouvel état ;
- Mise à jour de l'estimation : en utilisant la récompense et la valeur du nouvel état, l'agent ajuste légèrement son estimation initiale pour la rendre plus précise ;
- Répétition : au fil du temps, en répétant cette boucle, l'agent construit progressivement des estimations de valeur meilleures et plus précises pour différents états.
Tableau comparatif
Merci pour vos commentaires !