Bienvenido de nuevo a Analytics With Confidence. En esta serie, exploro la clave del éxito del 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 veremos los problemas con los modelos que no generalizan. Para hacer esto, necesitamos abrirnos camino alrededor de las protecciones en JMP que le impiden "sobreajustar" los modelos.
Recetas de reacción: un estudio de caso de ciencia e ingeniería
Hagamos esto realidad con un estudio de caso sobre la investigación de miles de variaciones de 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 te preocupes si no eres químico: lo importante es que hay muchas recetas diferentes posibles.
Para cada uno de ellos hay varias variantes para elegir: cuatro electrófilos, tres nucleófilos, 12 ligandos, ocho bases y cuatro disolventes:

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 proporcionen rendimientos igualmente altos.
Disponemos de datos que nos ayudan a responder estas preguntas. Tenemos 150 de las recetas posibles que se han probado y se ha determinado el % de rendimiento. Visualizarlos es un buen comienzo:

Las recetas que dieron un rendimiento pobre están en rosa fuerte y las reacciones de mayor rendimiento están en verde. El espacio en blanco circundante 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 utilizan los otros nucleófilos y 6-IQ como electrófilo (arriba a la izquierda) son generalmente mejores.
Los gráficos de distribución interactivos en JMP muestran lo que tienen en común las recetas de mayor rendimiento:

Pero todavía es difícil ver todos los patrones entre las entradas o “predictores” (aquí en azul) y el resultado o “respuesta” de % de rendimiento (en naranja) en un sistema complejo como este.
Un árbol de decisiones 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 usando una de las variables predictoras. La “mejor” división 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 de partición desde Analizar > Modelado predictivo.
Aquí encontramos que la mejor división es la de Nucleophile, con un rendimiento promedio del 49,3% para el éster borónico o ácido borónico, y del 23,4% para el trifluoroborato. Esto nos dice que la elección del nucleófilo es importante pero no nos da predicciones precisas. Si utilizamos éster borónico o ácido borónico, el modelo predice un rendimiento del 49,3%. A partir de los valores reales en la imagen anterior, podemos ver que podríamos esperar rendimientos en cualquier rango de 0 a casi 100%. Y no nos dice nada sobre el efecto de los otros factores sobre el rendimiento:

Podemos mejorar el modelo repitiendo el algoritmo de partición en cada nueva rama. El RSquare es una medida útil para realizar un seguimiento de 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 cerca está de 1, más variación explica 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 dividirnos más porque hemos alcanzado el límite del tamaño mínimo de división de 5. Esta es una de las barreras 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 el tamaño mínimo de división 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 a medida que aumenta 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 interactúan los factores entre sí.
¿Qué tan bueno es este modelo?
Podemos ver en RSquare y en el gráfico Real versus Predicho que el modelo se ajusta muy bien a los datos. Es decir, el modelo realiza en su mayoría predicciones precisas de los rendimientos de las recetas que se utilizaron 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 automatizado de alto rendimiento. Las 150 recetas que utilizamos las tomé al azar a partir de los datos completos a modo de ilustración. El mapa de calor de las predicciones del modelo muestra cierta similitud con los rendimientos reales, pero también diferencias obvias.

El gráfico del % de rendimiento real de las 4.608 recetas frente a las predicciones del modelo de partición no parece muy bueno:

¡Oh, no! El modelo de partición predijo rendimientos cercanos al 100 % para varias recetas que en realidad tuvieron rendimientos cercanos a 0 (parte inferior derecha del gráfico). El R cuadrado es 0,5. Es evidente que 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 de JMP Pro pueden ayudarnos a crear modelos de predicción que se generalicen para que pueda aplicar análisis con confianza.
Aprende más:
[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 nanomol y la síntesis en flujo a escala micromol. Ciencia. 26 de enero de 2018; 359 (6374): 429-434. doi: 10.1126/science.aap9112. PMID: 29371464. Los conjuntos de datos completos y muestreados se adjuntan como tablas de datos JMP.