talón ¿Qué es el aprendizaje por refuerzo? - Unite.AI
Contáctanos
Clase magistral de IA:

AI 101

¿Qué es el aprendizaje por refuerzo?

mm
Actualizado on

¿Qué es el aprendizaje por refuerzo?

En pocas palabras, el aprendizaje por refuerzo es una técnica de aprendizaje automático que implica entrenar a un agente de inteligencia artificial mediante la repetición de acciones y recompensas asociadas. Un agente de aprendizaje por refuerzo experimenta en un entorno, realiza acciones y es recompensado cuando se realizan las acciones correctas. Con el tiempo, el agente aprende a tomar las acciones que maximizarán su recompensa. Esa es una definición rápida de aprendizaje por refuerzo, pero echar un vistazo más de cerca a los conceptos detrás del aprendizaje por refuerzo lo ayudará a obtener una comprensión mejor y más intuitiva.

El término “aprendizaje por refuerzo” se adapta del concepto de reforzamiento en psicología. Por esa razón, tomemos un momento para entender el concepto psicológico de refuerzo. En el sentido psicológico, el término refuerzo se refiere a algo que aumenta la probabilidad de que ocurra una determinada respuesta/acción. Este concepto de reforzamiento es una idea central de la teoría del condicionamiento operante, propuesta inicialmente por el psicólogo BF Skinner. En este contexto, el refuerzo es cualquier cosa que hace que aumente la frecuencia de un comportamiento dado. Si pensamos en posibles refuerzos para los humanos, estos pueden ser cosas como elogios, un aumento en el trabajo, dulces y actividades divertidas.

En el sentido psicológico tradicional, hay dos tipos de refuerzo. Hay refuerzo positivo y refuerzo negativo. El refuerzo positivo es la adición de algo para aumentar un comportamiento, como darle una golosina a tu perro cuando se porta bien. El refuerzo negativo consiste en eliminar un estímulo para provocar un comportamiento, como apagar los ruidos fuertes para persuadir a un gato asustadizo.

Refuerzo positivo y negativo

El refuerzo positivo aumenta la frecuencia de un comportamiento, mientras que el refuerzo negativo disminuye la frecuencia. En general, el refuerzo positivo es el tipo de refuerzo más común utilizado en el aprendizaje por refuerzo, ya que ayuda a los modelos a maximizar el rendimiento en una tarea determinada. No solo eso, sino que el refuerzo positivo lleva al modelo a realizar cambios más sostenibles, cambios que pueden convertirse en patrones consistentes y persistir durante largos períodos de tiempo.

Por el contrario, si bien el refuerzo negativo también aumenta la probabilidad de que ocurra un comportamiento, se utiliza para mantener un estándar de rendimiento mínimo en lugar de alcanzar el rendimiento máximo de un modelo. El refuerzo negativo en el aprendizaje por refuerzo puede ayudar a garantizar que un modelo se mantenga alejado de acciones indeseables, pero en realidad no puede hacer que un modelo explore las acciones deseadas.

Capacitación de un agente de refuerzo

Cuando se entrena un agente de aprendizaje por refuerzo, hay cuatro ingredientes diferentes or afirma utilizados en el entrenamiento: estados iniciales (Estado 0), nuevo estado (Estado 1), acciones y recompensas.

Imagina que estamos entrenando a un agente de refuerzo para jugar un videojuego de plataformas en el que el objetivo de la IA es llegar al final del nivel moviéndose por la pantalla. El estado inicial del juego se extrae del entorno, lo que significa que el primer cuadro del juego se analiza y se entrega al modelo. En base a esta información, el modelo debe decidir sobre una acción.

Durante las fases iniciales del entrenamiento, estas acciones son aleatorias, pero a medida que se refuerza el modelo, ciertas acciones se volverán más comunes. Después de realizar la acción, se actualiza el entorno del juego y se crea un nuevo estado o marco. Si la acción realizada por el agente produjo un resultado deseable, digamos en este caso que el agente todavía está vivo y no ha sido golpeado por un enemigo, se le otorga alguna recompensa al agente y es más probable que haga lo mismo en el futuro.

