Google invierte en di­ve­r­si­dad de áreas y proyectos, sobre todo cuando se trata de te­c­no­lo­gías pioneras. Es­pe­cia­l­me­n­te en el campo de la in­te­li­ge­n­cia ar­ti­fi­cial (IA), este gigante de Internet ha puesto toda la carne en el asador con su proyecto Deepmind. Su objetivo principal es seguir de­sa­rro­lla­n­do programas con ayuda de la in­te­li­ge­n­cia ar­ti­fi­cial para que, en el futuro, estos sean capaces de resolver problemas complejos sin ningún tipo de in­te­r­ve­n­ción humana. El método del re­in­fo­r­ce­me­nt machine learning re­pre­se­n­ta una co­n­tri­bu­ción si­g­ni­fi­ca­ti­va al de­sa­rro­llo de la IA.

¿Qué es el re­in­fo­r­ce­me­nt learning?

Re­in­fo­r­ce­me­nt learning se puede traducir li­te­ra­l­me­n­te como apre­n­di­za­je por refuerzo, un término que describe un método del ámbito del apre­n­di­za­je au­to­má­ti­co o machine learning. Además del apre­n­di­za­je su­pe­r­vi­sa­do y el apre­n­di­za­je no su­pe­r­vi­sa­do, el apre­n­di­za­je por refuerzo es el tercer método mediante el cual se enseña a los al­go­ri­t­mos a tomar de­ci­sio­nes por sí mismos. La atención se centra en el de­sa­rro­llo de so­lu­cio­nes in­te­li­ge­n­tes para problemas de control complejos.

En esta variante del apre­n­di­za­je au­to­má­ti­co y, a di­fe­re­n­cia del apre­n­di­za­je su­pe­r­vi­sa­do y no su­pe­r­vi­sa­do, no se necesitan datos para el co­n­di­cio­na­mie­n­to. Con los otros dos métodos, los programas se alimentan primero con datos. Este paso se omite por completo en el apre­n­di­za­je por refuerzo: en su lugar, los datos se generan a partir de un pro­ce­di­mie­n­to de prueba y error durante el en­tre­na­mie­n­to y, al mismo tiempo, se marcan con una etiqueta. El programa ejecuta varias sesiones de en­tre­na­mie­n­to en un entorno de si­mu­la­ción para conseguir el co­rre­s­po­n­die­n­te resultado exacto. Por tanto, durante el en­tre­na­mie­n­to, en lugar de co­n­fro­n­tar el sistema con los re­su­l­ta­dos correctos (como en el apre­n­di­za­je su­pe­r­vi­sa­do), solo se generan impulsos que apoyan el sistema.

El resultado deseado de este en­tre­na­mie­n­to es que la in­te­li­ge­n­cia ar­ti­fi­cial sin co­no­ci­mie­n­to humano previo sea capaz de resolver problemas de control muy complejos de forma autónoma. En co­m­pa­ra­ción con la in­ge­nie­ría co­n­ve­n­cio­nal, 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 apre­n­di­za­je por refuerzo tiene lugar mediante vi­deo­jue­gos. Los juegos de ordenador son la base perfecta para explorar y co­m­pre­n­der el re­in­fo­r­ce­me­nt learning, ya que suelen incluir entornos de si­mu­la­ción, varias opciones de control e, incluso, la in­flue­n­cia del entorno. Por lo general, estos juegos presentan un problema de difícil solución u obligan a resolver tareas complejas en di­fe­re­n­tes fases. Por otro lado, en la mayoría de los juegos existen sistemas de pu­n­tua­ción que se acercan mucho a los sistemas de re­co­m­pe­n­sa del re­in­fo­r­ce­me­nt learning.

Los pri­n­ci­pa­les in­ve­s­ti­ga­do­res del campo de la in­te­li­ge­n­cia ar­ti­fi­cial co­n­si­de­ran que el apre­n­di­za­je por refuerzo es un método muy pro­me­te­dor para alcanzar la in­te­li­ge­n­cia ar­ti­fi­cial fuerte (IAF). Algún día, este tipo de in­te­li­ge­n­cia hará posible que las máquinas, al igual que las personas, puedan tomar sus propias de­ci­sio­nes ra­cio­na­les y llevar a término cualquier tarea con éxito. Así, la máquina observará, aprenderá y podrá resolver problemas por sí misma.

En resumen

El apre­n­di­za­je por refuerzo consiste en que una máquina aprenda mediante la in­ter­ac­ción con el entorno y vuelva a utilizar lo aprendido para resolver problemas complejos sin necesidad de que una persona in­tro­du­z­ca datos de forma manual.

