¿Qué es el aprendizaje por reforzamiento?


El aprendizaje por refuerzo es un método de aprendizaje automático basado en recompensar los comportamientos deseados y castigar los no deseados. En general, un agente de aprendizaje por refuerzo -la entidad que se entrena- es capaz de percibir e interpretar su entorno, realizar acciones y aprender por ensayo y error.

El aprendizaje por refuerzo es uno de los enfoques que utilizan los desarrolladores para entrenar sistemas de aprendizaje automático. Lo importante de este método es que permite a un agente, ya sea un elemento de un videojuego o un robot en un entorno industrial, aprender a desenvolverse en las complejidades del entorno para el que ha sido creado. Con el tiempo, a través de un sistema de retroalimentación que suele incluir recompensas y castigos, el agente aprende de su entorno y optimiza sus comportamientos.

¿Cómo funciona el aprendizaje por refuerzo?

En el aprendizaje por refuerzo, los desarrolladores conciben un método para recompensar los comportamientos deseados y castigar los negativos. Este método asigna valores positivos a las acciones deseadas para animar al agente a utilizarlas, mientras que se asignan valores negativos a los comportamientos no deseados para desalentarlos. Esto programa al agente para que busque recompensas globales máximas y a largo plazo para alcanzar una solución óptima.

Estos objetivos a largo plazo ayudan a evitar que el agente se estanque en objetivos menos importantes. Con el tiempo, el agente aprende a evitar lo negativo y a buscar lo positivo. Este método de aprendizaje se ha adoptado en inteligencia artificial (IA) como forma de dirigir el aprendizaje automático no supervisado mediante recompensas o refuerzo positivo y penalizaciones o refuerzo negativo.

ESTE ARTÍCULO FORMA PARTE DE

¿Qué es el aprendizaje automático y cómo funciona? Guía en profundidad

Que también incluye:

4 tipos de aprendizaje en machine learning explicados

Cómo construir un modelo de aprendizaje automático en 7 pasos

CNN frente a RNN: ¿en qué se diferencian?

DESCARGAR

1

Descárguese ahora GRATIS esta guía completa

El proceso de decisión de Markov sirve de base para los sistemas de aprendizaje por refuerzo. En este proceso, un agente existe en un estado específico dentro de un entorno; debe seleccionar la mejor acción posible entre múltiples acciones potenciales que puede realizar en su estado actual. Ciertas acciones ofrecen recompensas como motivación. Cuando se encuentra en su siguiente estado, dispone de nuevas acciones gratificantes. Con el tiempo, la recompensa acumulada es la suma de las recompensas que el agente recibe de las acciones que elige realizar.

Esquema del funcionamiento del aprendizaje por refuerzo

Cuando se utiliza el aprendizaje por refuerzo para entrenar a un robot logístico, el robot es el agente que actúa en el entorno de un almacén. Elige varias acciones que reciben una retroalimentación, que incluye recompensas e información u observaciones del entorno. Toda la retroalimentación ayuda al agente a desarrollar una estrategia para acciones futuras.

Aplicaciones y ejemplos de aprendizaje por refuerzo

Aunque el aprendizaje por refuerzo ha sido un tema de gran interés en el campo de la IA, su adopción y aplicación generalizadas en el mundo real siguen siendo limitadas. No obstante, abundan los trabajos de investigación sobre aplicaciones teóricas y se han dado algunos casos de uso con éxito.

Los usos actuales son, entre otros, los siguientes:

Juegos de azar.

Gestión de recursos.

Recomendaciones personalizadas.

Robótica.

El juego es probablemente el uso más común del aprendizaje por refuerzo, ya que puede lograr un rendimiento sobrehumano en numerosos juegos. Un ejemplo habitual es el juego Pac-Man.

