Temporal difference learning
Template:S Il temporal difference (TD) learning, ovvero l'apprendimento mediante differenza temporale, indica una classe di metodi di reinforcement learning che basano il proprio apprendimento sul bootstrap dalla stima corrente della funzione obiettivo: questi metodi campionano dall'ambiente, così come il Metodo Monte Carlo, ma eseguono gli aggiornamenti della funzione di valore di stato basandosi sulle stime correnti, come avviene, invece, nella programmazione dinamica.
A differenza dei metodi Monte Carlo che modificano le loro stime solo quando il risultato finale è noto, questi metodi di distanza temporale adattano le proprie previsioni in modo dinamico, così da avere previsioni sul futuro più accurate, prima ancora che il risultato finale sia a disposizione[1]. Questa è, appunto, una forma di bootstrap, come si evince dal seguente esempio[1]:
"Supponi di voler prevedere il tempo per sabato e di avere un modello che prevede il tempo di sabato, avendo a disposizione il clima di ogni giorno della settimana. Di norma, aspetteresti fino a sabato e solo allora aggiusterai tutti i tuoi modelli. Tuttavia, quando è, ad esempio, venerdì, dovresti già avere una buona idea di come potrebbe essere il tempo sabato - e quindi essere in grado di cambiare, diciamo, il modello di sabato prima dell'arrivo di sabato".
I metodi di differenza temporale sono in stretta correlazione al modello di differenza temporale dell'apprendimento animale[2][3][4][5][6].
Formulazione matematica
Il metodo tabulare TD(0), uno dei metodi TD più semplici, stima la funzione di valore di stato di un processo decisionale di Markov (MDP) a stati finiti in base a una policy (o politica) . Sia la funzione del valore di stato di un MDP che ha stati , ricompense e un fattore di sconto per la policy :
soddisfa l'equazione di Hamilton-Jacobi-Bellman:quindi è uno stimatore non condizionato (a bias nullo) per . Questa osservazione giustifica il seguente algoritmo per stimare . L'algoritmo inizializza una tabella con valori arbitrati, scegliendo un valore per ciascuno degli stati del processo markoviano: viene inoltre fissato un tasso di apprendimento positivo. A questo punto viene valutata la policy , e una volta ottenuta la ricompensa , viene aggiornata la funzione del valore di stato per il vecchio stato usando la seguente regola[7]:
dove e indicano, rispettivamente, il vecchio e il nuovo stato.
TD-Lambda
TD-Lambda è un algoritmo di apprendimento creato da Richard S. Sutton basato su un precedente lavoro sull'apprendimento delle differenze temporali di Arthur Samuel[8]. Questo algoritmo è stato notoriamente applicato da Gerald Tesauro per creare TD-Gammon, un programma che ha imparato a giocare a backgammon al livello di giocatori esperti umani[9].
Il parametro può assumere valori compresi tra 0 e 1. Aumentando il valore di lambda, viene dato maggior peso alle ricompense che si ottengono in stati distanti da quello corrente.
Note
- ↑ 1,0 1,1 Template:Cita pubblicazione (A revised version is available on Richard Sutton's publication page Template:Webarchive)
- ↑ Template:Cita pubblicazione
- ↑ Template:Cita pubblicazione
- ↑ Template:Cita pubblicazione
- ↑ Template:Cita pubblicazione
- ↑ Template:Cita pubblicazione
- ↑ Template:Cita libro
- ↑ Template:Cita libro
- ↑ Template:Cita pubblicazione
Voci correlate
Collegamenti esterni
- Scholarpedia Differenza temporale Apprendimento
- TD-Gammon
- Gruppo di ricerca TD-Networks
- Connect Four TDGravity Applet (+ versione per cellulare) - autoappreso con il metodo TD-Leaf (combinazione di TD-Lambda con ricerca di alberi poco profondi)
- Autoapprendimento Meta-Tic-Tac-Toe Template:Webarchive Esempio di applicazione web che mostra come l'apprendimento delle differenze temporali può essere utilizzato per apprendere costanti di valutazione dello stato per un AI minimax giocando a un semplice gioco da tavolo.
- Reinforcement Learning Problem, documento che spiega come l'apprendimento delle differenze temporali può essere utilizzato per accelerare il Q-learning
- TD-Simulator Simulatore di differenze temporali per il condizionamento classico