¿Qué es el aprendizaje por refuerzo? Tipos, Algorithms & Ejemplo

⚡ Resumen inteligente

El aprendizaje por refuerzo es un método de aprendizaje automático en el que un agente de software aprende actuando dentro de un entorno, obteniendo recompensas o penalizaciones y ajustando su comportamiento para maximizar la recompensa acumulada a lo largo de muchos pasos.

  • 🔘 Bucle principal: Un agente observa un estado, realiza una acción, recibe una recompensa y llega a un nuevo estado.
  • ☑️ Tres enfoques: Los métodos basados ​​en valores, en políticas y en modelos difieren en lo que el agente aprende realmente.
  • Dos modelos de aprendizaje: Los procesos de decisión de Markov plantean el problema; el aprendizaje Q lo resuelve a partir de la experiencia.
  • 🧪 No supervisado: No existen respuestas etiquetadas, solo una señal de recompensa retardada que el agente debe atribuir a acciones anteriores.
  • 🛠️ Donde encaja: Robótica, juegos, control de aeronaves, tutoría adaptativa y planificación de estrategias empresariales.
  • ⚙️ Costos conocidos: El entrenamiento requiere mucha capacidad de cálculo, el diseño de las recompensas es delicado y los entornos reales son ruidosos y no estacionarios.

Aprendizaje por refuerzo: algoritmos, tipos y ejemplos

¿Qué es el aprendizaje por refuerzo?

Aprendizaje reforzado es un Aprendizaje automático Método que describe cómo los agentes de software deben actuar en un entorno. Al agente no se le muestran las respuestas correctas; aprende de la recompensa que recibe y ajusta su comportamiento para maximizar la recompensa acumulada.

El aprendizaje por refuerzo es una rama del aprendizaje automático por derecho propio, junto con supervisados y sin supervisión aprendizaje. Cuando la política o función de valor del agente está representada por una red neuronal, la combinación se llama aprendizaje de refuerzo profundo — esa combinación es lo que permite a un agente alcanzar un objetivo complejo o maximizar una dimensión específica a lo largo de muchos pasos.

Componentes importantes del método de aprendizaje por refuerzo

Antes de comprender los algoritmos, conviene identificar sus componentes. El siguiente diagrama muestra cómo el agente, el entorno, la acción y la señal de recompensa se integran en un ciclo.

Bucle de aprendizaje por refuerzo que conecta agente, acción, entorno, estado y recompensa.

Aquí tienes algunos términos importantes que se utilizan en el aprendizaje por refuerzo:

  • Agente: La entidad que realiza acciones en un entorno para obtener alguna recompensa.
  • Medio ambiente (e): Un escenario al que se tiene que enfrentar un agente.
  • Recompensa (R): Recompensa inmediata que recibe un agente cuando realiza una acción o tarea específica.
  • Estado(s): Estado se refiere a la situación actual que devuelve el medio ambiente.
  • Política (π): La estrategia aplicada por el agente para decidir la siguiente acción en función del estado actual.
  • Valor (V): La rentabilidad esperada a largo plazo con descuento, en comparación con la recompensa a corto plazo.
  • Función de valor: Especifica el valor de un estado, es decir, la cantidad total de recompensa que un agente puede esperar acumular a partir de ese estado.
  • Modelo del medio ambiente: Esto imita el comportamiento del entorno. Permite hacer inferencias y también determinar cómo se comportará el entorno.
  • Métodos basados ​​en modelos: Métodos que resuelven problemas de aprendizaje por refuerzo aprendiendo o utilizando primero un modelo del entorno y, a continuación, planificando en función de él.
  • Valor Q o valor de acción (Q): El valor Q es bastante similar al valor. La única diferencia entre ambos es que toma un parámetro adicional: la acción actual.

¿Cómo funciona el aprendizaje por refuerzo?

Una analogía cotidiana aclara el mecanismo antes de que aparezca cualquier notación.

