El descubrimiento acelerado de materiales, a través del aprendizaje de máquina

Un sistema de información se diseña para responder a las preguntas genéricas (queries) que sus usuarios le formulan, empleando un lenguaje de comandos tipo SQL (Structured Query Language).
Basándose en las tablas, registros (tuplas), atributos y vínculos (ligas) que conforman una base de datos relacional (izquierda), el software manipula todos esos recursos para entregar los resultados de cada consulta, en una relación (de ahí el nombre de relacional) que contiene los valores de los atributos que al usuario le interesa conocer.

Ese mismo sistema sin embargo, no será capaz de responder a preguntas con valores de atributos que no se hayan dado de alta previamente en alguna de las tablas de la base de datos en cuestión (pulse sobre la imagen de la derecha). En el mejor de los casos, podrá entregar un listado de objetos (instancias o registros) para los cuales, solo un subconjunto de valores de atributos, satisface un rango especificado por el usuario.

Tal es el caso de la base de datos de MatWeb, mediante la cual uno puede conocer las propiedades de más de 125,000 materiales, ingresando los valores mínimo y máximo de tres propiedades de un material en particular, como podrían ser las de un metal, un polímero, un fluido, etc.

Así por ejemplo, apoyándome en el sistema de información de ese mismo sitio web, pude consultar los polímeros cuya resistencia a la fatiga, su densidad y su punto de fusión, se encontraban entre las 10 y las 200,000 psi, los 0.0000820 y los 20 grs/cc y los 270 y los 3,000 °C, respectivamente (pulse sobre la imagen adjunta para ver la lista de materiales que obtuve después de realizar este ejercicio).

Características esenciales de una plataforma de materiales

A pesar de no ser una plataforma para el descubrimiento acelerado de materiales, ese sistema ha implementado una función que imita de alguna manera, una característica que en mi opinión debería incluir una plataforma de este tipo. Me estoy refiriendo a la función que en ese mismo sitio aparece como «Compare Materials» (pulse en la imagen de la derecha o vaya al sitio y realice una consulta similar a la que describí con anterioridad, para que vea cómo el comparar varios materiales, equivale a encontrar similitudes entre los mismos).

No estoy seguro si los propietarios de MatWEb implementaron esa función empleando algún tipo de correlación; pero si yo tuviera que idear un mecanismo para encontrar una similitud entre dos o más materiales en una base de datos como ésta, combinaría las técnicas del aprendizaje de máquina con la correlación de Pearson.
Ahora bien, ¿por qué alguien querría encontrar similitudes entre un conjunto de propiedades de una muestra de material, y las de uno o más de los materiales que se encuentran almacenados en una base de datos? La necesidad de encontrar un material que cumpla con ciertas especificaciones, es una razón muy poderosa para aplicar las técnicas de la inteligencia artificial, tanto de aprendizaje supervisado como de no supervisado.

Un ingeniero industrial por ejemplo, podría estar interesado en un material sustentable, con un costo de producción menor al de los que se usan normalmente, y que además de cumplir con las especificaciones mostradas en la imagen adjunta, tuviera que sujetarse a las normas que regulan la fabricación de un determinado producto (pulse sobre la imagen para ver cómo con un algoritmo tipo Bayes, la plataforma ha clasificado al material como un polímero).

De esta manera, una interfaz gráfica de usuario (IGU) como la recién mostrada, permitiría ingresar de manera muy amigable, las especificaciones de diseño de un material.
Lo interesante de recurrir a los métodos de la inteligencia artificial, en vez de a un sistema de información convencional, es que una vez clasificado el material con la mejor precisión posible, se puede subdividir más exhaustivamente (clustering) el grupo de materiales que cumplen mejor con dichas especificaciones, para finalmente hallar el material ideal, empleando una correlación.
Otra función que no debería faltar en una plataforma de materiales inteligente, es la conversión de formatos. En el sitio oficial de la Open Quantum Materials Database, usted puede descargar una base de datos de materiales de más de 563,247 instancias; pero si está planeando extraer conocimiento de una mina de datos como esa, es muy probable que tenga que convertir los archivos con extensión SQL, a un formato de valores separados por comas (CSV).

