Generalisering av TD-inlärning
Hittills har vi betraktat två extrema fall av inlärning från erfarenhet:
- TD(0): använder ettstegsavkastning;
- Monte Carlo: väntar till slutet av episoden för att beräkna avkastningen.
Men vad händer om vi vill ha något däremellan? Något som utnyttjar mer framtida information än TD(0), men som inte behöver vänta på hela episoden som Monte Carlo?
Det är här n-stegs TD-inlärning och TD(λ) kommer in — metoder som förenar och generaliserar de idéer vi hittills har sett.
n-stegs TD-inlärning
Idén bakom n-stegs TD-inlärning är enkel: istället för att använda bara nästa steg eller hela episoden, använder vi nästa n steg, och därefter bootstrapping:
Gt(n)=Rt+1+γRt+2+...+γn−1Rt+n+γnV(St+1)Detta möjliggör en avvägning:
- När n=1: är det bara TD(0);
- När n=∞: blir det Monte Carlo.
Denna avkastning kan sedan användas för att ersätta målet i TD(0)-uppdateringsregeln:
V(St)←V(St)+α(Gt(n)−V(St))TD(λ)
TD(λ) är en smart idé som bygger vidare på n-stegs TD-inlärning: istället för att välja ett fast n, kombinerar vi alla n-stegsavkastningar tillsammans:
Lt=(1−λ)n=0∑∞λn−1Gt(n)där λ∈[0,1] styr viktningen:
- Om λ=0: endast enstegsavkastning → TD(0);
- Om λ=1: fullständig avkastning → Monte Carlo;
- Mellanvärden blandar flera stegsavkastningar.
Så λ fungerar som en reglage för bias-varianskompromiss:
- Låg λ: mer bias, mindre varians;
- Hög λ: mindre bias, mer varians.
Lt kan sedan användas som uppdateringsmål i TD(0)-uppdateringsregeln:
V(St)←V(St)+α(Lt−V(St))Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
Awesome!
Completion rate improved to 2.7
Generalisering av TD-inlärning
Svep för att visa menyn
Hittills har vi betraktat två extrema fall av inlärning från erfarenhet:
- TD(0): använder ettstegsavkastning;
- Monte Carlo: väntar till slutet av episoden för att beräkna avkastningen.
Men vad händer om vi vill ha något däremellan? Något som utnyttjar mer framtida information än TD(0), men som inte behöver vänta på hela episoden som Monte Carlo?
Det är här n-stegs TD-inlärning och TD(λ) kommer in — metoder som förenar och generaliserar de idéer vi hittills har sett.
n-stegs TD-inlärning
Idén bakom n-stegs TD-inlärning är enkel: istället för att använda bara nästa steg eller hela episoden, använder vi nästa n steg, och därefter bootstrapping:
Gt(n)=Rt+1+γRt+2+...+γn−1Rt+n+γnV(St+1)Detta möjliggör en avvägning:
- När n=1: är det bara TD(0);
- När n=∞: blir det Monte Carlo.
Denna avkastning kan sedan användas för att ersätta målet i TD(0)-uppdateringsregeln:
V(St)←V(St)+α(Gt(n)−V(St))TD(λ)
TD(λ) är en smart idé som bygger vidare på n-stegs TD-inlärning: istället för att välja ett fast n, kombinerar vi alla n-stegsavkastningar tillsammans:
Lt=(1−λ)n=0∑∞λn−1Gt(n)där λ∈[0,1] styr viktningen:
- Om λ=0: endast enstegsavkastning → TD(0);
- Om λ=1: fullständig avkastning → Monte Carlo;
- Mellanvärden blandar flera stegsavkastningar.
Så λ fungerar som en reglage för bias-varianskompromiss:
- Låg λ: mer bias, mindre varians;
- Hög λ: mindre bias, mer varians.
Lt kan sedan användas som uppdateringsmål i TD(0)-uppdateringsregeln:
V(St)←V(St)+α(Lt−V(St))Tack för dina kommentarer!