Imagina que intentas enseñarle nuevos trucos a tu gato.

  • Como la gata no entiende inglés ni ningún otro idioma humano, no podemos decirle directamente qué hacer. En su lugar, seguimos una estrategia diferente.
  • Simulamos una situación y el gato intenta reaccionar de muchas maneras diferentes. Si su respuesta es la deseada, le damos pescado.
  • Ahora, cada vez que la gata se encuentra en la misma situación, realiza una acción similar con aún más entusiasmo, con la esperanza de obtener una mayor recompensa (comida).
  • Ese es el aprendizaje que el gato obtiene sobre "qué hacer" a partir de experiencias positivas.
  • Al mismo tiempo, el gato también aprende qué no debe hacer cuando se enfrenta a experiencias negativas.

Ejemplo de aprendizaje por refuerzo

La siguiente figura representa esa historia del gato dentro del bucle formal, donde el hogar representa el entorno y el pez la recompensa.

Ejemplo de gato y dueño mapeado en el bucle agente-entorno de aprendizaje por refuerzo
Cómo funciona el aprendizaje por refuerzo

En este caso,

  • Tu gato es un agente que está expuesto al entorno. En este caso, es tu casa. Un ejemplo de un estado podría ser que tu gato esté sentado y que uses una palabra específica para que camine.
  • Nuestro agente reacciona realizando una transición de acción de un "estado" a otro "estado".
  • Por ejemplo, tu gato pasa de estar sentado a caminar.
  • La reacción de un agente es una acción, y la política es un método para seleccionar una acción dado un estado en espera de mejores resultados.
  • Tras la transición, el agente puede recibir una recompensa o una penalización a cambio.

Aprendizaje reforzado Algorithms

Existen tres enfoques para implementar un algoritmo de aprendizaje por refuerzo, y se diferencian principalmente en lo que el agente almacena y aprende.

Basado en valores

En un método de aprendizaje por refuerzo basado en valores, se intenta maximizar una función de valor V(s). En este método, el agente espera un retorno a largo plazo de los estados actuales bajo la política π.

Basado en políticas

En un método de aprendizaje por refuerzo basado en políticas, se intenta idear una política tal que la acción realizada en cada estado ayude a obtener la máxima recompensa en el futuro.

Dos tipos de métodos basados ​​en políticas son:

  • Determinista: Para cualquier estado, la misma acción es producida por la política π.
  • Estocástico: Cada acción tiene una cierta probabilidad, dada por la siguiente ecuación.

Política estocástica:

π(a|s) = P[At = a | St = s]

Basado en modelos

En este método de aprendizaje por refuerzo, se crea un modelo virtual para cada entorno. El agente aprende a desempeñarse en ese entorno específico.

Características del aprendizaje por refuerzo

Estas son algunas características importantes del aprendizaje por refuerzo:

  • No hay supervisor, solo un número real o señal de recompensa.
  • Toma de decisiones secuencial
  • El tiempo juega un papel crucial en los problemas de refuerzo.
  • La retroalimentación suele ser tardía en lugar de instantánea.
  • Las acciones del agente determinan los datos posteriores que recibe.

Tipos de aprendizaje por refuerzo

La palabra “refuerzo” se toma prestada de la psicología del comportamiento y se presenta en dos formas:

Positiva:

Se define como un evento que ocurre debido a un comportamiento específico. Incrementa la intensidad y la frecuencia de dicho comportamiento e influye positivamente en la acción que emprende el agente.

Este tipo de refuerzo ayuda a maximizar el rendimiento y a mantener el cambio durante un período más prolongado. Sin embargo, un exceso de refuerzo puede llevar a una sobreoptimización del estado, lo que puede afectar los resultados.

Negativo:

El refuerzo negativo se define como el fortalecimiento de una conducta a raíz de una situación negativa que debería haberse evitado o detenido. Ayuda a definir el estándar mínimo de desempeño. Sin embargo, la desventaja de este método es que solo proporciona lo suficiente para alcanzar el nivel mínimo de conducta.

Modelos de aprendizaje de refuerzo

