Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Généralisation de l’Apprentissage TD | Apprentissage par Différence Temporelle
Introduction à l'Apprentissage par Renforcement

bookGénéralisation de l’Apprentissage TD

Jusqu'à présent, nous avons considéré deux cas extrêmes d'apprentissage par l'expérience :

  • TD(0) : utilise le retour à un pas ;
  • Monte Carlo : attend la fin de l'épisode pour calculer le retour.

Mais que faire si l'on souhaite une approche intermédiaire ? Une méthode qui exploite davantage d'informations futures que TD(0), sans attendre la fin complète de l'épisode comme Monte Carlo ?

C'est ici qu'interviennent l'apprentissage TD à nn-pas et TD(λ\lambda) — des méthodes qui unifient et généralisent les concepts étudiés jusqu'à présent.

n\Large n-Pas TD Learning

Le principe de l'apprentissage TD à nn-pas est simple : au lieu d'utiliser uniquement l'étape suivante ou l'ensemble de l'épisode, on utilise les nn prochaines étapes, puis on effectue un bootstrap :

Gt(n)=Rt+1+γRt+2+...+γn1Rt+n+γnV(St+1)G_t^{(n)} = R_{t+1} + \gamma R_{t+2} + ... + \gamma^{n-1} R_{t+n} + \gamma^n V(S_{t+1})

Cela permet un compromis :

  • Lorsque n=1n = 1 : il s'agit simplement de TD(0) ;
  • Lorsque n=n = \infty : cela devient Monte Carlo.

Ces retours peuvent alors être utilisés pour remplacer la cible dans la règle de mise à jour TD(0) :

V(St)V(St)+α(Gt(n)V(St))V(S_t) \gets V(S_t) + \alpha\Bigl(G_t^{(n)} - V(S_t)\Bigr)

TD(λ\Large\lambda)

TD(λ\lambda) est une idée ingénieuse qui s'appuie sur l'apprentissage TD à nn étapes : au lieu de choisir un nn fixe, on combine tous les retours à nn étapes ensemble :

Lt=(1λ)n=0λn1Gt(n)L_t = (1 - \lambda) \sum_{n=0}^{\infty} \lambda^{n-1}G_t^{(n)}

λ[0,1]\lambda \in [0, 1] contrôle la pondération :

  • Si λ=0\lambda = 0 : seul le retour à une étape \to TD(0) ;
  • Si λ=1\lambda = 1 : retour complet \to Monte Carlo ;
  • Les valeurs intermédiaires mélangent plusieurs retours à différentes étapes.

Ainsi, λ\lambda agit comme un paramètre d'ajustement du compromis biais-variance :

  • Faible λ\lambda : plus de biais, moins de variance ;
  • Fort λ\lambda : moins de biais, plus de variance.

LtL_t peut alors être utilisé comme cible de mise à jour dans la règle de mise à jour TD(0) :

V(St)V(St)+α(LtV(St))V(S_t) \gets V(S_t) + \alpha\Bigl(L_t - V(S_t)\Bigr)
question mark

Lorsque le paramètre λ\lambda est fixé à 1 dans TD(λ\lambda), la méthode devient équivalente à

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 5. Chapitre 5

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

Suggested prompts:

Can you explain how to choose the best value for $$n$$ or $$\lambda$$ in practice?

What are the main advantages and disadvantages of using TD($$\lambda$$) compared to TD(0) and Monte Carlo?

Can you provide an example to illustrate how $$n$$-step TD learning works?

Awesome!

Completion rate improved to 2.7

bookGénéralisation de l’Apprentissage TD

Glissez pour afficher le menu

Jusqu'à présent, nous avons considéré deux cas extrêmes d'apprentissage par l'expérience :

  • TD(0) : utilise le retour à un pas ;
  • Monte Carlo : attend la fin de l'épisode pour calculer le retour.

Mais que faire si l'on souhaite une approche intermédiaire ? Une méthode qui exploite davantage d'informations futures que TD(0), sans attendre la fin complète de l'épisode comme Monte Carlo ?

C'est ici qu'interviennent l'apprentissage TD à nn-pas et TD(λ\lambda) — des méthodes qui unifient et généralisent les concepts étudiés jusqu'à présent.

n\Large n-Pas TD Learning

Le principe de l'apprentissage TD à nn-pas est simple : au lieu d'utiliser uniquement l'étape suivante ou l'ensemble de l'épisode, on utilise les nn prochaines étapes, puis on effectue un bootstrap :

Gt(n)=Rt+1+γRt+2+...+γn1Rt+n+γnV(St+1)G_t^{(n)} = R_{t+1} + \gamma R_{t+2} + ... + \gamma^{n-1} R_{t+n} + \gamma^n V(S_{t+1})

Cela permet un compromis :

  • Lorsque n=1n = 1 : il s'agit simplement de TD(0) ;
  • Lorsque n=n = \infty : cela devient Monte Carlo.

Ces retours peuvent alors être utilisés pour remplacer la cible dans la règle de mise à jour TD(0) :

V(St)V(St)+α(Gt(n)V(St))V(S_t) \gets V(S_t) + \alpha\Bigl(G_t^{(n)} - V(S_t)\Bigr)

TD(λ\Large\lambda)

TD(λ\lambda) est une idée ingénieuse qui s'appuie sur l'apprentissage TD à nn étapes : au lieu de choisir un nn fixe, on combine tous les retours à nn étapes ensemble :

Lt=(1λ)n=0λn1Gt(n)L_t = (1 - \lambda) \sum_{n=0}^{\infty} \lambda^{n-1}G_t^{(n)}

λ[0,1]\lambda \in [0, 1] contrôle la pondération :

  • Si λ=0\lambda = 0 : seul le retour à une étape \to TD(0) ;
  • Si λ=1\lambda = 1 : retour complet \to Monte Carlo ;
  • Les valeurs intermédiaires mélangent plusieurs retours à différentes étapes.

Ainsi, λ\lambda agit comme un paramètre d'ajustement du compromis biais-variance :

  • Faible λ\lambda : plus de biais, moins de variance ;
  • Fort λ\lambda : moins de biais, plus de variance.

LtL_t peut alors être utilisé comme cible de mise à jour dans la règle de mise à jour TD(0) :

V(St)V(St)+α(LtV(St))V(S_t) \gets V(S_t) + \alpha\Bigl(L_t - V(S_t)\Bigr)
question mark

Lorsque le paramètre λ\lambda est fixé à 1 dans TD(λ\lambda), la méthode devient équivalente à

Select the correct answer

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 5. Chapitre 5
some-alt