Want to make creations as awesome as this one?

Transcript

Aprendizaje temporal-diferencia (TD)

EMPEZAR

El aprendizaje temporal en el contexto del aprendizaje por refuerzo se refiere a la capacidad de un agente de aprender y comprender patrones temporales en su entorno. En lugar de tomar decisiones basadas únicamente en la información instantánea, el aprendizaje temporal implica considerar la secuencia de acciones y estados a lo largo del tiempo para tomar decisiones más informadas. Es crucial en situaciones donde el éxito o fracaso de una acción depende de su contexto temporal, permitiendo al agente aprender estrategias a largo plazo y adaptarse a cambios en el entorno a lo largo del tiempo. Esto mejora la capacidad del agente para tomar decisiones más efectivas en situaciones dinámicas y complejas.

Aprendizaje temporal

Aprendizajetemporal-diferencia (TD)

Recordemos que para el contexto de aprendizaje por refuerzo un entorno se refiere al contexto o al mundo en el cual un agente interactúa y toma decisiones para maximizar alguna forma de recompensa. Este entorno puede ser tan simple como un juego de tablero o tan complejo como el mundo real.

Es la unión de un (TD) y el método de Monte Carlo donde podemos usar la experiencia para resolver la predicción de un problema. Dadas algunas experiencias de una política Ambos métodos nos darán una estimación V de para el estado no terminal ocurriendo en dicha experiencia.

Las recompensas o las transiciones de estado, cambian con el tiempo. En otras palabras, las reglas del juego o las dinámicas del entorno evolucionan a lo largo de la interacción del agente con ese entorno. En entornos no estacionarios, donde las propiedades del entorno cambian con el tiempo, los algoritmos de aprendizaje por refuerzo pueden adaptarse utilizando técnicas específicas.

Son señales numéricas que el agente recibe del entorno como resultado de sus acciones. El objetivo del agente es aprender a tomar acciones que maximicen la recompensa acumulada a lo largo del tiempo.

Recompensas

Son las decisiones o movimientos que el agente puede realizar en un estado dado.

Acciones

Representan las situaciones o configuraciones en las que se encuentra el sistema en un momento dado.

Estados

El entorno de aprendizaje por refuerzo consta de:

SARSA como método de predicción:

Iniciar: Selecciona un estado inicial y elige una acción utilizando una estrategia basada en políticas, como (/varepsilon)-greedy, que equilibra la exploración y la explotación. Interactuar: Toma la acción seleccionada y observa la recompensa y el nuevo estado del entorno. Actualizar: Utiliza esta nueva información para actualizar la estimación de la función de valor (Q) para el par estado-acción actual.

¿Cómo funciona?

El algoritmo SARSA (State-Action-Reward-State-Action) es un algoritmo de aprendizaje por refuerzo que se utiliza para entrenar agentes en entornos donde las decisiones se toman en función de estados y acciones.

Algoritmo SARSA

Ejemplo

La ecuación dicha en palabras es que SARSA se centra en actualizar el valor inicial para cada par de estado S y la acción A sumando el TD, menos el valor de ese par de estados y acción originales, y todo multiplicado por un valor A, que representa el impacto con el que actualizarán los valores, lo cual dependerá de las acciones que se podrán tomar desde ese punto. Recordemos que esto se irá actualizando cada vez que se tome una acción en nuestro ambiente, puede darse el caso donde volviera a caer en el mismo estado que ya ha visitado, y este tendría que tener un valor actualizado de este estado con la última información.

Ejemplo

Una variante de SARSA es SARSA esta nos permite variar o quedarnos con lo que queremos recordar, los estados y acciones que hemos visitado en el mismo episodio, nos arrojará la actualización de valores, sin embargo aquí se multiplicará por la constante (mismo factor) respecto al valor de los estados antes visitados, con esta información se podrá tener el impacto de ese paso en el tiempo.

Antes de comenzar con el algoritmo Q learning, tenemos la necesidad de conocer el término Aprendizaje fuera de Política, el cuál se basa en evaluar una política objetivo mientras se sigue otra llamada de comportamiento.Ejemplo:Tenemos una política exploratoria como política de comportamiento y tenemos otra política, una política objetivo que ésta esté basada en la elección de la acción que nos de mayor valor, esto nos ayudará a balancear la exploración y la explotación, que si bien sabemos, esto es uno de los problemas que enfrenta esencialmente un aprendizaje por refuerzo, y si del todo esto no lo consideras interesante, agreguemos que nos permite aprender múltiples politicas (politicas objetivo) muestra se seguirá una política de comportamiento.

Algoritmo Q-Learning

El objetivo de este modelo es mejorar la política objetivo y de comportamiento, y para lograrlo Q-Learning utiliza una política para tener el valor de la mejor acción posible (política voraz) y una política de comportamiento con la finalidad de tener la totalidad de estados y acciones explorados (ε-Greddy), y este será alcanzado con la ecuación de Bellman para encontrar la política óptima, este algoritmo muchas veces converge más rápido que SARSA o inclusive que SARSA λ.

