Bentornati ad Analytics With Confidence. In questa serie esplorerò la chiave del successo con la moderna analisi dei dati: la convalida. Nel primo post ho parlato con Ron Kenett e Chris Gotwalt della necessità di generalizzabilità. In questo post vedremo i problemi con i modelli che non generalizzano. Per fare ciò, dobbiamo aggirare le protezioni di JMP che impediscono di "adattare eccessivamente" i modelli.
Ricette di reazione: un caso di studio dalla scienza e dall'ingegneria
Rendiamolo reale con un caso di studio sull'analisi di migliaia di variazioni su una ricetta per realizzare un prodotto chimico di alto valore [1]. La reazione richiede cinque ingredienti critici:
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.Schema di reazione disegnato a mano da me. Se non sei un chimico non preoccuparti: l'importante è che ci sono tantissime ricette possibili.
Per ognuno di questi ci sono diverse varianti tra cui scegliere: quattro elettrofili, tre nucleofili, 12 ligandi, otto basi e quattro solventi:

Ciò significa che ci sono 4608 ricette possibili (4 x 3 x 12 x 8 x 4). Quale combinazione di scelte di ingredienti ci darà la resa più elevata (la conversione più completa al prodotto finale)? Perché? Gli ingredienti “migliori” potrebbero essere troppo costosi o indesiderabili per ragioni di sicurezza o ambientali, e potrebbero esserci altre opzioni che potrebbero darci rendimenti altrettanto elevati.
Abbiamo dati che ci aiutano a rispondere a queste domande. Abbiamo 150 possibili ricette che sono state testate e la percentuale di resa determinata. Visualizzarli è un buon inizio:

Le ricette che hanno dato una resa scarsa sono in rosa intenso, mentre le reazioni con resa più elevata sono in verde. Lo spazio bianco circostante rappresenta tutte le ricette che non sono state provate. Non è facile vederlo con così tante variabili, ma il nucleofilo trifluoroborato sembra produrre rese inferiori (terzo a destra). Le ricette che utilizzano gli altri nucleofili e il 6-IQ come elettrofilo (in alto a sinistra) sono generalmente migliori.
I grafici di distribuzione interattivi in JMP mostrano ciò che è comune alle ricette con il rendimento più elevato:

Ma è ancora difficile vedere tutti gli schemi tra gli input o “predittori” (in blu qui) e il risultato %Yield o “risposta” (in arancione) in un sistema complesso come questo.
Un albero decisionale o analisi delle “partizioni” è la base per alcuni dei metodi di machine learning più diffusi per le situazioni di big data. L'algoritmo cerca il modo migliore per dividere tutte le osservazioni (ricette qui) in due utilizzando una delle variabili predittive. La suddivisione “migliore” presenta la differenza maggiore nella risposta media tra i due rami.
You can launch the Partition platform from Analyze > Predictive Modeling.È possibile avviare la piattaforma di partizione da Analizza > Modellazione predittiva.
Qui troviamo che la suddivisione migliore è su Nucleophile, con una resa media del 49,3% per l'Estere Boronico o Acido Boronico, e del 23,4% per il Trifluoroborato. Questo ci dice che la scelta del nucleofilo è importante ma non ci dà previsioni precise. Se utilizziamo Estere Boronico o Acido Boronico, il modello prevede una resa del 49,3%. Dai valori effettivi nell'immagine sopra, possiamo vedere che potremmo aspettarci rendimenti ovunque nell'intervallo dallo 0 a quasi il 100%! E non ci dice nulla sull’effetto degli altri fattori sul rendimento:

Possiamo migliorare il modello ripetendo l'algoritmo di partizionamento su ogni nuovo ramo. L' RSquare è una misura utile per monitorare il miglioramento dell'adattamento del modello. Ci dice quanta variazione nella nostra risposta è spiegata dagli effetti dei fattori nel modello. Più si avvicina a 1, maggiore è la variazione spiegata dal modello.
L'RSquare aumenta da 0,204 a 0,442 con una seconda divisione. Dopo 24 divisioni, è 0,825:

A questo punto JMP ci impedisce di suddividere ulteriormente perché abbiamo raggiunto il limite della dimensione minima di divisione di 5. Questo è uno dei guardrail in JMP per impedirti di realizzare modelli stupidi. Per questo esempio imposteremo la dimensione minima su 1 e continueremo a dividere.
You can change the minimum size split from the red triangle menu.Puoi modificare la suddivisione della dimensione minima dal menu del triangolo rosso.
Dopo 97 divisioni non possiamo più dividere e RSquare è 0,985, il che significa che il nostro modello cattura il 98,5% della variazione di rendimento. Possiamo vedere come RSquare è aumentato con l'aumentare della complessità del modello con la cronologia divisa:

Il modello ora è molto più complesso, come possiamo vedere dal profiler di previsione:

Potremmo utilizzare il modello per prevedere la resa di ricette che non abbiamo testato per ottimizzare la ricetta e per comprendere in che modo il cambiamento delle ricette influisce sulla resa. Possiamo dedurre quali predittori siano più importanti e possiamo vedere come i fattori interagiscono tra loro.
Quanto è buono questo modello?
Possiamo vedere da RSquare e dal grafico Effettivo/Previsto che il modello si adatta molto bene ai dati. Ciò significa che il modello effettua per lo più previsioni accurate delle rese delle ricette utilizzate per addestrare il modello.

Ma si generalizza? Dovremmo essere sicuri delle previsioni per le ricette che non abbiamo testato?
In questo caso possiamo rispondere direttamente a questa domanda perché tutte le 4.608 possibili ricette sono state eseguite utilizzando un esperimento automatizzato di screening ad alta produttività. Le 150 ricette che abbiamo utilizzato sono state campionate da me in modo casuale dai dati completi a titolo illustrativo. La mappa termica per le previsioni del modello mostra alcune somiglianze con i rendimenti effettivi ma anche evidenti differenze.

Il grafico della resa percentuale effettiva di tutte le 4.608 ricette rispetto alle previsioni del modello di partizione non sembra molto buono:

Oh no! Il modello di partizione prevedeva rendimenti prossimi al 100% per diverse ricette che in realtà avevano rendimenti più vicini allo 0 (in basso a destra del grafico). Il quadrato RS è 0,5. Chiaramente questo modello “overfit” non è affatto generalizzabile.
Nel prossimo post vedremo come la convalida e alcuni degli altri strumenti di JMP Pro possono aiutarci a creare modelli di previsione generalizzabili in modo da poter applicare l'analisi con sicurezza.
Saperne di più:
[1] Dati provenienti da Perera D, Tucker JW, Brahmbhatt S, Helal CJ, Chong A, Farrell W, Richardson P, Sach NW. Una piattaforma per lo screening automatizzato delle reazioni su scala nanomolecolare e la sintesi in flusso su scala micromolecolare. Scienza. 26 gennaio 2018;359(6374):429-434. doi: 10.1126/science.aap9112. PMID: 29371464. I set di dati campionati e completi sono allegati come tabelle di dati JMP.