¿Cuál es la función Q y cuál es la función V en el aprendizaje por refuerzo?

30

Me parece que la función puede expresarse fácilmente por la función y, por lo tanto, la función parece superflua. Sin embargo, soy nuevo en el aprendizaje por refuerzo, así que supongo que algo está mal.VQV

Definiciones

El aprendizaje Q y V está en el contexto de los procesos de decisión de Markov . Un MDP es una tupla de 5 con(S,A,P,R,γ)

  • S es un conjunto de estados (típicamente finito)
  • A es un conjunto de acciones (típicamente finito)
  • P(s,s,a)=P(st+1=s|st=s,at=a) es la probabilidad de pasar del estado al estado con la acción .ssa
  • R(s,s,a)R es la recompensa inmediata después de pasar del estado al estado con la acción . (Me parece que por lo general sólo materia).ssas
  • γ[0,1] se llama factor de descuento y determina si uno se enfoca en recompensas inmediatas ( ), la recompensa total ( ) o alguna compensación.γ=0γ=1

Una políticaπ , según Reinforcement Learning: An Introduction de Sutton and Barto es una función (esto podría ser probabilístico).π:SA

Según las diapositivas de Mario Martins , la función es y la función Q es V

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

Mis pensamientos

Los estados de función lo que el valor total esperado (no recompensa!) De un estado bajo la política de es.Vsπ

La función establece cuál es el valor de un estado una acción bajo la política .Qsaπ

Esto significa,

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

¿Correcto? Entonces, ¿por qué tenemos la función de valor? (Supongo que mezclé algo)

Martin Thoma
fuente

Respuestas:

15

Los valores Q son una excelente manera de hacer explícitas las acciones para que pueda lidiar con problemas donde la función de transición no está disponible (sin modelo). Sin embargo, cuando su espacio de acción es grande, las cosas no son tan agradables y los valores Q no son tan convenientes. Piense en una gran cantidad de acciones o incluso en espacios de acción continuos.

Desde una perspectiva de muestreo, la dimensionalidad de es mayor que por lo que podría ser más difícil obtener suficientes muestras en comparación con . Si tiene acceso a la función de transición, a veces es bueno.Q(s,a)V(s)(s,a)(s)V

También hay otros usos donde ambos se combinan. Por ejemplo, la función de ventaja donde . Si está interesado, puede encontrar un ejemplo reciente utilizando las funciones de ventaja aquí:A(s,a)=Q(s,a)V(s)

Arquitecturas de red en duelo para el aprendizaje de refuerzo profundo

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

Juan Leni
fuente
19

Vπ(s) es la función de valor de estado de MDP (Markov Decision Process). Es el retorno esperado a partir de política del estado siguiente .sπ

En la expresion

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

Gt es la recompensa con DESCUENTO total del paso de tiempo , en oposición a que es un retorno inmediato. Aquí está tomando la expectativa de TODAS las acciones de acuerdo con la política .tRtπ

Qπ(s,a)s π a es la función de valor de acción. Es el retorno esperado a partir del estado , siguiendo la política , tomando medidas . Se está centrando en la acción particular en el estado particular.sπa

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

La relación entre y (el valor de estar en ese estado) esQπVπ

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

Sumas cada valor de acción multiplicado por la probabilidad de tomar esa acción (la política ).π(a|s)

Si piensa en el ejemplo del mundo de la cuadrícula, multiplique la probabilidad de (arriba / abajo / derecha / izquierda) con el valor de estado de un paso adelante de (arriba / abajo / derecha / izquierda).

Aaron
fuente
55
Esta es la respuesta más concisa.
Brett
Tengo una fuente que dice que . ¿Cómo relaciona esta ecuación con la que proporciona en su respuesta, ? En su ecuación, está definiendo en términos de una suma ponderada de valoresEsto es diferente de la definición que tengo, que define como la más alta . Vπ(s)=maxaAQπ(s,a)Vπ(s)=aAπ(as)Qπ(a,s)VQVQ
nbro
@nbro Creo que depende del tipo de política que esté siguiendo. En una política puramente codiciosa tienes razón. Pero si se
tratara de
7

Tienes razón, la función te da el valor de un estado y te da el valor de una acción en un estado (siguiendo una política dada ). Encontré la explicación más clara de Q-learning y cómo funciona en el libro de Tom Mitchell "Machine Learning" (1997), cap. 13, que es descargable. se define como la suma de una serie infinita, pero aquí no es importante. Lo que importa es que la función se define comoVQπVQ

Q(s,a)=r(s,a)+γV(δ(s,a))
donde V * es el mejor valor de un estado si pudieras seguir una política óptima que no No lo se. Sin embargo, tiene una buena caracterización en términos de computación se realiza reemplazando en la primera ecuación para dar Q
V(s)=maxaQ(s,a)
QV
Q(s,a)=r(s,a)+γmaxaQ(δ(s,a),a)

Esto puede parecer una recursión extraña al principio porque expresa el valor Q de una acción en el estado actual en términos del mejor valor Q de un estado sucesor , pero tiene sentido cuando observa cómo lo utiliza el proceso de copia de seguridad: la exploración el proceso se detiene cuando alcanza un estado objetivo y recoge la recompensa, que se convierte en el valor Q de esa transición final. Ahora, en un episodio de entrenamiento posterior, cuando el proceso de exploración alcanza ese estado predecesor, el proceso de respaldo utiliza la igualdad anterior para actualizar el valor Q actual del estado predecesor. La próxima vez esse visita al predecesor el valor Q de ese estado se actualiza, y así sucesivamente (el libro de Mitchell describe una forma más eficiente de hacerlo almacenando todos los cálculos y repitiéndolos más adelante). Siempre que se visite cada estado infinitamente, este proceso eventualmente calcula la Q óptima

A veces verá una tasa de aprendizaje aplicada para controlar cuánto Q realmente se actualiza: Aviso ahora que la actualización del valor de Q no depende del valor Q actual. El libro de Mitchell también explica por qué es eso y por qué necesita : es para MDP estocásticos. Sin , cada vez que se intentaba un estado, un par de acciones habría una recompensa diferente, por lo que la función Q ^ rebotaría por todo el lugar y no convergería. está ahí para que, como el nuevo conocimiento solo se acepte en parte.α

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))
ααααse establece alto para que la corriente (en su mayoría valores aleatorios) de Q sea menos influyente disminuye a medida que avanza el entrenamiento, de modo que las nuevas actualizaciones tienen cada vez menos influencia, y ahora Q learning convergeα

SN
fuente
0

Aquí hay una explicación más detallada de la relación entre el valor del estado y el valor de la acción en la respuesta de Aaron. Primero echemos un vistazo a las definiciones de función de valor y función de valor de acción en política : donde es el retorno en el tiempo . La relación entre estas dos funciones de valor se puede derivar como π

vπ(s)=E[Gt|St=s]qπ(s,a)=E[Gt|St=s,At=a]
Gt=k=0γkRt+k+1t
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)
La ecuación anterior es importante. Describe la relación entre dos funciones fundamentales de valor en el aprendizaje por refuerzo. Es válido para cualquier política. Además, si tenemos una política determinista , entonces . Espero que esto te sirva de ayuda. (para ver más sobre la ecuación de optimización de Bellman https: //stats.stackexchange.vπ(s)=qπ(s,π(s)))

Jie Shi
fuente
0

La función de valor es una formulación abstracta de utilidad. Y la función Q se usa para el algoritmo Q-learning.

emmanuel
fuente
Para el contexto de esta pregunta, la y la son diferentes. VQ
Siong Thye Goh