Aprendizaje por refuerzo - Ejemplo práctico y marco

Con este artículo queremos tender un puente entre la comprensión básica del aprendizaje por refuerzo (RL) y la resolución de un problema con métodos de RL. El artículo se divide en tres secciones. La primera sección es una breve introducción al RL. En la segunda sección se explican los principales conceptos necesarios para formular un problema de RL con un ejemplo. Finalmente, en la tercera y última sección, se presenta una implementación básica para resolver un problema con RL.

¿Qué es el aprendizaje por refuerzo?

El aprendizaje por refuerzo (RL) es un tipo de aprendizaje automático. Consiste en entrenar a agentes para que tomen decisiones en un entorno aprendiendo de las consecuencias de sus acciones. El agente recibe retroalimentación en forma de "recompensas" o "castigos" que utiliza para actualizar su estrategia de toma de decisiones y mejorar su rendimiento a lo largo del tiempo. El agente aprende por ensayo-error, es decir, prueba diferentes acciones y recibe retroalimentación en forma de recompensas o castigos. La RL puede utilizarse en cualquier proceso o sistema que implique un proceso secuencial de toma de decisiones susceptible de optimización.

La RL tiene aplicaciones en ámbitos como la conducción autónoma, la robótica, los sistemas de control, la IA de juegos y los negocios y las finanzas, por ejemplo para optimizar la toma de decisiones en la optimización de carteras y la asignación de recursos. También se ha utilizado para mejorar el rendimiento de sistemas de diálogo (chatbots) como ChatGPT que han causado mucho revuelo en los últimos meses.

Aprendizaje por refuerzo - Ejemplos y definiciones

Esta sección ofrece una visión general de las definiciones y descripciones de los términos más importantes necesarios para comprender la dinámica de los algoritmos de RL. Siempre es más fácil entender términos complejos mediante un sencillo ejemplo de aprendizaje por refuerzo visual Por lo tanto, a continuación se explicarán los distintos términos con la ayuda de un sencillo problema del Explicar el aprendizaje por refuerzo.

El objetivo principal de nuestro robot QT es ganar el juego llegando al campo objetivo (también conocido como estado objetivo), que está marcado por monedas, encontrando y siguiendo el camino óptimo. Para moverse por el laberinto, QT puede realizar cuatro acciones: subir, bajar, ir a la izquierda e ir a la derecha. En este entorno hay algunos obstáculos, como el campo de rayos y el bloque infranqueable (recuadro gris). Estos obstáculos pueden matar a QT o impedirle realizar su acción prevista (movimiento). Como QT no tiene conocimiento previo del laberinto, la idea es que QT intente explorar el entorno navegando al azar y encontrando un posible camino hacia la meta.

Para entender mejor cómo puede conseguirlo la QT, es importante comprender algunos componentes y términos básicos de la RL que también se utilizan para formular el problema matemáticamente.

El laberinto se llama Alrededores (Entorno) y el robot QT como Agente es el término utilizado. En el aprendizaje por refuerzo, el entorno es el sistema, la simulación o el espacio en el que el agente puede actuar. Lo más importante es que el agente no puede cambiar en modo alguno las reglas o la dinámica del entorno. El entorno es el mundo del agente en el que interactúa realizando determinadas acciones y recibiendo retroalimentación. El agente interactúa con el entorno y toma decisiones. Puede ser un robot, un programa informático u otro sistema capaz de realizar acciones y recibir una recompensa. En el ejemplo anterior, QT (el agente RL) interactúa con el laberinto (entorno) moviéndose en una de las direcciones y actualizando su posición en el laberinto. A continuación se describen los distintos componentes y características de la interacción agente-entorno:

Aprendizaje por refuerzo: explicado de forma compacta, Tech Deep Dive, Alexander Thamm GmbH

Para una introducción compacta a la definición y terminología del aprendizaje por refuerzo, lea nuestro artículo básico sobre la metodología:

Aprendizaje por refuerzo: explicado de forma compacta

