Documento de Universidad sobre Aprendizaje por refuerzo y aplicaciones. El Pdf, de Informática, explora el aprendizaje por refuerzo, sus conceptos fundamentales, el ciclo de vida, la ecuación de Bellman y algoritmos como Q-Learning y SARSA, con ejemplos prácticos.
Ver más36 páginas


Visualiza gratis el PDF completo
Regístrate para acceder al documento completo y transformarlo con la IA.
UD4: Aprendizaje por refuerzo y aplicaciones
I. Introducción y objetivos II. ¿Qué es el aprendizaje por refuerzo? Ciclo de vida III. Explorar vs. explotar IV. Ecuación de Bellman: programación dinámica V. Q-Function: state-action value function VI. Algoritmos VII. Ejemplo: optimización de tareas en un almacén de comercio electrónico con Q-Learning VIII. Bandido multibrazo IX. Ejemplo: maximización de visitas en campañas de marketing online con el bandido multibrazo
X. Resumen XI. Caso práctico con solución
El aprendizaje por refuerzo o reinforcement learning en inglés está teniendo un auge muy importante en los últimos años dentro de la inteligencia artificial debido a los resultados tan destacados que está logrando en determinadas áreas que, sin ser especialmente complejas, son muy mediáticas, como pueden ser, por ejemplo, la conducción automática, la resolución de juegos de estrategia como el ajedrez o el go, y la superación de partidas de muchos videojuegos, como los de Atari.El aprendizaje por refuerzo es un tipo de aprendizaje mediante el cual un ente denominado agente aprende a comportarse en un entorno mediante "ensayo y error", aprendiendo a través de recompensas positivas o negativas de las acciones realizadas en el entorno. Este tipo de aprendizaje es muy útil para tareas que necesitan ser resueltas mediante un conjunto de acciones, como pueden ser, por ejemplo, una partida de ajedrez que necesita de una serie de movimientos para ganar la partida.
El aprendizaje por refuerzo, o reinforcement learning en inglés, es un tipo de aprendizaje automático mediante el cual un agente (robot, soware, etc.) aprende a comportarse en un entorno realizando acciones y viendo los resultados de esas acciones por medio de recompensas positivas o negativas en función de la acción realizada.
Este tipo de aprendizaje se basa en la manera de adiestrar a los animales; por ejemplo, un perro recibiendo un castigo si realiza alguna mala acción y recibiendo un premio si realiza una acción correcta en el entorno en el que vive.
El interés por el aprendizaje por refuerzo está creciendo en los últimos años debido a los grandes resultados que se están obteniendo con este tipo de aprendizaje automático en áreas como la conducción automática, juegos de estrategia como el ajedrez o el go, videojuegos, etc.
El aprendizaje por refuerzo es un tipo de aprendizaje muy útil para resolver aquellas tareas que implican la realización de un conjunto de acciones. Por este motivo, el aprendizaje por refuerzo está teniendo mucho éxito en la resolución de juegos de estrategia, como el ajedrez, donde para ganar una partida se debe realizar una serie de movimientos (acciones) en un tablero frente a un rival (entorno) y cuyo objetivo es ganar la partida (recompensa).
En el ámbito empresarial el aprendizaje por refuerzo tiene aplicaciones en todas aquellas tareas que, como ya se ha dicho, requieren de la realización de un conjunto de acciones para su solución, como puedan ser la optimización de procesos, reducción de costes o maximización de beneficios, que son tareas que requieren realizar una secuencia de acciones para llevarlas a cabo, como la optimización de tareas en un almacén de comercio electrónico, la minimización de costes en consumos energéticos o la maximización de beneficios de un negocio de venta online a través de la publicidad.
En los siguientes apartados se verán los detalles del aprendizaje por refuerzo, algunas de sus técnicas más relevantes y ejemplos prácticos.
El aprendizaje por refuerzo es un tipo de aprendizaje automático mediante el cual un agente que está en un entorno es capaz de percibir un estado. El agente puede realizar una serie de acciones en cada estado y estas acciones conllevan diferentes recompensas positivas o negativas en función de la acción realizada. El agente decide las acciones basándose en una política que tiene que aprender con el objetivo de maximizar las recompensas que obtiene por sus acciones (Barto, 1998).
Por hacer un símil con los aprendizajes supervisado y no supervisado, se puede considerar la política como el modelo del aprendizaje por refuerzo.
El proceso del aprendizaje por refuerzo sería el siguiente:
El esquema del proceso del aprendizaje por refuerzo es el siguiente:
Agente Estado St Recompensa Rt Acción A2 t+1 Entorno St+1 Figura 1. Esquema general del proceso del aprendizaje por refuerzo. Fuente: elaboración propia.
A continuación se verá con más detalle la definición de los elementos que describen el aprendizaje por refuerzo (Barto, 1998):
Otros dos elementos no definidos hasta el momento y que se irán viendo a lo largo de esta sección son los siguientes:
Supóngase un hipotético caso en el que se tiene que aprender de nuevo a ir desde el trabajo a casa y no se dispone de mapas ni de GPS para obtener el camino más corto. Esta tarea se puede resolver con aprendizaje con refuerzo, como se verá a continuación.
Para definir el entorno, se definirá la ciudad con una cuadrícula de estados donde en cada estado se podrán realizar las acciones de ir hacia arriba, abajo, izquierda o derecha, teniendo representada la ciudad de la siguiente manera: donde se tiene el trabajo en la casilla superior izquierda, en color rojo, y la casa, en la casilla inferior derecha, en color verde:
Figura 2. Ejemplo de aprendizaje por refuerzo (explorar vs. explotar) I. Fuente: elaboración propia.
Para resolver por primera vez esta tarea se empezará recorriendo una calle y cuando se llegue a una intersección se tomará una decisión sobre qué calle coger para llegar a casa. Como es la primera vez que se hace esta tarea habrá que ir tomando decisiones al azar sobre qué calle coger hasta llegar a casa. Este primer día se habrá aprendido un camino para llegar a casa, aunque no sea ni de lejos el más corto.
1 2 10 11 3 9 12 13 4 8 14 5 6 7 15 16 Figura 3. Ejemplo de aprendizaje por refuerzo (explorar vs. explotar) II. Fuente: elaboración propia.
1 2 3 9 10 11 4 8 12 5 6 7 13 14 Figura 4. Ejemplo de aprendizaje por refuerzo (explorar vs. explotar) III. Fuente: elaboración propia.
El segundo día ya se tendrá un conocimiento previo de cómo llegar a casa, así que se podrá seguir el mismo camino que el día anterior (camino muy largo) o seguir algunas partes del camino que del día anterior e investigar otros caminos tomando decisiones al azar sobre cuáles seguir para aprender nuevas rutas.
Si se hace esta tarea muchos días, al final se conseguirá aprender un camino muy corto (no necesariamente el más corto) para llegar a casa y ya no será necesario tomar decisiones al azar sobre qué camino seguir.
2 3 4 5 6 7 8 9 10 Figura 5. Ejemplo de aprendizaje por refuerzo (explorar vs. explotar) IV. Fuente: elaboración propia.
Esta tarea que se acaba de explicar es un ejemplo de cómo resolver un problema con aprendizaje por refuerzo en el que un agente = persona realiza una serie de acciones = decisiones en un entorno = ciudad para obtener una recompensa = llegar a casa.
Esta recompensa será mayor cuanto menos tiempo se tarde en llegar a casa y, por tanto, hay que aprender una política que permita determinar qué calle escoger para llegar a casa lo antes posible.
En esta analogía aparecen dos conceptos muy interesantes dentro del aprendizaje por refuerzo, como son: