Aprendizaje por Refuerzo: Introducción al mundo del RL

Miguel Silva
Apr 28, 2019 · 7 min read

Hola a todos, esta será una serie de posts donde se explicará la teoría detrás de el aprendizaje por refuerzo lo más simple y cautivadoramente que pueda para juntos introducirnos en este mundo, al final dejaré links donde se pueda investigar más profundamente.

Si deseas ver toda la serie de post completas accede aquí.
Me centraré en hacerlo en español debido a que no he encontrado un recurso parecido sobre este tema en este idioma. Cualquier comentario y/o modificación que se proponga será bien recibido.

Pacman siendo jugado por un agente de aprendizaje por refuerzo.

¿Que es aprendizaje por refuerzo?

Diferencia con aprendizaje supervisado

Diferencia con aprendizaje no supervisado

Debido a lo que hemos visto el aprendizaje por refuerzo se considera un tercer paradigma de aprendizaje automático.
Uno de los desafíos mas grandes que existen en el aprendizaje por refuerzo es el intercambio entre explotación y exploración, para que el agente pueda encontrar mayor recompensa debe explotar lo que le ha funcionado en el pasado, pero para descubrir estas acciones debe explorar nuevas acciones. Tomar alguna de las dos acciones exclusivamente lleva al error, por lo cual deben ser balanceadas progresivamente; una acción se debe probar muchas veces para saber cuanto recompensa esperar con mayor confianza, este dilema ha sido estudiado extensivamente sin encontrar una solución definitiva.

Otro aspecto clave del aprendizaje por refuerzo es el enfoque, el cual se centra en el problema de un agente orientado hacia un objetivo en un medio ambiente desconocido. Todos los agentes en aprendizaje por refuerzo tienen objetivos explícitos, pueden sentir los cambios en el ambiente y pueden tomar acciones que influencien al mismo, al tratarse de un enfoque que engloba todo el problema orientado hacia un objetivo no necesariamente significa un organismo completo o un robot.

Ejemplos

Open AI Dexterity

Demostración de dactyl.

AlphaStar

AlphaStar vs MaNa

Navegación de Robot

Robot desplazándose en ambiente con obstáculos.

Elementos del Aprendizaje por refuerzo

Una política define el modo que el agente se comporta en un momento definido, una política vendría a mapear que acciones se deberían llevar a cabo dado los estados que se han percibido del medio ambiente. Una política puede representar una función simple o una tabla de búsqueda, en la mayoría de casos puede involucrar un calculo extensivo, la política representa el núcleo del agente y es suficiente para determinar el comportamiento de este.

Ejemplo de la política implementada en el paper DeepMimic. (link en las referencias)

La señal de recompensa es lo que define el objetivo del problema que se quiere solucionar, cada paso de tiempo, el ambiente retorna un número llamado recompensa, el objetivo del agente es maximizar esta recompensa a largo plazo, en este caso la señal de recompensa decide cuales son buenos o malos eventos para el agente. La señal de recompensa termina siendo uno de los recursos mas importantes para la política debido a que si la acción conlleva a una recompensa baja, la política deberá variar para futuros eventos que involucren a esa acción en la misma situación.

Es aquí donde se genera la diferencia con la función de valor, ya que la señal de recompensa señala que será lo mejor para corto plazo, pero para largo plazo la encargada es la función de valor.
El valor representa a la cantidad de recompensa que puede esperar el agente en el futuro, iniciando desde el estado actual. Es decir la recompensa es lo que se debe buscar, sin recompensa no puede haber valor, y el valor solo sirve para encontrar una mayor recompensa, las acciones se guían en los valores para encontrar una mayor recompensa, por eso se buscan acciones que puedan traer mayor valor, no mayor recompensa, por que dichas acciones son las que obtienen mayor recompensa a largo plazo.

Por ultimo el modelo del medio ambiente, este modelo imita el comportamiento del medio ambiente y generalmente ayuda a inferir como el medio ambiente se va a comportar, por ejemplo, dado un estado y una acción el modelo puede predecir el siguiente estado y la siguiente recompensa. Normalmente estos modelos se utilizan para planificar que acciones se llevaran a cabo, los métodos que utilizan modelos para resolver problemas de aprendizaje por refuerzo se llaman métodos basados en modelos o model-based, por otro lado tambien existe el método llamado model-free o sin modelo el cual se basa en prueba y error, lo que es visto como lo contrario a la planificación.

Aparte de estos métodos tambien existen los basados en el valor/value based, basados en política/policy based, Actor crítico/actor critic que se encuentra basado en la política y el valor.

Problemas dentro del aprendizaje por refuerzo

Aprendizaje por Refuerzo

  • El medio ambiente es desconocido.
  • Los agentes interactúan con el medio ambiente.
  • Los agentes mejoran su política.

Planificación

  • Un modelo del medio ambiente es conocido.
  • El agente realiza cálculos con el modelo. (sin ninguna interacción externa)
  • El agente mejora su política.
  • Búsqueda, deliberación, razonamiento, etc.

Muchas gracias por leer este artículo, en los siguientes post entraremos a conocer mas de este mundo, si deseas ver el siguiente ingresa a Aprendizaje por Refuerzo: Procesos de Decisión de Markov — Parte 1

Referencias

Aprendizaje por Refuerzo: Introducción al mundo del RL

El inicio de una serie de Posts que nos ayudará a descubrir…

Aprendizaje por Refuerzo: Introducción al mundo del RL

El inicio de una serie de Posts que nos ayudará a descubrir lo fascinante del mundo del Aprendizaje por refuerzo, como funciona, como aprenderlo y no morir en el intento.

Miguel Silva

Written by

Data Scientist

Aprendizaje por Refuerzo: Introducción al mundo del RL

El inicio de una serie de Posts que nos ayudará a descubrir lo fascinante del mundo del Aprendizaje por refuerzo, como funciona, como aprenderlo y no morir en el intento.