Un algoritmo de aprendizaje que juegue a Pac-Man podría tener la capacidad de moverse en una de las cuatro direcciones posibles, salvo obstrucción. A partir de los datos de píxeles, un agente podría recibir una recompensa numérica por el resultado de una unidad de desplazamiento: 0 por espacios vacíos, 1 por bolitas, 2 por fruta, 3 por bolitas de poder, 4 por bolitas de fantasma post-poder, 5 por recoger todas las bolitas para completar un nivel, y una deducción de 5 puntos por colisión con un fantasma. El agente parte de un juego aleatorio y avanza hacia un juego más sofisticado, aprendiendo el objetivo de conseguir todas las bolitas para completar el nivel. Con el tiempo, un agente puede incluso aprender tácticas como conservar las bolitas de energía hasta que las necesite para defenderse.

El aprendizaje por refuerzo puede funcionar en una situación siempre que pueda aplicarse una recompensa clara. En la gestión de recursos empresariales, los algoritmos de refuerzo asignan recursos limitados a distintas tareas siempre que haya un objetivo general que se intente alcanzar. Un objetivo en estas circunstancias sería ahorrar tiempo o conservar recursos.

En robótica, el aprendizaje por refuerzo se ha abierto camino en pruebas limitadas. Este tipo de aprendizaje automático puede proporcionar a los robots la capacidad de aprender tareas que un profesor humano no puede demostrar, adaptar una habilidad aprendida a una nueva tarea y lograr la optimización incluso cuando no se dispone de una formulación analítica.

El aprendizaje por refuerzo también se utiliza en la investigación operativa, la teoría de la información, la teoría de juegos, la teoría del control, la optimización basada en simulaciones, los sistemas multiagente, la inteligencia de enjambre, la estadística, los algoritmos genéticos y la automatización industrial en curso.

Retos de la aplicación del aprendizaje por refuerzo

Aunque tiene un gran potencial, el aprendizaje por refuerzo presenta algunos inconvenientes. Puede ser difícil de desplegar y su aplicación sigue siendo limitada. Uno de los obstáculos para el despliegue de este tipo de aprendizaje automático es su dependencia de la exploración del entorno.

Por ejemplo, si desplegáramos un robot que dependiera del aprendizaje por refuerzo para navegar por un entorno físico complejo, buscaría nuevos estados y realizaría diferentes acciones a medida que se moviera. Sin embargo, con este tipo de problemas de aprendizaje por refuerzo, es difícil tomar sistemáticamente las mejores acciones en un entorno real debido a la frecuencia con la que cambia el entorno.

El tiempo necesario para garantizar que el aprendizaje se realiza correctamente mediante este método puede limitar su utilidad y ser intensivo en recursos informáticos. A medida que el entorno de formación se hace más complejo, también aumentan las exigencias de tiempo y recursos informáticos.

El aprendizaje supervisado puede ofrecer a las empresas resultados más rápidos y eficaces que el aprendizaje por refuerzo si se dispone de la cantidad adecuada de datos, ya que puede emplearse con menos recursos.

Algoritmos habituales de aprendizaje por refuerzo

En lugar de referirse a un algoritmo específico, el campo del aprendizaje por refuerzo se compone de varios algoritmos que adoptan enfoques algo diferentes. Las diferencias se deben principalmente a las distintas estrategias que utilizan para explorar sus entornos:

Estado-acción-recompensa-estado-acción. Este algoritmo de aprendizaje por refuerzo comienza dando al agente lo que se conoce como una política. Para determinar el enfoque óptimo basado en la política, hay que tener en cuenta la probabilidad de que determinadas acciones den lugar a recompensas, o estados beneficiosos, para guiar su toma de decisiones.

Aprendizaje Q. Este método de aprendizaje por refuerzo adopta el enfoque opuesto. El agente no recibe ninguna política y aprende sobre el valor de una acción basándose en la exploración de su entorno. Este enfoque no se basa en modelos, sino que es más autodirigido. Las aplicaciones reales del aprendizaje Q se suelen escribir en Python.

Redes Q profundas. Combinados con el aprendizaje Q profundo, estos algoritmos utilizan redes neuronales además de técnicas de aprendizaje por refuerzo. También se denominan aprendizaje profundo por refuerzo y utilizan el enfoque de exploración del entorno autodirigido del aprendizaje por refuerzo. Como parte del proceso de aprendizaje, estas redes basan las acciones futuras en una muestra aleatoria de acciones beneficiosas pasadas.