Este algoritmo cuyo objetivo es la unión de la aplicación del concepto de aprendizaje fuera de políticas hacia algoritmos como SARSA que disminuyen la variación de la política.

Presiona sobre cada fase para conocer la información

Al realizar una acción en un estado específico, el agente recibirá una penalización o bien una recompensa, al ser una recompensa, observará el nuevo estado en el que se encuentra, para posteriormente usar esta información y actualizar el valor de la tabla Q, este valor se basa en la ecuación de Bellman para mejorar los valores de utilidad.

Toda experiencia del agente se ve reflejada para mejorar su capacidad para tomar decisiones óptimas, debido a que el agente va interactuando con el entorno.

Después de ir explorando el ambiente y realizando la actualización de datos, este comenzará a seleccionar sus acciones óptimas donde están representan los valores más altos y las acciones que maximizan la mayor recompensa.

El agente comienza a realizar acciones aleatorias y con ello comienza a recopilar datos del entorno, a lo que llamaremos exploración.

Todos los valores se establecen en cero, o bien en cualquier valor aleatorio. Esto representará que el agente desconoce la calidad de las acciones a realizar.

El aprendizaje Q, se puede dividir en varias fases:

Aprendizaje continuo.

Selección de acciones óptimas.

Actualización de la tabla

Exploración del entorno

Inicialización de la tabla

Algunas aplicaciones con el Aprendizaje Q:

Presiona sobre el ícono para ver las Límitaciones y desafíos.

En esta área existen robots y prototipos donde aprenden en muy poco tiempo a moverse de forma autónoma.

Robótica

Los agentes que se utilizan hoy en día son capaces de aprende a jugar, tal es el caso de “Stratego”, un juego complejo, ya que requiere la capacidad de tomar decisiones ante información imprecisa.

Videojuegos

Por ejemplo, para el control del tráfico aéreo, optimizando las decisiones, con la finalidad de mitigar los problemas como la congestión y los retrasos.

Gestión de recursos

En este caso, es útil para mejorar el control de procesos, optimizar la eficacia de ciertas actividades, reducir los costos, etc.

Sistemas de control industrial

Los vehículos autónomos, los robots industriales, los drones, necesitan aprender en base a la función Q, debido a que ellos aprenderán a navegar en cualquier entorno, desde el más fácil hasta el más complejo, para realizar tareas específicas.

Sistemas autónomos

Los agentes aprenden y maximizan la experiencia de los usuarios con los datos propios que el usuario comparte, de modo que pueden sugerir productos o contenidos de acuerdo a sus preferencias.

Sistemas de Recomendación

Q-Learning y el aprendizaje por refuerzo: Teoría y práctica con Python

Ejemplo: Donde se observa el comportamiento de un Q-learning en Python.

Ejemplo: Donde se observa el comportamiento de un TD LAMBDA en Python es: // Un ambiente END(sin premio)-A-B-C(inicio)-D-E-END(con premio)

Sugerencias de ejemplos / ejercicios en Python:

Pongamos en práctica lo aprendido

Has finalizado está lección, sigue adelante.

Limitaciones y desafíos para el aprendizaje Q

Gran tamaño de la tabla QLa dimensión de dicha tabla, para entornos con gran cantidad de estados y acciones se hace de un tamaño elevado, siendo este un proceso de aprendizaje ineficaz.Aprendizaje ineficazLas recompensas son escasas o retrasadas, de modo que el aprendizaje Q puede demorar en aprender una política óptima.

Problemas de exploraciónEstos se consideran cruciales, debido a que si estas políticas exploran demasiado caemos en un retraso de aprendizaje, y si son políticas clásicas o conservadoras podemos tener resultados subóptimos.Parámetros de ajusteEstos parámetros son muy sensibles como la tasa de aprendizaje o la de descuento, de modo que influyen significativamente en el algoritmo.

SARSA

Es usada como método de predicción TD para enfrentar problemas de control. Al verlo en un diagrama, lo definiríamos de la siguiente forma:

Dicho algoritmo presenta un patrón de actualización para nuestra política, pues ahora los teoremas que aseguran la convergencia de los valores de estado bajo TD(0) también se aplican al algoritmo correspondiente para los siguientes valores de acción:

En pseudocódigo:

De esta forma, se pueden promediar todos los pasos realizados desde el inicio del episodio hasta ese momento para actualizar los valores de los estados y acciones visitados. Recordemos que siempre tenemos que tener en cuenta algunos valores clave para elegir denotados por Al ejecutar las actualizaciones también se considera el Error y siempre multiplicado por el valor que representa la magnitud de actualización de los valores,es decir: