Begreper & referanser
Alle nøkkelbegrepene, formlene og referansene fra Introduksjon til forsterkningslæring, samlet på én side. Bruk denne som oppslag når du leser, øver flashcards eller tar quiz.
Begreper
Sentrale begreper fra kapittelet med korte definisjoner.
Agenten velger handlinger, mens miljøet svarer med neste tilstand og belønning.
Informasjonen agenten bruker som beskrivelse av situasjonen på et bestemt tidspunkt.
Et numerisk signal fra miljøet som vurderer den siste overgangen, ikke nødvendigvis hele løsningen.
En regel eller sannsynlighetsfordeling som bestemmer hvilken handling agenten velger i hver tilstand.
Forventet framtidig retur fra en tilstand eller et tilstand–handling-par under en bestemt policy.
En off-policy metode som lærer handlingsverdier mot den beste estimerte fortsettelsen.
Avveiingen mellom å prøve usikre handlinger og å velge handlingen som hittil ser best ut.
Formler
Hver formel: hva den heter, hvordan den ser ut, og hva symbolene betyr.
Diskontert retur
Returen summerer fremtidige belønninger og demper fjerne belønninger med .
Tilstandsverdi
Verdien er forventet retur fra tilstand når policyen følges.
Bellmans optimalitetsligning
Optimal handlingsverdi består av umiddelbar belønning og beste diskonterte fortsettelse.
Q-learning-oppdatering
Q-learning flytter den gamle verdien mot et mål som bruker belønningen og beste verdi i neste tilstand.
Epsilon-greedy policy
Policyen velger oftest beste kjente handling, men utforsker tilfeldig med sannsynlighet .
Kodesnutter
Kodesnutter fra kapittelet, vist literal.
Én Q-learning-oppdatering
import numpy as np rng = np.random.default_rng(4172)Q = rng.normal(0, 0.05, size=(4, 3))s, a, neste_s = 1, 2, 3r = 1.0alpha = 0.25gamma = 0.90 gammel = Q[s, a]maal = r + gamma * np.max(Q[neste_s])td_feil = maal - gammelQ[s, a] = gammel + alpha * td_feil print(f"gammel={gammel:.3f}")print(f"mål={maal:.3f}, TD-feil={td_feil:.3f}")print(f"ny={Q[s, a]:.3f}")Oppdateringen flytter bare det besøkte tilstand–handling-paret en andel α mot Bellman-målet. De andre Q-verdiene står uendret i dette steget.
Seedet epsilon-greedy Q-learning i et linjemiljø
import numpy as np rng = np.random.default_rng(4172)Q = np.zeros((5, 2)) # handling 0=venstre, 1=høyrealpha, gamma, epsilon = 0.25, 0.95, 0.20 for episode in range(300): s = 0 while s != 4: if rng.random() < epsilon: a = rng.integers(2) else: beste = np.flatnonzero(Q[s] == Q[s].max()) a = rng.choice(beste) neste = max(0, s - 1) if a == 0 else min(4, s + 1) reward = 1.0 if neste == 4 else -0.02 maal = reward if neste == 4 else reward + gamma * Q[neste].max() Q[s, a] += alpha * (maal - Q[s, a]) s = neste print(np.round(Q, 3))print("grådig policy:", Q.argmax(axis=1))Det lille miljøet viser hele samspillet mellom exploration, overgang, reward, bootstrappet mål og gradvis forbedring av policyen.
Læringsmål
Hva du skal kunne etter å ha lest kapittelet.
- 01Modellere et enkelt problem med agent, miljø, tilstander, handlinger og belønninger
- 02Beregne diskontert retur og skille umiddelbar belønning fra langsiktig verdi
- 03Tolke tilstands- og handlingsverdier og bruke Bellman-prinsippet
- 04Utføre én Q-learning-oppdatering med korrekt håndtering av terminal tilstand
- 05Forklare exploration–exploitation og beregne handlingssannsynligheter under epsilon-greedy
- 06Evaluere en lært policy separat fra den utforskende treningspolicyen