Hva er temporær differanse-læring?
Både dynamisk programmering og Monte Carlo-metoder har noen gode ideer og noen betydelige ulemper.
Dynamisk programmering
Dynamisk programmering har en metode for effektivt å beregne tilstandsverdifunksjonen og utlede en optimal policy fra denne. Den benytter bootstrapping — beregning av nåværende tilstands verdi basert på fremtidige tilstanders verdier — for å oppnå dette.
Selv om ideen om bootstrapping er kraftfull, har selve dynamisk programmering to store ulemper:
- Den krever en fullstendig 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 kun etter at episoden er avsluttet. Dette begrenser anvendeligheten av Monte Carlo-metoder til små episodiske oppgaver, ettersom større oppgaver vil kreve et absurd stort antall handlinger før episoden avsluttes.
Temporal Difference-læring
Temporal difference (TD) læring er et resultat av å kombinere ideene fra både dynamisk programmering og Monte Carlo-metoder. Den 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 behovet for 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 innledende anslag 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 anslaget: ved å bruke belønningen og verdien til den nye tilstanden, justerer agenten sitt opprinnelige anslag litt for å gjøre det mer nøyaktig;
- Gjenta: over tid, ved å gjenta denne sløyfen, bygger agenten gradvis bedre og mer nøyaktige verdianslag 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
Awesome!
Completion rate improved to 2.7
Hva er temporær differanse-læring?
Sveip for å vise menyen
Både dynamisk programmering og Monte Carlo-metoder har noen gode ideer og noen betydelige ulemper.
Dynamisk programmering
Dynamisk programmering har en metode for effektivt å beregne tilstandsverdifunksjonen og utlede en optimal policy fra denne. Den benytter bootstrapping — beregning av nåværende tilstands verdi basert på fremtidige tilstanders verdier — for å oppnå dette.
Selv om ideen om bootstrapping er kraftfull, har selve dynamisk programmering to store ulemper:
- Den krever en fullstendig 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 kun etter at episoden er avsluttet. Dette begrenser anvendeligheten av Monte Carlo-metoder til små episodiske oppgaver, ettersom større oppgaver vil kreve et absurd stort antall handlinger før episoden avsluttes.
Temporal Difference-læring
Temporal difference (TD) læring er et resultat av å kombinere ideene fra både dynamisk programmering og Monte Carlo-metoder. Den 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 behovet for 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 innledende anslag 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 anslaget: ved å bruke belønningen og verdien til den nye tilstanden, justerer agenten sitt opprinnelige anslag litt for å gjøre det mer nøyaktig;
- Gjenta: over tid, ved å gjenta denne sløyfen, bygger agenten gradvis bedre og mer nøyaktige verdianslag for ulike tilstander.
Sammenligningstabell
Takk for tilbakemeldingene dine!