Definiciones fundamentales del aprendizaje por refuerzo

  1. Estado (estado): Los parámetros u observaciones que describen el entorno del agente se denominan colectivamente estado del entorno (=estado). Incluye todo lo que el agente puede observar sobre el entorno, así como todas las variables internas del agente que pueden ser relevantes para sus acciones. En el ejemplo de aprendizaje por refuerzo anterior, el estado del robot es su posición en el laberinto. Algunos entornos, como el ejemplo anterior, tienen estados especiales denominados estados terminales que incluyen el estado objetivo (campo de monedas) y otros estados terminales (campo de relámpagos). Un estado terminal es el estado del entorno que, cuando se alcanza, el agente es incapaz de continuar. En este caso, el agente finaliza su ciclo de aprendizaje actual y comienza un nuevo ciclo de aprendizaje con los nuevos conocimientos adquiridos sobre el entorno.

  2. AcciónAcción: una acción es una decisión tomada por el agente y constituye su medio de interacción con el entorno. Puede ser un movimiento físico, un cambio en el estado interno del agente o cualquier otro tipo de decisión que el agente pueda tomar. Las consecuencias de las acciones realizadas por el agente son el cambio en el estado del entorno y la retroalimentación que recibe. En el ejemplo de aprendizaje por refuerzo anterior, nuestro robot tiene cuatro acciones posibles (arriba, abajo, izquierda o derecha) que puede realizar para cambiar su estado.

  3. Recompensa (recompensa): Cuando un agente realiza una acción, el entorno no sólo le proporciona retroalimentación en forma del nuevo estado, sino también una señal de recompensa. Una recompensa representa el beneficio que obtiene el agente al entrar en el nuevo estado en función de su última acción realizada. El componente de recompensa es de suma importancia en la RLya que guía al agente en la búsqueda del camino o proceso óptimo. Los conceptos de la siguiente sección explican que el agente trata esencialmente de maximizar la recompensa acumulada que recibe del entorno para encontrar el camino más corto, como es el caso de QT en el ejemplo anterior. En el ejemplo, la recompensa para el agente que pisa el estado objetivo (monedas) es de +10 puntos, la recompensa para el agente que pisa el campo de relámpagos es de -10 puntos y para todos los demás estados podría ser de 0 o -1 punto.

  4. Probabilidad de transición (probabilidad de transición): Es una de las propiedades más importantes para algunos de los entornos. Define la probabilidad de pasar de un estado a otro realizando una determinada acción en el estado actual. Este parámetro define si el entorno estocástico o determinista es. En consecuencia, el comportamiento del agente puede ser diferente en un mismo entorno. Un ejemplo facilita la comprensión de este concepto.
    • Entorno deterministaPara estos entornos, la probabilidad de transición se fija en 1. Esto significa que la transición del agente de un estado a otro viene determinada únicamente por la acción que realiza en el estado actual. En el siguiente ejemplo, si QT decide moverse hacia la derecha, acabaría en el campo de rayos y moriría definitivamente. Si, por el contrario, decide moverse hacia arriba, estaría un paso más cerca del estado objetivo. Durante el resto del artículo, el entorno seguirá siendo determinista.

    • Entorno estocásticoEn tales entornos, la transición del agente de un estado a otro viene determinada por la acción que realiza y por la distribución de la probabilidad de transición, que determina a qué estados puede transitar. Las probabilidades de transición pueden definirse del siguiente modo (del problema del lago helado): El agente se mueve en la dirección prevista con una probabilidad de 1/3 (33%) o en dirección perpendicular con la misma probabilidad de 1/3 (33%), como se muestra a continuación. Suponiendo que QT decida moverse hacia la derecha, la probabilidad de que caiga en el campo de rayos es de 33 % y de que caiga en uno de los dos bloques de arriba y de abajo con 33 % cada uno. Esto significa que, a diferencia del entorno anterior, en el que QT debe evitar moverse a la derecha a toda costa para sobrevivir, ahora puede realizar una acción para moverse a la derecha, ya que esto le ofrece una probabilidad de supervivencia de 66 %.

  1. Exploración frente a explotación (exploración frente a explotación): En RL, exploración y explotación son dos conceptos que se refieren al equilibrio entre probar nuevas acciones para explorar nuevos estados (exploración) y tomar la mejor acción conocida en el estado actual (según la evaluación actual de QT) para conseguir la mayor recompensa posible (explotación).

    • Durante la fase de exploración, el agente prueba nuevas acciones para aprender más sobre el entorno y mejorar su toma de decisiones. Esto ayuda al agente a descubrir estados con recompensas elevadas y a realizar acciones para alcanzarlos. En la fase de explotación, intenta alcanzar los estados finales de la forma óptima para maximizar la recompensa acumulada. En el ejemplo de aprendizaje por refuerzo anterior, QT probaría primero acciones para descubrir distintos estados y posibles caminos hacia el objetivo. Unas veces acabará en el campo del rayo y otras en el de la moneda, pero irá acumulando conocimientos y aprendiendo qué combinaciones estado-acción conducen a esos estados. Con la experiencia, irá aprendiendo a encontrar el camino óptimo (en nuestro ejemplo, el más corto).

    • El equilibrio entre la exploración y la explotación suele denominarse la equilibrio entre exploración y explotación denota. En general, cuanto más explora un agente, más conocimientos adquiere sobre el entorno, pero puede tardar más en obtener la recompensa más alta y encontrar la estrategia óptima. Por otro lado, cuanto más explora un agente, más rápido puede obtener una mayor recompensa, pero no encuentra necesariamente la estrategia óptima y se pierde la posibilidad de descubrir estados muy gratificantes. A continuación se describen algunas estrategias comunes que ayudan a equilibrar la exploración y la explotación:

      • Algoritmo Epsilon-Greedy (ε-greedy) En este algoritmo, el agente comienza con una alta probabilidad de exploración (ε) y una baja probabilidad de explotación (1-ε). Esto permite al agente explorar nuevas acciones inicialmente y utilizar gradualmente las acciones mejor conocidas a partir de la experiencia. La tasa de cambio del valor de ε es un hiperparámetro que depende de la complejidad del problema de RL. Puede ser lineal, exponencial o definirse mediante una expresión matemática.

      • Límite superior de confianza (Upper Confidence Bound = UCB): En este algoritmo, el agente elige una acción basándose en el equilibrio entre la recompensa esperada y la incertidumbre de la acción. Esto permite al agente explorar acciones con alta incertidumbre, pero también utilizar acciones con altas recompensas esperadas. En UCB, el agente mantiene una estimación de la recompensa esperada de cada acción y una medida de la incertidumbre de la estimación. El agente elige la acción con el valor más alto del "Límite superior de confianza" (Upper Confidence Bound, UCB), que es la suma de la recompensa esperada y un término que representa la incertidumbre de la estimación. El término de incertidumbre suele elegirse como la raíz cuadrada del logaritmo natural del número total de acciones elegidas. La intuición detrás de esto es que la incertidumbre de la estimación debería disminuir a medida que aumenta el número de acciones elegidas, ya que el agente tiene más datos en los que basar su estimación.