Ese es el formato por defecto que herramientas y plataformas como Orange, Knime, WEKA y RapidMiner, están usando como entrada para procesar los datos de sus usuarios, y es con toda seguridad, el que deben estar usando los creadores del «Genoma del Polímero«, una plataforma dedicada a acelerar el diseño y el descubrimiento de polímeros (puede pulsar sobre la imagen de la derecha para ver el diseño de su interfaz de usuario, o bien ir directamente al sitio para predecir las propiedades de más de 800 polímeros).

¿Qué queremos descubrir?

El propósito de una plataforma con las características mencionadas anteriormente, consistirá en descubrir tanto nuevas aplicaciones como combinaciones de materiales nunca antes vistas.
Habrá por ejemplo quien esté interesado en combinar ciertas cantidades de etanol con gasolina, con la intención de mejorar las propiedades de salida de una máquina, como podrían ser la potencia y el par mecánico (torque).

Otros investigadores preferirán concentrar sus esfuerzos en encontrar por ejemplo, un polímero que además de proteger de la lluvia, pueda también absorber los rayos ultravioleta. Este segundo escenario se parece mucho a lo que sucede en el campo de la extracción de texto (text mining) biomédico, en donde el principal objetivo es develar cuándo un medicamento puede ser usado para tratar una enfermedad diferente, de aquella para la que originalmente fue concebido.

En el caso de la ciencia de materiales, al igual que las sustancias activas de las medicinas, el combinar propiedades de diferentes materiales, podría dar lugar a una nueva aplicación, como sería el  caso de descubrir que una combinación de aceites de origen vegetal y animal, podría usarse para disminuir el costo de fabricación de un transformador de alto voltaje, que normalmente se construye con aceite de origen mineral.
El ampliar los tipos de materiales dentro de una plataforma para el descubrimiento acelerado de materiales, aumenta las posibilidades de encontrar nuevas aplicaciones, porque uno no sabe de antemano lo que le espera, cuando a través de un aprendizaje no supervisado (clustering) por ejemplo, descubre un patrón o una tendencia nunca antes vista.

El Biodiésel: una interesante área de aplicación

Usted podría hacer uso del sistema de información del sitio MatWeb para encontrar el material idóneo, esto es, aquel que satisface mejor sus requerimientos. Pero si su objetivo fuera descubrir un producto sustentable, compuesto de varios materiales y cuyo costo de producción tuviera que ser inferior al de los materiales convencionales, probablemente ese sistema de información ya no le resultaría tan atractivo. Estamos hablando de un laboratorio con un alto grado de automatización.

Con un laboratorio virtual usted estaría en posibilidad de acelerar el proceso y realizar un gran número de experimentos, hasta encontrar ese producto tan anhelado. ¿Y por qué la prisa? Ilustremos este sentido de urgencia con un ejemplo.
Cuando se vive en un país que a pesar de producir y exportar petróleo tiene que importar gasolina para seguir impulsando una gran parte de sus sistemas de transporte, en donde la producción agrícola es rica en jatropha curcas, se desperdicia mucho aceite vegetal residual, se produce aceite de ricino y en donde abundan las grasas animales y los residuos agrícolas [1], resulta imprescindible recurrir urgentemente a fuentes alternativas de energía que compitan con el diésel convencional y la gasolina importada.

El biodiésel representa entonces una de tantas aplicaciones y una fuente de energía alternativa bastante atractiva. En tanto exista un «laboratorio virtual» para realizar experimentos con muestras de diversas combinaciones  de ésteres de ácidos grasos, como los derivados de la jatropha, el coco, la palma, la soya y de otros más con propiedades similares a las mostradas en las imágenes adjuntas, siempre existirá la posibilidad de encontrar patrones (pulse sobre las capturas de pantalla para agrandarlas) .
No obstante, las 10 muestras que aparecen en ambas imágenes no podrían usarse para entrenar al modelo predictivo final, sino más bien para probarlo, ya que una cantidad de muestras así de pequeña, no sería suficiente para conseguir que una máquina aprendiera a clasificar las instancias que estaríamos pretendiendo analizar posteriormente. Si queremos entrenar bien a una máquina, procuraremos que el número inicial de muestras sea del orden de unas cuantas centenas, pues solo así lograríamos aumentar la precisión del modelo. Sin embargo, se necesita un algoritmo para predecir los valores de la clase o variable de salida, que en este caso está representado por el valor del yodo IV (pulse sobre la imagen de la derecha para agrandarla).

Con un algoritmo inspirado en el principio de operación de las redes neuronales artificiales (RNAs), nuestro modelo de extracción de conocimiento tendrá que calcular los valores de la clase en función de sus variables de entrada: las propiedades C8:0 en %, C10:0 en %, C12:0 en % y así sucesivamente hasta llegar a la glicerina en el archivo de Excel recién mostrado. En conformidad con lo anterior, para una aplicación orientada al biodiésel, nuestra plataforma quedaría implementada,  entre otras cosas, por un modelo híbrido de red neuronal artificial.

Aprendizaje supervisado: acelerando la clasificación con un algoritmo de red neuronal

De acuerdo con lo dicho hasta aquí, entre mayor diversidad de materiales soporte nuestra plataforma, mayores serán las oportunidades de descubrir nuevas aplicaciones y/o combinaciones de materiales, y entre mayor sea el número de experimentos, más rápido encontraremos esa fuente de energía alternativa.
Acelerar el descubrimiento implica acortar el tiempo dedicado al cálculo de las variables de salida. Pero como lo que rige para los biocombustibles no necesariamente es válido para los polímeros, los metales y los materiales cerámicos, no se puede aplicar un prototipo del biodiésel por ejemplo, para predecir las propiedades de esos otros materiales.

Pero lo que sí se ha hecho ([2], [3], [4]) es aplicar el algoritmo de redes neuronales de Levenberg Maquardt para predecir el valor del yodo de un compuesto de biodiésel (IV), para predecir después con ese mismo algoritmo, la viscosidad cinemática, el número de cetano y la estabilidad oxidativa de otros compuestos de biodiésel. Un tratamiento similar podría dársele a los demás tipos de materiales.

Continuando con el ejemplo del biodiésel, si varios autores (ob cit.) ya demostraron que el algoritmo de red neuronal con propagación de error hacia atrás, genera coeficientes de correlación entre 0.96 y 0.99, creo que tiene mucho sentido aprovechar sus hallazgos y no desperdiciar el tiempo tratando de hallar un algoritmo que supere dichas cifras. Sucede que los métodos convencionales para estimar las propiedades del diésel, como la técnica de espectroscopía de infrarrojo cercano (NIR), demandan mucho tiempo de cálculo y por lo mismo resultan muy costosos.

Una herramienta como MatLab o mejor aún, una plataforma de materiales dotada de inteligencia artificial, podría simplificar mucho el trabajo y acelerar el proceso.
En lo que sigue supondré que el lector está familiarizado con los aspectos clave de la minería de datos y la manera en la que aprende una máquina. Una opción para comprender mejor los siguientes apartados, es consultar el ensayo que lleva por nombre: «Minería de datos clínicos como apoyo en el diagnóstico médico: herramientas y cursos«, también de mi autoría. Para una comprensión cabal de lo discutido hasta aquí y de los apartados que siguen, podría usted considerar la posibilidad de tomar el curso «Solución de Problemas Multidisciplinarios con Minería de Datos«.

Análisis de tendencias por medio de la segmentación (clustering)

Cualquiera que haya sido el algoritmo empleado, una vez determinados los valores de las propiedades de salida con tal o cual algoritmo, solo restaría ingresar a la plataforma las instancias así obtenidas, a fin de detectar similitudes entre materiales.
De acuerdo con lo que planteé en el apartado «Características esenciales de una plataforma de materiales», estaríamos descubriendo el material o las combinaciones de materiales que mejor satisfacen una determinada necesidad.

