Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Generalisering af TD-Læring | Temporal Difference-Læring
Introduktion til Reinforcement Learning

bookGeneralisering af TD-Læring

Indtil nu har vi betragtet to ekstreme tilfælde af læring fra erfaring:

  • TD(0): anvender ét-trins afkast;
  • Monte Carlo: venter til slutningen af episoden for at beregne afkastet.

Men hvad hvis vi ønsker noget midt imellem? Noget der udnytter mere fremtidig information end TD(0), men som ikke behøver at vente på hele episoden som Monte Carlo?

Her kommer nn-trins TD-læring og TD(λ\lambda) ind i billedet — metoder, der forener og generaliserer de idéer, vi hidtil har set.

n\Large n-Trins TD-læring

Idéen bag nn-trins TD-læring er enkel: i stedet for kun at bruge det næste trin eller hele episoden, anvender vi de næste nn trin, og anvender derefter bootstrapping:

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})

Dette muliggør en afvejning:

  • Når n=1n = 1: svarer det til TD(0);
  • Når n=n = \infty: bliver det Monte Carlo.

Disse afkast kan derefter bruges til at erstatte målet i TD(0) opdateringsreglen:

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) er en smart idé, der bygger oven på nn-trins TD-læring: i stedet for at vælge et fast nn, kombinerer vi alle nn-trins afkast sammen:

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

hvor λ[0,1]\lambda \in [0, 1] styrer vægtningen:

  • Hvis λ=0\lambda = 0: kun ét-trins afkast \to TD(0);
  • Hvis λ=1\lambda = 1: fuldt afkast \to Monte Carlo;
  • Mellem-værdier blander flere trins afkast.

λ\lambda fungerer som en bias-varians afvejning:

  • Lav λ\lambda: mere bias, mindre varians;
  • Høj λ\lambda: mindre bias, mere varians.

LtL_t kan derefter bruges som opdateringsmål i TD(0)-opdateringsreglen:

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

Når parameteren λ\lambda sættes til 1 i TD(λ\lambda), bliver metoden ækvivalent med

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 5. Kapitel 5

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Awesome!

Completion rate improved to 2.7

bookGeneralisering af TD-Læring

Stryg for at vise menuen

Indtil nu har vi betragtet to ekstreme tilfælde af læring fra erfaring:

  • TD(0): anvender ét-trins afkast;
  • Monte Carlo: venter til slutningen af episoden for at beregne afkastet.

Men hvad hvis vi ønsker noget midt imellem? Noget der udnytter mere fremtidig information end TD(0), men som ikke behøver at vente på hele episoden som Monte Carlo?

Her kommer nn-trins TD-læring og TD(λ\lambda) ind i billedet — metoder, der forener og generaliserer de idéer, vi hidtil har set.

n\Large n-Trins TD-læring

Idéen bag nn-trins TD-læring er enkel: i stedet for kun at bruge det næste trin eller hele episoden, anvender vi de næste nn trin, og anvender derefter bootstrapping:

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})

Dette muliggør en afvejning:

  • Når n=1n = 1: svarer det til TD(0);
  • Når n=n = \infty: bliver det Monte Carlo.

Disse afkast kan derefter bruges til at erstatte målet i TD(0) opdateringsreglen:

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) er en smart idé, der bygger oven på nn-trins TD-læring: i stedet for at vælge et fast nn, kombinerer vi alle nn-trins afkast sammen:

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

hvor λ[0,1]\lambda \in [0, 1] styrer vægtningen:

  • Hvis λ=0\lambda = 0: kun ét-trins afkast \to TD(0);
  • Hvis λ=1\lambda = 1: fuldt afkast \to Monte Carlo;
  • Mellem-værdier blander flere trins afkast.

λ\lambda fungerer som en bias-varians afvejning:

  • Lav λ\lambda: mere bias, mindre varians;
  • Høj λ\lambda: mindre bias, mere varians.

LtL_t kan derefter bruges som opdateringsmål i TD(0)-opdateringsreglen:

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

Når parameteren λ\lambda sættes til 1 i TD(λ\lambda), bliver metoden ækvivalent med

Select the correct answer

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 5. Kapitel 5
some-alt