Ciao. Benvenuti al nostro talk di approfondimento intitolato "Ottimizzazione Bayesiana: un approccio orientato agli obiettivi per lo sviluppo dei processi". Grazie per averci dedicato del tempo. Oggi parleremo di questa nuova piattaforma recentemente rilasciata in JMP 19. Inizieremo spiegandovi cos'è l'ottimizzazione Bayesiana, come funziona all'interno della piattaforma, cosa e come. Poi vogliamo sottolineare, perché questo è uno dei motivi principali del valore di questo strumento, la sua straordinaria potenza in JMP.
Passeremo poi a quando l'ottimizzazione bayesiana è uno strumento ottimale da utilizzare rispetto a qualcosa di più tradizionale. Poi esamineremo due diversi casi di studio di complessità crescente per evidenziare il valore dell'ottimizzazione bayesiana, per poi tornare alla fine e sottolineare il valore specifico per l'industria dei semiconduttori, e concluderemo parlando di come implementare al meglio questa tecnica in un ambiente di flusso di lavoro per semiconduttori più tradizionale nello sviluppo di processi. Grazie per essere qui.
Grazie, Peter. Vi fornirò una rapida panoramica di cos'è l'ottimizzazione bayesiana e qualche informazione sul suo funzionamento. L'ottimizzazione bayesiana è un algoritmo di ottimizzazione iterativo per trovare la migliore combinazione di impostazioni fattoriali per soddisfare i vostri obiettivi di risposta. È generativo, quindi è una tecnica di apprendimento che utilizza modelli di processo stocastici gaussiani come base per generare nuove, quelle che chiamiamo esecuzioni candidate, che sono nuove impostazioni delle vostre combinazioni fattoriali da testare.
Il flusso di lavoro di base dell'ottimizzazione bayesiana prevede di iniziare con alcuni dati esistenti, che potrebbero essere un progetto DOE iniziale, oppure di iniziare con alcuni dati storici presenti in un database.
Da lì, si prendono quei dati, si costruisce il modello iniziale del processo gaussiano e quindi si utilizza l'algoritmo BayesOpt basato sulle previsioni del modello, sull'incertezza di previsione e sugli obiettivi di risposta per generare i nuovi set di candidati da testare. Una volta testata una nuova sequenza di candidati, si aggiorna il modello con i nuovi risultati di risposta e questa sequenza si ripete fino a quando non vengono individuate le impostazioni ottimali dei fattori.
In questo diagramma di flusso, la fase "Determine delle prossime esecuzioni" è il punto in cui avviene la magia dell'ottimizzazione bayesiana. Questa avviene attraverso una ricerca guidata, bilanciando sia l'esplorazione dello spazio di processo sia l'utilizzo del modello creato.
Perché l'ottimizzazione bayesiana è così innovativa? Beh, tiene conto delle risposte a ogni iterazione, fornendo indicazioni chiare su quando è possibile interrompere la sperimentazione. È una metodologia fortemente orientata agli obiettivi. Va oltre i semplici input e considera gli output e gli obiettivi aziendali.
Questa soluzione combina un algoritmo di apprendimento sequenziale con le funzioni di profiler e desiderabilità di JMP, creando un nuovo approccio all'ottimizzazione estremamente versatile. Come Peter ha già detto in precedenza, la piattaforma di JMP è piuttosto unica perché si basa sulle funzionalità di profiler di JMP.
Ciò significa che funzionerà con più risposte che potrebbero avere obiettivi contrastanti: massimizzare, minimizzare o raggiungere un obiettivo. Può anche gestire input categoriali, vincoli fattoriali e dati di training potenzialmente disordinati con input mancanti. La piattaforma JMP è molto potente.
Perché è così efficace per la produzione di semiconduttori? Beh, è un approccio iterativo di tipo "colmare le lacune di conoscenza", quindi è una scelta naturale per lo sviluppo di processi di produzione di semiconduttori. BayesOpt, come lo chiamiamo noi, indicherà anche le lacune nel vostro spazio di processo che potrebbe essere opportuno esplorare. Inoltre, sfrutta in modo molto critico ed efficiente i dati storici disponibili, in modo che quelli archiviati nei database possano essere effettivamente utilizzati.
Un breve accenno al funzionamento del processo di ottimizzazione bayesiana. Innanzitutto, vorrei descrivere brevemente il profiler di previsione nel caso in cui non lo conosceste, poiché è un elemento fondamentale della piattaforma di ottimizzazione bayesiana in JMP.
Il profiler di previsione in JMP è un'illustrazione completamente interattiva di un modello. Puoi vedere uno screenshot di esempio del profiler di previsione qui. Puoi manipolare i cursori nella finestra qui, modificare i valori dei fattori e visualizzare immediatamente le previsioni aggiornate del modello.
L'ottimizzazione bayesiana utilizza le previsioni del modello derivate dal modello di processo gaussiano, che è il modello di base che hai costruito. Considera anche l'incertezza di previsione e incorpora i tuoi obiettivi di risposta, fornendoti nuove combinazioni di fattori da testare. Ora passerò il tutto a Peter per fornirti maggiori dettagli sul funzionamento dell'algoritmo.
Esamineremo solo un paio di immagini tratte dalla piattaforma stessa e, nei casi di studio, entreremo concretamente nella piattaforma e la utilizzeremo in tempo reale. Ma quando si accede alla piattaforma di ottimizzazione bayesiana, ci sono due approcci. Parlerò brevemente dell'approccio più personalizzato. Non lo mostreremo oggi, ma tutti gli strumenti personalizzati vengono utilizzati o possono essere utilizzati in modalità automatica, che è ciò che evidenzieremo.
In basso a destra, potete vedere queste scorciatoie del profiler. Si tratta di diversi metodi con cui l'ottimizzazione bayesiana può essere implementata per trovare il set di candidati ottimale successivo. Supponiamo, ad esempio, che il vostro obiettivo non sia necessariamente trovare gli obiettivi di risposta ottimali, ma che vogliate specificamente colmare delle lacune di conoscenza.
Bene, potresti dire, ad esempio, di usare la massimizzazione della deviazione standard della desiderabilità bayesiana, e che questa si sposterà attorno a quel set di candidati per identificare le aree in cui la deviazione standard è elevata, per poi sviluppare set di candidati per restringere quelle regioni e ottenere nuove informazioni. In quella piattaforma, hai il pieno controllo sull'approccio adottato dalla piattaforma di ottimizzazione bayesiana, se lo desideri.
Ci concentreremo sulla modalità automatica. La modalità automatica attingerà da questo menu di scorciatoie del profiler per raggiungere l'obiettivo di massimizzare i tuoi obiettivi di risposta. Qui uso il termine "massimizzazione" in senso lato. Potresti voler massimizzare, minimizzare o cercare di raggiungere un obiettivo specifico. Qualunque siano gli obiettivi di risposta, estrarrà queste voci di menu per raggiungere tale scopo.
Questo è un approccio molto più semplificato perché completamente automatizzato. Ci sono tre categorie che dovrai esplorare a seconda dello stato del tuo set di dati iniziale e del modello iniziale. Se il modello iniziale non è valido, inizierai con l'esplorazione del riempimento dello spazio.
La piattaforma identificherà i candidati che hanno contribuito ad arricchire la propria knowledge base fino a costruire un modello gaussiano sufficiente per procedere. Una volta fatto questo, si procederà con l'affinamento del modello. Una volta raggiunto quello che la piattaforma identifica come il modello migliore per raggiungere i propri obiettivi di risposta, si passerà a una fase di conferma e verifica.
Come si presentano queste diverse fasi? Esaminerò quattro di queste immagini in questa diapositiva e nella successiva, evidenziando in particolare la variazione nell'incertezza del profiler di previsione e la fase in cui ci troviamo nella costruzione del modello.
Qui a sinistra, siamo in modalità "Space Filling". Se osserviamo il profiler di previsione, vediamo ampie e spesse aree grigie, che rappresentano la nostra incertezza, con piccoli picchi intorno a 66, 8 e 106. A questo punto, il nostro modello di processo gaussiano non è sufficiente per procedere, quindi passiamo alla modalità "Space Filling" di MaxPro, dove inizieremo a sviluppare il modello.
Una volta ottenuto un modello adeguato, basato su un R-quadrato di default pari a 0,25 (modificabile a piacere), passiamo alla fase di perfezionamento del modello. Questa fase può coinvolgere diverse sezioni del menu che ho mostrato in precedenza. In questo esempio, però, puntiamo al massimo miglioramento atteso. Ora possiamo vedere che i nostri cursori rossi indicano i punti in cui l'incertezza è minima e la risposta è massima, perché questo è basato sulla nostra desiderabilità.
Una volta raggiunto il massimo miglioramento atteso, continueremo a perfezionare quel modello e ci sposteremo, diciamo, in un ruolo di massima desiderabilità, in cui cercheremo davvero di ottenere il miglior modello possibile. Lo abbiamo completato, abbiamo sondato quella regione incerta e ora pensiamo di aver perfezionato il miglior modello possibile. Una volta raggiunto quel modello, la piattaforma lo confermerà e poi lo metterà in discussione. Vuole essere sicura di aver trovato il modello migliore, e quindi entriamo in questa modalità di esecuzione di addestramento replicata.
Proseguendo, quando vorreste utilizzare la piattaforma di ottimizzazione bayesiana? Questo è fondamentale. Non è lo strumento che sostituisce tutti gli altri. Ecco solo alcuni esempi. L'elenco è incompleto, ma vorrei solo evidenziare alcune opportunità in cui potrebbe rivelarsi utile. Facciamo un esperimento progettato e molti dei vostri test falliscono a causa, ad esempio, di un guasto alle apparecchiature.
Beh, potresti usare la piattaforma di ottimizzazione bayesiana per risparmiare quel DOE. Poi abbiamo parlato, ha detto Sarah, dell'utilizzo dei dati storici. I due casi d'uso di esempio che mostreremo oggi si concentreranno su questi primi due. Ma ci sono molti altri vantaggi quando si hanno vincoli di tempo o risorse, perché la piattaforma di ottimizzazione bayesiana ti dirà quando hai raggiunto il tuo obiettivo.
Forse un design classico non è l'ideale. Ci sono troppi fattori da considerare. Non si sa quale sia o dovrebbe essere la forma del modello, oppure ci sono troppe esecuzioni da caratterizzare. Nell'esempio che mostrerò, costruire un modello di superficie di risposta nella piattaforma DOE richiederebbe oltre 70 esecuzioni. È semplicemente troppo inefficiente per l'innovazione.
Potrebbero esserci casi in cui un'esecuzione alla volta ha più senso, come in uno scenario di processo batch. Potrebbe anche esserci una situazione in cui un modello standard dei minimi quadrati sarebbe troppo rigido. In tutte queste situazioni, l'ottimizzazione bayesiana potrebbe essere la soluzione migliore per raggiungere un risultato in tempi minimi.
Grazie, Peter. Ora passo al nostro primo caso di studio. In questo primo caso di studio, esamineremo un CMP, ovvero la planarizzazione chimico-meccanica nel settore dei semiconduttori, un esperimento di screening CMP andato male. Questo è un esempio relativamente semplice, poi il prossimo caso di studio di Peter ci condurrà a un esempio più complesso.
In questo esempio, abbiamo una sola risposta, ovvero la velocità di rimozione del film, e vogliamo raggiungere un obiettivo per ottimizzare la velocità di rimozione del film. In questo esperimento consideriamo tre fattori: la portata del liquido in millilitri al minuto, la forza applicata al wafer in PSI e le rotazioni del piatto al minuto.
L'obiettivo, ancora una volta, è salvare questo DOE. In questo caso di studio, abbiamo iniziato con nove esecuzioni DOE iniziali e ne abbiamo perse cinque. Ora vorrei passare a JMP, perché lo faremo in diretta all'interno di JMP. Inizierò con una semplice configurazione per mostrarvi alcune iterazioni dell'algoritmo e della piattaforma, e poi vi mostrerò il risultato finale completo.
Lo scopo qui è solo quello di presentarvi la piattaforma, mostrarvi un po' come funziona la modalità automatica nella piattaforma di ottimizzazione bayesiana, e poi vi mostrerò il risultato finale di come abbiamo recuperato questo DOE. Anche in questo caso, abbiamo iniziato con nove esecuzioni, otto punti di progettazione fattoriale e poi un'esecuzione con punto centrale. A causa di guasti agli strumenti e problemi di misurazione, abbiamo perso cinque di queste esecuzioni.
Giusto per darvi un'idea del buco da cui stiamo partendo, facciamo rapidamente un piccolo diagramma di dispersione dello spazio fattoriale in cui stiamo lavorando e dove si trovano le quattro esecuzioni da cui abbiamo dati effettivamente validi. Se osservate questo spazio di processo, abbiamo dati da questi quattro punti d'angolo qui, e questo è tutto ciò che ci rimane. È tutto ciò con cui possiamo lavorare per iniziare.
Esiste un'area enorme di processo inesplorata di cui non abbiamo idea di cosa stia succedendo, e vogliamo essere in grado di raggiungere il nostro obiettivo di rimozione della pellicola nel minor numero di esecuzioni possibile, cercando di lavorare con i pochi dati che ci rimangono. Andiamo avanti ed entriamo nella piattaforma dal menu "Analizza", "Modellazione specializzata", ed è in fase di ottimizzazione bayesiana.
Prenderò i miei fattori, le mie tre variabili x, li inserirò nel bucket x e il tasso di rimozione della pellicola che sto cercando di ottimizzare nel bucket y. Ora, eseguirò un'esecuzione del candidato alla volta. Peter, nel suo caso di studio, vi mostrerà come potete modificare questo e potenzialmente eseguire tutte le esecuzioni che desiderate contemporaneamente. Inoltre, se aprite le opzioni batch avanzate, potete vedere dove potete aumentare il valore R-quadrato di cui parlava Peter, in modo che il modello di processo gaussiano si attivi più velocemente o meno presto.
0,25 è l'attuale valore predefinito. Anche se può sembrare molto basso, tenete presente che la capacità del modello di fare le previsioni migliori in questo momento non è necessariamente l'obiettivo. Abbiamo solo bisogno che il modello sia in grado di dirci se stiamo diventando più caldi o più freddi.
Procedo e clicco su OK. Per iniziare, la prima cosa che osserveremo è il valore R-quadrato del nostro modello di processo gaussiano. Come potete vedere, non è un ottimo inizio in termini di adattamento del modello, 0,142. Al momento, siamo al di sotto della soglia R-quadrato. Saremo in modalità "Space Filling", in cui stiamo semplicemente riempiendo i buchi in quello spazio di processo perché avevamo molto spazio di processo inesplorato.
Se andiamo alla scheda di selezione batch, possiamo vedere che l'esecuzione candidata che aggiungeremo come nostra prossima potenziale esecuzione di training sarà in regime di riempimento dello spazio. Ci sono un paio di cose nella sezione "Opzioni di inclusione" che potresti voler considerare. Deselezionerò l'opzione "Salva valori desiderabili" solo perché non ne ho bisogno in questo momento.
Ma una cosa che potresti voler includere è il valore di risposta previsto, in modo da poter vedere cosa prevede il tuo modello di processo gaussiano. Procedo e premo "Crea tabella". Aggiungerà la prossima esecuzione candidata. Qui puoi vedere che questa combinazione di impostazioni dei fattori è quella selezionata come prossima esecuzione valida, ovvero "Space Filling". Al momento, il modello di processo gaussiano non è ancora pienamente utilizzato perché non abbiamo raggiunto la soglia R-quadrato.
Voglio continuare. Nota qui che ho impostato questo per inserire automaticamente il valore di risposta successivo. Nella vita reale, quello che sarebbe successo sarebbe stato eseguire questa fase del processo, raccogliere i dati di risposta, il tasso di rimozione della pellicola e inserirli qui. Ora passiamo all'iterazione successiva.
La cosa bella è che non dobbiamo tornare alla piattaforma. La piattaforma crea questi script per noi, così possiamo semplicemente avviare rapidamente la nostra prossima esecuzione in modalità automatica eseguendo lo script. Ora possiamo vedere che, con questa esecuzione, stiamo migliorando un po'. Siamo quasi alla soglia di R-quadrato. Potremmo presto uscire dalla modalità di riempimento dello spazio.
Come potete vedere, stiamo iniziando a vedere un po' di azione nei nostri profiler. Andiamo avanti e facciamo il nostro prossimo tentativo. Premo "Crea tavolo". Siamo ancora in modalità "Riempimento spazio" perché non abbiamo raggiunto la soglia R-quadrato. Andiamo avanti e facciamo un altro tentativo. "Crea tavolo". Siamo ancora in modalità "Riempimento spazio", quindi vediamo se usciamo dalla modalità "Riempimento spazio" nel nostro prossimo tentativo.
Finalmente usciremo da Space Filling. Ora abbiamo un modello di processo gaussiano sufficientemente valido da poterlo potenzialmente avviare alla fase di perfezionamento del modello o, a seconda della sua validità, potremmo persino passare direttamente alla fase di conferma e verifica. Vediamo a che punto siamo.
Sembra che ci porterà direttamente alla fase di conferma e verifica. Abbiamo selezionato "Replica la migliore sessione di allenamento", il che significa che non è stata trovata una sessione candidata migliore di qualcosa già presente nella tabella dati. In teoria, potremmo potenzialmente fermarci qui. Il tasso di rimozione della pellicola previsto è di circa 2391. A proposito, l'obiettivo per il nostro tasso di rimozione della pellicola era di 2400 angstrom al minuto.
Vorrei anche sottolineare che, poiché l'ottimizzazione bayesiana è un approccio fortemente orientato agli obiettivi, è estremamente importante impostare i limiti di risposta prima di iniziare effettivamente a eseguire l'algoritmo di ottimizzazione. Lo facciamo nella colonna info della variabile di risposta. Come potete vedere, ho una proprietà "limiti di risposta" già impostata, e forse la rimuoverò rapidamente e la ricomincerò da zero, così potrete vedere dove ho fatto.
Nelle proprietà della colonna, voglio andare nei limiti di risposta, ed è qui che posso impostare i miei obiettivi di risposta. Quello che potete vedere qui è che sto abbinando un obiettivo, e tutto ciò che devo effettivamente impostare sono i limiti di risposta inferiore e superiore, dopodiché la piattaforma dedurrà il resto. Dedurrà che l'obiettivo che voglio abbinare è il punto medio di questo intervallo, che sarebbe 2400 angstrom.
Peter parlerà un po' di più di come impostare gli obiettivi di risposta quando si sta minimizzando o massimizzando, perché affronterà uno scenario con risposte multiple.
Ora abbiamo visto alcune iterazioni. Questa è una possibile iterazione dell'algoritmo. Potrei continuare qui perché è possibile che, anche dopo aver replicato la migliore esecuzione di training, possa entrare ulteriormente nella fase di conferma e verifica, e potrebbe persino trovare soluzioni migliori vicino a questa posizione sulla superficie di risposta, a seconda di come si presenta effettivamente la superficie di risposta.
Ma per questioni di tempo, vi mostrerò solo il risultato finale di una delle esecuzioni di ottimizzazione bayesiana. In questo caso, siamo rimasti in modalità Space Filling per quattro esecuzioni, poi siamo passati alla fase di affinamento del modello e poi alla fase di conferma e verifica, e questo ci ha fornito una migliore esecuzione di addestramento di circa 70 millilitri al minuto per la portata del nostro slurry, circa 7 PSI per la deportanza e circa 105 giri al minuto per la rotazione del nostro piatto.
Ci sono voluti altri sei cicli del nostro processo. Forse state pensando: "Beh, sembra tanto, ma ricordate da dove siamo partiti". Ricordate quel diagramma di dispersione 3D dei quattro cicli che ci è rimasto dopo che cinque dei nostri cicli DOE si sono rivelati impraticabili. È davvero molto efficiente riuscire a ottimizzare una risposta in così pochi cicli. Ora passo il tutto a Peter per il suo caso di studio.
Ci concentreremo sulla caratterizzazione dello stack di gate. La particolarità di questo progetto è che avremo obiettivi di risposta contrapposti. Massimizzeremo un Y, ne minimizzeremo un altro, e poi cercheremo di raggiungere un obiettivo. Inoltre, ho fatto uno screenshot dei dati storici da cui sto estraendo informazioni.
Per la nostra terza Y, che riguarda le prestazioni elettriche, non stiamo solo cercando di raggiungere un obiettivo, ma stiamo cercando di raggiungerne uno per il quale non disponiamo di dati storici che lo abbiano raggiunto. Lo costruiremo utilizzando sei X continue e due categorie. Il nostro obiettivo è migliorare complessivamente il controllo di processo per questo particolare processo, ma anche raggiungere questo obiettivo unico.
Ne ho parlato prima, ma costruire un modello di superficie di risposta che consideri tutto questo spazio fattoriale richiederebbe 75 esecuzioni. Siamo riusciti a ottenere il risultato desiderato in 11... L'ho ripetuto diverse volte, con un totale di 10-13 esecuzioni di ottimizzazione bayesiana. Andiamo avanti e estraiamo la tabella dei dati iniziale.
Un breve retroscena su questi dati. Questi dati sono stati tutti resi anonimi, quindi i valori non hanno molto senso per le unità. Spero che possiate vedere oltre. Ho estratto questi dati da un set di dati storico in cui ho ben oltre mille righe. Quello che ho fatto è stato costruire alcuni modelli piuttosto accurati per prevedere le mie risposte, e poi ho semplicemente selezionato cinque righe a caso.
Il motivo per cui l'ho fatto è che voglio evidenziare quanto pochi dati si possano utilizzare per iniziare. Basandomi sullo spazio fattoriale candidato, userò quei modelli costruiti sull'intero set di dati per poi prevedere quale sarebbe stato il probabile output, la probabile risposta.
Di nuovo, Sarah lo ha sottolineato, ma quando si tratta di massimizzare o minimizzare, ho inserito solo il target inferiore. Ho inserito 0,93, e poi quando si accede alla piattaforma di ottimizzazione bayesiana, se si lasciano le selezioni predefinite, questo verrà popolato con tutto il resto di cui si ha bisogno.
Quando si massimizza, si inserisce il valore minimo accettabile. Quando si minimizza, si inserisce il valore massimo accettabile. D'altra parte, come ha sottolineato Sarah, quando si cerca di raggiungere un target, basta inserire il valore minimo e massimo, e il programma dedurrà qual è il target.
Passiamo direttamente alla piattaforma. Lasciatemi inserire le risposte che desidero. Inseriremo i nostri fattori. Come ha accennato Sarah, si può procedere con una sola corsa alla volta, ma si possono anche fare 2, 3, 4, 5. Ci possono essere situazioni in cui eseguire più di una corsa contemporaneamente ha più senso.
Se lo facciamo, utilizzando quel modello di processo gaussiano, abbiamo un ottimo modello fin da subito per misurare la densità dei difetti. Abbiamo un modello adeguato per le prestazioni elettriche, ma un modello scadente per la resa. Ora approfondirò la selezione dei lotti.
Prima ho accennato alla possibilità di personalizzare il flusso dell'ottimizzazione bayesiana. Si trova in quest'area del menu, proprio qui. Basterebbe espandere questa opzione per avere tutte le opzioni a disposizione. Come Sarah, andrò avanti e attiverò le mie risposte previste.
Poi questa casella di controllo qui, Sarah l'ha deselezionata. Quando la lasci selezionata, questo è ciò che popolerà il resto degli obiettivi di risposta nelle intestazioni di colonna. È completamente facoltativo. Quando andiamo avanti ed eseguiamo due esecuzioni alla volta, possiamo vedere che sono entrambe in MaxPro Space Filling, e poi, poiché quelle impostazioni predefinite sono ora interamente incapsulate all'interno di quello script, ogni volta che eseguo, userò due esecuzioni alla volta.
Dopo averlo fatto una volta, possiamo vedere che tutti i nostri modelli sono al di fuori di quella soglia o hanno raggiunto la soglia di 0,25. Ora, quello che vedrete molto spesso è che quando farete più di due esecuzioni, vedrete che altre voci di menu verranno aggiunte. Non solo cercheremo di trovare il massimo miglioramento previsto, ma faremo anche un'altra esecuzioni in uno spazio che è meno compreso.
Possiamo procedere con queste e poi continuare così, e lo farò forse ancora una o due volte per vedere fin dove arriviamo, e poi passeremo ai risultati finali. Di nuovo, possiamo vedere che stiamo oscillando tra questo massimo miglioramento atteso e la massima deviazione standard di desiderabilità, e possiamo continuare in questo processo per un po' di tempo. Ma andiamo oltre. Ho eseguito questo in precedenza e, in questo caso, ho fatto un'iterazione alla volta.
Come potete vedere, restiamo in MaxPro Space Filling per circa tre esecuzioni, poi in Max Expected Improvement per quattro, in Max Desirability per altre tre, e infine passiamo direttamente alla replica. Ho eseguito la replica un paio di volte solo per curiosità. Abbiamo iniziato con cinque esecuzioni iniziali e, ancora una volta, stiamo cercando di spostare un intero spazio di processo in un territorio sconosciuto.
Ciò a cui vorrei incoraggiarvi a riflettere è: come affrontereste questa situazione nella vostra quotidianità? Quanto impegno, tempo e risorse ci vorrebbero? E poi riconoscete che ci sono volute solo 11 prove per arrivarci. Questa strategia ha una straordinaria capacità di far risparmiare tempo, denaro e risorse, ancora una volta, quando viene implementata nello scenario in cui ha più senso.
Cosa ha più senso? Beh, a volte si tratta solo di provarci. A volte si tratta di sedersi con i colleghi e discuterne. A volte bisogna semplicemente tuffarsi nella parte più profonda della piscina. Bene, torniamo alle nostre slide. Passo la parola a Sarah.
Bene. Grazie, Peter. Ecco alcuni dei vantaggi dell'ottimizzazione bayesiana per la produzione di semiconduttori, giusto per concludere. Ancora una volta, è possibile avere progetti iniziali più piccoli e fermarsi quando gli obiettivi sono stati raggiunti. Non è necessario un campione di dimensioni fisse iniziali. Basta iterare fino a raggiungere gli obiettivi di risposta, evitando sprechi di informazioni o la raccolta di dati non necessari. Quindi meno sprechi, meno costi.
C'è anche una maggiore facilità di adozione rispetto a molti dei metodi statistici classici che utilizziamo per l'ottimizzazione dei processi. È statisticamente più semplice, nel senso che non ci sono valori p da valutare, test di normalità da verificare, grafici dei residui da osservare. Sebbene la costruzione dei modelli di processo gaussiani possa risultare computazionalmente complessa, dal punto di vista interpretativo, è sicuramente meno complesso dal punto di vista statistico.
Inoltre, non c'è bisogno di preoccuparsi di effettuare la selezione degli effetti per costruire il modello. Se sei abituato a costruire modelli di regressione standard con punteggi minimi, saprai che dovrai decidere se modellare le interazioni o potenzialmente qualsiasi tipo di curvatura polinomiale che potrebbe essere presente. In questo caso, non è necessario farlo perché i modelli di processo gaussiano apprendono naturalmente la forma della superficie di risposta durante l'iterazione.
Modelli di processo gaussiani: se non li conoscete, vale sicuramente la pena dedicare dai 5 ai 10 minuti del vostro tempo per approfondire un po'. Sono una tecnica di model fitting molto flessibile. Si tratta di un metodo basato sul kernel di machine learning. Se avete forme complesse di superfici di risposta, i modelli di processo gaussiani possono apprenderle in modo molto flessibile ed efficiente, a differenza di una modellazione di regressione standard basata sui minimi quadrati. Infine, si tratta di un approccio iterativo guidato che si allinea in modo molto naturale al modo di pensare tipico di un ingegnere di sviluppo di processi per semiconduttori.
Per confrontare alcune strategie comuni di sviluppo di processo attualmente impiegate nel settore dei semiconduttori, abbiamo ovviamente i nostri approcci ad hoc, e questo è il vostro metodo per tentativi ed errori, combinato forse con un po' di conoscenza tribale o un po' di istinto. Il problema qui è che questo porta inevitabilmente nella trappola della sperimentazione un fattore alla volta, che è probabilmente il modo meno efficiente per raccogliere informazioni su un processo. Inoltre, l'incertezza non è quantificata in questo approccio.
Poi abbiamo anche il nostro approccio classico di progettazione degli esperimenti, in cui magari ci si consulta con un ingegnere di processo, si inizia con un progetto di screening per selezionare un set iniziale di molti fattori e poi, una volta che si ha un'idea di quali manopole saranno le manopole più grandi, si può ampliare quel progetto per risolvere eventuali effetti di interazione, magari modellando una certa curvatura. Quindi si adatterà il modello finale della superficie di risposta per eseguire l'ottimizzazione vera e propria.
Voglio sottolineare che il DOE classico è stato impiegato come approccio allo sviluppo di processo per decenni, con grande successo, e non ci aspettiamo che la situazione cambi nel prossimo futuro. È ovvio che decenni di applicazione industriale del DOE continueranno a essere impiegati.
Tuttavia, alcune delle sfide dell'approccio DOE classico che l'ottimizzazione bayesiana può contribuire a risolvere sono il fatto che spesso è necessario un campione iniziale di grandi dimensioni, quindi potrebbe essere necessario un ampio set iniziale di simulazioni DOE per definire il modello. Si concentra principalmente sulle questioni statistiche anziché concentrarsi sulla risoluzione effettiva dei problemi.
È guidato dallo spazio dei fattori e non dai valori di risposta effettivi e dagli obiettivi aziendali. Spesso può collocare i punti di progettazione agli estremi e al centro degli intervalli, mentre la regione ottimale dello spazio di progettazione o dello spazio di processo potrebbe passare completamente inosservata.
L'ottimizzazione bayesiana non sostituisce un approccio DOE classico. È semplicemente un altro strumento a nostra disposizione che può aiutarci ad affrontare situazioni difficili, come quelle descritte in precedenza da Peter su quando utilizzare l'ottimizzazione bayesiana.
Vogliamo concludere sottolineando e ribadendo il valore dell'ottimizzazione bayesiana. Credo che prima di tutto, e questo si adatta perfettamente all'ambiente dei semiconduttori, si tratti di un approccio molto iterativo. Si definiscono gli obiettivi, si ottengono alcuni dati iniziali, che provengano da un progetto sperimentale di base o da dati storici, e poi si può procedere iterativamente e lasciare che il processo guidi il processo.
Lascia che i risultati guidino l'esecuzione successiva, e poi ti dirà quando fermarti. Non solo tiene conto degli obiettivi, ma utilizza le funzioni di desiderabilità del profiler per individuare rapidamente il miglior set di fattori candidati, ma poi ti dice: "Hai finito". È molto utile sentirsi dire: "Ho finito e posso andare avanti". È uno strumento fantastico per ridurre i tempi, gli sprechi e le spese.
Non saprei dire quante volte ho parlato con i miei clienti nel settore dei semiconduttori e mi hanno detto: "Posso gestire solo un certo numero di wafer per questo progetto e non riesco ad adattare il mio progetto al numero di wafer che ho". È qui che l'ottimizzazione bayesiana può davvero aiutare a superare queste sfide, onnipresenti in tutto il settore. Si adatta facilmente agli attuali processi comuni per i semiconduttori e consente agli utenti di innovare le proprie tecniche e processi in modo molto naturale.
Ciò che apprezzo di più è la sua complessità computazionale, ma poiché è integrato direttamente nel profiler, è così facile assimilare e interpretare i risultati e capire davvero perché mi sto muovendo in questa direzione. Sulla base di questi risultati, quanto pensiamo di essere vicini? Stiamo riempiendo lo spazio, ora stiamo perfezionando e ora stiamo confermando e sfidando. Questa è una piacevole brezza leggera che ti spinge attraverso il tuo processo di produzione di semiconduttori.
È uno strumento molto potente ora disponibile in JMP 19 e penso che sarà davvero, come ha detto Sarah, uno strumento fantastico da sfruttare nella cassetta degli attrezzi.
Questo potrebbe avervi lasciato con più domande che risposte. Abbiamo solo scalfito la superficie di ciò che questa piattaforma può fare. Volevamo indicarvi alcune risorse. Potete prendere il vostro telefono e scansionare questo codice QR: vi porterà direttamente alla registrazione di un workshop ENBIS che Chris Gotwalt e Phil Kay hanno tenuto su questo argomento qualche tempo fa. Inoltre, se state guardando queste diapositive, potete cliccare sulle immagini qui sotto e vi porterà direttamente ad alcuni contenuti PDF.
Dobbiamo davvero ringraziare di cuore, in particolare Chris Gotwalt e il suo team. Hanno lavorato instancabilmente per sviluppare questo strumento, testarlo e perfezionarlo. La nostra speranza è che tu possa trarre vantaggio da questo strumento e che possiamo sapere quali sono i tuoi successi, quali sono le tue carenze e quali potrebbero essere i prossimi miglioramenti per te. Grazie per il tuo tempo. Ci auguriamo che tu stia facendo una grande scoperta e apprezziamo la tua presenza oggi. Grazie.