Diagrama de las capas de entrada, salida y oculta de una red neuronal

Una red neuronal consiste en un conjunto de algoritmos que se asemeja mucho al cerebro humano. Estos algoritmos están diseñados para reconocer patrones.

¿En qué se diferencia el aprendizaje por refuerzo del aprendizaje supervisado y no supervisado?

El aprendizaje por refuerzo se considera una rama propia del aprendizaje automático. Sin embargo, tiene algunas similitudes con otros tipos de aprendizaje automático, que se dividen en los cuatro dominios siguientes:

Aprendizaje supervisado. En el aprendizaje supervisado, los algoritmos se entrenan con un conjunto de datos etiquetados. Los algoritmos de aprendizaje supervisado sólo pueden aprender atributos que estén especificados en el conjunto de datos. Una aplicación común del aprendizaje supervisado son los modelos de reconocimiento de imágenes. Estos modelos reciben un conjunto de imágenes etiquetadas y aprenden a distinguir atributos comunes de formas predefinidas.

Aprendizaje no supervisado. En el aprendizaje no supervisado, los desarrolladores liberan los algoritmos en datos sin etiquetar. Los algoritmos aprenden catalogando sus propias observaciones sobre las características de los datos sin que se les diga lo que tienen que buscar.

Aprendizaje semisupervisado. Este método adopta un enfoque intermedio. Los desarrolladores introducen un conjunto relativamente pequeño de datos de entrenamiento etiquetados, así como un corpus mayor de datos sin etiquetar. El algoritmo debe extrapolar lo que aprende de los datos etiquetados a los no etiquetados y extraer conclusiones del conjunto.

Aprendizaje por refuerzo. Adopta un enfoque diferente. Sitúa a un agente en un entorno con parámetros claros que definen la actividad beneficiosa y la actividad no beneficiosa y un objetivo global que alcanzar.

El aprendizaje por refuerzo se parece al aprendizaje supervisado en que los desarrolladores deben dar a los algoritmos objetivos específicos y definir funciones de recompensa y castigo. Esto significa que el nivel de programación explícita necesario es mayor que en el aprendizaje no supervisado. Pero, una vez establecidos estos parámetros, el algoritmo funciona por sí solo, lo que lo hace más autodirigido que los algoritmos de aprendizaje supervisado. Por este motivo, a veces se habla del aprendizaje por refuerzo como una rama del aprendizaje semisupervisado; aunque, en realidad, lo más frecuente es reconocerlo como un tipo propio de aprendizaje automático.

Comparación de cuatro modelos de aprendizaje automático

El aprendizaje por refuerzo es uno de los cuatro tipos de métodos de entrenamiento de los modelos de aprendizaje automático.

El futuro del aprendizaje por refuerzo

Se prevé que el aprendizaje por refuerzo desempeñe un papel más importante en el futuro de la IA. Los demás métodos de entrenamiento de algoritmos de aprendizaje automático requieren grandes cantidades de datos de entrenamiento preexistentes. Los agentes de aprendizaje por refuerzo, en cambio, necesitan tiempo para aprender gradualmente a funcionar mediante interacciones con su entorno. A pesar de los retos, se espera que varias industrias sigan explorando el potencial del aprendizaje por refuerzo.

El aprendizaje por refuerzo ya ha demostrado ser prometedor en varios ámbitos. Por ejemplo, las empresas de marketing y publicidad utilizan algoritmos entrenados de este modo para motores de recomendación. Los fabricantes utilizan el aprendizaje por refuerzo para entrenar sus sistemas robóticos de nueva generación.

Los científicos de Google DeepMind, filial de Alphabet dedicada a la IA, han propuesto que el aprendizaje por refuerzo podría llevar el estado actual de la IA -a menudo denominada IA estrecha- a su forma final teórica de inteligencia general artificial. Creen que las máquinas que aprenden mediante el aprendizaje por refuerzo llegarán a ser sensibles y funcionarán independientemente de la supervisión humana.