Die Halbleiterindustrie steht am Beginn einer transformativen Ära, angetrieben von fortschrittlichen Analyseverfahren. Diese Präsentation beleuchtet die Anwendung prädiktiver Modellierung und Diagnoseanalyse in der JMP-Software zur signifikanten Verbesserung der Fertigungsergebnisse, insbesondere in den entscheidenden frühen Phasen der Sortierung und Klassifizierung. Durch die Nutzung umfassender parametrischer Daten, die in verschiedenen Phasen des Halbleiterproduktionsprozesses erfasst werden, verfeinern wir die Vorhersage von Gut/Schlecht-Ergebnissen auf Bauteilebene und decken die Ursachen potenzieller Defekte auf.
Unsere Studie unterstreicht den strategischen Einsatz der prädiktiven Modellierungsfunktionen von JMP zur präzisen Vorhersage des finalen Systemteststatus von Halbleiterprodukten. Dieser Ansatz ermöglicht nicht nur die frühzeitige Erkennung von Problemen, sondern auch die zeitnahe Umsetzung von Korrekturmaßnahmen und sichert so höhere Ausbeuten und überlegene Produktqualität. Parallel dazu bietet die Diagnoseanalyse in JMP einen detaillierten Einblick in die Daten und ermöglicht Herstellern, die Ursachen von Fehlern im komplexen Netzwerk der Produktionsprozesse zu identifizieren und zu beheben.
Diese Präsentation zeigt anhand von Praxisbeispielen die Funktionen von JMP und verdeutlicht deren zentrale Rolle bei der Optimierung von Arbeitsabläufen in der Halbleiterfertigung. Erfahren Sie, wie prädiktive Modellierung und Diagnoseanalyse effektiv eingesetzt werden können, um Produktionsergebnisse zu optimieren, Kosten zu senken und die Produktzuverlässigkeit zu erhöhen. Entdecken Sie mit uns die innovativen Analysestrategien, die die Zukunft der Halbleiterfertigung revolutionieren werden.
Guten Morgen zusammen. Mein Name ist John Xu, und mein Kollege heißt Suraj Sindia. Wir beide arbeiten für die Intel Corporation. Wie Sie wissen, ist Intel ein Halbleiterhersteller. Wir produzieren Computerchips und andere Chips. Heute möchten wir Ihnen eine unserer Forschungsarbeiten vorstellen: „Revolutionierung des Halbleiterfertigungstests mit JMP“.
Wir setzen in JMP KI-Methoden ein, um die prädiktive Modellierung für die Teststeuerung zu unterstützen. Unsere Prognose gliedert sich in vier Abschnitte. Zunächst geben wir eine kurze Einführung in die Halbleiterindustrie und beschreiben anschließend die in JMP verwendete Methode der prädiktiven Modellierung mithilfe neuronaler Netze und Boosting.
Anschließend zeigen wir Ihnen die JMP-Demo-Anwendungsfallstudie zur Anpassung von Tests für die Fertigung in JMP. Wir gehen die JMP-Anwendung durch und nutzen das JMP-Neuronale Netzwerk und die PCA. Abschließend fassen wir die Ergebnisse zusammen und ziehen Schlussfolgerungen.
Überblick über diesen Halbleiter. Er ist ein entscheidender und sich rasant entwickelnder Sektor, der das Herzstück moderner Technologien bildet. Halbleiter – oder besser gesagt integrierte Schaltungen (ICs) – sind essenzielle Bauteile, die in einer Vielzahl elektronischer Geräte wie Smartphones, Computern, Autos und vielen anderen, beispielsweise Ihrem Kühlschrank, zu finden sind.
Diese Branche zeichnet sich durch ein hohes Maß an Innovation und erhebliche Kapitalausgaben aus; eine Fabrik investiert möglicherweise 10 Milliarden Dollar in den Bau einer einzigen Fabrik. Und die Nachfrage auf dem Siliziummarkt, sagen wir einfach, zumindest in einigen Marktsegmenten, die mit Halbleitern zusammenhängen, wie zum Beispiel Speicher, Chips, schnelle Speicher oder Mikroprozessoren.
Je bekannter die meisten Menschen sind, desto mehr wissen sie, dass es sich dabei um die CPU im Computer handelt. Es gibt auch Standard-ICs (Commodity Integrated Circuits), die in verschiedenen Gerätetypen verwendet werden, beispielsweise in Automobilen oder anderen Bereichen, sowie ASICs (Application Specific Integrated Circuits) und analoge Schaltungen, wie sie beispielsweise in Ampeln zum Einsatz kommen.
Ich gebe Ihnen dann einen kurzen Überblick über das Halbleiterfertigungsmodell. Man kann im Wesentlichen drei Arten von Unternehmen unterscheiden: IDM (Integrated Device Manufacturer), Fabless-Unternehmen und reine Auftragsfertiger. Fabless-Unternehmen entwerfen und erstellen das Chipdesign, stellen die Chips aber nicht selbst her. Beispiele für solche Unternehmen sind AMD, Nvidia und Qualcomm.
Manche Unternehmen haben keine eigenen Produkte. Sie entwickeln keine eigenen ICs, sondern fertigen ICs für andere Fabless-Unternehmen. Zu den wenigen [unverständlich 00:03:37] gehören TSMC oder [unverständlich 00:03:39] Foundry-Unternehmen. Andere Unternehmen wie Intel oder Samsung decken hingegen alle Bereiche ab.
Wir entwickeln unsere Chips selbst, fertigen sie in unserer eigenen Fabrik und bestücken sie anschließend. Danach liefern wir die fertigen Chips an Kunden wie HP oder Dell, die daraus die Computer für die Endkunden herstellen. Wir bieten Ihnen außerdem einen umfassenden Einblick in den Halbleiterfertigungsprozess.
Der Halbleiterherstellungsprozess umfasst tatsächlich Hunderte von Einzelschritten. Dies ist jedoch nur eine sehr vereinfachte Darstellung, die im Wesentlichen mit den Siliziumwafern beginnt. Unternehmen wie Seasonic stellen beispielsweise Silizium her, schneiden es in Wafer und liefern diese an Intel. Dort werden dann in zahlreichen Schritten Chips aus den Wafern gefertigt.
Der erste Schritt ist die Oxidation. Dabei wird eine Siliziumdioxidschicht auf der Waferoberfläche abgeschieden. Anschließend erfolgt die Fotolithografie, bei der mithilfe lichtempfindlicher Chemikalien das Schaltungsdesign auf den Wafer aufgebracht wird. Danach wird durch Ätzen das unerwünschte Material entfernt, um die gewünschten Strukturen zu erzeugen. Im nächsten Schritt erfolgt die Dotierung, bei der Fremdatome eingebracht werden, um die elektronischen Eigenschaften des Siliziums zu modifizieren. Abschließend wird die Beschichtung abgeschieden.
Wir bringen das Material schichtweise mithilfe verschiedener Techniken auf den Wafer auf. Beispielsweise eine Schicht auf die nächste. Anschließend erfolgen die Sortierung und Prüfung der elektronischen Chips. Heute konzentriert sich die Forschung jedoch auf diesen Testprozess.
Auf der nächsten Folie erhalten Sie weitere Details zu unserem Testverfahren.
Vielen Dank, John. Danke für den Überblick über den Halbleiterfertigungsprozess. Wie John gezeigt hat, besteht dieser Prozess aus mehreren Phasen. Die Testphase ist die wichtigste, in der die technische Qualität des Chips überprüft wird. Hier werden alle vorangegangenen Fertigungsschritte getestet, um festzustellen, ob sie die Anforderungen erfüllen, für die der integrierte Schaltkreis bzw. der Chip entwickelt wurde.
Die Testphasen der Halbleiterprüfung lassen sich in drei Hauptphasen unterteilen. Die erste ist der elektrische Chiptest. Hierbei werden die Chips direkt auf dem Wafer geprüft, ohne dass sie zuvor vereinzelt werden müssen. Wafer-Sonden, wie sie in diesem kleinen Bild dargestellt sind, messen an den internen Kontaktstellen des Chips Spannungen, Ströme aus der Versorgungsspannung, Leckströme usw.
Einheiten, die den Electrical Die Sort Test bestehen, werden dann vom Wafer abgetrennt und verpackt. Die verpackten Einheiten sehen aus oder ähneln etwas, das den meisten von uns, die schon einmal ein Motherboard in einem Computer gesehen haben, wahrscheinlich vertraut ist – diese schwarzen Bauteile, die integrierten Schaltkreise.
Die Komponenten wurden nun verpackt und werden anhand von Millionen von Testmustern auf Funktionalität und Leistung geprüft. Erfüllt eine Einheit auch nur eines dieser Testmuster nicht, wird sie aussortiert. Erreicht sie die Leistungsanforderungen einer Klasse nicht oder nicht, wird sie in eine niedrigere Klasse eingestuft und erneut auf unzureichende Leistung geprüft. Erfüllt sie auch diese Anforderungen nicht, wird sie in einer noch niedrigeren Klasse getestet usw. Erfüllt sie auch die Anforderungen der niedrigsten Klasse nicht, wird sie aussortiert usw.
Dies ist die zweite Hauptphase im Fertigungstestprozess, der sogenannte Klassentest oder Gehäusetest. Im Anschluss an den Gehäusetest folgt ein Abschnitt namens Test Steering. In dieser Phase steuert ein Offline-Tool die Bauteile in eine von drei oder mehr Spuren, um den Chip dem sogenannten finalen Systemtest zu unterziehen.
Dies ist der Testsockel bzw. der teuerste Testsockel, in dem die nun verpackten Chips auf einem Motherboard montiert und anspruchsvollen, anwendungsähnlichen Tests unterzogen werden.
Dabei handelt es sich um Funktionen wie das Booten von Windows- oder Linux-Betriebssystemen, die Ausführung von Anwendungsprogrammen wie dem Chrome-Browser sowie JMP-ähnlichen Anwendungen, die nach dem Einbau auf ein Motherboard auf dem Chip ausgeführt werden. Dadurch soll eine möglichst realitätsnahe Nutzung aus Sicht eines Endbenutzers gewährleistet werden. Besteht der Chip diesen Systemtest und den abschließenden Systemtest, wird er an Intel-Kunden oder Kunden von Halbleiterherstellern ausgeliefert.
Warum führen wir VLSI- oder IC-Tests durch? Tests sind für die Funktionssicherung unerlässlich. Jeder gefertigte Chip birgt potenziell einen Defekt. Jede Fertigungsstufe kann Fehler verursachen, und im Anschluss daran ist die Testphase notwendig, um diese fehlerhaften Teile auszusortieren.
Die defekten Teile führen in vielen Fällen dazu, dass der Chip nicht die Funktionalität aufweist, für die er entwickelt wurde, und in einigen Fällen entspricht er nicht den Leistungsanforderungen, für die er entwickelt wurde.
Die entscheidende Rolle des Testens liegt nicht nur in der Funktionssicherung, sondern auch in der Leistungssicherung. Im Anschluss an diese Fehlererkennung und Funktionssicherung trägt es auch zum Lernen über die Ausbeute bei. Das bedeutet, dass der Fertigungsprozess optimiert werden kann, indem im Testprozess erkannte Fehlerstellen zur Verbesserung des Fertigungsprozesses genutzt werden. So können beispielsweise Änderungen in der Fotolithografie oder im Ätzprozess vorgenommen werden, um den Fertigungsprozess so zu steuern, dass Fehler nicht mehr auftreten.
Dies ist von entscheidender Bedeutung, um den Umsatz zu maximieren und gleichzeitig Kosteneinsparungen für das Endergebnis zu erzielen, da jede zusätzliche Prozentpunktsteigerung der Ausbeute zu erheblichen Kosteneinsparungen für den Hersteller führt.
Welche Herausforderungen gibt es beim Testen von Halbleitern oder VLSI-Schaltungen? VLSI steht für Very Large Scale Integrated Circuit (sehr großflächig integrierte Schaltung), und der Grund dafür ist, dass die Integration von Transistoren in modernen Mikroprozessoren bis zu 10 Milliarden einzelne Transistoren übersteigt.
Rechts habe ich eine kleine Grafik eines modernen Mikroprozessors, bei dem die einzelnen Transistoren nur wenige Nanometer groß sein können. Das ist, als ob tausend Transistoren oder tausend Teile eines einzelnen Haares hineinpassen würden.
Die hohen Kosten und der enorme Zeitaufwand für die Tests ergeben sich daraus, dass jeder einzelne Transistor geprüft werden muss. Man kann sich vorstellen, wie viele Testmuster benötigt werden, um jeden Transistor eines solchen Designs einzeln zu testen. Dies führt zu großen Mengen an Testdaten, deren Analyse aufwendig ist. Diese Daten müssen analysiert werden, um die defekten Transistoren zu lokalisieren und die Funktionsfähigkeit zu charakterisieren. Dabei wird geprüft, ob der Chip den höchsten Spezifikationen entspricht oder ob er vor der Auslieferung an unsere Kunden in eine niedrigere Spezifikation eingeordnet werden muss.
Die Rolle der prädiktiven Modellierung im VLSI-Testing lässt sich nun anhand der vorangegangenen Ausführungen verdeutlichen. Sie haben das Potenzial für immense Kosteneinsparungen und können aus einem riesigen Datensatz wertvolle, umsetzbare Erkenntnisse gewinnen. Diese Techniken der prädiktiven Modellierung ermöglichen die Früherkennung von Fehlern, indem potenzielle Probleme mit nur wenigen Testmustern identifiziert werden.
Durch die Vorhersage, welche Chips mit wenigen Tests voraussichtlich bestehen oder fehlschlagen werden, lassen sich erhebliche Kosten und Testzeit einsparen, anstatt bis zur letzten Testphase zu warten. Die prädiktive Modellierung kann auch dazu beitragen, bestimmte Testphasen vollständig zu eliminieren. In dieser Fallstudie eliminieren wir beispielsweise die Teststeuerungsphase, in der ein Tester die Chips auf verschiedene Testreihen verteilt, die dann einem abschließenden Systemtest unterzogen werden.
Prädiktive Modellierung kann gezielt eingesetzt werden, um bestimmte Testphasen mit hoher Korrelation vollständig zu eliminieren. Die damit erzielbaren Verbesserungen hinsichtlich Ertragsoptimierung und Qualitätssteigerung bergen ein enormes Potenzial. In unserer Fallstudie untersuchen wir daher, wie sich die sogenannte Teststeuerungsphase mithilfe von JMP und einem mit JMP trainierten neuronalen Netzwerkmodell eliminieren lässt.
Erinnern Sie sich? In unseren drei verschiedenen Testphasen – von der Sortierung über die Klassifizierung bis hin zur Spracherkennungsprüfung – gibt es eine Zwischenstufe: eine Hörprüfung, bei der eine Offline-Messung durchgeführt wird, um die Teile in eine von vielen finalen Systemtestspuren zu lenken.
In dieser Fallstudie verwenden wir drei Teststrecken mit unterschiedlichen Testdauern (TT1 bis TT3). TT1 ist die längste Teststrecke für die leistungsstärksten Einheiten, TT3 die kürzeste für die leistungsschwächsten. Wir versuchen, mithilfe von prädiktiver Modellierung in JMP einzelne Chips einer dieser Teststrecken zuzuordnen, anstatt die XC2-Messungen eines Offline-Messgeräts zu verwenden.
Wir versuchen, anhand der bereits in den Sortier- und Klassifizierungstests durchgeführten Inline-Messungen vorherzusagen, welcher Testlauf für den jeweiligen Chip erforderlich ist. Unser Datensatz umfasst 13.186 getestete Einheiten. Jede dieser Einheiten verfügt über 16 Sensorsignale, die in situ gemessen wurden. Fünf dieser Signale sind kategorisch, elf sind numerische Eingangsgrößen. Die Ausgangsgrößen sind drei kategorische Werte: TT1 bis TT3.
Wie Sie sehen können, ist die Verteilung ziemlich unausgewogen, wobei TT3 unter den Einheiten dominiert und TT1 mit etwa 564 bis 10.488 Einheiten die geringste Anzahl aufweist.
Die Eingabewerte X1 bis X5 sind kategorial. Sie umfassen verschiedene Kategorienbereiche, von nur zwei bis zu 22 Stufen. Bei den numerischen Eingabewerten X6 bis X16 ist die Streuung recht groß. Wie Sie bei X6 sehen, reicht der Bereich von 0,01 bis 1,5. X14 weist die größte Streuung auf, von null bis über 2.500. Insgesamt handelt es sich also um eine recht vielfältige Gruppe von Eingabewerten.
Wir werden in JMP ein neuronales Netzwerk als Basismodell entwickeln, um anhand der 16 vor Ort erfassten Eingangssignale einen der drei Kategorienwerte vorherzusagen. Für den Einstieg in die Modellentwicklung in JMP beginnen wir mit dem einfachsten möglichen neuronalen Netzwerkmodell, das uns dennoch nützliche Erkenntnisse über die Klassifizierungsgenauigkeit liefert.
Wir beginnen mit einem einschichtigen neuronalen Netzwerk mit drei Neuronen. Wir verwenden eine 5-fache Kreuzvalidierung. Die Lernrate setzen wir auf 0,1. Wir verzichten auf Boosting, d. h. die Anzahl der zusätzlichen Modelle ist null. Die Anzahl der Touren ist auf eins gesetzt, was bedeutet, dass wir nach der Konvergenz kein inkrementelles Backpropagation-Training durchführen.
Für jedes einzelne Neuron verwenden wir die hyperbolische Tanh-Funktion als Aktivierungsfunktion. Jetzt öffnen wir JMP, um den Modellierungsprozess anschaulich zu demonstrieren. Meine Datentabelle ist hier. Okay, ich teile meine Datentabelle jetzt.
Okay, ich habe hier meine Datentabelle. Sie sehen hier die Eingabewerte von X1 bis X16 und den Testzeitraum, der aus TT1 bis TT3 besteht. Das sind die drei angezeigten Werte. Jetzt beginnen wir mit der prädiktiven Modellierung. Im Dropdown-Menü „Analysieren“ finden Sie die Option „Prädiktive Modellierung“, und wir starten das Training des neuronalen Netzes.
Für die X-Faktoren (Eingaben) verwenden wir X1 bis X16. Als Y-Antwort verwenden wir die TT-Spur. Klicken Sie auf OK. Dadurch öffnet sich das Menü für das Training des neuronalen Netzes. Hier verwenden wir eine K-Fold-Kreuzvalidierung. Wie bereits erwähnt, verwenden wir fünf Folds.
Als Zufallsgenerator verwenden wir die gleiche Zahl wie in der Präsentation, um Konsistenz zu gewährleisten. Die erste Schicht besteht aus drei Neuronen und dient als Basismodell. In der zweiten Schicht werden keine Neuronen verwendet. Wir nutzen die hyperbolische Tanh-Aktivierungsfunktion.
Es handelt sich im Grunde um eine Sigmoidfunktion. Wir verzichten auf Boosting. Die Anzahl der Modelle setzen wir auf null und die Lernrate auf 0,1. Jetzt starten wir das Training. Das Modell wird nun erstellt und trainiert, und siehe da, es ist ein einfaches Modell. Wir haben es schnell erstellt. Das hier gezeigte R² ist recht gut. Und das mit nur drei Neuronen für diesen Datensatz mit 13.000 Einheiten.
Da wir KFold mit dem Wert 5 verwendet haben, werden 80 % der Daten für das Training und 20 % für die Validierung genutzt. Dabei fällt auf, dass der R²-Wert für die Trainings- und Validierungsdatensätze mit 92,9 % bzw. 93 % sehr hoch ist. Es gibt jedoch einige Fehlklassifizierungen. In der Konfusionsmatrix sind die tatsächlichen TT-Spuren (die Referenzwerte) auf der y-Achse und die vorhergesagten Zustände auf der x-Achse dargestellt.
In diesem Datensatz liegt die Fehlklassifizierungsrate bei etwa 20 %, dem höchsten Wert. In 20 % der Fälle sagt das neuronale Netzwerk TT1 fälschlicherweise als TT2 voraus. Für unsere Zwecke ist eine Fehlklassifizierungsrate von maximal 15 % ideal, maximal 20 % sind akzeptabel. Wir zeigen, wie sich die Fehlklassifizierungsrate weiter verbessern lässt.
Nun erstellen wir hier das Diagramm des neuronalen Netzes. Wie Sie sehen, haben wir alle 16 Eingänge. Die drei Neuronen, die wir für die erste Schicht vorgesehen haben, verwenden jeweils die hyperbolische Tanh-Aktivierungsfunktion und TT Lane als Ausgabe. Jetzt erhöhen wir die Modellkomplexität. Wie bereits erwähnt, handelt es sich hierbei um das Basismodell. Nun wollen wir das Modell so verkomplizieren, dass wir die Fehlklassifizierungsrate verbessern können.
In der ersten Phase hatten wir drei Neuronen, in der zweiten keine. Nun erhöhen wir die Anzahl auf zwei Neuronen. Wir behalten weiterhin die fehlende Verstärkung und die gleiche Lernrate bei. Die Lernrate kann angepasst werden, je nachdem, wie schnell die Konvergenz erfolgen soll, gegebenenfalls auf Kosten der Genauigkeit.
Wenn Sie die Lernrate erhöhen, besteht die Gefahr, dass sich das System in einem lokalen statt in einem globalen Minimum einpendelt. Die Konvergenz wird zwar schneller, aber Sie riskieren, dass sich das System in einem lokalen statt in einem globalen Minimum einpendelt. Wir können verschiedene Strafmethoden ausprobieren. Wir verwenden im Wesentlichen den minimalen mittleren quadratischen Fehler. Die Anzahl der Touren ist auf eins gesetzt.
Während unser Modell aufgebaut wird, werden Sie feststellen, dass sich unser R²-Wert bereits im Vergleich zum Basismodell (0,92 bzw. 0,93) verbessert hat. Auch unser Modell mit einem R²-Wert von 3x2 hat sich verbessert. Die Fehlklassifizierungsrate hat sich ebenfalls um 18 % (von 0,2 auf 0,18) reduziert. Das Diagramm veranschaulicht dies. Es zeigt zwei Stufen: drei Neuronen in der ersten und zwei Neuronen in der zweiten Stufe.
Nun erhöhen wir die Modellkomplexität weiter, um zu untersuchen, wie sich dies auf unsere Fehlklassifizierungsrate auswirkt. Dabei ist Vorsicht geboten, um eine Überanpassung an die Daten und damit einen Verlust der Allgemeingültigkeit zu vermeiden. Bei 13.000 Einheiten werden wir die resultierende Parameteranzahl analysieren.
Wie Sie sehen, verlängert sich die Trainingszeit mit zunehmender Anzahl der Neuronen in unserem Modell. Hier sehen Sie das generalisierte R² für die erhöhte Modellkomplexität. Wie Sie erkennen, verbessert sich die Genauigkeit nicht immer durch eine einfache Erhöhung der Modellparameter. Dies liegt, wie bereits erwähnt, an der Gefahr des Overfittings.
Wie Sie sehen, beträgt das R² 0,937 bzw. 0,936 und liegt damit leicht über dem Wert des 3x2-Netzwerks, aber nicht wesentlich. Wie Sie ebenfalls feststellen werden, hat sich die Fehlklassifizierungsrate mit der erhöhten Komplexität sogar leicht verschlechtert. Wie Sie im Diagramm sehen, befinden sich in der ersten Stufe bis zu fünf Neuronen und in der zweiten Stufe bis zu sieben Neuronen.
Eine höhere Modellkomplexität führt nicht immer zu einer besseren Fehlklassifizierungsrate. Hier kommen intelligente Optimierungstechniken wie Boosting und die Kombination von Modellparametern und Boosting zum Einsatz, um die Genauigkeit zu steigern. Angenommen, wir haben eine bestimmte Genauigkeit und Fehlklassifizierungsrate erreicht: Wie können wir die Eingabekomplexität reduzieren?
Wir verwenden 16 Eingangsgrößen. Wie können wir in unserem Fall die Anzahl der Eingangsgrößen reduzieren, ohne die Genauigkeit zu beeinträchtigen? Wie bereits erwähnt, erhöhen wir dadurch die Modellkomplexität, was jedoch zu einer etwas ungenaueren Fehlklassifizierung führt. Wie können wir die Überanpassung des Modells durch die Reduzierung der Eingangsgrößen verbessern? Hier kommt JMP ins Spiel: Mithilfe der in JMP verfügbaren multivariaten Hauptkomponentenanalyse können wir ein Modell mit weniger Eingangsgrößen erstellen.
Wir wählen nun die Hauptkomponenten aus dem vorliegenden Eingabedatensatz aus und bestimmen die Anzahl, die die geringste Fehleranzahl zur Folge hat. Wie Sie sehen, verwenden wir die Eingabewerte X1 bis X16. Wir wählen ausschließlich numerische Eingabewerte aus, da JMP für die Hauptkomponentenanalyse nur numerische Werte verarbeiten kann.
Wie Sie sehen, haben wir die elf Hauptkomponenten des Datensatzes. Jede zusätzliche Hauptkomponente erklärt jedoch weniger Eingangsvarianz. Wir können hier ein Scree-Plot erstellen, um den Knickpunkt der PCA zu ermitteln. Wie Sie sehen, liegt dieser bei etwa zwei Hauptkomponenten. Im Wesentlichen wird der Großteil der Varianz durch nur zwei Hauptkomponenten erklärt.
Betrachten wir nun die inkrementelle kumulative Verteilungsfunktion (CDF) der Eigenwerte. Wie Sie sehen, werden etwa 90 % der Eingangsvarianz durch nur sechs Eigenvektoren bzw. sechs Hauptkomponenten erfasst. Diese sechs Hauptkomponenten werden wir nun zusammen mit den kategorialen Eingangsdaten für das Training unseres neuronalen Netzes verwenden. Zur Erinnerung: Bei der Einführung des Hauptkomponentenanalyse-Tools (PCA) akzeptiert JMP standardmäßig nur numerische, nicht aber kategoriale Eingangsdaten.
Für unser neuronales Netzwerk müssen wir die kategorialen Daten ergänzen und es mit den ausgewählten Hauptkomponenten aufbauen. Nun kehren wir zur ursprünglichen Datentabelle zurück. Ich habe die Hauptkomponenten dieser Analyse gespeichert. Wir wählen die Hauptkomponenten aus und erstellen unser neuronales Netzwerkmodell erneut.
Ich habe die sechs von mir generierten Hauptkomponenten. Diese speichere ich als Eingabewerte und ergänze sie mit X1-X5 als weiteren Eingabewerten. Die Variable TT Lane soll weiterhin meine Y-Antwort bzw. Ausgabe sein. Ich verwende dieselbe k-fache Kreuzvalidierung und denselben Zufallsgenerator. Die erste Schicht besteht aus drei Neuronen, die zweite aus zwei.
Wir beginnen mit der Anzahl der inkrementellen Modelle bei Null, also ohne Boosting. Anschließend untersuchen wir sie mit Boosting. Jetzt starten wir. Sie werden feststellen, dass ich die gleiche Anzahl an Folds verwende, d. h. 20 % der Daten für die Validierung und 80 % für das Training.
So, da sind wir. Bereit? Wir stellen fest, dass wir etwa die gleiche Genauigkeit wie mit allen 16 Eingaben erreicht haben. Zunächst überprüfen wir, ob wir jetzt nur noch 11 Eingaben haben: die sechs Hauptkomponenten und die fünf Kategorien. Wir verwenden das neuronale Netzwerk, genauer gesagt das 3x2-Netzwerk. Die Fehlklassifizierungsrate ist akzeptabel. Sie entspricht in etwa derjenigen, die wir mit allen 11 Eingaben und dem komplexeren 5x7-Netzwerk erzielt haben.
Wie geht es nun weiter? Erhöhen wir die Anzahl der Neuronen im Modell und untersuchen wir, wie sich das auf die Fehlklassifizierungsrate auswirkt. Mit zunehmender Modellkomplexität verlängert sich die Trainingsdauer. Dies wird besonders deutlich, wenn ich Boosting einführe. Das Training wird sich dadurch über den Tag verteilt noch weiter verlängern.
Sie werden nun beim 7x5-Netzwerk sehen, dass sich unsere Genauigkeit verbessert hat, und das liegt daran, dass wir die Eingangsgrößen reduziert haben. Das mag kontraintuitiv erscheinen. Die Reduzierung der Eingangsgrößen kann die Genauigkeit aufgrund der Wahl der Modellkomplexität manchmal erhöhen.
Das ist die nicht triviale Erkenntnis, die sich daraus gewinnen lässt. Wenn wir nun einen Schritt weitergehen und das Diagramm genauer betrachten, sehen wir, wie bereits erwähnt, die sechs Hauptkomponenten und die fünf kategorialen Eingangsgrößen. Die Modellkomplexität hat sich im Vergleich zum Netzwerk um das Siebenfache erhöht.
Nun zum Boosting. Wir unterstützen das Boosting. Wichtig bei JMP ist, dass Boosting nur auf der ersten Schicht funktioniert. Das bedeutet, JMP ignoriert die Anzahl der Neuronen in der zweiten Schicht. Nur die Neuronen der ersten Schicht werden für das Boosting verwendet.
Die erste Schicht enthält nun keine Neuronen mehr. Die Boosting-Rate beträgt fünf, und die erste Schicht besteht aus drei Neuronen. Boosting bezeichnet die Fehlerrate zwischen der Vorhersage nach Konvergenz und den Eingaben. Die Fehlerrate zwischen der Zielvorhersage und den tatsächlichen Werten wird mit jedem inkrementellen Boosting des Modells minimiert. In diesem Fall besteht das Modell aus insgesamt 15 Neuronen.
Wir fahren nun mit der Demonstration von Boosting fort. Das Modell wird anhand der hier ausgewählten Anzahl an Modellen skaliert. In diesem Fall ist es fünf, was als Skalierungsfaktor für die Anzahl der Neuronen in der ersten Stufe dient. Unser resultierendes Modell umfasst 15 Neuronen und wurde 5-fach gegen den Trainingsdatensatz kreuzvalidiert. Wir sehen uns nun das trainierte Modell an. Anschließend schließen wir unsere Präsentation ab.
Wie bereits erwähnt, verlängert sich die Trainingszeit durch das Boosting. Da wir nun nur eine einzige Schicht mit Boosting verwenden, ist unser R²-Wert im Vergleich zum 5x7-Netzwerk niedriger, aber immer noch besser als der des ursprünglich erstellten Basismodells. Das Basismodell im Vergleich zur 5-fachen Kreuzvalidierung sehen Sie hier.
Wie Sie sehen können, ist hier das verbesserte Modell dargestellt. Dies ist der Vergleich des verbesserten Modells mit dem Basismodell. Die Genauigkeit ist ebenfalls hier ersichtlich. Die Ergebnisse beider Modelle sind sehr vergleichbar.
Nun schließen wir die Präsentation ab. Kehren wir zu unseren Folien zurück. Okay. Wir sind wieder bei unseren Folien. Wie Sie sehen, haben wir das Basismodell trainiert. Anschließend haben wir die Eingabekomplexität mithilfe der Hauptkomponentenanalyse (PCA) reduziert. Wir haben die sechs Hauptkomponenten ausgewählt, sie mit den Kategorien X1-X5 ergänzt und unser neuronales Netzwerk trainiert.
Eingabe. Die Reduzierung der Eingaben führte zu einer verbesserten Genauigkeit. Dies ist die entscheidende Erkenntnis: Eine Erhöhung der Modellkomplexität führt nicht zwangsläufig zu einer Verbesserung der Modellgenauigkeit. Die Reduzierung der Eingabekomplexität kann jedoch zur Genauigkeitsverbesserung beitragen. Anschließend verwendeten wir das bereits gezeigte Scree-Plot und wählten die sechs Neuronen bzw. die sechs Basisvektoren für unsere Hauptkomponenten zum Training.
Dies ist ein weiterer Fall, den wir heute übersprungen haben, bei dem wir nur kategorische Eingaben haben. Wie Sie sehen, ist die Genauigkeit deutlich gesunken, was bedeutet, dass man die Eingabekomplexität nicht endlos reduzieren kann, ohne ein ungenaueres Modell zu erhalten.
Wir haben uns dann für eine Boosting-Stufe von fünf entschieden. In diesem Fall haben wir ein Boosting von zwei mit drei Neuronen. Wie Sie sehen, verbessert sich die Fehlklassifizierungsrate und das Bestimmtheitsmaß (R²) bei einer Erhöhung des Boostings von 2 auf 5.
Wir können solche Netzwerke vergleichen. Obwohl wir viele Modelle erstellt haben, vergleiche ich hier nur die drei Hauptmodelle, die wir letztendlich verwendet haben. Für uns reichte ein einfaches zweischichtiges neuronales Netzwerk mit Boosting-Faktor 5, sechs Hauptkomponenten und fünf Eingängen aus, um die angestrebte Genauigkeit zu erreichen.
In jedem Fall müssen Sie die Genauigkeitsanforderungen Ihrer Anwendung genau prüfen. Wählen Sie das Modell anschließend sorgfältig aus, nachdem Sie mit den Trainingsparametern, der Modellkomplexität und der Eingabekomplexität experimentiert haben. In unserer heutigen Präsentation haben wir untersucht, wie das neuronale Netzwerkmodell in JMP für unsere Zielanwendung, nämlich die adaptive Teststeuerung für integrierte Schaltungen, eingesetzt werden kann.
Wir untersuchten verschiedene Vorhersagemodelle. Wir erstellten ein einfaches neuronales Netzwerk, ein neuronales Netzwerk mit Hauptkomponentenanalyse und ein neuronales Netzwerk mit Hauptkomponentenanalyse und Boosting. Wir zeigten die Verbesserungen hinsichtlich des benötigten zusätzlichen Testaufwands auf.
In diesem Fall konnten wir ein XC2-Messgerät einsparen, dessen Kosten sich auf bis zu 100.000 US-Dollar pro Maschine belaufen können. Dies gelang uns durch die Nutzung der bereits in bestimmten Klassentestphasen durchgeführten In-C2-Messungen zur Vorhersage der Systemteststrecke. Solche opportunistischen Kostensenkungen im Testbereich sind durch einfache zweischichtige neuronale Netze möglich.
Eine Sache möchte ich noch erwähnen: In JMP kann man über die Benutzeroberfläche nur zweischichtige neuronale Netze trainieren. Mit JSL lässt sich die Komplexität jedoch erweitern, indem man tiefere neuronale Netze anpasst und erstellt, wie es beispielsweise für anspruchsvollere Anwendungen mit größeren Datensätzen erforderlich sein kann. Das war unsere heutige Präsentation. Vielen Dank fürs Zuhören.