Formulación matemática de las terminologías basadas en el ejemplo del aprendizaje por refuerzo

Una vez aprendida la terminología básica asociada al "problema del laberinto", vamos a formular y comprender esta terminología desde una perspectiva matemática.

  1. El robot QT (agente) recibe el estado S0 del entorno - el bloque actual del robot en el entorno
  2. Basándose en esta condición, S0 QT (agente) realiza una acción A0 off - digamos que QT se mueve hacia arriba
  3. El entorno cambia a un nuevo estado S1 - nuevo bloque
  4. El entorno ofrece al agente una recompensa R1 - QT aún no ha muerto (recompensa positiva, +1)
  5. La probabilidad de transición se expresa como P(S1 | S0, A0) o T - aquí es 1, ya que el entorno es inherentemente determinista

El bucle anterior representa un paso del agente. El agente debe dar varios pasos {S0, A0, R1, S1, T0} debe explorar su entorno e identificar las condiciones buenas y malas junto con las respectivas acciones que conducen a ellas. Y, por último, debe recorrer el camino óptimo hacia la meta. Ahora bien, para formular y resolver un problema de decisión u optimización utilizando el aprendizaje por refuerzo, es necesario explicar algunos conceptos y términos muy importantes.

En nuestra inmersión profunda, destacamos las interacciones entre los métodos empresariales, la neurociencia y el aprendizaje por refuerzo en inteligencia artificial y biológica.

Aprendizaje por refuerzo - Algoritmos en el cerebro

DESCARGO DE RESPONSABILIDAD: ¡Ahora empieza una inmersión matemática en profundidad!

Modelización matemática de un problema de decisión

