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:
- ¿Cómo funciona el texto predictivo?
- Cómo agregar una razón de probabilidad para una característica en mi conjunto de datos
- ¿Cómo puede beneficiarse el sector financiero con el uso de LD y AI?
- ¿Qué es el procesamiento de señales y cómo se relaciona con el aprendizaje automático?
- ¿Cuáles son los mejores recursos disponibles en línea para aprender a pensar en diseño?
- 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!