Hay dos modelos de aprendizaje importantes en el aprendizaje por refuerzo:

  • Proceso de decisión de Markov
  • Q aprendizaje

Proceso de decisión de Markov

Los siguientes parámetros se utilizan para obtener una solución:

  • Conjunto de acciones – A
  • Conjunto de estados – S
  • Recompensa – R
  • Política – π
  • Valor – V

El enfoque matemático para el mapaping En el aprendizaje por refuerzo, una solución se formaliza como un proceso de decisión de Markov (MDP). El siguiente esquema muestra esos cinco parámetros conectados al mismo ciclo agente-entorno.

Esquema del proceso de decisión de Markov con estados, acciones, recompensa y política.

Q-aprendizaje

El aprendizaje Q es un método basado en valores que proporciona información que indica a un agente qué acción debe tomar.

Vamos a comprender este método con el siguiente ejemplo:

  • Hay cinco habitaciones en un edificio que están conectadas por puertas.
  • Cada habitación está numerada del 0 al 4.
  • El exterior del edificio puede tratarse como una gran área exterior (5)
  • Las puertas número 1 y 4 conducen al edificio desde la habitación 5.

El plano que aparece a continuación numera esas habitaciones e indica qué puertas las conectan.

Plano de planta de un edificio de cinco habitaciones con habitaciones numeradas y área exterior 5

A continuación, debes asociar un valor de recompensa a cada puerta:

  • Las puertas que conducen directamente a la meta tienen una recompensa de 100
  • Las puertas que no están conectadas directamente a la habitación objetivo no dan ninguna recompensa.
  • Como las puertas son de doble sentido, se asignan dos flechas a cada habitación.
  • Cada flecha en la imagen de arriba tiene un valor de recompensa instantáneo.

Explicación: En esta imagen, cada habitación representa un estado, y el movimiento del agente de una habitación a otra representa una acción.

En el gráfico que aparece a continuación, un estado se representa como un nodo, mientras que las flechas muestran las acciones disponibles y la recompensa asociada a cada una de ellas.

Gráfico de estados de las cinco habitaciones con valores de recompensa de 0 y 100 en cada transición.

Por ejemplo, un agente se desplaza de la habitación número 2 a la 5:

  • Estado inicial = estado 2
  • Estado 2-> estado 3
  • Estado 3 -> estado (2,1,4)
  • Estado 4-> estado (0,5,3)
  • Estado 1-> estado (5,3)
  • Estado 0-> estado 4

Aprendizaje por refuerzo versus aprendizaje supervisado

La forma más clara de contextualizar el aprendizaje por refuerzo es situarlo junto al paradigma que la mayoría de los lectores ya conocen.

Parámetros Aprendizaje reforzado Aprendizaje supervisado
Estilo de decisión El aprendizaje por refuerzo te ayuda a tomar decisiones de forma secuencial. En este método, se toma una decisión sobre la entrada dada al principio.
Trabaja en Funciona interactuando con el entorno. Trabaja con ejemplos o datos de muestra dados.
Dependencia de la decisión En el método de aprendizaje por refuerzo, cada decisión de aprendizaje depende de las anteriores, por lo que se evalúa toda la secuencia de decisiones. In aprendizaje supervisado Las decisiones son independientes entre sí, por lo que se asigna una etiqueta a cada una de ellas.
Mejores adecuados Ofrece un mejor rendimiento y funcionamiento en entornos de IA, donde la interacción humana es predominante. Se opera principalmente con un sistema de software o aplicaciones interactivas.
Ejemplo Ajedrez Reconocimiento de objetos

Aplicaciones del aprendizaje por refuerzo

Aquí hay aplicaciones del aprendizaje por refuerzo:

  • Robótica para la automatización industrial.
  • Planificación de la estrategia empresarial.
  • Aprendizaje automático y procesamiento de datos
  • Te ayuda a crear sistemas de formación que proporcionan instrucción y materiales personalizados según las necesidades de los estudiantes.
  • Control de aeronaves y control de movimiento de robots.

