Cos'è la funzione Q e qual è la funzione V nell'apprendimento per rinforzo?


30

Mi sembra che la funzione V possa essere facilmente espressa dalla funzione Q e quindi la funzione V sembra superflua. Tuttavia, sono nuovo nell'apprendimento del rinforzo, quindi credo di aver sbagliato qualcosa.

definizioni

L'apprendimento Q e V sono nel contesto dei processi decisionali di Markov . Un MDP è una 5 tupla (S,A,P,R,γ) con

  • S è un insieme di stati (tipicamente finito)
  • A è un insieme di azioni (tipicamente finito)
  • s s aP(s,s,a)=P(st+1=s|st=s,at=a) è la probabilità di passare dallo stato allo stato con l'azione .ssa
  • sR(s,s,a)R è la ricompensa immediata dopo essere passati dallo stato allo stato con l'azione . (Mi sembra che di solito solo questioni).s a s sas
  • γ[0,1] è chiamato fattore di sconto e determina se ci si concentra sui premi immediati ( γ=0 ), sulla ricompensa totale ( γ=1 ) o su alcuni trade-off.

Una politica π , secondo Reinforcement Learning: An Introduction di Sutton and Barto è una funzione π:SA (questo potrebbe essere probabilistico).

Secondo le diapositive Mario Martins , la funzione V è

Vπ(s)=Eπ{Rt|st=s}=Eπ{k=0γkrt+k+1|st=s}
e la funzione Q è
Qπ(s,a)=Eπ{Rt|st=s,at=a}=Eπ{k=0γkrt+k+1|st=s,at=a}

I miei pensieri

Le stati di funzionamento quale sia il valore complessivo atteso (non ricompensa!) Di uno stato s nel quadro della politica π è.Vsπ

I stati di funzionamento quale sia il valore di uno stato s e un'azione di un quadro della politica π è.Qsaπ

Ciò significa che

Qπ(s,π(s))=Vπ(s)

Destra? Quindi perché abbiamo la funzione valore? (Immagino di aver confuso qualcosa)

Risposte:


15

I valori Q sono un ottimo modo per rendere esplicite le azioni in modo da poter affrontare i problemi in cui la funzione di transizione non è disponibile (senza modello). Tuttavia, quando lo spazio d'azione è grande, le cose non sono così belle e i valori Q non sono così convenienti. Pensa a un numero enorme di azioni o persino a spazi d'azione continui.

Dal punto di vista del campionamento, la dimensionalità di Q(s,a) è superiore a V(s) quindi potrebbe essere più difficile ottenere abbastanza (s,a) campioni rispetto a (s) . Se hai accesso alla funzione di transizione a volte V è buono.

Ci sono anche altri usi in cui entrambi sono combinati. Ad esempio, la funzione di vantaggio in cui A(s,a)=Q(s,a)V(s) . Se sei interessato, puoi trovare un esempio recente usando le funzioni di vantaggio qui:

Duellare le architetture di rete per l'apprendimento di rinforzo profondo

di Ziyu Wang, Tom Schaul, Matteo Hessel, Hado van Hasselt, Marc Lanctot e Nando de Freitas.


19

Vπ(s) è la funzione valore-stato di MDP (Markov Decision Process). E 'il rendimento atteso a partire da statos seguente politicaπ .

Nell'espressione

Vπ(s)=Eπ{Gt|st=s}

Gt è il premio SCONTATO totale dal passaggio temporalet , al contrario diRt che è un ritorno immediato. Qui state prendendo le aspettative di TUTTE le azioni secondo la politicaπ .

Qπ(s,a) è la funzione valore-azione. È il rendimento atteso a partire dallo statos , seguendo la politicaπ , intervenendoa . Si sta concentrando sull'azione particolare in quel particolare stato.

Qπ(s,a)=Eπ{Gt|st=s,at=a}

La relazione tra Qπ e Vπ (il valore di essere in quello stato) è

Vπ(s)=aAπ(a|s)Qπ(a,s)

Sommi ogni valore di azione moltiplicato per la probabilità di compiere quell'azione (la politica π(a|s) ).

Se si pensa all'esempio del mondo della griglia, si moltiplica la probabilità di (su / giù / destra / sinistra) con il valore di stato di un passo avanti di (su / giù / destra / sinistra).


