Partiendo de Zero

Publicado: 11 diciembre 2018 en Ciencias de la computación, Filosofía de la mente, Teoría del conocimiento
Etiquetas:, ,

Uno de los mitos de la modernidad fue la búsqueda de un punto cero, un pilar sólido, irrefutable, libre de sesgos y prejuicios, de presupuestos y de ideas infundadas. Eso fue lo que intentaron Descartes y Bacon: encontrar esa nuda veritas, certeza absoluta a partir de la cual, si utilizabas el método adecuado, el recto pensar, podrías construir la totalidad del edificio del saber. Los positivistas actuales caen de nuevo en ese mito cuando hablan de los hechos, como si éstos representaran la realidad pura (si bien lo que a mí me molesta más es caer en el otro extremo: que, a partir de aquí, se concluya con estupideces como que la verdad no existe, o que la propia ciencia es literatura). Es imposible enfrentarse a la realidad metafísicamente desnuda, pero eso no quita que existan caminos mejores que otros para acercarse a ella.

Este debate, punto central de la historia de la filosofía, me ha venido a la cabeza cuando de nuevo oigo hablar del impresionante Alpha Zero (ahora que los de Deepmind han publicado un nuevo artículo en Science), la IA de Google que, partiendo del único conocimiento básico de las reglas del ajedrez, no teniendo ni un solo dato sobre táctica, estrategia, ni alguna base de datos de partidas clásicas, machacó a uno de los mejores programas de ajedrez de la actualidad: Stockfish 8 ¿Cómo ha sido posible algo así?  Alpha Zero comienza como un niño pequeño que acaba de aprender a jugar y no sabe nada más del juego (parte de una tabula rasa). Entonces, empieza a jugar contra sí mismo, con movimientos en principio aleatorios, pero siguiendo un clásico aprendizaje reforzado: las jugadas que llevan a la victoria en una partida serán más probables en las siguientes, y las que llevan a la derrota menos.

El programa decide la jugada mediante un árbol de búsqueda de Monte Carlo (no usa la poda alfa-beta de Stockfish). Ante la insuperable explosión combinatoria que supone predecir todos los movimientos posibles desde una posición hasta el final de la partida, Alpha Zero simula y elige, aleatoriamente, solo algunas y, de entre ellas, escoge la más prometedora. Nótese que eso no le hace tomar una decisión óptima, pudiendo, perfectamente, perder muchísimas jugadas mejores e, incluso, si tuviese la mala suerte de escoger un grupo de jugadas mediocres, hacer una mala jugada. Sin embargo, para que eso no ocurra (o, al menos, no ocurra demasiadas veces), es aquí donde la red neuronal artificial profunda orienta al árbol de decisión sobre qué caminos son los mejores y cuáles son rápidamente desechables en virtud del conocimiento previo atesorado tras todas las partidas anteriores (Alpha Zero, al contrario que versiones previas que funcionaban con aprendizaje supervisado, utilizaba solo una red y no dos).

Tras solo 4 horas de auto-entrenamiento, Alpha Zero derrotó a Stockfish 8, programa con un Elo ponderado de 3.400 (El mejor jugador humano, Magnus Carlsen, tiene un Elo de 2.835 a diciembre de 2018), lo cual no deja de ser absolutamente impresionante, simplemente, como logro dentro de la creación de programas de ajedrez. En el reciente artículo se publican nuevas partidas entre ambos y los resultados no dejan lugar a dudas sobre el poder de Alpha Zero: ganaba a Stockfish incluso cuando solo contaba con una décima parte del tiempo del otro. Incluso ganó también a la nueva versión de Stockfish, la 9.

Pero lo realmente espeluznante es que Alpha Zero comenzó, valga la redundancia, de cero, solo sabiendo las reglas y nada más… Es muy instructivo el gráfico de aperturas que nos ofrecieron en el primer artículo publicado (Mastering Chess and Shogi by Self-Play with a General Reinforcement Learning Algorithm, de diciembre del 2017), en el que se ve cómo el programa va utilizando unas y rechazando otras según avanza en el juego.

Vemos como la apertura española o la defensa siciliana, tan populares entre los profesionales del ajedrez, son desechadas rápidamente, mostrando una clara predilección por la apertura inglesa y por las de peón de dama. Alpha Zero va aprendiendo en soledad las jugadas que la humanidad ha entendido tras siglos (o quizá milenios) de estudiar el ajedrez, y las desecha para jugar a su manera. Demis Hassabis dijo que Alpha Zero no juega ni como un humano ni como una máquina, sino casi como un alienígena. Y es cierto, esa forma de jugar no ha sido vista hasta la fecha y los analistas están perplejos comprobando alguna de las extrañas y, aparentemente ininteligibles, jugadas de esta singular IA. Lo cual, además, saca a la palestra el tema de las diferentes formas de inteligencia o estilos cognitivos posibles. Hasta ahora, cuando hablábamos de diferentes estructuras cognitivas, teníamos que irnos a los animales, a los que, tradicionalmente, se considera con muchos menos recursos cognitivos que nosotros. Ahora tenemos una máquina endiabladamente superior, que hace las cosas de una forma muy diferente a todo organismo conocido.

