Perché la riproduzione dell'esperienza richiede un algoritmo off-policy?


12

Nel documento che introduce DQN " Playing Atari con Deep Reinforcement Learning ", menziona:

Si noti che quando si apprende mediante il replay dell'esperienza, è necessario apprendere off-policy (poiché i nostri parametri attuali sono diversi da quelli utilizzati per generare il campione), il che motiva la scelta del Q-learning.

Non ho capito bene cosa significhi. Che cosa succede se utilizziamo SARSA e ricordiamo l'azione a'per l'azione da intraprendere s'nella nostra memoria, quindi campioniamo i batch da essa e aggiorniamo Q come abbiamo fatto in DQN? E i metodi critico-attore (A3C, per specifici) possono usare il replay dell'esperienza? Se no, perché?

Risposte:


2

I metodi sulla politica, come la SARSA, prevedono che le azioni in ogni stato siano scelte in base all'attuale politica dell'agente, che di solito tende a sfruttare i premi.

In questo modo, la politica migliora quando aggiorniamo la nostra politica sulla base degli ultimi premi. Qui in particolare, aggiornano i parametri di NN che predicono il valore di un determinato stato / azione).

Ma, se aggiorniamo la nostra politica in base alle transizioni memorizzate, come nel replay dell'esperienza, stiamo effettivamente valutando le azioni da una politica che non è più quella attuale, poiché si è evoluta nel tempo, quindi non è più sulla politica.

I valori Q vengono valutati in base ai premi futuri che otterrai da uno stato seguendo la politica dell'agente corrente.

Tuttavia, questo non è più vero poiché ora stai seguendo una politica diversa. Quindi usano un metodo off-policy comune che esplora basato su un approccio avido di epsilon.


Grazie, ma ancora non lo capisco: se uso la regola di aggiornamento TD (0), mi ricordo di una transizione (s, a, r, s')ed estraggo questa esperienza per la riproduzione; Supponiamo ora che il mio attuale politica dice che si dovrebbe prendere a'su s', quindi marchio mi Q(s, a)dovrebbe essere r + Q(s', a')e fare la discesa del gradiente. Penso che sto facendo esperienza di riproduzione su politica. C'è qualche problema con il processo?
DarkZero

Credo che il problema sia che, poiché ora stai usando una politica diversa rispetto a prima, e quell'azione è scelta usando la vecchia politica, non puoi davvero dire che è sulla politica: valutare correttamente il valore Q di una politica dovresti fare molte azioni con quello stesso. Qui si tenta di valutare una politica corrente utilizzando un'azione che tale politica non è stata scelta.
dante

Quindi posso dire che lo sto facendo fuori politica qui? Quale sarà il risultato di farlo, in teoria?
DarkZero

1
Quindi, se ho ragione, si dovrebbe usare metodi off-policy come Q-learning, scegliere sempre il Q massimo per essere la ricompensa attesa futura. Non importa quale sia l'azione attuale, perché è una proprietà dell'apprendimento di Q che se scegli sempre il massimo Q per il futuro, allora Q convergerà in Q secondo una politica ottimale; Oppure dovrebbe seguire francamente una politica, scegliere ogni azione, comprese quelle future, tramite questa politica e fare l'aggiornamento sulla politica. È giusto?
DarkZero

1
Fino ad ora, non riesco a capire perché i metodi su politica siano buoni. I metodi off-policy sembrano avere più libertà e possono scoprire da soli la politica ottimale. Ti dispiacerebbe rispondere anche a stats.stackexchange.com/questions/265354/… ? Grazie mille per tutte le discussioni.
DarkZero

1

David Silver affronta questo problema in questa lezione video alle 46:10 http://videolectures.net/rldm2015_silver_reinforcement_learning/ : il replay dell'esperienza sceglie da usando la politica prevalente al momento, e questo è uno dei suoi vantaggi: consente la funzione Q imparare dalle politiche precedenti, che interrompe la correlazione degli stati e delle politiche recenti e impedisce alla rete di essere "bloccata" in una determinata modalità di comportamento.sas

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.