1. Proceso de decisión de Markov = MDPProceso de decisión de Markov: Un proceso de decisión de Markov es aquel en el que los estados futuros dependen únicamente del estado presente y no están conectados en modo alguno con los estados pasados que condujeron al estado presente. Este marco matemático se denomina para modelizar problemas de decisión en el aprendizaje por refuerzo . Dada una secuencia de estados, acciones y las recompensas s0, a0, r0, s1, a1, r1, s2, a2, r2....st, at, rt (la llamada historia) observadas por un agente, se dice que la señal de estado tiene la propiedad de Markov si satisface la siguiente ecuación:
P (St+1 = s′, Rt+1 = r′| st, at) = P (St+1 = s′, Rt+1 = r′| st, at, rt, ... s0, a0, r0), donde:

  • S es un conjunto de estados, S = {s0, s1, ...}
  • A es un conjunto de acciones, A = {a0, a1, ...}
  • T es un conjunto de probabilidades de transición, T = {P(st+1|st, At), P(st+2|st+1, At+1), P(st+3|st+2, At+2), ...}
  • R es un conjunto de recompensas, R = {r0, r1, ...}

2. Rentabilidad acumulada y factor de descuento (Rentabilidad acumulada y factor de descuento)

a) Los agentes de RL aprenden eligiendo una acción que maximiza la recompensa futura acumulada. La recompensa futura acumulada se denomina rendimiento y se suele designar por R. El rendimiento en el momento t se expresa de la siguiente manera:

b) Esta ecuación sólo tiene sentido si la tarea de aprendizaje termina tras un número reducido de pasos. Si la tarea de aprendizaje requiere muchas decisiones secuenciales (por ejemplo, equilibrar una barra), el número de pasos es elevado (o incluso infinito), por lo que el valor de la recompensa puede ser ilimitado. Por lo tanto, es más habitual utilizar la recompensa descontada acumulativa futura G (recompensa acumulada descontada G) que se utilizará, que se expresa de la siguiente manera:

Donde γ se denomina factor de descuento y varía entre [0, 1]. Gamma (γ) controla la importancia de las recompensas futuras en relación con las recompensas inmediatas. Cuanto menor sea el factor de descuento (más cercano a 0), menos importantes serán las recompensas futuras, y el agente tenderá a centrarse sólo en las acciones que produzcan las máximas recompensas inmediatas. Cuando el valor de γ es mayor (más cercano a 1), significa que cada recompensa futura tiene la misma importancia. Si el valor de γ se fija en 1, la expresión para la recompensa de descuento acumulativo es G el mismo que el del rendimiento R.

3. PolíticaUna política (denominada π(s)) es un conjunto de reglas o un algoritmo que el agente utiliza para determinar sus acciones. Esta política determina cómo se comporta el agente en cada estado y qué acción debe elegir en un estado concreto. Para un agente, una política es una correspondencia entre los estados y sus respectivas acciones óptimas. Inicialmente, cuando el agente empieza a aprender, una política consiste en un mapeo de estados a acciones aleatorias. Sin embargo, durante el entrenamiento, el agente recibe diversas recompensas del entorno que le ayudan a optimizar la política. La política óptima es la que permite al agente maximizar la recompensa en cada estado. La política óptima se denota por π* y es un mapeo de estados a las respectivas acciones óptimas en esos estados.

4. Funciones de valor de acción y valor de estado (funciones de valor de acción y de valor de estado): Para optimizar la política, el agente tiene que averiguar dos cosas. Primero, cuáles son los estados buenos y malos, y segundo, qué acciones son las buenas y malas para cada estado. Para ello, se pueden utilizar dos funciones de valor distintas: la función de valor de estado V(s) y la función de valor de acción Q(s,a).

a) Función de valor de estado - La función de valor de estado define la "bondad" del agente que se encuentra en un estado... Matemáticamente, la función de valor de estado estima la utilidad futura esperada de un estado determinado. Estos valores indican la utilidad esperada si se supone que una condición y sigue su política π.

Se denomina V(s) o Vπ(s), donde s es el estado actual. Se define matemáticamente como

b) Función de valor de acción La función de valor de la acción evalúa "la calidad de una acción en un estado", es decir, lo buena que es una determinada acción en un determinado estado. Matemáticamente, estima la utilidad futura esperada de una acción determinada en un estado determinado y de (re)seguir posteriormente la estrategia. Es similar a la función de valor de estado, salvo que es más específica porque evalúa la calidad de cada acción en un estado y no sólo el estado en sí.

Se denomina Q(s,a) o Qπ(s,a), donde s es el estado actual y a es la acción realizada:

5. Ecuación de Bellman: La ecuación de Bellman es fundamental para la estimación de las dos funciones de valor. Define la relación entre el par estado-acción actual (s, a), la recompensa observada y los posibles pares estado-acción sucesores. Esta relación se utiliza para encontrar la función de valor óptima. La ecuación de Bellman define el valor de un par estado-acción Q(s,a) como la recompensa esperada de la mejor acción en ese estado s más el valor descontado del mejor par estado-acción siguiente (según la política actual).