¿Por qué utilizar el aprendizaje por refuerzo?

Estas son las principales razones para utilizar el aprendizaje por refuerzo:

  • Te ayuda a encontrar qué situación requiere una acción.
  • Te ayuda a descubrir qué acción produce la mayor recompensa a largo plazo.
  • El aprendizaje por refuerzo también proporciona al agente de aprendizaje una función de recompensa.
  • También permite al agente determinar el mejor método para obtener grandes recompensas.

¿Cuándo no utilizar el aprendizaje por refuerzo?

No se puede aplicar un modelo de aprendizaje por refuerzo en todas las situaciones. A continuación, se presentan algunas condiciones en las que no se debe utilizar.

  • Cuando se dispone de suficientes datos etiquetados para resolver el problema con un método de aprendizaje supervisado.
  • El aprendizaje por refuerzo requiere mucha computación y tiempo, en particular cuando el espacio de acciones es grande.

Desafíos del aprendizaje por refuerzo

Estos son los principales desafíos a los que te enfrentarás al realizar aprendizaje por refuerzo:

  • Diseño de características y recompensas, que puede ser muy complejo.
  • Los parámetros pueden afectar la velocidad del aprendizaje.
  • Los entornos realistas pueden tener observabilidad parcial.
  • Un exceso de refuerzo puede provocar una sobrecarga de estados, lo que puede disminuir los resultados.
  • Los entornos realistas pueden ser no estacionarios.

Preguntas Frecuentes

La explotación repite la acción que actualmente se considera mejor; la exploración intenta algo diferente para descubrir una mejor. El algoritmo épsilon-greedy maneja esto actuando aleatoriamente con probabilidad ε y de forma codiciosa en caso contrario, y luego disminuyendo ε a medida que se acumula la experiencia.

Gamma pondera las recompensas futuras frente a las inmediatas. Un valor cercano a 0 hace que el agente sea miope y codicioso de recompensas instantáneas; un valor cercano a 1 lo hace lo suficientemente paciente como para aceptar una pequeña pérdida ahora a cambio de una mayor recompensa en el futuro.

El aprendizaje Q no sigue una política predefinida: se actualiza para buscar la mejor acción posible, independientemente de lo que el agente haya hecho realmente. El SARSA, en cambio, sigue una política predefinida y se actualiza para buscar la acción que realmente realizó, lo que lo hace más cauteloso cerca de estados de riesgo.

Una red neuronal profunda Q reemplaza la tabla Q con una red neuronal, de modo que aún se pueden puntuar estados nunca vistos en el entrenamiento. Se añade la reproducción de la experiencia y una red objetivo independiente para mantener estable la señal de entrenamiento.

Los agentes sin modelo, como los de aprendizaje Q, aprenden exclusivamente a partir de la experiencia recopilada. Los agentes basados ​​en modelos primero construyen un modelo de la dinámica del entorno y planifican en función de él, lo que requiere muchas menos interacciones reales, pero resulta problemático cuando el modelo es erróneo.

El aprendizaje por refuerzo a partir de la retroalimentación humana entrena un modelo de recompensa en las clasificaciones de preferencias humanas y luego ajusta el modelo de lenguaje en función de esa recompensa. Es por eso que los asistentes construidos en deep learning Sigue las instrucciones en lugar de simplemente predecir el texto.

Copiloto de GitHub es bueno en el código repetitivo: envoltorios de entorno, búferes de reproducción, bucles de entrenamiento y gráficos. Recompensa shaping y la elección de los hiperparámetros aún requiere criterio, porque una recompensa errónea, aunque no evidente, produce un agente que se entrena con facilidad pero se comporta mal.

Gymnasium proporciona los entornos de práctica estándar, Stable-Baselines3 proporciona implementaciones de algoritmos probadas y TensorFlow o PyTorch suministra las redes. Empiece con un mundo de cuadrícula tabular antes de recurrir a cualquiera de ellas.

Resumir este post con: