Alquimia = Active Learning + Graph Neural Networks
A menudo me gusta comparar a la Ciencia de Datos con otras habilidades como la buena ortografía, hablar inglés o saber utilizar una computadora que la mayor parte de los profesionistas deben tener independientemente del área en la que se desempeñen, puede ser trabajando para una empresa, tener su negocio propio, realizar investigación o inclusive dedicarse al servicio público. Estoy convencido de que conocer un poco sobre Ciencia de Datos pronto estará en el currículum medio de la educación.
La comprensión de la Inteligencia Artificial por su parte, podría no ser lo suficientemente necesaria y esté reservado a trabajos muy específicos, sin embargo todas las personas que estén interesados en investigación deberían de conocer las bases de la IA pues en los últimos años se ha probado como un elemento fundamental.
Hace algunos meses investigadores de Google DeepMind y University of California, Berkeley utilizaron Aprendizaje Profundo para el desarrollo de materiales inorgánicos que puedan servir para el descubrimiento de super-computadoras, de baterías que sean más eficientes o los célebres super-conductores considerados el santo grial de la ciencia de materiales.
En esta edición de nuestro Bourbakisme vamos a hablar de cómo dos herramientas de vanguardia en IA como Active Learning y Graph Neural Networks ayudaron al descubrimiento de 736 nuevos materiales con potenciales aplicaciones reales.
Graph Neural Networks (GNN)
Las componentes atómicas de las bases de datos son las características que componen a nuestros registros, es decir que un registro corresponde a un conjunto de características. Algo muy similar ocurre con los materiales en el que sus características corresponden con átomos de distintos elementos. De igual forma un texto (digamos un prompt que introducimos en ChatGPT) tiene características que corresponden a las palabras.
La observación más importante detrás de las GNNs las características no es lo único que distingue a dos registros: por supuesto que ni los elementos de un material ni las palabras dentro de un texto los distinguen únicamente dentro del espacio de todos los posibles materiales o todos los posibles textos.
Las características podrían tener relaciones entre sí, en los ejemplos anteriores hablaríamos de interacciones atómicas o de proximidad dentro de nuestros textos. Gracias a las aristas entre los nodos de un grafo es posible representar renglón a renglón estas relaciones.
En el trabajo de Google DeepMind se entrenó una GNN, principalmente con una base de datos llamada Materials Project para predecir si un material es viable en términos de su energía, a esto se le conoce como estabilidad y se puede plantear como un modelo de regresión. En este paso es indispensable el uso de un área conocida como Density-functional theory (DFT).
Active Learning
Aunque el planteamiento de este problema podría hacernos pensar en un modelo generativo parecido a ChatGPT o los modelos tipo Midjourney, en realidad el uso de Deep Learning es un poco distinto pues la generación de candidatos a nuevos materiales, de hecho no son técnicas de Deep Learning y no hablaremos de ellas: Symmetry aware partial substitutions (SAPS) y AIRSS structure generation.
Una vez que se generan los materiales candidatos, se evalúa su viabilidad tanto en estructura como en composición en la GNN entrenada de la que les hablamos hace un rato.
Existe un paso recursivo indispensable del cual no les hemos hablado aún llamado Active Learning, en este paso los datos etiquetados por un primer modelo serán incorporados en el entrenamiento de un segundo modelo el cual nuevamente evaluará registros no-supervisados, este paso se repetirá algunas veces.
En algunos contextos, Active Learning podría ser bastante peligroso, pensemos por ejemplo en modelos de series de tiempo en los que es conocido cómo errores pequeños podrían sesgar gravemente el modelo final. Para este ejemplo, los resultados de este método son increíblemente positivos.