Reinforcement learning: cuando las máquinas aprendieron a pensar
Google invierte en diversidad de áreas y proyectos, sobre todo cuando se trata de tecnologías pioneras. Especialmente en el campo de la inteligencia artificial (IA), este gigante de Internet ha puesto toda la carne en el asador con su proyecto Deepmind. Su objetivo principal es seguir desarrollando programas con ayuda de la inteligencia artificial para que, en el futuro, estos sean capaces de resolver problemas complejos sin ningún tipo de intervención humana. El método del reinforcement machine learning representa una contribución significativa al desarrollo de la IA.
¿Qué es el reinforcement learning?
Reinforcement learning se puede traducir literalmente como aprendizaje por refuerzo, un término que describe un método del ámbito del aprendizaje automático o machine learning. Además del aprendizaje supervisado y el aprendizaje no supervisado, el aprendizaje por refuerzo es el tercer método mediante el cual se enseña a los algoritmos a tomar decisiones por sí mismos. La atención se centra en el desarrollo de soluciones inteligentes para problemas de control complejos.
En esta variante del aprendizaje automático y, a diferencia del aprendizaje supervisado y no supervisado, no se necesitan datos para el condicionamiento. Con los otros dos métodos, los programas se alimentan primero con datos. Este paso se omite por completo en el aprendizaje por refuerzo: en su lugar, los datos se generan a partir de un procedimiento de prueba y error durante el entrenamiento y, al mismo tiempo, se marcan con una etiqueta. El programa ejecuta varias sesiones de entrenamiento en un entorno de simulación para conseguir el correspondiente resultado exacto. Por tanto, durante el entrenamiento, en lugar de confrontar el sistema con los resultados correctos (como en el aprendizaje supervisado), solo se generan impulsos que apoyan el sistema.
El resultado deseado de este entrenamiento es que la inteligencia artificial sin conocimiento humano previo sea capaz de resolver problemas de control muy complejos de forma autónoma. En comparación con la ingeniería convencional, este método es más rápido, más eficiente y, en un caso ideal, logra incluso el mejor resultado esperado.
En muchas ocasiones, el estudio del aprendizaje por refuerzo tiene lugar mediante videojuegos. Los juegos de ordenador son la base perfecta para explorar y comprender el reinforcement learning, ya que suelen incluir entornos de simulación, varias opciones de control e, incluso, la influencia del entorno. Por lo general, estos juegos presentan un problema de difícil solución u obligan a resolver tareas complejas en diferentes fases. Por otro lado, en la mayoría de los juegos existen sistemas de puntuación que se acercan mucho a los sistemas de recompensa del reinforcement learning.
Los principales investigadores del campo de la inteligencia artificial consideran que el aprendizaje por refuerzo es un método muy prometedor para alcanzar la inteligencia artificial fuerte (IAF). Algún día, este tipo de inteligencia hará posible que las máquinas, al igual que las personas, puedan tomar sus propias decisiones racionales y llevar a término cualquier tarea con éxito. Así, la máquina observará, aprenderá y podrá resolver problemas por sí misma.
El aprendizaje por refuerzo consiste en que una máquina aprenda mediante la interacción con el entorno y vuelva a utilizar lo aprendido para resolver problemas complejos sin necesidad de que una persona introduzca datos de forma manual.
¿Cómo funciona el aprendizaje por refuerzo?
El aprendizaje por refuerzo engloba numerosos métodos independientes, a través de los cuales un algoritmo o un agente de software aprende estrategias por sí mismo. El objetivo es maximizar las recompensas integradas en un entorno de simulación. Dentro de ese entorno, el ordenador realiza una acción y, a continuación, recibe feedback. El agente de software no obtiene por adelantado ningún tipo de información sobre cuál de las acciones es más prometedora y debe determinar cómo proceder por él mismo a través del método de prueba y error.
Más bien, el ordenador obtiene recompensas en determinados momentos, lo que influye en sus estrategias. A través de estos acontecimientos, el agente de software aprende a valorar el resultado de ciertas acciones dentro del entorno de simulación. Todo ello constituye el fundamento que el agente de software necesita para desarrollar estrategias a largo plazo y al mismo tiempo, maximizar las recompensas.
Para entrenar el sistema de aprendizaje por refuerzo de esta manera, se utiliza la técnica del Q-learning. El nombre proviene de la función Q, que calcula los beneficios esperados de una acción en el estado del agente. El objetivo del aprendizaje por refuerzo es, por tanto, crear la mejor política posible. El término “política” se refiere al comportamiento aprendido por el agente de software, que le dice qué acción debe efectuarse en determinada variante conductual (observation) del entorno de aprendizaje (environment).
La política puede representarse en una tabla Q. Las líneas contienen todas las posibles observaciones y las columnas, todas las acciones posibles. Las celdas resultantes se rellenan durante el entrenamiento con los llamados valores (value), que representan la recompensa futura esperada.
No obstante, esta tabla Q es de uso limitado. La representación óptica solo funciona en un pequeño espacio de observación de la acción. Si las posibilidades son muy numerosas, el agente de software debe servirse de una red neuronal.
¿Dónde y cuándo se utiliza el aprendizaje por refuerzo?
Una de las empresas que ya utilizan este método de aprendizaje automático es Google. Por ejemplo, el grupo emplea el aprendizaje por refuerzo para controlar los sistemas de aire acondicionado de sus centros de datos. Gracias a la inteligencia artificial, Google ha podido ahorrar hasta el 40 por ciento de la energía necesaria para refrigerar los servidores.
El aprendizaje por refuerzo también se utiliza en el control de sistemas complejos, como los sistemas de transporte inteligentes. De este modo, ofrece soluciones inteligentes para el control de calidad. También se utiliza en las redes eléctricas inteligentes, el control de robots, la automatización de fábricas o la optimización de las cadenas de suministro en diversas empresas de logística.
Sin embargo, el ejemplo más tangible de reinforcement learning es, probablemente, el asistente de aparcamiento. La inteligencia artificial se usa aquí para reconocer objetos y mostrar al conductor la mejor dirección para aparcar.
Antes de que funcione un nuevo algoritmo de aprendizaje por refuerzo, deben realizarse multitud de sesiones de entrenamiento, ya que, en parte, las recompensas solo se reciben con posterioridad. En cualquier caso, el aprendizaje por refuerzo es un método del aprendizaje automático que permite resolver problemas cada vez más complejos y controlar gran variedad de procesos.