¿Cómo funciona el apre­n­di­za­je por refuerzo?

El apre­n­di­za­je por refuerzo engloba numerosos métodos in­de­pe­n­die­n­tes, a través de los cuales un algoritmo o un agente de software aprende es­tra­te­gias por sí mismo. El objetivo es maximizar las re­co­m­pe­n­sas in­te­gra­das en un entorno de si­mu­la­ción. Dentro de ese entorno, el ordenador realiza una acción y, a co­n­ti­nua­ción, recibe feedback. El agente de software no obtiene por ade­la­n­ta­do ningún tipo de in­fo­r­ma­ción sobre cuál de las acciones es más pro­me­te­do­ra y debe de­te­r­mi­nar cómo proceder por él mismo a través del método de prueba y error.

Más bien, el ordenador obtiene re­co­m­pe­n­sas en de­te­r­mi­na­dos momentos, lo que influye en sus es­tra­te­gias. A través de estos aco­n­te­ci­mie­n­tos, el agente de software aprende a valorar el resultado de ciertas acciones dentro del entorno de si­mu­la­ción. Todo ello co­n­s­ti­tu­ye el fu­n­da­me­n­to que el agente de software necesita para de­sa­rro­llar es­tra­te­gias a largo plazo y al mismo tiempo, maximizar las re­co­m­pe­n­sas.

Para entrenar el sistema de apre­n­di­za­je por refuerzo de esta manera, se utiliza la técnica del Q-learning. El nombre proviene de la función Q, que calcula los be­ne­fi­cios esperados de una acción en el estado del agente. El objetivo del apre­n­di­za­je por refuerzo es, por tanto, crear la mejor política posible. El término “política” se refiere al co­m­po­r­ta­mie­n­to aprendido por el agente de software, que le dice qué acción debe efe­c­tuar­se en de­te­r­mi­na­da variante co­n­du­c­tual (ob­se­r­va­tion) del entorno de apre­n­di­za­je (en­vi­ro­n­me­nt).

La política puede re­pre­se­n­tar­se en una tabla Q. Las líneas contienen todas las posibles ob­se­r­va­cio­nes y las columnas, todas las acciones posibles. Las celdas re­su­l­ta­n­tes se rellenan durante el en­tre­na­mie­n­to con los llamados valores (value), que re­pre­se­n­tan la re­co­m­pe­n­sa futura esperada.

No obstante, esta tabla Q es de uso limitado. La re­pre­se­n­ta­ción óptica solo funciona en un pequeño espacio de ob­se­r­va­ción de la acción. Si las po­si­bi­li­da­des son muy numerosas, el agente de software debe servirse de una red neuronal.

¿Dónde y cuándo se utiliza el apre­n­di­za­je por refuerzo?

Una de las empresas que ya utilizan este método de apre­n­di­za­je au­to­má­ti­co es Google. Por ejemplo, el grupo emplea el apre­n­di­za­je por refuerzo para controlar los sistemas de aire aco­n­di­cio­na­do de sus centros de datos. Gracias a la in­te­li­ge­n­cia ar­ti­fi­cial, Google ha podido ahorrar hasta el 40 por ciento de la energía necesaria para re­fri­ge­rar los se­r­vi­do­res.

El apre­n­di­za­je por refuerzo también se utiliza en el control de sistemas complejos, como los sistemas de tra­n­s­po­r­te in­te­li­ge­n­tes. De este modo, ofrece so­lu­cio­nes in­te­li­ge­n­tes para el control de calidad. También se utiliza en las redes elé­c­tri­cas in­te­li­ge­n­tes, el control de robots, la au­to­ma­ti­za­ción de fábricas o la op­ti­mi­za­ción de las cadenas de su­mi­ni­s­tro en diversas empresas de logística.

Sin embargo, el ejemplo más tangible de re­in­fo­r­ce­me­nt learning es, pro­ba­ble­me­n­te, el asistente de apa­r­ca­mie­n­to. La in­te­li­ge­n­cia ar­ti­fi­cial se usa aquí para reconocer objetos y mostrar al conductor la mejor dirección para aparcar.

Antes de que funcione un nuevo algoritmo de apre­n­di­za­je por refuerzo, deben rea­li­zar­se multitud de sesiones de en­tre­na­mie­n­to, ya que, en parte, las re­co­m­pe­n­sas solo se reciben con po­s­te­rio­ri­dad. En cualquier caso, el apre­n­di­za­je por refuerzo es un método del apre­n­di­za­je au­to­má­ti­co que permite resolver problemas cada vez más complejos y controlar gran variedad de procesos.

Ir al menú principal