-
Die Erfindung betrifft ein Verfahren zum Erstellen eines Trainingsdatensatzes geeignet zum Anlernen eines maschinellen Lernsystems für eine Defekterkennung sowie eine Vorrichtung, ein Computerprogramm zum Ausführen des Verfahrens und ein maschinenlesbares Speichermedium auf welchem das Computerprogramm gespeichert ist.
-
Stand der Technik
-
Als Vorbereitung zum Trainieren eines Deep-Learning Klassifizierungsalgorithmus für einen Datensatzes aus Bildern, muss üblicherweise von Domänen-Experten ein Satz von Kategorien angelegt werden und jedes Bild im Datensatz muss einer dieser Kategorien zugeordnet werden. Für die Performance des trainierten Klassifizierungsalgorithmus ist es einerseits kritisch, dass jeder Kategorie eine ausreichende Anzahl von Bildern zugewiesen wird (z.B. in der Größenordnung 300 bis 5000 Bilder), anderseits muss dieser Prozess gründlich und fehlerfrei durchgeführt werden. Daraus ergibt sich, dass der Prozess zum Erstellen eines Datensatzes sehr zeitintensiv und damit teuer im Sinne von Personalkosten und insbesondere sensibel gegenüber Fehlern ist.
-
Daneben ist es für die Anwendung für eine optische Erkennung von Defekten auf Wafern in der Halbleiterproduktion wichtig, dass sehr viele dieser Datensätze erstellt werden können. Auch kommt es regelmäßig vor, dass ein bereits fertiggestellter Datensatz überarbeitet werden muss, um z.B. auf neue Fehlerbilder, Änderungen im Produktionsprozess oder Änderungen an der Messanlage reagieren zu können. Für den letzten Punkt ist ebenfalls die Zeit, die zum Fertigstellen eines kategorisierten Datensatzes benötig wird, kritisch. Dies bestimmt wie schnell auf Veränderungen in der Fertigung reagiert werden kann und sorgt dafür, dass der Zeitraum, in dem durch eine Veränderung kein ausreichend wirkungsvoller Klassifizierungsalgorithmus in der Fertigung zur Verfügung steht, minimal ist.
-
Vorteile der Erfindung
-
Die gegenwärtige Erfindung hat die Vorteile, dass der Prozess der Kategorisierung von Bildern beschleunigt wird und damit schnell und auch mit weniger Fehler in der Kategorisierung einen Datensatz zu erstellen und ferner aktiv beim Erstellen des Datensatzes die gewählten Kategorien auf ihre Eignung hin zu überprüfen und auch Fehler zu korrigieren.
-
Weitere Aspekte der Erfindung sind Gegenstand der nebengeordneten Ansprüche. Vorteilhafte Weiterbildungen sind Gegenstand der abhängigen Ansprüche.
-
Offenbarung der Erfindung
-
In einem ersten Aspekt betrifft die Erfindung ein computerimplementiertes Verfahren zum Erstellen eines Trainingsdatensatzes geeignet zum Anlernen eines maschinellen Lernsystems. Das Anlernen erfolgt vorzugsweise für eine Defekterkennung von Wafern, wobei dann das maschinelle Lernsystem ein Bildklassifikator sein kann, welcher für eine optische Bildererkennung eingerichtet ist und eine Mehrzahl von Defekten bzw. Anomalien klassifizieren kann. Denkbar ist aber auch, dass das maschinelle Lernsystem ein Objektdetektor ist und/oder eine semantische Segmentierung ausführt, um die Defekte zu erkennen, insbesondere hervorzuheben, und abhängig hiervon eine Kategorisierung auszugeben. Die Klassifizierung, insbesondere in unterschiedliche Kategorien von Defekten, wird im Folgenden auch als eine Kategorisierung bezeichnet.
-
Das Verfahren beginnt mit einem Bereitstellen einer Mehrzahl von Bildern. Der Begriff des Bildes umfasst grundsätzlich jede in einem zwei- oder mehrdimensionalen Raster angeordnete Verteilung von Informationen. Diese Informationen können beispielsweise Intensitätswerte von Bildpixeln sein, die mit einer beliebigen Abbildungsmodalität, wie etwa mit einer optischen Kamera, o.ä. aufgenommen wurden. Vorzugsweise sind die Bilder Ausschnitte von Aufnahmen von Wafer, insbesondere Waferoberflächen. Besonders bevorzugt sind es optische Bilder und/oder Elektronenmikroskopie-Bilder der Waferoberfläche. Die optischen Bilder werden vorzugsweise aus drei Kanälen einer Kamera erzeugt, insbesondere zu einem RGB-Bild zusammengefügt.
-
Daraufhin folgt ein Definieren einer Mehrzahl von Kategorien für die bereitgestellten Bilder. Die Kategorien können charakterisieren, ob die Bilder Defekte zeigen und/oder können unterschiedliche Defekte charakterisieren. Zusätzlich oder alternativ können die Kategorien jeweils eine Qualitätsbeurteilung der Bilder charakterisieren. Beispielsweise können die Kategorien unterschiedliche Größen und/oder Formen und/oder Häufigkeiten (wenig, mittel, viel) der Defekte charakterisieren.
-
Daraufhin folgt ein erstes Kategorisieren einer ersten Menge der bereitgestellten Bilder, indem die Bilder der ersten Menge jeweils einer der definierten Kategorien zugeordnet werden. Das Kategorisieren kann durch einen Anwender oder Experten erfolgen. Die erste Menge kann sehr wenige Bilder enthalten, vorzugsweise 50 - 300 Bilder. Die erste Menge ist somit eine Untermenge der Mehrzahl der bereitgestellten Bildern.
-
Daraufhin folgt ein erstes Anlernen des maschinellen Lernsystems mit der ersten Menge der kategorisierten Bildern, insbesondere sodass das maschinelle Lernsystem den Bildern der ersten Menge die jeweils zugeordnete Kategorisierung im Wesentlichen zuordnet. Unter einem Anlernen kann verstanden werden, dass mittels bekannten Trainingsmethoden (z.B. Gradientenabstiegsverfahren) Parameter des maschinellen Lernsystems derart eingestellt werden, dass das maschinelle Lernsystem die zugeordneten Kategorien ausgibt. Vorzugsweise ist das maschinelle Lernsystem eingerichtet, abhängig von den Bildern deren Kategorisierung zu ermitteln. In anderen Worten, eine Architektur des maschinellen Lernsystems ist derart vorgegeben, dass die Bilder am Eingang aufgenommen werden und ein Ausgang des maschinellen Lernsystems eine Kategorisierung ausgibt, z.B. in Form eines Vektors oder in Form einer semantischen Segmentierung.
-
Daraufhin folgt ein Verarbeiten einer zweiten Menge der bereitgestellten Bilder mit dem maschinellen Lernsystem, wobei die zweite Menge mindestens nichtkategorisierte Bilder der bereitgestellten Bilder umfasst. Die erste und zweite Menge haben vorzugsweise keinen Überlapp und sind besonderes bevorzugt nicht deckungsgleich, d.h. die beiden Mengen weisen keine gemeinsamen Bilder auf. Es ist aber auch denkbar, dass die erste und zweite Menge einen Überlapp haben, d.h. die zweite Menge enthält kategorisierte Bilder aus der ersten Menge. Es sei angemerkt, dass beim Verarbeiten durch das vorläufig trainierte maschinelle Lernsystem der zweiten Menge, die einen Überlapp mit der ersten Menge aufweist, neben den noch nicht-klassifizierten Bildern auch die bereits vom Anwender klassifizierten Bilder verarbeitet werden.
-
Daraufhin folgt ein Inspizieren und Verwenden der Ergebnisse aus dem Schritt des Verarbeitens der zweiten Menge. Hierbei wird ein zweites Kategorisieren der Bilder der zweiten Menge, die eine höchste Unsicherheit aufweisen, durchgeführt. Die Unsicherheit wird abhängig von der ermittelten Kategorisierung des jeweiligen Bildes ermittelt, bspw. abhängig von einer Verteilung von Einträgen der Ausgabe, insbesondere im ausgegebenen Klassifkationsvektor. Die Unsicherheit charakterisiert also wie unsicher sich das angelernte maschinelle Lernsystem bei seiner Vorhersage war. Aus der Literatur sind Verfahren bekannt, um Unsicherheiten einer Vorhersage von maschinellen Lernsystemen zu ermitteln, bspw. Pearce, Tim, Felix Leibfried, and Alexandra Brintrup. „Uncertainty in neural networks: Approximately bayesian ensembling.“ International conference on artificial intelligence and statistics. PMLR, 2020 oder bspw. Gawlikowski, Jakob, et al. „A survey of uncertainty in deep neural networks.“ arXiv preprint arXiv:2107.03342 (2021). Es sei angemerkt, dass beim Schritt des zweiten Kategorisierens auch neue Kategorien aufgefunden werden können, wobei dann die Mehrzahl der definierten Kategorien um die neue Kategorie erweitert werden kann.
-
Optional kann ein zweites Anlernen des maschinellen Lernsystems anhand aller kategorisierten Bilder erfolgen.
-
Denkbar ist, dass die Schritte des Verarbeiten einer zweiten Menge und das darauffolgende Inspizieren und Verwenden der Ergebnisse aus dem Schritt des Verarbeitens der zweiten Menge mehrmals hintereinander ausgeführt werden. Denkbar ist auch, dass bei dieser Wiederholung der Schritte auch der Schritt des zweiten Anlernens mit eingebunden wird.
-
Es wird vorgeschlagen, dass für jede Kategorie eine Mehrzahl von Vorschläge mit dem maschinellen Lernsystem, angelernt nach dem ersten Anlernen und bevorzugt nach dem zweiten Anlernen für die bereitgestellten Bilder, die nicht einer Kategorie zugeordnet wurden, ermittelt werden, wobei beim zweiten Kategorisieren die Vorschläge für einzelne Bilder oder für die gesamten Vorschläge entweder den vorgeschlagenen Kategorien oder einer der weiteren Kategorien zugeordnet werden.
-
Ferner wird vorgeschlagen, dass die Vorschläge nach der Unsicherheit über die Kategorisierung der Bilder sortiert werden und eine Vielzahl der Bilder mit höchster Unsicherheit für das zweite Kategorisieren bevorzugt verwendet werden. Dies sorgt dafür, dass bereits mit wenigen Klassifizierungen durch den Anwender bei einem erneuten Durchlauf ein deutlicher Lernfortschritt erzielt werden kann, denn je unsicher, desto größer ist in der Regel die Verbesserung der Performance des Models.
-
Ferner wird vorgeschlagen, dass nach dem ersten oder zweiten Anlernen eine Performance des maschinellen Lernsystem ermittelt wird. Dies kann z.B. anhand eines Validierungsdatensatzes erfolgen, welcher aus den kategorisierten Bildern der ersten Menge erstellt wurde. Abhängig von der Performance können folgende Maßnahmen eingeleitet werden: Wenn ein F1-Score einer Kategorie relativ zu den F1-Scores der weiteren Kategorien niedrig ist, können beim zweiten Kategorisieren weitere Bilder der bereitgestellten Bilder derjenigen Kategorie mit niedrigen F1-Score zugeordnet werden. Wenn eine Rate einer korrekten Kategorisierung durch das maschinelle Lernsystem für eine Kategorie relativ zu den weiteren Kategorien niedrig ist, können beim zweiten Kategorisieren weitere Bilder der bereitgestellten Bilder der Kategorie mit niederer Rate zugeordnet werden.
-
Ferner wird vorgeschlagen, dass ein Ensemble von maschinellen Lernsystemen verwendet wird, wobei die Kategorisierung abhängig von allen Ausgaben der maschinellen Lernsysteme ermittelt wird. Alternativ kann ein anderes maschinelles Lernsystem eingesetzt werden, dass eine Unsicherheit ausgibt. Bevorzugt werden als Ensemble drei maschinelle Lernsysteme verwendet. Denn es hat sich überraschenderweise herausgestellt, dass für die Defekterkennung drei maschinelle Lernsysteme zu einer zuverlässigen Performance erzeugen und eine ausreichende Robustheit aufweisen.
-
In einem weiteren Aspekt der Erfindung wird der erstellte Trainingsdatensatz des ersten Aspektes der Erfindung verwendet, um ein maschinelles Lernsystem anzulernen.
-
In einem weiteren Aspekt der Erfindung wird vorgeschlagen, dass abhängig von den Ausgaben eines oder aller der angelernten maschinellen Lernsysteme der vorhergehenden Aspekte der Erfindung ermittelt wird, ob eine Wartung an einer der Produktionsmaschinen ausgeführt werden muss. Dies hat den Vorteil, dass hiermit eine hohe Produktionsqualität aufrechterhalten werden kann. Tritt beispielsweise mit einer Wiederholungsrate höher als ein vorgebbarer Schwellwert ein gleicher Defekt (=gleiche Kategorie) auf, kann abhängig von der Art des Defektes ermittelt werden, welche Art von Wartung der Produktionsmaschine oder Reinraums sinnvoll wäre. Denkbar ist auch, dass der Wartungsbedarf vorhergesagt wird oder entschieden wird, welcher Chip auf den Wafer als Schlecht-Teil aussortiert wird. Denkbar ist auch, dass abhängig von den Ausgaben eine Entscheidung getroffen wird, ob ein Defekt so schwerwiegend ist, dass der Chip, der vom Defekt betroffen ist, in einem späteren Prozessschritt verworfen werden muss.
-
Beispielsweise kann abhängig von der ermittelten Kategorisierung, insbesondere von einer Häufigkeit oder Wiederholungsrate gleicher ermittelter Kategorien, durch das maschinelle Lernsystem bei seiner Inferenz eine Steuergröße ermittelt werden .
-
Die Steuergröße kann zum Steuern einer Wartungsmaßnahme oder zum Anzeigen einer empfohlenen Wartungsmaßnahme verwendet werden.
-
In weiteren Aspekten betrifft die Erfindung eine Vorrichtung sowie ein Computerprogramm, die jeweils eingerichtet sind, die obigen Verfahren auszuführen und ein maschinenlesbares Speichermedium, auf dem dieses Computerprogramm gespeichert ist.
-
Nachfolgend werden Ausführungsformen der Erfindung unter Bezugnahme auf die beiliegenden Zeichnungen näher erläutert. In den Zeichnungen zeigen:
- 1 schematisch ein Labeling von Bildern für eine Halbleiterfabrik;
- 2 schematisch ein Flussdiagramm eines Ausführungsbeispiel zum verbesserten Labeln der Bilder; und
- 3 schematisch eine Trainingsvorrichtung.
-
Beschreibung der Ausführungsbeispiele
-
1 zeigt schematisch ein Vorgehen zum Labeln von Bildern aus einer Halbleiterfabrik sowie ein Anlernen eines maschinellen Lernsystems und dessen Verwendung für die Halbleiterfabrik.
-
Zuerst werden Bilder 1 aus der Halbleiterfabrik bereitgestellt. Diese Bilder können Aufnahmen von Wafern sein, die bspw. mit einer Kamera und/oder einem Mikroskop oder einem Rastertunnelmikroskop aufgenommen wurden.
-
Daraufhin werden diese Bilder 1 durch einen Experten (z.B. Defect Engineer) begutachtet und einer Vielzahl von Kategorien zugeordnet. Die Kategorien können vom Experten definiert werden. In 1 sind beispielhaft Bilder aus einer Kategorie „große Partikel“ 3, „kleine Partikel“ 4 und „Flocken“ 5 abgebildet. Die Zuordnung einer Kategorie zu einem der Bilder soll im Folgenden als Labeln bezeichnet werden, wobei die Kategorien sog. Label sind.
-
Anschließend werden diese Bilder mit zugeordneten Labeln zum Anlernen 6 eins maschinellen Lernsystems 7 verwendet.
-
Nachdem das maschinelle Lernsystem 7 mit den eben gelabelten Bildern 1 angelernt wurde, kann es in der Halbleiterfabrik eingesetzt werden. Hierbei wird ein aktuelles Bild 8 eines frisch prozessierten Wafers bereitgestellt, welches mittels dem angelernten maschinellen Lernsystem 7 klassifiziert wird. In 1 hat das maschinelle Lernsystem 7 dem Bild 8 die Kategorie „großes Partikel“ zugeordnet.
-
Vorzugsweise werden die Bilder des frisch prozessierten Wafers vorsortiert, um vorab Bilder auszusortieren, die mit hoher Wahrscheinlichkeit keinen Defekt aufweisen. Dies kann bspw. durch Vergleichen der Bilder mit Referenzbildern durchgeführt werden. D.h. bevorzugt sind die Bilder 8, die dem maschinellen Lernsystem bereitgestellt werden, diejenigen Bilder, die eine Anomalie hinsichtlich der Referenzbildern aufweisen und somit höchstwahrscheinlich einen Defekt zeigen. Die gleiche Vorsortierung kann auch für die Bilder 1, die vom Experten gelabelt werden, durchgeführt werden.
-
Abhängig von der Kategorisierung durch das maschinelle Lernsystem 7 kann entschieden werden, ob der Wafer in Ordnung ist, oder verworfen werden soll. Zusätzlich können auch abhängig von der Kategorisierung durch das maschinelle Lernsystem 7 weitere Schritte 9 eingeleitet werden, um z.B. eine Wartung der Produktionsmaschine des Wafers zu starten. Dies hat den Vorteil, dass anschließend die Produktion mit höherem Wirkungsgrad vorliegen kann.
-
Besondere Herausforderungen des Vorgehens nach 1 sind, dass beim Betreiben der Halbleiterfabrik sehr viele Bilder 8 pro Stunde aufgenommen werden und auch klassifiziert werden müssen und demnach das Vorgehen stark skalierbar sein muss. Eine weitere Herausforderung liegt darin, dass es eine große Vielzahl an potenziellen Kategorien existiert und es herausfordernd ist, die Defekte aufgrund ihrer unterschiedlichen Erscheinungen durch ein maschinelles Lernsystem zu kategorisieren. Erschwerend kann hier dazukommen, dass sich die Defekte verändern können. Ferner ist eine besondere Herausforderung, die hohe Menge von Bildern in möglichst geringer Zeit zu bearbeiten, da während der Herstellung hierfür nur wenige Minuten zur Verfügung stehen.
-
Um diesen Herausforderungen gerecht zu werden, werden im Folgenden im Wesentlichen zwei Methoden zum Verbessern des Vorgehens nach 1 vorgeschlagen.
-
Die erste Methode ist das Trainieren eines Bildklassifizierungsalgorithmus mit n (n>=2) maschinellen Lernsystemen, die im Folgenden als Modelle insbesondere als auf Neuronalen Netzwerken basierende Modelle, bezeichnet werden. Bei dieser Mehrzahl von maschinellen Lernsystemen wird das Zusammenführen der Ergebnisse über ein sogenanntes „Ensemble Voting“ realisiert. Dabei wird der Ergebnisvektor der n trainierten Modelle kombiniert, z.B. gemittelt. Durch die n unterschiedlichen Modelle, die im Idealfall bei schwierigen oder unbekannten Bildern verschiedene Ergebnisse vorhersagen, ist erstens die Klassifizierungsaussage des Ensemble Votings vertrauenswürdiger und zweitens können damit unbekannte Bilder entdeckt werden. Unbekannte Bilder sind solche, wo sich die Aussagen der n Modelle zu sehr unterscheiden. Die gewählten Netzwerke der Modelle können dabei auf in der Literatur etablierten Architekturen basieren. Alternativ zum Wählen von n>=2 verschiedenen Modellen ist es möglich, nur n>=1 Modelle zu wählen, die aber alle (n>=1) oder teilweise (n>=2) auch mit der Information von Unbekannten Daten trainiert werden. Dabei kann im Vorfeld eine extra Kategorie „Unbekannt“ vom Anwender gelabelt werden, die z.B. aus Bildern besteht, die in keine der anderen Kategorien passen.
-
Die zweite Methode ist ein iterativer Kategorisierungsprozess, bei dem zunächst nur ein kleiner Teil der Gesamtmenge an Bildern in einem Datensatz vom Anwender kategorisiert wird (Hier: je nach Kategorie-Typ >50-300 Bilder). Mit dem vorläufig kategorisierten Datensatz wird der Klassifizierungsalgorithmus trainiert und anschließend werden mit dem trainierten Model, die noch nicht klassifizierten Bilder bewertet. Diese Information wird dann auf unterschiedliche Weise für den weiteren Kategorisierungsprozess verwendet. Dies Vorgehen kann iterativ wiederholt werden. Dieses Vorgehen ermöglicht es, schnell eine große Datenmenge zu kategorisieren (aka labeln), da immer nur iterativ eine kleine Menge aller Bilder vom Menschen gelabelt werden müssen und für die übrigen Bilder das trainierte Modell Vorschläge für Kategorien macht. In anderen Worten, es wird ein Unterstützung durch die Modelle für das Labeln vorgeschlagen, im Folgenden auch „AI Labeling Support“ genannt.
-
Der AI Labeling Support kann durch ein Zusammenspiel aus einer Datenstruktur, einer Datenpipeline und einem User-Interface (UI), vorzugsweise einem web basierten User-Interface, realisiert werden. Über die Datenpipeline wird das benötigte Training durchgeführt und die Ergebnisse werden anschließend in der Datenstruktur, bei der es sich um z.B. Datenbanktabellen handelt, abgelegt.
-
Das UI ermöglicht es dem Anwender für einen bestimmten Datensatz den gesamten Kategorisierungsprozess durchzuführen, bestehend aus Definition eines Datensatzes, dem Erstellen von Kategorien, dem Zuweisen von Bildern in Kategorien, dem Starten eines AI Labeling Support Durchlaufs und dem Inspizieren und Verwenden der Ergebnisse des AI Labeling Support Durchlaufs.
-
Das Ul kann einem Anwender Ergebnisse des AI Labeling Support Durchlaufs in derselben Umgebung anzeigen, in der auch die Kategorisierung durchgeführt wird.
-
Die Ergebnisse bestehen aus den Klassifizierungsvorhersagen des vorläufig trainierten Models für sowohl die noch nicht-klassifizierten als auch die bereits vom Anwender klassifizierten Bilder und ermöglichen dem Anwender die folgenden Schritte:
- 1. Für jede Kategorie kann sich der Anwender Vorschläge des vorläufigen Models für geeignete Bilder aus dem Satz der bisher nicht kategorisierten Bilder in einer Bildgalerie anzeigen lassen.
- 2. Die Vorschläge kann der Anwender entweder für einzelne Bilder oder für die gesamte angezeigte Seite mit einem Klick übernehmen.
- 3. Der Anwender kann für die angezeigte Kategorie mit einem Klick die Ansicht der Bildgalerie wechseln, um sich entweder die vorgeschlagenen oder die von ihm selbst kategorisierten Bilder anzeigen zu lassen.
- 4. Die Vorschläge können dahingehend sortiert werden, wie unsicher sich das vorläufige Model bei der Vorhersage war. Die Anzeige ist bevorzugt in Prozent und besonders bevorzugt werden die unsichersten Vorhersagen zuerst angezeigt. Die unsicheren Bilder sind für die Verbesserung des Modells von Relevanz, da das Modell hier nicht die gewünschte Performance zeigt und es Verbesserungsbedarf gibt. Eine bevorzugte Kategorisierung bzw. Bestätigung dieser Bilder sorgt dafür, dass bereits mit wenigen Klassifizierungen durch den Anwender bei einem erneuten Durchlauf ein deutlich besseres Ergebnis (d.h. genauere Vorschläge) erzielt werden kann.
- 5. Anstatt einen Vorschlag für ein oder mehrere Bilder zu akzeptieren, kann der Anwender die Bilder auch direkt einer anderen Kategorie zuordnen. Mit den gleichen Ul Elementen wie beim initialen Kategorisierungsprozess. Wie beim vorhergehenden Punkt beschrieben kann auch hierbei durch die Sortierung nach Unsicherheit die Effizienz des Kategorisierens erhöht werden.
- 6. Ein AI Labeling Support Durchlauf kann zusätzlich auch die vom Anwender selbst kategorisierten Bilder klassifizieren. Das Ergebnis kann über eine interaktive s.g. „Confusion Matrix“ aufgerufen werden, die in dieselbe Ul integriert ist, die auch die oben beschriebenen Funktionen bereitstellt.
-
Die Confusion Matrix stellt tabellarisch dar, wie sich die vom Anwender gewählten Kategorien („wahr“) von denen vom Modell vorhergesagten („vorhergesagt“) unterscheiden. Durch Klicken auf eine „wahr“/ „vorhergesagt“ Kombination in der Tabelle werden die entsprechenden Bilder in der Bildgalerie angezeigt. Unter jedem Bild wird sowohl die „wahr“ als auch die „vorhergesagt“ Kategorie dargestellt.
-
Durch Inspektion der Einträge in einer Nebendiagonalen der Confusion Matrix können so sehr effizient die folgenden häufig auftretenden Kategorisierungsfehler identifiziert werden:
- a. Falsche Kategorisierungen durch den Anwender, die versehentlich passiert sind.
- b. Bilder aus zwei Kategorien, die sich sehr ähnlich sind, wurden teilweise inkonsequent der jeweiligen Kategorien zugeordnet.
-
Ein Vorteil hierbei ist, dass durch dieses Vorgehen der Anwender Fehler direkt korrigieren kann, ohne den Review-Prozess unterbrechen zu müssen.
-
Beim Starten eines AI Labeling Support Durchlaufs über das Ul, kann der Anwender entscheiden, welche von ihm definierten Kategorien beim Training verwendet werden. Die nicht verwendeten Kategorien werden in der UI optisch, z.B. durch einen „#“-prefix hervorgehoben. Diese „ignorierten“ Kategorien haben den folgenden Zweck:
- 1. Sie können mit Bildern befüllt werden, die keiner der anderen Kategorien zuordenbar sind und nicht einheitlich genug sind, um eine neue Kategorie zu rechtfertigen.
- 2. Sie können mit Bildern befüllt werden, die ähnlich zu den Bildern in zwei bestimmten Kategorien sind, aber so unterschiedlich, dass eine eindeutige Kategorisierung nicht möglich ist.
-
Da die Bilder in den „#-Kategorien“ nicht zum Training des Models verwendet werden, wird ein Großteil dieser Bilder als „unbekannt“ klassifiziert werden. Wenn dieses Verhalten nicht gewünscht ist und sich der Klassifizierungsalgorithmus im Zweifelsfall für eine der Beiden in Frage kommenden Kategorien entscheiden soll (Im Zweifelsfall -> „raten“), kann der eben genannte Punkt 2 ausgelassen werden. In diesem Fall ordnet der Anwender diese Bilder nach bestem Wissen einer normalen Kategorie zu.
-
Für jeden Durchlauf des AI Labeling Supports werden Performance-Scores berechnet. Dafür werden pro Kategorie z.B. 10% der Bilder vor dem Training separiert und für die Berechnung der Scores verwendet („Train-Test Split“). Ein Performance-Bericht wird dem Anwender in dem UI angezeigt, in dem die Datensätze verwaltet werden können. Die integrierte und für den Anwender übersichtlich dargestellten Scores für das Training eines AI Labeling Support Durchlaufs sind hier wichtig, damit der Anwender schnell sehen kann, in welchen Aspekten der Datensatz entweder bereits die Erwartungen erfüllt oder noch nachgebessert werden muss. Damit kann der Prozess beschleunigt werden, da der Anwender beim Überarbeiten des Datensatzes seine Zeit gezielt einsetzen kann, um die größtmögliche Verbesserung zu erzielen. Eine weitere Zeitersparnis wird dadurch erzielt, dass der Anwender diese Information, auch wenn er kein Machine-Learning Experte ist, selbst interpretieren kann und keine zeitaufwändige externe Analyse durch ein Data-Scientist notwendig ist. Der Bericht umfasst z.B. die folgenden Werte, die für jede Kategorie individuell berechnet werden:
- - Precision,
- - Recall,
- - F1-Score,
- - „In Other“: Anteil der Bilder dieser Kategorie, die falsch klassifiziert wurden und einer anderen Kategorie zugeordnet wurden.
- - „In Unknown“: Anteil der Bilder dieser Kategorie, die falsch klassifiziert wurden und als unbekannt klassifiziert wurden. Klassifikationen mit einer Sicherheit <70% werden als unbekannt interpretiert.
-
Der Bericht kann eine „Confusion Matrix“ umfassen. Es wird zudem angegeben, wieviel Prozent der noch nicht kategorisierten Bilder sicher vorhergesagt werden können (Sicherheit >70%). Dieser Wert wird im folgenden „Klassifikationsrate“ genannt. Ist die Klassifikationsrate zu niedrig (kleiner als der mittlere Recall), ist dies ein Hinweis darauf, dass der Anteil der bisher kategorisierten Bilder noch nicht ausreichend repräsentativ ist für die Gesamtmenge der zu erwartenden Bilder.
-
Im Bericht kann eine generierte Kategorie namens „Unknown“ angezeigt werden, für die ebenfalls die oben genannten Scores angegeben werden und die auch in der Confusion Matrix angezeigt wird. Diese Kategorie repräsentiert die Menge aller Bilder, die in #-Kategorien (Also zum Training explizit nicht verwendete Kategorien) einsortiert wurden. Die Erwartung für diese Bilder ist, dass sie als unbekannt klassifiziert werden. Da für diese Kategorie kein Train-Test Split notwendig ist, werden die Scores auf 100% der Bilder durchgeführt. In der Confusion Matrix werden die Werte mit einem Faktor z.B. 0.1 skaliert (z.B. 10%, entsprechend dem Train-Test Split), damit sie im korrekten Verhältnis zu den Werten für die anderen Kategorien stehen. Diese Art des Reports wird an anderer Stelle auch für die Bewertung und die Freigabe des final trainierten Models verwendet.
-
Die wichtigsten Probleme, auf die der Report Hinweise geben kann und die dann mit dem oben beschriebenen UI überprüft und korrigiert werden können sind:
- - Zwei ähnliche Kategorien wurden nicht konsequent genug voneinander abgegrenzt. (Nebendiagonalen der Confusion Matrix >> 0)
- - Es gab Fehler beim Kategorisieren. (Nebendiagonalen der Confusion Matrix > 0)
- - Es werden mehr Bilder für eine bestimmte Kategorie benötigt. (F1-Score ist niedrig)
- - Die Menge der bisher Kategorisierten Bilder ist noch nicht ausreichen repräsentativ für die Gesamtmenge der zu erwartenden Bilder.
-
(Klassifikationsrate ist zu niedrig)
-
Abhängig von den eben genannten Punkten kann der Anwender entsprechende Maßnahmen auswählen, um diese Probleme zu beheben, z.B. mehr Bilder labeln.
-
2 zeigt eine Ausführungsform eines erfindungsgemäßen Verfahrens 20 zum Erstellen eines Trainingsdatensatzes mit Unterstützung eines maschinellen Lernsystems 7.
-
Das Verfahren 20 beginnt mit einem Bereitstellen (S21) einer Mehrzahl von Bildern 1. Die Mehrzahl von Bilder können, wie zu 1 erläutert, in einer Halbleiterfabrik erfasst worden sein.
-
Daraufhin folgt ein Definieren S22 einer Mehrzahl von Kategorien für die bereitgestellten Bilder 1. Wie zu 1 erläutert, kann ein Experte oder Anwender des Verfahrens die Kategorien definieren.
-
Daraufhin folgt ein erstes Kategorisieren S23 einer ersten Menge der bereitgestellten Bilder 1, indem die Bilder der ersten Menge jeweils einer der Kategorien zugewiesen werden. Die Zuweisung kann durch den Experten oder Anwender des Verfahrens erfolgen.
-
Daraufhin folgt ein erstes Anlernen S24 das maschinelle Lernsystem 7 mit der ersten Menge der kategorisierten Bildern.
-
Daraufhin folgt ein Verarbeiten S25 einer zweiten Menge der Bilder mit dem maschinellen Lernsystem 7, wobei die zweite Menge mindestens nichtkategorisierte Bilder der bereitgestellten Bilder 1 umfasst.
-
Daraufhin folgt ein zweites Kategorisieren S26 der Bilder der zweiten Menge, die eine höchste Unsicherheit aufweisen, wobei die Unsicherheit abhängig von einer ermittelten Kategorisierung des maschinellen Lernsystems ermittelt wird. Wenn bspw. eine Klassifikation eindeutig ist, also wenn ein Eintrag eines Klassifkationsvektor sich deutlich von den weiteren Einträgen abhebt, dann ist eine hohe Sicherheit hinsichtlich der Klassifikation gegeben. Wenn dagegen die Einträge zueinander ähnlich sind, bspw. zueinander gering schwanken, liegt eine hohe Unsicherheit hinsichtlich der Klassifikation vor. D. h. diese Abweichungen der Einträge der Klassifikationsvektoren repräsentieren die Unsicherheit, die hierüber entsprechend ermittelt werden kann.
-
Optional kann ein zweites Anlernen S27 des maschinellen Lernsystems anhand aller kategorisierten Bilder aus dem ersten und zweiten Kategorisieren erfolgen.
-
Vorzugsweise werden die Schritte S25 bis S26 oder bis S27 mehrmals hintereinander ausgeführt.
-
3 zeigt schematisch eine Datenpipeline 500, die einen Bereitsteller 51 umfasst, der die Bilder aus der ersten und/oder zweiten Menge der Bilder aus den Schritten S23 und S26 bereitstellt. Eingangsbilder werden dem zu trainierenden maschinellen Lernsystem oder Ensemble von maschinellen Lernsystemen 52 zugeführt, dass hieraus die Kategorisierungen ermitteln. Kategorisierungen und Eingangsbilder werden einem Beurteiler 53 zugeführt, der hieraus aktualisierte Hyper-/Parameter ermittelt, die dem Parameterspeicher P übermittelt werden und dort die gegenwärtigen Parameter ersetzen. Der Beurteiler 53 ist bspw. eingerichtet, die Schritte des Anlernens S24 und S27 des Verfahren nach 1 auszuführen.
-
Die vom Trainingsvorrichtung 500 ausgeführten Verfahren können als Computerprogramm implementiert auf einem maschinenlesbaren Speichermedium 54 hinterlegt sein und von einem Prozessor 55 ausgeführt werden.
-
Der Begriff „Computer“ umfasst beliebige Geräte zur Abarbeitung vorgebbarer Rechenvorschriften. Diese Rechenvorschriften können in Form von Software vorliegen, oder in Form von Hardware, oder auch in einer Mischform aus Software und Hardware.