Un problema muy común que se presenta sin embargo, es el no contar con los valores de algunas propiedades, ya sea de entrada o de salida. En tales condiciones, desconfiaríamos de las respuestas de la plataforma. Aún así, todavía podríamos apelar a la segmentación para observar los valores de los centroides asociados a las propiedades de cada uno de los grupos identificados por la plataforma. Retomando el ejemplo del aceite de un transformador de alta tensión, si nuestra prioridad fuera descubrir un aceite con un mínimo de humedad, analizaríamos el centroide asociado a esa propiedad en cada grupo y seleccionaríamos aquel con el valor más próximo al valor objetivo. Los demás centroides los utilizaríamos para postular a uno de esos materiales, como mejor candidato a usar en el transformador. Cuando se domina el campo de una especialidad, la segmentación resulta muy útil para detectar tendencias que podrían estar insinuando una nueva manera de aprovechar un material.

Seleccionando el modelo óptimo: dimensionalidad y precisión

Un modelo se optimiza evaluando la precisión de un algoritmo y realizando una selección muy cuidadosa de sus atributos (variables o propiedades) de entrada. Los expertos en ciencias de materiales llaman a esta selección reducción de la dimensionalidad o reducción de dimensiones. La forma más habitual de llevar a cabo esta última tarea es por medio de correlaciones. Para reducir el número de atributos recomiendo aplicar tres tipos de correlaciones y luego promediar sus coeficientes para obtener un criterio de selección sin sesgos.

Tanto MatLab como WEKA permiten correlacionar cada una de las variables de entrada con la de salida, empleando varios criterios. En el campo de la minería de datos clínicos he obtenido excelentes resultados con WEKA, recurriendo al coeficiente de Pearson, la tasa de ganancia y la ganancia de información (para otros criterios diferentes al de promediación de correlaciones, véase «La informática biomédica en el diagnóstico y la prevención de la esquizofrenia y otros trastornos de la personalidad«)

La reducción de atributos de entrada no obedece exclusivamente a su repercusión en el tiempo de procesamiento, sino también a la influencia que ejercen sobre la variable de salida. Al conjunto de atributos resultante se le conoce como proxy. Como explico en el curso (pulse sobre el mapa mental de la izquierda), entre más próximo a la unidad se encuentre el coeficiente de correlación entre el atributo en cuestión (o el promedio de varios de ellos) y la clase, más influirá el atributo en el comportamiento de ésta.

Así, el proxy es aquel que mejor representa los hechos y por ende, el que mejores precisiones arroja.
Un modelo optimizado es el producto de haber aplicado al proxy, aquel algoritmo que durante el proceso de selección resultó ser el de mayor precisión. La selección del modelo comprende tres etapas. La primera consiste en aplicar varios algoritmos a un conjunto de datos de entrenamiento con el proxy previamente determinado. Durante la fase de validación, los mismos algoritmos que se emplearon durante la etapa anterior, se aplican a diferentes subconjuntos de los datos de entrenamiento, a fin de evaluar qué tanto se está equivocando cada uno de los algoritmos (se trata típicamente de una validación cruzada). La tercera etapa es la de prueba, en la que se obtiene la precisión de cada algoritmo, utilizando los mismos elementos que en las etapas anteriores, con excepción del conjunto de datos, que esta vez corresponde a uno totalmente ajeno a los anteriores (como las 10 muestras de ésteres metílicos que utilicé para ilustrar la aplicación del biodiésel).

La precisión de un modelo la medimos con la fracción absoluta de la varianza (R²), el error cuadrático medio (RMS) y el error absoluto medio en porciento (MAPE) (pulse sobre la imagen de la derecha para ver los detalles). En esa gráfica muestro cómo un algoritmo de red neuronal tipo perceptrón de dos capas, con 4 variables de entrada, 3 neuronas en la primera capa escondida  y una neurona en la segunda, ajusta una recta de la foma E=mx+b, a un conjunto de puntos que se han obtenido a través de una serie de mediciones experimentales (eje de las x).

