Inteligencia natural

10/05/2018 2 comentarios
Menear

O cómo aprendí a dejar de preocuparme y ganar a Alpha Go.

Ya se habrán dado cuenta de que la inteligencia artificial vuelve a estar de moda, junto con las hombreras, los cortes de pelo de general nazi y los tatuajes de futbolista. Sin ir más lejos, en la portada del último número de Investigación y Ciencia se nos habla de "robots que aprenden como niños". Es ya casi un cliché explicar los espectaculares avances en, por ejemplo, el juego del go, diciéndonos que, al contrario de los antiguos enfoques basados en, digamos, la pura fuerza bruta computacional, ahora las máquinas no sólo "aprenden", sino que lo hacen "de una manera intuitiva, más parecida a como aprenden los humanos", o cosas parecidas. Son frases muy vistosas, pero ¿se sostienen cuando hacemos un análisis más profundo?

Veamos, por ejemplo, el artículo de Nature en el que los científicos de la división de inteligencia artificial de Google nos informaron en octubre pasado de sus sorprendentes resultados. Aquí ya nos hicimos eco de un muy notable acontecimiento en el que una máquina de Google había ganado a uno de los mejores jugadores del mundo, el coreano Lee Sedol. El resultado de octubre de 2017 es que una nueva máquina de Google (es decir, programada de forma distinta) habría alcanzado un nivel de juego tal, que habría arrasado por 100 partidas a 0 a la máquina que ganó a Sedol. Según los autores, la gran novedad de este nuevo algoritmo es que se basa sólo en "aprendizaje por refuerzo", mientras que el anterior combinaba "aprendizaje supervisado" con aprendizaje por refuerzo. Es decir, en lugar de empezar a "aprender" usando partidas de Go de expertos humanos, el algoritmo está diseñado para aprender jugando exclusivamente partidas contra sí mismo. Esto es lo que permite introducir el muy vistoso "without human knowledge" ("sin conocimiento humano") en el título del artículo, como si no hubiera hecho falta un muy extenso y específico conocimiento humano de sus 17 autores, entre otros muchos. Ahora bien, ¿cómo funciona esta última versión de Alpha Go, llamada Alpha Go Zero?

En pocas palabras, en cada posición del juego, Alpha Go lanza un algoritmo que elige el siguiente movimiento tras realizar una exploración de las probabilidades de éxito que tienen una serie de posibles movimientos. En esta exploración ("árbol de búsqueda") se usa el método de Montecarlo, que es bien conocido en Física Estadística y muy usado en muchas otras áreas. Básicamente, consiste en que los cambios de configuración en la simulación por ordenador de un sistema con muchos nodos se aceptan o se rechazan con una probabilidad que depende de un determinado objetivo: un ejemplo típico es que esos cambios se acepten con una probabilidad mayor si contribuyen a reducir la energía del sistema, de manera que tras muchas iteraciones, el sistema simulado acaba en la configuración de energía más baja. En el caso que nos ocupa, los cambios se aceptan según la probabilidad que tengan de conducir a una victoria al final de la partida. Para poder asignar esa probabilidad a cada movimiento, tiene que haber una fase de entrenamiento en la que se adquiere ese conjunto de datos. Las versiones anteriores de la máquina empezaban con ejemplos de partidas jugadas por expertos. Alpha Go Zero ha demostrado que esa parte era irrelevante y que puede ser sustituida con éxito por partidas jugadas contra sí mismo. ¿Cuántas partidas? Pues bien: 4,9 millones  de partidas a lo largo de tres días (una segunda versión aún más fuerte jugó 30 millones de partidas). En cada movimiento, se usó un árbol de búsqueda de Montecarlo con 1600 movimientos simulados. Ahora bien, ¿a ustedes esto les suena a una manera intuitiva de aprender, más parecida a la de los humanos? ¿O más bien les suena a fuerza bruta computacional? A mí también. 

Parece imposible que un simple mortal como nosotros pueda competir con algo capaz de jugar varios millones de veces contra sí mismo, explorando miles de posibles movimientos en cada posición. Google ha hackeado el Go. Sin embargo, puede que haya una escapatoria. Aquí el profesor López de Mantarás, director del Instituto de Investigación en Inteligencia Artificial del CSIC, nos habla del "olvido catastrófico", propiedad según la cual, si intentamos entrenar a un sistema de inteligencia artificial para "aprender" a realizar una tarea distinta de aquella para la que fue diseñado, inmediatamente "olvidará" lo "aprendido" antes. (De nuevo, exactamente igual que los humanos, que cuando aprendemos a montar en bicicleta nos olvidamos de nadar, y viceversa, como todo el mundo sabe). Así que, para ganar a Alpha Go en realidad no hay más que aplicar el método de Marty McFly, quien cada vez que se encontraba en un auténtico aprieto le decía a su oponente (normalmente Biff Tannen): "hey, what the hell is that?". Por supuesto, como Alpha Go es tan parecido a un humano, sin duda querrá saber a qué demonios te refieres. Probablemente, en unas pocas horas y tras hacerse unos cuantos miles de preguntas a sí mismo, sea capaz de llegar a la conclusión de que ahí no hay nada. Incluso si, como el TARS de "Interstellar" tiene bien regulado el sentido del humor, comprenderá que es una broma humana. Entonces intentará continuar con la partida pero... Game over, a no ser que un rayo le vuelva más humano, como al legendario Johnny 5 de "Cortocircuito".

 ¿Se te ha olvidado, Wall-E?