Bienvenido de nuevo a Analytics con confianza. En esta serie, estoy explorando la clave del éxito con el análisis de datos moderno: la validación. En la primera publicación, Hablé con Ron Kenett y Chris Gotwalt sobre la necesidad de generalizar. En este post verán los problemas con los modelos que no generalizan. Para hacer esto, necesitamos piratear las protecciones en JMP que le impiden "sobreajustar" los modelos.
Recetas de reacción: un estudio de caso de ciencia e ingeniería
Hagámoslo realidad con un estudio de caso sobre la investigación de miles de variaciones en una receta para fabricar un producto químico de alto valor [1]. La reacción requiere cinco ingredientes críticos:
Reaction schematic hand-drawn by me . Don't worry if you are not a chemist - the important thing is there are lots of different possible recipes.Esquema de reacción dibujado a mano por mí. No se preocupe si no es químico, lo importante es que hay muchas recetas diferentes posibles.
Para cada uno de estos hay varias variantes para elegir: cuatro electrófilos, tres nucleófilos, 12 ligandos, ocho bases y cuatro solventes:

Esto significa que hay 4608 recetas posibles (4 x 3 x 12 x 8 x 4). ¿Qué combinación de opciones de ingredientes nos dará el mayor rendimiento (la conversión más completa al producto final)? ¿Por qué? Los "mejores" ingredientes pueden ser demasiado caros o indeseables por razones ambientales o de seguridad, y puede haber otras opciones que nos brinden rendimientos igualmente altos.
Tenemos datos que nos ayudan a responder estas preguntas. Tenemos 150 de las posibles recetas que han sido probadas y el % de rendimiento determinado. Visualizar estos es un buen comienzo:

Las recetas que dieron un bajo rendimiento están en rosa fuerte y las reacciones de mayor rendimiento están en verde. El espacio en blanco que lo rodea representa todas las recetas que no se han probado. No es fácil de ver con tantas variables, pero el nucleófilo trifluoroborato parece dar como resultado rendimientos más bajos (tercero a la derecha). Las recetas que usan los otros nucleófilos y 6-IQ como electrófilo (arriba a la izquierda) son generalmente mejores.
Los diagramas de distribución interactivos en JMP muestran lo que es común a las recetas de mayor rendimiento:

Pero todavía es difícil ver todos los patrones entre las entradas o "predictores" (en azul aquí) y el resultado de %Rendimiento o "respuesta" (en naranja) en un sistema complejo como este.
Un árbol de decisión o análisis de "partición" es la base de algunos de los métodos de aprendizaje automático más populares para situaciones de big data. El algoritmo busca la mejor manera de dividir todas las observaciones (recetas aquí) en dos utilizando una de las variables predictoras. La división "mejor" tiene la mayor diferencia en la respuesta promedio entre las dos ramas.
You can launch the Partition platform from Analyze > Predictive Modeling. Puede iniciar la plataforma Partición desde Analizar > Modelado predictivo.
Aquí encontramos que la mejor división está en nucleófilo, con un rendimiento promedio de 49,3% para el éster borónico o ácido borónico y 23,4% para el trifluoroborato. Esto nos dice que la elección del nucleófilo es importante pero no nos da predicciones precisas. Si usamos Boronic Ester o Boronic Acid, el modelo predice un rendimiento del 49,3%. A partir de los valores reales en la imagen anterior, podemos ver que podemos esperar rendimientos en cualquier lugar en el rango de 0 a casi el 100 %. Y no nos dice nada sobre el efecto de los otros factores en el rendimiento:

Podemos mejorar el modelo repitiendo el algoritmo de partición en cada nueva rama. El R Plaza es una medida útil para rastrear cómo está mejorando el "ajuste" del modelo. Nos dice cuánta variación en nuestra respuesta se explica por los efectos de los factores en el modelo. Cuanto más se acerque a 1, mayor será la variación explicada por el modelo.
El RSquare aumenta de 0,204 a 0,442 con una segunda división. Después de 24 divisiones, es 0.825:

En este punto, JMP nos impide seguir dividiendo porque hemos llegado al límite del tamaño mínimo de división de 5. Esta es una de las medidas de seguridad en JMP para evitar que hagas modelos tontos. Para este ejemplo, estableceremos el tamaño mínimo en 1 y seguiremos dividiendo.
You can change the minimum size split from the red triangle menu.Puede cambiar la división de tamaño mínimo desde el menú del triángulo rojo.
Después de 97 divisiones, ya no podemos dividir, y el RSquare es 0.985, lo que significa que nuestro modelo captura el 98.5% de la variación en el rendimiento. Podemos ver cómo RSquare ha aumentado con el aumento de la complejidad del modelo con Split History:

El modelo ahora es mucho más complejo, como podemos ver en el generador de perfiles de predicción:

Podríamos usar el modelo para predecir el rendimiento de recetas que no hemos probado para optimizar la receta y comprender cómo el cambio de recetas afecta el rendimiento. Podemos inferir qué predictores son los más importantes y podemos ver cómo los factores interactúan entre sí.
¿Qué tan bueno es este modelo?
Podemos ver en el gráfico RSquare y Real versus Predicted que el modelo se ajusta muy bien a los datos. Es decir, el modelo en su mayoría hace predicciones precisas de los rendimientos de las recetas que se usaron para entrenar el modelo.

¿Pero se generaliza? ¿Deberíamos confiar en las predicciones de las recetas que no hemos probado?
En este caso, podemos responder esa pregunta directamente porque las 4608 recetas posibles se ejecutaron mediante un experimento de detección de alto rendimiento automatizado. Las 150 recetas que usamos fueron muestreadas al azar por mí de los datos completos como ilustración. El mapa de calor para las predicciones del modelo muestra cierta similitud con los rendimientos reales, pero también diferencias obvias.

La gráfica del % de rendimiento real de las 4608 recetas frente a las predicciones del modelo de partición no se ve muy bien:

¡Oh, no! El modelo de partición predijo rendimientos cercanos al 100% para varias recetas que en realidad tenían rendimientos más cercanos a 0 (abajo a la derecha de la gráfica). El RScuadrado es 0,5. Claramente, este modelo de "sobreajuste" no se generaliza bien en absoluto.
En la próxima publicación, veremos cómo la validación y algunas de las otras herramientas en JMP Pro pueden ayudarnos a construir modelos de predicción que generalicen para que pueda aplicar análisis con confianza.
[1] Datos de Perera D, Tucker JW, Brahmbhatt S, Helal CJ, Chong A, Farrell W, Richardson P, Sach NW. Una plataforma para la detección automatizada de reacciones a escala nanomolecular y la síntesis en flujo a escala micromolecular. Ciencia. 2018 26 de enero; 359 (6374): 429-434. doi: 10.1126/ciencia.aap9112. PMID: 29371464. Los conjuntos de datos muestreados y completos se adjuntan como tablas de datos JMP.