La función de Bellman puede definirse tanto para la función estado-valor V(s) como para la función acción-valor Q(s, a) de la siguiente manera:

V(s) = max(a) [R(s,a) + γ * V(s')].

Q(s,a) = R(s,a) + γ * max(a') [Q(s',a')], donde

  • V(s) es el valor del estado s
  • Q(s,a) es la función de valor de la acción a en el estado s
  • s' es el siguiente estado
  • a' la siguiente acción es
  • γ es el factor de descuento Gamma
  • max(a) es el valor máximo de todas las acciones posibles

Profundice en el concepto de la "tríada mortal" en el aprendizaje por refuerzo, sus implicaciones y enfoques. Esta inmersión profunda le ofrece una visión general de los conceptos de RL, la introducción de la "tríada mortal" y sus estrategias de afrontamiento.

Aprendizaje por refuerzo - La tríada mortal

Aplicación del aprendizaje por refuerzo

El procedimiento de estimación paso a paso de los valores de acción a partir de las tuplas observadas estado-acción-recompensa-estado se denomina aprendizaje Q. Los valores Q se actualizan mediante la ecuación de Bellman:

  1. Q(s, a) = Q(s, a) + α * (R(s,a) + γ * max(a') [Q(s', a')] - Q(s, a)), donde
  • Q(s,a) es el valor Q para realizar la acción a en el estado s
  • R(s,a) es la recompensa inmediata por la ejecución de la acción a en el estado s
  • s' es el siguiente estado
  • a' la siguiente acción es
  • γ es el factor de descuento gamma
  • α es la tasa de aprendizaje alfa
  1. Tablas QLas tablas Q son una estructura de datos (tabla bidimensional) en la que se almacenan todos los valores de acción posibles Q(s,a). Cada entrada de la tabla representa el valor Q de un determinado par estado-acción. La tabla Q se rellena inicialmente con valores arbitrarios (o ceros) y se actualiza con el tiempo a medida que el agente descubre nuevos estados y recibe recompensas al pasar a esos estados. La política se deriva de la tabla Q para determinar la mejor acción para cada estado. En el ejemplo anterior, hay 12 estados (cuadrículas de 3 x 4) y 4 acciones (arriba, abajo, izquierda, derecha). Por tanto, la tabla Q es una matriz con 12 filas (una para cada estado) y 4 columnas (una para cada acción).

  2. El entrenamiento del agente de aprendizaje por refuerzo (entrenar significa estimar los valores Q) requiere una interacción iterativa del agente con el entorno. Este entrenamiento es en episodios realizado: Un episodio se refiere a una única ejecución de la interacción agente-entorno que comienza con un estado inicial (o estado de inicio) y termina en un estado final o cuando se ha realizado un determinado número de pasos. Un episodio consiste en todas las decisiones que toma un agente durante esa única interacción. En el ejemplo anterior, el episodio termina cuando QT alcanza uno de los estados finales: campo de relámpagos o campo de monedas. Esto se debe a que en el campo relámpago QT muere y debe reiniciarse el entrenamiento. En el campo de la moneda, QT ha alcanzado con éxito su objetivo y el entrenamiento debe reiniciarse para mejorar su rendimiento. Una vez entrenado QT y optimizada la tabla Q, se puede extraer la estrategia óptima (o "política óptima") seleccionando la mejor acción (mayor valor de recompensa futura esperada) para cada estado. La tabla Q puede tener el siguiente aspecto:
Aprendizaje por refuerzo - Casos prácticos para empresas, Dr. Philipp Schwartenbeck, Alexander Thamm GmbH

Lea sobre el uso del aprendizaje por refuerzo en la industria y otros sectores relevantes en nuestro artículo técnico:

Aprendizaje por refuerzo - Casos prácticos para empresas

Autor:inside

Brijesh Modasara

Brijesh se incorporó a [en] en mayo de 2022 como científico de datos sénior. Es experto en el campo del aprendizaje por refuerzo y la minería de datos. Le gusta mantener conversaciones interesantes sobre aplicaciones innovadoras de la IA y el aprendizaje por refuerzo en particular. Cuando no está revolucionando el mundo de la tecnología, lo encontrarás capturando momentos impresionantes a través de su objetivo, combinando su amor por los viajes y la fotografía.

0 comentarios