Pero es más, la interpretación más evocadora de su increíble aprendizaje es que el conocimiento humano le estorba.  Stockfish es muy bueno, pero es demasiado humano: su forma de jugar está muy lastrada por su conocimiento de partidas entre humanos. Pero, ¿y qué tiene de malo el conocimiento humano? Que su comprensión del juego está limitada por las capacidades humanas, por nuestra débil memoria y por nuestra escasa capacidad de razonamiento para componer jugadas. Alpha Zero tiene una perspectiva mucho más amplia sobre el ajedrez (se está viendo ya que parece que no valora las piezas del modo tradicional, haciendo continuos sacrificios en pos de ventajas posicionales a largo plazo).

Bien, pues preguntémosle a Alpha Zero cómo juega y mejoremos nuestro juego. No podemos, la red neuronal de Alpha Zero es una caja negra total: su conocimiento se encuentra distribuido entre los valores numéricos de los pesos de sus nodos neuronales… Abriendo su interior no podemos entender nada, pues el deep learning tiene este grave defecto: no podemos pasar su conocimiento a fórmulas lineales tal que podamos entenderlo y traducirlo en estrategias de juego. O sea, hemos creado el ente que mejor juega al ajedrez de todos los tiempos y no sabemos cómo lo hace. Solo nos queda verlo jugar y, externamente, intentar comprender por qué hace lo que hace como si observáramos a un jugador que no quisiera desvelar los secretos de su juego.

Algunos han destacado el dato de que Alpha Zero analiza solamente unas 60.000 posiciones por segundo en comparación con los 60 millones de Stockfish, anunciando, a mi juicio muy apresuradamente, el fin de la fuerza bruta. En primer lugar a mí 60.000 jugadas por segundo me sigue pareciendo fuerza bruta. No sé al lector, pero a mí en un segundo casi no me da ni para darme cuenta de que estoy jugando al ajedrez. Y en segundo, el funcionamiento de Alpha Zero es engañoso en cuanto a la potencia de cómputo que necesita. Si bien, una vez entrenado, necesita bastante menos que cualquier módulo competente de ajedrez, para su entrenamiento previo necesita muchísima. De hecho, necesita jugar muchas más partidas que cualquier gran maestro humano para llegar a su nivel.

Y es que, a nivel teórico, Alpha Zero no es demasiado novedoso. De modo muy general, no es más que un árbol de decisión que Monte Carlo (inventado desde mediados del siglo pasado) más una red neuronal convolucional que no parece tener nada fuera de lo que ya sabemos desde hace tiempo. Entonces, ¿por qué no se ha hecho antes? Precisamente porque hacía falta una potencia de cómputo de la que no se disponía. Las redes neuronales artificiales siguen teniendo el mismo defecto de siempre: su lentitud de entrenamiento, hacen falta millones de ejemplos para que vayan aprendiendo. Entonces, la fuerza bruta que no necesitan para funcionar, sí que la necesitan para entrenarse. No obstante, el avance es, a nivel práctico, muy significativo: una vez entrenado ya no necesita más de dicha potencia.

Otro aspecto, seguramente el más importante, es la polivalencia que prometen y que nos hace soñar con la añorada IAG (Inteligencia Artificial General). Alpha Zero no solo es invencible al ajedrez, sino al Go y al Shogi ¿En cuántas tareas podrán desenvolverse a nivel sobrehumano esta nueva generación de máquinas? Prudencia: las máquinas ya nos machacaban desde hace tiempo en muchas ocupaciones, siempre y cuando éstas fueran fácilmente formalizables. El ajedrez, el Go o el shogi, aunque sean juegos muy complejos, son trivialmente formalizables: tablero de juego delimitado con precisión y solo unas pocas reglas de juego, igualmente, muy precisas. En entornos más complejos y confusos  tienen problemas. A pesar de que, precisamente, la IA conexionista se mueve mejor que la simbólica en ellos, todavía tiene muchas dificultades. Pensemos que un coche autónomo, aunque sepa desenvolverse en ambientes muy cambiantes, lo único que hace es moverse por vías, habitualmente, bien delimitadas (su “micromundo” es casi  de dos dimensiones). Moverse competentemente en un determinado nicho ecológico es de lo primero que saben hacer los organismos vivos más sencillos. Aunque estamos hablando de excelentes avances, todavía queda mucho por hacer.

Desde el Círculo de Ajedrez José Raúl Capablanca, se nos presenta un problema que los módulos tradicionales no son capaces de solucionar, precisamente, porque no son capaces de planes generales a muy largo plazo ¿Sería capaz Alpha Zero de solucionarlo? Juegan blancas y ganan.

La solución en este vídeo.

 

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s