5
Questa è la risposta più concisa.
Brett,

Ho una fonte che afferma che . Come si collega questa equazione a quella fornita nella risposta, V π ( s ) = a A π ( a s ) Q π ( a , s ) ? Nella tua equazione, stai definendo V in termini di una somma ponderata di QVπ(s)=maxaAQπ(s,a)Vπ(s)=aAπ(as)Qπ(a,s)VQvalori. Questo è diverso dalla definizione che ho, che definisce come la Q più alta . VQ
nbro,

@nbro Credo che dipenda dal tipo di politica che stai seguendo. In una pura politica avida hai ragione. Ma se fosse una politica più esplorativa, che è stata costruita per decidere stocasticamente un'azione, allora quanto sopra sarebbe corretto
deltaskelta

7

Hai ragione, la funzione V ti dà il valore di uno stato e Q ti dà il valore di un'azione in uno stato (seguendo una data politica π ). Ho trovato la spiegazione più chiara del Q-learning e di come funziona nel libro di Tom Mitchell "Machine Learning" (1997), cap. 13, che è scaricabile. V è definita come la somma di una serie infinita, ma qui non è importante. Ciò che conta è la funzione Q definita come

Q(s,a)=r(s,a)+γV(δ(s,a))
dove V * è il miglior valore di uno stato se potessi seguire una politica ottimale che non conosci. Tuttavia ha una buona caratterizzazione in termini diQ
V(s)=maxaQ(s,a)
calcoloQ viene effettuato sostituendoVnella prima equazione per dare
Q(s,a)=r(s,a)+γmaxaQ(δ(s,a),a)

All'inizio può sembrare una strana ricorsione perché esprime il valore Q di un'azione nello stato corrente in termini del miglior valore Q di uno stato successore , ma ha senso quando si osserva come lo utilizza il processo di backup: l'esplorazione il processo si interrompe quando raggiunge uno stato obiettivo e raccoglie la ricompensa, che diventa il valore Q di quella transizione finale. Ora, in un episodio di addestramento successivo, quando il processo di esplorazione raggiunge quello stato precedente, il processo di backup utilizza l'uguaglianza di cui sopra per aggiornare l'attuale valore Q dello stato precedente. La prossima volta la suaviene visitato il predecessore che il valore Q dello stato viene aggiornato e così via. A condizione che ogni stato venga visitato all'infinito spesso questo processo alla fine calcola la Q ottimale

A volte vedrai una frequenza di apprendimento α applicata per controllare la quantità di Q effettivamente aggiornata:

Q(s,a)=(1α)Q(s,a)+α(r(s,a)+γmaxaQ(s,a))
=Q(s,a)+α(r(s,a)+γmaxaQ(s,a)Q(s,a))
ααα is there so that as the new knowledge is only accepted in part. Initially α is set high so that the current (mostly random values) of Q are less influential. α is decreased as training progresses, so that new updates have less and less influence, and now Q learning converges


0

Here is a more detailed explanation of the relationship between state value and action value in Aaron's answer. Let's first take a look at the definitions of value function and action value function under policy π:

vπ(s)=E[Gt|St=s]qπ(s,a)=E[Gt|St=s,At=a]
where Gt=k=0γkRt+k+1 is the return at time t. The relationship between these two value functions can be derived as
vπ(s)=E[Gt|St=s]=gtp(gt|St=s)gt=gtap(gt,a|St=s)gt=ap(a|St=s)gtp(gt|St=s,At=a)gt=ap(a|St=s)E[Gt|St=s,At=a]=ap(a|St=s)qπ(s,a)
The above equation is important. It describes the relationship between two fundamental value functions in reinforcement learning. It is valid for any policy. Moreover, if we have a deterministic policy, then vπ(s)=qπ(s,π(s)). Hope this is helpful for you. (to see more about Bellman optimality equation https://stats.stackexchange.com/questions/347268/proof-of-bellman-optimality-equation/370198#370198)


0

The value function is an abstract formulation of utility. And the Q-function is used for the Q-learning algorithm.


Per il contesto di questa domanda, il V e Q sono diversi.
Siong Thye Goh,
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.