La variable analizada en este ejemplo es la estabilidad oxidativa, con predicciones realizadas a partir de un total de 70 muestras de biodiésel, con características similares a las especificadas en un apartado anterior. Para la fase de entrenamiento se destinaron 39 muestras, para la de validación 10 y para la de prueba se asignaron 21, obteniéndose en cada una de ellas, valores de R² iguales a 0.9306, 0.9733 y  0.9544, respectivamente. Esto significa que el modelo empleado ha cumplido satisfactoriamente con su cometido, y que no es necesario recolectar un volumen extremadamente grande de datos (big data) para otener un modelo de alta precisión.

Conclusiones

Para aumentar las posibilidades de descubrir fuentes de energía más limpias y económicas que las convencionales, se requiere que una plataforma dotada de inteligencia artificial, acelere el proceso de predicción de variables, de reducción de dimensiones y de detección de similitudes entre materiales. Para ello, es imperativo diversificar lo más posible el tipo de materiales a considerar, a fin de aumentar la cantidad de experimentos y las oportunidades de conseguir el éxito en cada uno de ellos.

Si bien un modelo no funciona para todos los tipos de materiales, quizás convenga analizar más a fondo las propiedades de cada grupo de materiales, aplicando las técnicas de segmentación de manera más intensiva, con miras a realizar una reclasificación que permita estandarizar las estructuras de datos de materiales que hasta ahora se han estado usando.

En el mejor de los casos, esa reclasificación permitiría encontrar un modelo para cada grupo de materiales, que a su vez fungiría como instrumento de predicción para estimar las propiedades de los materiales dentro de los grupos así definidos. En caso de que esto no fuera posible, siempre se podrá implementar una interfaz gráfica de usuario que permita seleccionar en una caja de diálogo, el algoritmo y los parámetros que a juicio del usuario producirán los mejores resultados (como lo hacen WEKA, RapidMiner, MatLab y otras plataformas de minería de datos).

Agradecimientos

No podría dejar de expresar mi agradecimiento a los investigadores Francisco López González, Alberto Reyes Ballesteros, Alfredo Espinosa Reza y Francisco Poujol Galván, del Instituto Nacional de Electricidad y Energías Limpias (INEEL), por haberme invitado a participar en la encomienda que el Consejo Nacional de Ciencia y Tecnología (CONACYT) les asignará, toda vez que su propuesta sea aprobada de conformidad con su convocatoria: “Proyectos de desarrollo de plataformas de descubrimiento acelerado de materiales para energía, Cooperación con universidades en Canadá y Estados Unidos”.

Esperando que la presente haga las veces de «granito de arena» en la elaboración de dicha propuesta, aprovecho la ocasión para desearles la mejor de las suertes, para que este esfuerzo que ahora estamos realizando, se materialice en una plataforma de inagotables fuentes de energía cien por ciento sustentables.

© Ing. Sergio López González 3 de  Agosto de 2018


REFERENCIAS

[1] Montero G. & Stoytcheva M. Biodiesel – Quality, Emissions and By-Products. Published by InTech, Croatia. 2011
[2]De Sousa et al. Application and Assessment of Artificial Neural Networks for Biodiesel Iodine Value Prediction. International Journal of Computer and Information Engineering. Vol:9, No:5, 2015.
[3] Jahirul et al. The Use of Artificial Neural Networks for Identifying Sustainable Biodiesel Feedstocks. Energies 2013, 6, 3764-3806; doi:10.3390/en6083764
[4] Jahirul et al., An Artificial Neutral Network (ANN) Model for Predicting Biodiesel Kinetic Viscosity as a Function of Temperature and Chemical Compositions. 20th International Congress on Modelling and Simulation, Adelaide, Australia, 1–6 December 2013.
[5] Oliveira & Amorim. Applications of Artificial Neural Networks in Biofuels. INTECH. DOI: 10.5772/intechopen.70691

Deja un comentario