L'industria manifatturiera dei semiconduttori è alle porte di un'era di trasformazione, alimentata da tecniche analitiche avanzate. Questa presentazione approfondisce l'applicazione della modellazione predittiva e dell'analisi diagnostica all'interno del software JMP per migliorare significativamente i risultati di produzione, in particolare durante le cruciali fasi iniziali di smistamento e test di classificazione. Sfruttando dati parametrici completi raccolti in varie fasi del processo di produzione dei semiconduttori, intraprendiamo un percorso per perfezionare la previsione dei risultati di superamento/fallimento a livello di unità e scoprire le cause alla base di potenziali difetti.
Il nostro studio evidenzia l'uso strategico delle capacità di modellazione predittiva di JMP per prevedere con precisione lo stato finale dei test a livello di sistema dei prodotti a semiconduttore. Questo approccio non solo consente l'individuazione precoce dei problemi, ma facilita anche l'implementazione tempestiva di misure correttive, garantendo così tassi di rendimento più elevati e una qualità del prodotto superiore. Parallelamente, l'analisi diagnostica all'interno di JMP offre un'analisi approfondita dei dati, consentendo ai produttori di identificare e affrontare le cause profonde dei guasti nell'intricata rete dei processi produttivi.
Questa presentazione illustra applicazioni pratiche di queste funzionalità di JMP, dimostrandone il ruolo fondamentale nella semplificazione dei flussi di lavoro nella produzione di semiconduttori. Scoprite come la modellazione predittiva e l'analisi diagnostica possono essere efficacemente impiegate per ottimizzare i risultati di produzione, ridurre i costi e migliorare l'affidabilità del prodotto. Unitevi a noi per esplorare le strategie analitiche all'avanguardia che promettono di ridefinire il futuro della produzione di semiconduttori.
Buongiorno a tutti. Mi chiamo John Xu e il mio collega si chiama Suraj Sindia. Entrambi lavoriamo per Intel Corporation. Come sapete, Intel è un'azienda produttrice di semiconduttori. Produciamo chip per computer e anche altri chip. Oggi vorremmo presentarvi una delle ricerche che abbiamo condotto. Il titolo di questa giornata è "Rivoluzionare la produzione di semiconduttori con JMP".
Applichiamo alcune metodologie di intelligenza artificiale all'interno di JMP per aiutarci a realizzare la modellazione predittiva per il testing steering. Per la nostra previsione, abbiamo quattro sezioni. Nella prima, forniamo una breve introduzione sul settore della produzione di semiconduttori, e poi descriveremo il metodo di modellazione predittiva che abbiamo utilizzato in JMP con la rete neurale e il boosting.
Successivamente, vi mostreremo il caso di studio demo di JMP, adattando i test per il test di produzione nei JMP. Analizzeremo l'applicazione JMP e utilizzeremo la rete neurale e l'analisi delle componenti principali di JMP. Infine, presenteremo un riepilogo e delle conclusioni.
Panoramica di questo settore dei semiconduttori. Potrebbe trattarsi di un settore cruciale e in rapida evoluzione, al centro delle tecnologie moderne. Forse i semiconduttori, in qualche modo chiamati circuiti integrati, sono componenti essenziali presenti nella vasta gamma di dispositivi elettronici come smartphone, computer, automobili e molti altri, come il frigorifero di casa, ecc.
Questo settore è caratterizzato da un elevato livello di innovazione e da ingenti spese in conto capitale: una fabbrica potrebbe spendere 10 miliardi di dollari per costruirne una, e la domanda del mercato del silicio, diciamo, riguarda almeno alcuni segmenti di mercato legati ai semiconduttori, come la memoria, i charm, le memorie veloci o i microprocessori.
Il più diffuso, come tutti sapevano, era la CPU del computer. I circuiti integrati di base, come i circuiti standard, sono utilizzati in vari tipi di dispositivi, molti diversi tra loro, come quelli automobilistici o altri, e gli ASIC, come i circuiti integrati specifici per applicazione, e forse anche alcune strisce analogiche, come quelle dei semafori e altri ancora.
Poi vi darò anche una breve panoramica di come si presenta il modello di produzione dei semiconduttori. Possiamo menzionare solo tre tipi di aziende, che chiamiamo IDM, aziende Fabless o Pure-play Foundries. Le aziende Fabless si occupano solo della progettazione e della realizzazione del chip, ma non lo producono direttamente. Chiamiamo queste aziende Fabless, come AMD, Nvidia, Qualcomm.
Inoltre, alcune aziende non hanno un prodotto proprio. Non hanno circuiti integrati progettati internamente, ma li costruiscono per altre aziende Fabless. Le poche [inudibile 00:03:37] sono TSMC o [inudibile 00:03:39] Foundry. Ma alcune aziende fanno tutto insieme, come Intel o Samsung.
Fondamentalmente, progettiamo il chip da soli, poi lo realizziamo internamente, costruiamo il nostro stabilimento. Poi assembliamo e realizziamo il chip finale, che spediamo ai nostri clienti come HP o Dell, che realizzeranno il computer per i clienti finali. Inoltre, forniamo un processo produttivo di alto livello per i semiconduttori.
In realtà, il processo di produzione dei semiconduttori prevede centinaia di fasi diverse. Ma si tratta di un livello molto elevato, che parte sostanzialmente dai wafer di silicio. Quindi, come l'azienda Seasonic, producono il silicio e lo tagliano nei wafer, per poi spedirli a Intel. Poi eseguiamo molti passaggi per ricavare il chip dai wafer.
Il primo passo è l'ossidazione. In pratica, si crea uno strato di biossido di silicio sulla superficie del wafer. Poi eseguiamo la fotolitografia, ovvero la formazione del circuito sul wafer utilizzando la sostanza chimica fotosensibile. Quindi, soffiando, incidiamo e rimuoviamo il materiale indesiderato per creare i pattern desiderati. Infine, eseguiamo il drogaggio, ovvero l'introduzione di impurità per modificare le proprietà elettroniche del silicio, e infine la deposizione.
In realtà, aggiungiamo strati di materiale al wafer attraverso varie tecniche. Quindi, magari, aggiungiamo uno strato sopra l'altro. Dopodiché eseguiamo la selezione e il collaudo dei die elettronici. Ma oggi la ricerca si concentrerà su questo processo che chiamiamo collaudo.
La prossima diapositiva fornisce maggiori dettagli su come svolgiamo il processo di test.
Grazie, John. Grazie, John. Grazie per la panoramica del processo di produzione dei semiconduttori. Il processo di produzione dei semiconduttori, come ha dimostrato John, si compone di diverse fasi. Il collaudo è la fase principale del processo, in cui viene verificata la bontà tecnica del die. È la fase in cui vengono testate tutte le fasi di produzione precedenti, per verificare se soddisfano i requisiti per cui il circuito integrato o il die sono stati progettati.
All'interno delle fasi di test, ci sono tre fasi principali di test sui semiconduttori. La prima è il test elettrico del die. In questo caso, i die vengono testati sul wafer senza nemmeno essere tagliati a cubetti. Sono presenti sonde per wafer come quella mostrata in questa piccola immagine, che sondano i nodi interni del die per misurazioni come tensioni, correnti assorbite dall'alimentazione, correnti di dispersione e così via.
Le unità che superano il test di selezione dei die elettrici vengono poi tagliate a cubetti dal wafer e confezionate; le unità confezionate hanno un aspetto o una somiglianza con qualcosa che probabilmente è familiare alla maggior parte di noi che ha visto una scheda madre su un computer, quei widget neri, i circuiti integrati.
Questi sono stati ora confezionati e vengono testati sia per funzionalità che per prestazioni, utilizzando milioni di pattern di test. Se un'unità non supera anche solo uno di questi pattern di test, viene scartata. Se non supera la soglia di prestazioni o non raggiunge la soglia di prestazioni di un intervallo, viene quindi ridotta e testata per prestazioni inferiori. E se non raggiunge tale soglia, viene ulteriormente testata per un intervallo inferiore e così via. Se non raggiunge il intervallo di prestazioni più basso, viene scartata e così via.
Questa è la seconda fase principale del flusso di test di produzione, chiamata Test di Classe o Test del Pacchetto. Successivamente alla fase di test del pacchetto, abbiamo una fase chiamata Test Steering. Questa è la fase in cui uno strumento offline indirizza i componenti in una delle tre o più corsie per sottoporre lo stampo a quello che viene chiamato Test Finale a Livello di Sistema.
Si tratta del socket di prova, ovvero il socket di prova più costoso, in cui i dadi ora confezionati vengono montati su una scheda madre e testati per test di alto livello, simili a quelli applicativi.
Si tratta di elementi come l'avvio del sistema operativo Windows o Linux, programmi applicativi di alto livello come il browser Chrome e persino applicazioni simili a JMP che vengono eseguiti sul componente dopo averlo montato su una scheda madre. Questo per renderlo il più simile possibile al suo utilizzo finale, come lo sarebbe un utente finale di un computer. Se il componente... Se il componente supera questo test a livello di sistema, il test finale a livello di sistema, viene spedito ai clienti Intel o ai clienti dei produttori di semiconduttori.
Perché eseguiamo test VLSI o test sui circuiti integrati? La necessità di effettuare test è di fondamentale importanza per la garanzia funzionale. Ogni matrice prodotta presenta inevitabilmente un potenziale difetto. Ogni fase di produzione incrementale può potenzialmente introdurre difetti e, successivamente a queste fasi di produzione, è necessaria la fase di test per eliminare queste parti difettose.
In molti casi, le parti difettose non adattano lo stampo alla funzionalità per cui è stato progettato e, in alcuni casi, non soddisfano i requisiti prestazionali per cui lo stampo è stato progettato.
L'aspetto in cui i test svolgono un ruolo cruciale non riguarda solo la garanzia funzionale, ma anche quella delle prestazioni. Oltre a questo tipo di rilevamento dei difetti e garanzia funzionale, contribuiscono anche all'apprendimento della resa, ovvero al miglioramento del flusso di produzione, in modo che eventuali difetti incrementali rilevati durante il processo di test possano ora essere utilizzati per migliorare il processo di produzione, ad esempio per apportare modifiche alla fotolitografia o all'incisione, al fine di controllare il flusso di produzione in modo da evitare la formazione di difetti.
Ciò è estremamente importante per massimizzare i ricavi principali e anche i risparmi sui costi per il risultato finale, nel senso che ogni percentuale incrementale di miglioramento della resa porta a notevoli risparmi sui costi per il produttore.
Quali sono le sfide nei test sui semiconduttori, o test VLSI? VLSI sta per Very Large Scale Integrated Circuit (Circuito Integrato su Grandissima Scala), e il motivo è che l'integrazione dei transistor nei moderni microprocessori supera i 10 miliardi di singoli transistor.
A destra, ho una piccola clip art di un microprocessore moderno, in cui la scala dei singoli transistor può arrivare fino a un nanometro a una sola cifra. È come adattare mille transistor o mille parti di una singola ciocca di capelli.
L'elevato costo e dispendio di tempo dei test deriva dalla necessità di testare ogni singolo transistor. Si può immaginare il numero di pattern di test necessari per testare individualmente ogni transistor in un progetto di questo tipo. Ciò si traduce in grandi volumi di dati di test e nella loro analisi per diagnosticare dove si trovano i singoli transistor difettosi, nonché per elaborare questa enorme quantità di dati per la verifica di buone o cattive prestazioni e per la caratterizzazione delle prestazioni, ovvero se il die è conforme al bin più alto o se deve essere inserito in uno dei bin più bassi prima di essere spedito ai nostri clienti.
Il ruolo della modellazione predittiva nei test VLSI può ora essere immaginato, sulla base del processo di sviluppo che avete visto con... Avete il potenziale per enormi risparmi sui costi e avete la possibilità di ricavare informazioni utili e fruibili da un enorme set di dati. Queste tecniche di modellazione predittiva possono essere utilizzate per il rilevamento precoce dei difetti, identificando potenziali problemi con pochissimi pattern di test.
Può essere utilizzato per un notevole risparmio di costi e tempi di test, prevedendo quali stampi hanno maggiori probabilità di superare o fallire con un numero ridotto di test, anziché attendere fino all'ultima fase. La modellazione predittiva può anche essere utilizzata per eliminare completamente alcune fasi di test, come faremo in questo caso di studio, dove elimineremo la fase di Test Steering, in cui abbiamo un tester dedicato alla suddivisione degli stampi in una delle numerose corsie in cui vengono sottoposti a un test di sistema di livello finale.
La modellazione predittiva può essere utilizzata in modo mirato e tangibile per eliminare del tutto determinate fasi di test in cui è presente un'elevata correlazione. I miglioramenti possibili dal punto di vista dell'apprendimento della resa e del miglioramento della qualità hanno un enorme potenziale con la modellazione predittiva. Pertanto, nel nostro caso di studio, esamineremo come eliminare una fase di test chiamata fase di Test Steering utilizzando JMP e un modello basato su rete neurale addestrato con JMP.
Se ricordate, nelle nostre tre diverse fasi di test, da Sort a Class, da Class a SLT, c'è una fase di test uditivo intermedia in cui viene effettuata una misurazione offline per indirizzare le parti verso una delle numerose corsie di test finali a livello di sistema.
In questo caso di studio, abbiamo tre linee di prova in cui la durata dei test è indicata da TT1 a TT3, dove TT1 è la linea di prova più lunga per le unità con le prestazioni migliori e quella più corta per le unità con le prestazioni peggiori. Quello che stiamo cercando di fare qui è utilizzare la modellazione predittiva tramite JMP per indirizzare i singoli stampi verso una di queste linee di prova, anziché le misurazioni XC2 effettuate da uno strumento di misurazione offline.
Stiamo cercando di utilizzare le misurazioni in linea già effettuate nelle fasi di Sort e Class Test per prevedere a quale linea di test dovrà essere sottoposto il singolo dado. Nel nostro set di dati, abbiamo 13.186 unità testate. Di queste 13.186 unità, ciascuna unità ha 16 segnali di sensori che sono stati misurati in situ. Cinque di questi segnali sono categorici e 11 di essi sono input numerici, mentre gli output sono uno dei tre valori categorici, da TT1 a TT3.
Come si può vedere, la distribuzione è piuttosto asimmetrica: TT3 è la più numerosa tra le unità, mentre TT1 è la meno numerosa, con circa 564 unità su 10.488.
Gli input da X1 a X5 sono input categoriali. Coprono diversi intervalli categoriali, da un minimo di due livelli a un massimo di 22 livelli tra X1 e X5. Tra gli input numerici da X6 a X16, abbiamo una distribuzione piuttosto diversificata. Come potete vedere, con X6, abbiamo un intervallo compreso tra 0,01 e 1,5. Nel caso di X14, abbiamo la distribuzione più ampia, da un minimo di zero a oltre 2.500. Quindi, abbiamo una distribuzione piuttosto diversificata di input.
Esamineremo la costruzione di un modello di base basato su una rete neurale in JMP per prevedere uno di questi tre valori categorici utilizzando i 16 segnali di input che abbiamo raccolto in situ. Per iniziare il nostro esercizio di costruzione del modello in Jump, partiremo dal modello di rete neurale più semplice possibile, che possa comunque fornirci informazioni utili sull'accuratezza della classificazione.
Inizieremo con una rete neurale a singolo strato con tre neuroni. Avremo una convalida incrociata a 5 livelli. Imposteremo il tasso di apprendimento a 0,1. Non avremo alcun boosting, il che significa che il numero di modelli aggiuntivi sarà impostato a zero. Imposteremo il numero di tour a uno, il che implica che non avremo alcun addestramento incrementale tramite back propagation post-convergenza.
Per ogni singolo neurone imposteremo la funzione di attivazione come iperbolica di Tanh. Ora useremo JMP per una dimostrazione attiva del processo di costruzione del modello. Ho la mia tabella dati qui. Ora, ok, condividerò la mia tabella dati qui.
Bene, ho qui la mia tabella dati. Quello che vedete qui sono gli input che ho da X1-X16 e il piano temporale del test, che è uno dei tre, TT1-TT3. I tre valori che vedete. Ora inizieremo con la modellazione predittiva. Nel menu a discesa "Analizza", trovate la modellazione predittiva e iniziamo l'addestramento della rete neurale.
Per i nostri fattori X, ovvero gli input, useremo X1-X16. Per la risposta Y useremo la corsia TT. Premiamo OK. Si aprirà il menu di addestramento della rete neurale. All'interno di questo, useremo una convalida incrociata KFold. Come ho già detto, useremo cinque fold.
Per il seme casuale, useremo un numero particolare che avevo usato per la diapositiva, in modo che i numeri siano coerenti. Per il primo livello avremo tre neuroni. È il modello di base. Non avremo neuroni nel secondo livello. Useremo la funzione di attivazione iperbolica di Tanh.
Si tratta fondamentalmente di una funzione sigmoide. Non ci sarà alcun boosting. Imposteremo il numero di modelli a zero e il tasso di apprendimento a 0,1. Ora premiamo "Go" per avviare il processo di addestramento. Il modello viene costruito e addestrato, ed ecco che si presenta come un modello semplice. Abbiamo costruito il modello rapidamente. Quello che vedete qui è un R-quadrato generalizzato abbastanza decente, anche con solo tre neuroni per questo set di dati di 13.000 unità.
Poiché abbiamo utilizzato KFold, impostato su cinque, ciò significa che l'80% dei dati dell'intero set di dati viene utilizzato per l'addestramento e il 20% per la convalida. In questo contesto, si noterà che l'R-quadrato raggiunge rispettivamente il 92,9% e il 93% per i set di dati di addestramento e convalida. Abbiamo riscontrato un errore di classificazione. Se si osserva la matrice di confusione, è qui che si vedono le corsie TT effettive, ovvero la verità di base sull'asse y e gli stati previsti sull'asse x.
Abbiamo un tasso di errore di classificazione di circa il 20%, che è il più alto in questo set di dati, dove abbiamo il 20% delle volte in cui TT1 è previsto come TT2 dal modello di rete neurale. Ora possiamo anche tracciare un grafico per i nostri scopi: un tasso di errore di classificazione del 15% o inferiore è ideale, ma un tasso del 20% o inferiore è accettabile. Dimostreremo come possiamo continuare a migliorare il tasso di errore di classificazione.
Ora tracciamo il diagramma della rete neurale qui. Come potete vedere, abbiamo tutti i 16 input. I tre neuroni che abbiamo designato per il primo strato. Ognuno di questi neuroni ha la funzione di attivazione iperbolica di Tanh e la corsia TT come output. Ora aumenteremo la complessità del modello. Come ho detto, questo è il modello di base. Ora complichiamo o rendiamo più complesso il modello in modo da poter migliorare il tasso di errori di classificazione.
Avevamo tre neuroni nella prima fase, zero neuroni nella seconda. Ora li aumenteremo a due neuroni. Non manterremo alcun boosting e manterremo la stessa velocità di apprendimento. La velocità di apprendimento può essere modulata, cambiata a seconda della velocità di convergenza desiderata, a scapito della precisione.
Aumentando il tasso di apprendimento, è possibile stabilizzarsi sui minimi locali anziché sui minimi globali. La convergenza sarà più rapida, ma si rischia di stabilizzarsi sui minimi locali anziché sui minimi globali. Possiamo modificare diversi metodi di penalizzazione. In pratica, utilizzeremo l'errore quadratico medio minimo al quadrato. Il numero di tour è impostato su uno.
Man mano che il nostro modello viene costruito, vedrete che il nostro R-quadrato è già migliorato tra il modello di base, che se ricordate era 0,92 e 0,93, e il nostro modello con R-quadrato 3x2 è migliorato. Anche il nostro tasso di classificazione errata è migliorato tra 0,2 e 0,18, ovvero circa il 18%. Possiamo osservare come appare il diagramma. Abbiamo due stadi: tre neuroni nel primo stadio e due neuroni nel secondo stadio.
Ora procediamo ad aumentare ulteriormente la complessità del modello per esaminare come questo cambierà il nostro tasso di errori di classificazione. Un aspetto a cui bisogna fare attenzione quando si aumenta la complessità del modello è non correre il rischio di sovra-adattare i dati, al punto da fargli perdere generalità. Ma a livelli di 13.000 unità, esamineremo quanti parametri ne risultano.
Come noterete, il periodo di addestramento aumenta all'aumentare del numero di neuroni nel nostro modello in fase di costruzione. Qui abbiamo l'R-quadrato generalizzato per la nuova maggiore complessità del modello. Come potete vedere, non sempre l'accuratezza migliora con un semplice aumento dei parametri del modello. A causa di quanto detto, esiste il rischio di overfitting.
Come potete vedere, R-quadrato è 0,937 e 0,936, leggermente al di sopra della rete tre per due, ma non di molto. Come vedrete anche, il tasso di classificazione errata è in realtà leggermente diminuito con l'aumento della complessità. Come potete vedere, se tracciamo il diagramma, abbiamo fino a cinque neuroni nel primo stadio e sette neuroni nel secondo stadio.
Non sempre l'aumento della complessità del modello si traduce in un tasso di errori di classificazione più basso. È in questo caso che si utilizzeranno tecniche di ottimizzazione intelligenti come il boosting e la combinazione di parametri del modello e boosting per aumentare l'accuratezza. Ora esamineremo, una volta raggiunta una certa accuratezza e un tasso di errori di classificazione, come possiamo ridurre la complessità dell'input?
Stiamo utilizzando 16 input. Nel nostro caso, come possiamo ridurre il numero di input mantenendo lo stesso livello di accuratezza? Come ho notato qui, aumentiamo la complessità del modello, ma otteniamo una classificazione errata leggermente meno accurata. Come possiamo migliorare la natura di overfitting del modello riducendo il numero di input utilizzati? Per questo, è qui che JMP torna utile: possiamo utilizzare i metodi multivariati delle componenti principali disponibili in JMP per aiutarci a costruire un modello con un numero inferiore di input.
Ora selezioneremo le componenti principali dal set di dati di input a nostra disposizione e sceglieremo il numero necessario di componenti principali che comporti il minor numero di errori. Come noterete, abbiamo X1-X16 come input. Stiamo selezionando solo gli input numerici perché, per l'analisi delle componenti principali, gli unici input che JMP può analizzare sono quelli numerici.
Come potete vedere, abbiamo le 11 componenti principali del set di dati. Ma ogni componente principale incrementale comporta una minore varianza di input catturata. Possiamo tracciare il grafico a barre qui per vedere dove si trova il "ginocchio" della PCA e, come potete vedere, il "ginocchio" si verifica a circa due componenti principali. In sostanza, la maggior parte sostanziale della varianza è catturata da sole due componenti principali.
Ma tracciamo anche un grafico e vediamo qual è la CDF incrementale degli autovalori. Come potete vedere, abbiamo circa il 90% della varianza di input catturata da soli sei autovettori o sei componenti principali. Ora useremo queste sei componenti principali e le integreremo con gli input categoriali per l'addestramento della nostra rete neurale. Se ricordate, quando abbiamo lanciato lo strumento di analisi delle componenti principali, JMP non accettava gli input categoriali per la PCA, ma solo quelli numerici.
Per la nostra rete neurale, dovremo integrarla con la categoriale e costruire la rete con le componenti principali che abbiamo scelto. Ora torniamo alla tabella dati che avevamo. Ho salvato le componenti principali da questa analisi. Sceglieremo le componenti principali e, ora, ricostruiremo il nostro modello di rete neurale.
Ho i sei componenti principali che ho generato. Li salvo come input e poi li integro con X1-X5 come altri input. Voglio comunque che la corsia TT sia la mia risposta Y o output. Utilizzo la stessa convalida incrociata KFold e il seed casuale. Usiamo tre neuroni per il primo strato e due neuroni per il secondo strato.
Il numero di modelli incrementali che abbiamo, inizialmente lo considereremo a zero, ovvero senza alcun boosting. Poi lo esamineremo con il boosting. Ora premiamo "Go". Noterete che sto usando lo stesso numero di fold, ovvero il 20% dei dati per la convalida e l'80% per l'addestramento.
Eccoci qui. Pronti? Notiamo di aver raggiunto più o meno lo stesso livello di accuratezza ottenuto utilizzando tutti e 16 gli input. La prima cosa da verificare è che ora abbiamo solo 11 input, le sei componenti principali e le cinque categorie. Abbiamo la rete neurale, la rete neurale tre per due. Il tasso di errori di classificazione è rispettabile. È più o meno lo stesso di quello ottenuto con tutti e 11 gli input e la più complessa rete cinque per sette.
Come procedere da qui? Ora, aumentiamo il numero di neuroni nel modello ed esaminiamo come questo ci aiuterà a ridurre il tasso di errori di classificazione. Man mano che il modello viene addestrato, con l'aumentare della sua complessità, ci vorrà più tempo. Ve ne accorgerete quando introdurrò il boosting. L'addestramento richiederà ancora più tempo durante la giornata.
Ora vedrete che con la rete sette per cinque, la nostra precisione è aumentata e questo perché abbiamo ridotto gli input. È controintuitivo. Ridurre gli input può talvolta aumentare la precisione a causa della selezione della complessità del modello.
Questo è il non banale, o l'intuizione non banale che si può ricavare da questo. Ora, se andiamo oltre ed esaminiamo... Diamo un'occhiata al diagramma. Come ho detto, abbiamo le sei componenti principali e i cinque input categoriali. La complessità del modello è aumentata di sette volte per cinque volte.
Ora, passiamo al boosting. Aiutiamoci a farlo. Una cosa da tenere a mente riguardo a JMP è che il boosting funziona solo sul primo livello, il che significa che JMP ignora qualsiasi numero di neuroni specificato nel secondo livello. Solo i neuroni del primo livello vengono utilizzati per il boosting.
Ora non avremo più neuroni nel primo strato, avremo un tasso di boosting di cinque e i neuroni del primo strato saranno tre. Il boosting implica l'errore tra la previsione dopo la convergenza e gli input. Il tasso di errore tra la previsione target e la verità di base viene ridotto al minimo con ogni boosting incrementale del modello. In questo caso, abbiamo un numero totale di 15 neuroni.
Ora partiremo da qui e mostreremo il boosting. Il modello viene scalato in base al numero di modelli selezionati qui. In questo caso, cinque viene utilizzato come fattore di scala per scalare il numero di neuroni nella prima fase. Nel nostro modello risultante, avremo 15 neuroni, che rappresentano una convalida incrociata di 5 volte rispetto al set di dati di training. Vedremo ora il modello di adattamento. Poi concluderemo la nostra presentazione.
Come ho detto, con il boosting l'addestramento richiede più tempo. Ora, come potete vedere, poiché abbiamo un solo strato con il boosting, il nostro R-quadrato è risultato inferiore rispetto alla rete 5x7, ma è migliore del modello di base che avevamo inizialmente costruito. Il confronto tra il modello di base e quello cross-validato a 5 livelli è quello che vedete qui.
Come potete vedere, il modello potenziato è visibile qui. Questo è il confronto tra il modello potenziato e il modello di base. Anche l'accuratezza è visibile qui. Molto comparabile tra il modello potenziato e il modello di base.
Ora concludiamo la presentazione. Torniamo alle nostre slide. Bene. Torniamo alle nostre slide. Come potete vedere, abbiamo addestrato il modello di base. Poi siamo andati avanti e abbiamo ridotto la complessità dell'input tramite PCA. Bene, abbiamo selezionato le sei componenti principali, le abbiamo integrate con le categorie X1-X5 e abbiamo addestrato la nostra rete neurale.
Input. Ridurre gli input ha portato a una maggiore accuratezza. Questa è l'intuizione chiave, ovvero quando si verifica un aumento della complessità del modello, non necessariamente un miglioramento dell'accuratezza. Tuttavia, ridurre la complessità degli input può contribuire a migliorare l'accuratezza. Poi abbiamo ottenuto lo scree plot che abbiamo dimostrato essere, e abbiamo scelto i sei neuroni o i sei vettori di base come componenti principali per l'addestramento.
Questo è un altro aspetto che abbiamo saltato oggi, in cui abbiamo solo gli input categoriali. Come potete vedere, l'accuratezza è diminuita notevolmente, il che significa che non è possibile ridurre all'infinito la complessità degli input, il che si tradurrebbe in un modello meno accurato.
Poi abbiamo scelto un livello di boosting di cinque. In questo caso, abbiamo un boosting di due con tre neuroni. Come potete vedere, aumentando il boosting da 2 a 5, otteniamo un miglioramento nel tasso di classificazione errata e nell'R-quadrato.
Possiamo effettuare confronti tra reti di questo tipo. In questo caso, sebbene abbiamo costruito molti modelli, sto confrontando solo i tre modelli principali che abbiamo poi utilizzato. Per noi, una semplice rete neurale a due strati con un boosting di cinque, con sei componenti principali e cinque input, ha raggiunto la soglia di accuratezza che cercavamo.
In ogni caso, sarà necessario esaminare quali siano i requisiti di accuratezza per la propria applicazione. Quindi, scegliere il modello con giudizio, dopo aver sperimentato sia i parametri di training, sia la complessità del modello e quella dell'input. Nella nostra presentazione di oggi, abbiamo esaminato come il modello di rete neurale possa essere utilizzato in JMP per la nostra applicazione specifica, ovvero l'adaptive test steering per circuiti integrati.
Abbiamo esaminato diversi modelli predittivi. Abbiamo realizzato una rete neurale semplice, una rete neurale con una componente principale. Abbiamo esaminato una rete neurale con componenti principali e boosting. Abbiamo dimostrato i miglioramenti in termini di risorse di test aggiuntive necessarie.
In questo caso siamo riusciti a eliminare uno strumento di misurazione XC2, che può arrivare a costare fino a 100.000 dollari per macchina, utilizzando le misurazioni in-C2 già effettuate in determinate fasi di test di classe per prevedere la linea di test a livello di sistema. Questa riduzione opportunistica dei costi nei test è possibile grazie a semplici reti neurali a due livelli.
Una cosa che devo sottolineare è che in JMP, all'interno dell'interfaccia utente, è possibile addestrare solo una rete neurale a due livelli, ma è possibile ampliare la complessità della rete neurale utilizzando JSL, dove è possibile personalizzare e costruire una rete neurale più profonda, come potrebbe essere necessario per applicazioni di fascia alta con set di dati più ampi. Questa è la nostra presentazione di oggi. Grazie per l'ascolto.