Hva er tidsdifferanselæring?
Sveip for å vise menyen
Både dynamisk programmering og Monte Carlo-metoder har noen gode ideer og noen store ulemper.
Dynamisk programmering
Dynamisk programmering har en metode for effektivt å beregne tilstandsverdifunksjonen og utlede en optimal policy fra denne. Den bruker bootstrapping — beregning av nåværende tilstandsverdi basert på fremtidige tilstanders verdier — for å oppnå dette.
Selv om ideen om bootstrapping er kraftig, har selve dynamisk programmering to store ulemper:
- Den krever en komplett og eksplisitt modell av miljøet;
- Tilstandsverdier beregnes for hver tilstand, selv om tilstanden ikke er i nærheten av den optimale banen.
Monte Carlo-metoder
Monte Carlo-metoder løser de to ulempene ved dynamisk programmering:
- De krever ikke en modell, siden de lærer av erfaring;
- Måten de lærer av erfaring på gjør at utforskningen blir mer begrenset, slik at ikke-viktige tilstander sjelden besøkes.
Men de introduserer en ny ulempe — læringsprosessen skjer først etter at episoden er avsluttet. Dette begrenser bruken av Monte Carlo-metoder til små episodiske oppgaver, siden større oppgaver vil kreve et ekstremt stort antall handlinger før episoden avsluttes.
Temporal Difference-læring
Temporal difference (TD) learning er et resultat av å kombinere ideene fra både dynamisk programmering og Monte Carlo-metoder. Det tar læring fra erfaring-tilnærmingen fra Monte Carlo-metoder og kombinerer det med bootstrapping fra dynamisk programmering.
Som et resultat løser TD-læring de største utfordringene de to metodene har:
- Læring fra erfaring adresserer problemet med å kreve en modell og utfordringen med store tilstandsrom;
- Bootstrapping adresserer utfordringen med episodisk læring.
Hvordan fungerer det?
TD-læring fungerer gjennom en enkel sløyfe:
- Estimer verdien: agenten starter med et første gjetning på hvor god den nåværende tilstanden er;
- Utfør en handling: den utfører en handling, mottar en belønning og havner i en ny tilstand;
- Oppdater estimatet: ved å bruke belønningen og verdien av den nye tilstanden, justerer agenten litt på det opprinnelige estimatet for å gjøre det mer nøyaktig;
- Gjenta: over tid, ved å gjenta denne sløyfen, bygger agenten gradvis bedre og mer nøyaktige verdiestimater for ulike tilstander.
Sammenligningstabell
Takk for tilbakemeldingene dine!
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår
Hva er tidsdifferanselæring?
Både dynamisk programmering og Monte Carlo-metoder har noen gode ideer og noen store ulemper.
Dynamisk programmering
Dynamisk programmering har en metode for effektivt å beregne tilstandsverdifunksjonen og utlede en optimal policy fra denne. Den bruker bootstrapping — beregning av nåværende tilstandsverdi basert på fremtidige tilstanders verdier — for å oppnå dette.
Selv om ideen om bootstrapping er kraftig, har selve dynamisk programmering to store ulemper:
- Den krever en komplett og eksplisitt modell av miljøet;
- Tilstandsverdier beregnes for hver tilstand, selv om tilstanden ikke er i nærheten av den optimale banen.
Monte Carlo-metoder
Monte Carlo-metoder løser de to ulempene ved dynamisk programmering:
- De krever ikke en modell, siden de lærer av erfaring;
- Måten de lærer av erfaring på gjør at utforskningen blir mer begrenset, slik at ikke-viktige tilstander sjelden besøkes.
Men de introduserer en ny ulempe — læringsprosessen skjer først etter at episoden er avsluttet. Dette begrenser bruken av Monte Carlo-metoder til små episodiske oppgaver, siden større oppgaver vil kreve et ekstremt stort antall handlinger før episoden avsluttes.
Temporal Difference-læring
Temporal difference (TD) learning er et resultat av å kombinere ideene fra både dynamisk programmering og Monte Carlo-metoder. Det tar læring fra erfaring-tilnærmingen fra Monte Carlo-metoder og kombinerer det med bootstrapping fra dynamisk programmering.
Som et resultat løser TD-læring de største utfordringene de to metodene har:
- Læring fra erfaring adresserer problemet med å kreve en modell og utfordringen med store tilstandsrom;
- Bootstrapping adresserer utfordringen med episodisk læring.
Hvordan fungerer det?
TD-læring fungerer gjennom en enkel sløyfe:
- Estimer verdien: agenten starter med et første gjetning på hvor god den nåværende tilstanden er;
- Utfør en handling: den utfører en handling, mottar en belønning og havner i en ny tilstand;
- Oppdater estimatet: ved å bruke belønningen og verdien av den nye tilstanden, justerer agenten litt på det opprinnelige estimatet for å gjøre det mer nøyaktig;
- Gjenta: over tid, ved å gjenta denne sløyfen, bygger agenten gradvis bedre og mer nøyaktige verdiestimater for ulike tilstander.
Sammenligningstabell
Takk for tilbakemeldingene dine!