Este sistema básico está constantemente en bucle, sucediendo una y otra vez, y cada vez que el agente intenta aprender un poco más y maximizar su recompensa.

Tareas episódicas vs continuas

Las tareas de aprendizaje por refuerzo normalmente se pueden colocar en una de dos categorías diferentes: Tareas episódicas y tareas continuas.

Las tareas episódicas llevarán a cabo el ciclo de aprendizaje/entrenamiento y mejorarán su rendimiento hasta que se cumplan algunos criterios finales y finalice el entrenamiento. En un juego, esto podría ser llegar al final del nivel o caer en un peligro como púas. Por el contrario, las tareas continuas no tienen criterios de terminación, esencialmente continuar entrenando para siempre hasta que el ingeniero decida terminar el entrenamiento.

Montecarlo vs diferencia temporal

Hay dos formas principales de aprender, o entrenar, un agente de aprendizaje por refuerzo. En el enfoque de Montecarlo, las recompensas se entregan al agente (su puntuación se actualiza) solo al final del episodio de entrenamiento. Para decirlo de otra manera, solo cuando se cumple la condición de terminación, el modelo aprende qué tan bien se desempeñó. Luego puede usar esta información para actualizar y cuando comience la próxima ronda de capacitación, responderá de acuerdo con la nueva información.

El método de diferencia temporal difiere del método de Monte Carlo en que la estimación del valor, o la estimación de la puntuación, se actualiza durante el transcurso del episodio de entrenamiento. Una vez que el modelo avanza al siguiente paso de tiempo, los valores se actualizan.

Exploración vs Explotación

Entrenar a un agente de aprendizaje por refuerzo es un acto de equilibrio, que implica el equilibrio de dos métricas diferentes: exploración y explotación.

La exploración es el acto de recopilar más información sobre el entorno circundante, mientras que la exploración utiliza la información ya conocida sobre el entorno para ganar puntos de recompensa. Si un agente solo explora y nunca explota el entorno, nunca se llevarán a cabo las acciones deseadas. Por otro lado, si el agente solo explota y nunca explora, el agente solo aprenderá a realizar una acción y no descubrirá otras estrategias posibles para obtener recompensas. Por lo tanto, equilibrar la exploración y la explotación es fundamental al crear un agente de aprendizaje por refuerzo.

Casos de uso para el aprendizaje por refuerzo

El aprendizaje por refuerzo se puede utilizar en una amplia variedad de funciones y es más adecuado para aplicaciones en las que las tareas requieren automatización.

La automatización de tareas que llevarán a cabo los robots industriales es un área en la que el aprendizaje por refuerzo resulta útil. El aprendizaje por refuerzo también se puede utilizar para problemas como la minería de texto, creando modelos que pueden resumir cuerpos largos de texto. Los investigadores también están experimentando con el uso del aprendizaje por refuerzo en el campo de la atención médica, con agentes de refuerzo que manejan trabajos como la optimización de las políticas de tratamiento. El aprendizaje por refuerzo también podría usarse para personalizar el material educativo para los estudiantes.

Resumen del aprendizaje por refuerzo

El aprendizaje por refuerzo es un método poderoso para construir agentes de IA que puede conducir a resultados impresionantes y, a veces, sorprendentes. Capacitar a un agente a través del aprendizaje por refuerzo puede ser complejo y difícil, ya que requiere muchas iteraciones de capacitación y un delicado equilibrio de la dicotomía explorar/explotar. Sin embargo, si tiene éxito, un agente creado con aprendizaje por refuerzo puede realizar tareas complejas en una amplia variedad de entornos diferentes.

Blogger y programador con especialidades en Aprendizaje automático (Machine learning & LLM) y Aprendizaje profundo temas Daniel espera ayudar a otros a usar el poder de la IA para el bien social.