¿Qué es una explicación intuitiva de la iteración de valores en el aprendizaje por refuerzo (RL)?

La iteración de valor es un algoritmo para encontrar la política óptima y su valor en un Proceso de decisión de Markov (MDP).

Un MDP se define por las siguientes características:

  • Conjunto de estados [matemática] s [/ matemática]
  • Un estado de inicio [math] s_0 [/ math]
  • Conjunto de acciones [matemáticas] a [/ matemáticas]
  • Probabilidades de transición – [matemática] P (s ‘| s, a) [/ matemática] o [matemática] T (s, a, s’) [/ matemática]
  • Recompensas – [matemáticas] R (s, a, s ‘) [/ matemáticas]
  • Un factor de descomposición [matemática] \ lambda [/ matemática]

Podemos encontrar el valor óptimo de cada estado [math] s [/ math] en un MDP realizando la siguiente actualización en todos los estados:

[matemáticas] V_ {k + 1} (s) = \ max \ limits_ {a} \ sum_ {s ‘} T (s, a, s’) [R (s, a, s ‘) + \ lambda V_k ( s ‘)] [/ matemáticas]

donde [math] k [/ math] representa nuestra iteración actual en el algoritmo.

Esta ecuación se conoce formalmente como la ecuación de Bellman y es el quid del algoritmo de iteración de valores.


Entonces, ¿cómo llegamos a esta ecuación intuitivamente?

Simplifiquemos un poco las cosas primero.

En primer lugar, por ahora, ignoremos este molesto factor de descuento [math] \ lambda [/ math].

En segundo lugar, un MDP se utiliza para razonar sobre el mundo estocástico, donde podemos tomar algunas medidas y no estamos exactamente seguros de dónde terminaremos. Pero, ¿qué pasaría si viviéramos en un mundo determinista, en el que se sabe que cada acción de algún estado [math] s [/ math] nos lleva a un estado [math] s ‘[/ math]? ¿Cómo se verían las cosas en este mundo simplificado?

Bueno, en este mundo determinista, sabemos que tomar una acción [matemáticas] a [/ matemáticas] del estado [matemáticas] s [/ matemáticas] seguramente me llevará a otro estado [matemáticas] s ‘[/ matemáticas] , y obtendremos una recompensa de [matemáticas] R (s, a, s ‘) [/ matemáticas]. Y ahora hemos aterrizado en un nuevo estado [math] s ‘[/ math] con un valor de [math] V (s’) [/ math]. Recuerde que también tenemos múltiples acciones entre las que podemos elegir, pero nuestro valor óptimo se logra al tomar la acción que conduce a la máxima utilidad general. En un mundo así, no es demasiado difícil ver que nuestra ecuación de actualización para el valor óptimo del estado debería ser la siguiente:

[matemática] V_ {k + 1} (s) = \ max \ limits_ {a} R (s, a, s ‘) + V_k (s’) [/ matemática]

En términos más simples, el valor óptimo de nuestro estado actual es solo el valor del nuevo estado en el que aterrizamos, sumado a la recompensa que obtenemos de ir a ese estado, y tomamos la mejor acción de todas las acciones posibles. La notación [math] \ max \ limits_ {a} [/ math] es una forma formal de expresar esta idea de elegir el mejor valor de un conjunto de acciones.

Ahora, agreguemos esta noción de factor de descomposición [math] \ lambda [/ math].

El factor de descomposición tiene un significado bastante intuitivo en que en la mayoría de los MDP del mundo real, asumimos implícitamente que es mejor obtener una recompensa más temprano que tarde. Una forma muy natural de modelar esto es hacer que el valor de las recompensas decaiga exponencialmente. Este factor de descomposición también asegura que los valores de los estados converjan; de lo contrario, podríamos obtener utilidades infinitas al obtener recompensas repetidas veces por acciones.

Todo esto se logra multiplicando el valor obtenido de los estados posteriores por [math] \ lambda [/ math]. Con el factor de descuento, la ecuación de actualización se modifica para ser

[matemáticas] V_ {k + 1} (s) = \ max \ limits_ {a} R (s, a, s ‘) + \ lambda V_k (s’) [/ matemáticas]

Observe que a medida que avanzamos a través de los pasos de tiempo, nuestros valores de estados que vemos en los pasos de tiempo futuros decaen exponencialmente.

La última pieza del rompecabezas en la ecuación de Bellman es factorizar en un mundo estocástico. En un mundo así, podríamos tomar una acción [matemáticas] a [/ matemáticas] del estado [matemáticas] s [/ matemáticas], pero terminar en varios estados posibles [matemáticas] s ‘[/ matemáticas]. Codificamos esta incertidumbre a través de una distribución de probabilidad.

Es decir, por cada posible [matemática] s ‘[/ matemática] del estado [matemática] s [/ matemática] resultante de una acción [matemática] a [/ matemática], tenemos una probabilidad de transición a ese estado [matemática] T (s, a, s ‘) [/ math].

Ahora, recuerda en el mundo determinista, teníamos la siguiente ecuación de actualización:

[matemáticas] V_ {k + 1} (s) = \ max \ limits_ {a} R (s, a, s ‘) + \ lambda V_k (s’) [/ matemáticas]

Ahora en el mundo estocástico, tenemos que tener en cuenta las recompensas y los valores de muchos estados posibles, pero cada uno tiene una probabilidad definida de llegar a ese estado. Como resultado, tenemos que tomar un valor esperado. Informalmente, esto es simplemente la suma de los valores de cada uno de estos posibles estados, ponderados por sus probabilidades.

Matemáticamente, nuestra ecuación de actualización se traduce en lo siguiente:

[matemáticas] V_ {k + 1} (s) = \ max \ limits_ {a} \ sum_ {s ‘} T (s, a, s’) [R (s, a, s ‘) + \ lambda V_k ( s ‘)] [/ matemáticas]

Ahí lo tienes: ¡una derivación intuitiva del algoritmo de iteración de valores!

More Interesting

¿Cuáles son algunas estructuras de datos esenciales y conocimiento de algoritmos necesarios para estudiar ciencia de datos?

¿Qué áreas debo conocer bien para ser un buen ingeniero de visión por computadora?

¿Qué empresas / startups en India están contratando para trabajos de ciencia de datos, análisis de datos o aprendizaje automático?

¿Qué algunos documentos sobre desafíos en predicción financiera con técnicas de aprendizaje automático?

¿Es realmente posible comenzar una carrera seria de IA / ML con el objetivo final de trabajar en un lugar como OpenAI, Google o DeepMind a través del autoestudio?

¿Alguien siente que la programación de sistemas tradicionales es muy diferente del aprendizaje automático?

¿Por qué todas las principales empresas de tecnología abren fuentes principales de su tecnología de inteligencia artificial?

¿Qué sitio web ofrece 'filtrado colaborativo como servicio'?

¿Qué tan efectivo es usar medidas simples de correlación en la selección de características?

¿Por qué se usaría H2O.ai sobre la herramienta de aprendizaje automático scikit-learn?

¿En qué se diferencia el aprendizaje automático de la minería de datos?

¿Qué es un buen algoritmo de recomendación de películas?

¿Cuáles son las aplicaciones industriales del algoritmo vecino K más cercano?

Cómo lidiar con un trabajo de investigación cuando contiene muchos materiales de fondo que no has estudiado

¿En qué debería concentrarme después de aprender el aprendizaje automático si no estoy interesado en el aprendizaje profundo?