-
Die Erfindung betrifft ein Verfahren sowie ein System zum Verbessern der Robustheit eines Algorithmus des maschinellen Lernens.
-
Angewendet werden derartige Algorithmen des maschinellen Lernens beispielsweise beim automatisierten, optischen Inspizieren mindestens eines Fertigungsbauteils. Das automatisierte, optische Inspizieren findet beispielsweise innerhalb einer Fertigungsstraße und/oder während der Fertigung des mindestens einen Fertigungsbauteils und/oder zur Qualitätskontrolle des mindestens einen Fertigungsbauteils Anwendung.
-
Algorithmen des maschinellen Lernens basieren darauf, dass Verfahren der Statistik verwendet werden, um eine Datenverarbeitungsanlage derart zu trainieren, dass diese eine bestimmte Aufgabe ausführen kann, ohne dass diese ursprünglich explizit hierzu programmiert wurde. Das Ziel des maschinellen Lernens besteht darin, Algorithmen zu konstruieren, die aus Daten lernen und Vorhersagen treffen können. Diese Algorithmen erstellen mathematische Modelle, mit denen beispielsweise Daten klassifiziert werden können.
-
Unter Robustheit wird weiter die Fähigkeit des Algorithmus des maschinellen Lernens verstanden, Veränderungen, beispielsweise Angriffen von außen, standzuhalten und/oder Fehler bei der maschinengestützten Bilderkennung zu vermeiden. Bezüglich Angriffen von außen wird allgemein zwischen einem White-Box-Angriff, bei dem der Angreifer Wissen über die Struktur des Algorithmus des maschinellen Lernens, über die Art des Trainingsverfahrens und über die vorliegenden Daten, mit denen der Algorithmus des maschinellen Lernens trainiert wird, hat, und einem Black-Box-Szenario, bei dem ein Angreifer dieses Wissen nicht hat, sondern nur die Eingabedaten und die Ergebnisse, die das Netzwerk dazu ausgibt, sieht, unterschieden. Weiterhin kann eine Robustheit des Algorithmus negativ beeinflusst sein, wenn beispielsweise in der Realität vorhandene Störgrößen nicht oder nur unzureichend in Trainingsdaten wiedergegeben sind, so dass der Algorithmus des maschinellen Lernens aus den Trainingsdaten das Ermitteln und/oder Erkennen dieser Störgrößen nicht erlernen kann.
-
Algorithmen des maschinellen Lernens, beispielsweise Deep-Learning Algorithmen für computergestützte Bilderkennung, werden im Regelfall anhand von Trainingsbilddaten trainiert. Im Folgenden wird in diesem Zusammenhang auch von einem Modelltraining (für einen Algorithmus des maschinellen Lernens) gesprochen. Durch die Trainingsbilddaten wird versucht, eine Vielzahl verschiedener Situationen und/oder Gegebenheiten und/oder potenzieller Störgrößen, die eine Bildererkennung beeinflussen können, abzubilden, so dass der Algorithmus des maschinellen Lernens anhand der Trainingsbilddaten diese Vielzahl von Situationen und/oder Gegebenheiten und/oder potenzielle Störgrößen vor seiner Realanwendung erlernen kann. Derart kann ein so trainierter Algorithmus während eines späteren Einsatzes Bilder mit einer hinreichenden Genauigkeit und Präzision erkennen, ohne dass diese auszuwertenden Bilder immer exakt dieselben Darstellungskonditionen erfüllen müssen.
-
Leider ist es aufgrund der Vielzahl von Störgrößen und aufgrund der Vielzahl potenzieller Anwendungsfälle, in denen derartige Bildauswertungsalgorithmen des maschinellen Lernens eingesetzt werden, nicht immer möglich, sämtliche potenziell und/oder situationsbedingt mögliche Störgrößen in den Trainingsdaten auf hinreichende Weise abzubilden, so dass der Algorithmus des maschinellen Lernens diese nicht immer unzweifelhaft erkennen kann. Dies wirkt sich negativ auf die Robustheit des Algorithmus des maschinellen Lernens aus. Dadurch reagieren bekannte Algorithmen des maschinellen Lernens, insbesondere im Bereich der optischen Inspektion, oftmals situationsbedingt sehr empfindlich auf gewisse Störgrößen, insbesondere auf solche, die von den in den Trainingsdaten explizit abgebildeten Störgrößen abweichen. Ein Beispiel kann auch aus dem Bereich des autonomen Fahrens angegeben werden, wo ein Algorithmus des maschinellen Lernens beispielsweise durch Veränderungen von Umgebungskonditionen, wie beispielsweise Regen, Schnee und/oder einem veränderten Lichteinfall, ein an sich bekanntes Szenario, beispielsweise eine Straße mit Autos, die seitlich gesäumt von Bäumen ist, aufgrund der veränderten Umgebungskonditionen fehlerhaft erkennt. Durch bekannte Verfahren zur Erhöhung der Robustheit können diese Fehler in der Szenerieerkennung vermindert werden. Hierbei wird im Normalfall einem Trainingsdatensatz von Bildern eine Vielzahl von Störgrößen hinzugefügt, um das Modell auf Basis dieses Datensatzes, der solche potenzielle Störgrößen umfasst, zu trainieren.
-
Somit spielt eine Verbesserung der Robustheit des Algorithmus des maschinellen Lernens gegenüber sämtlicher Störgrößen eine wichtige Rolle während der Trainingsphase des Algorithmus, insbesondere bevor dieser in einer realen Produktions- und/oder Fertigungslinie und/oder beim autonomen Fahren eingesetzt wird. Eine Möglichkeit zur Verbesserung der Robustheit ist eine gezielte Datenerweiterung von Trainingsdaten, um derart die Anzahl der durch den Algorithmus des maschinellen Lernens fehlerfrei erkennbaren Situationen und/oder Gegebenheiten und/oder potenzieller Störgrößen zu erhöhen.
-
Zu den bekannten Ansätzen zur Datenerweiterung, die während des Modelltrainings des Algorithmus des maschinellen Lernens verwendet werden, gehören unter anderem geometrische Transformationen, wie zum Beispiel eine Spiegelung und/oder eine Beschneidung und/oder eine Drehung von bereits vorhandenen Trainingsbildern und/oder eine Farbraumvergrößerung, insbesondere durch eine Anpassung eines Bildkontrastes in bestehenden Trainingsbildern und/oder eine Anwendung eines Kernel-Filters. Derart kann eine Anzahl an bereits vorhandenen Trainingsbildern deutlich vergrößert werden, indem leicht modifizierte Kopien bereits vorhandener Trainingsbilder bzw. Trainingsbilddaten oder neu erstellte synthetische Trainingsbilder aus vorhandenen Trainingsbildern hinzugefügt werden. Die ist im Stand der Technik als Datenaugmentierung bekannt. Beispielhafte Ansätze zur Datenaugmentierung sind Tensorflow-Verfahren, Verfahren zur Datenerweiterung mittels strukturierter adversarialer bzw. feindlicher Perturbationen und ähnliche.
-
Ebenfalls aus dem Stand der Technik bekannt sind Möglichkeiten zur Bewertung einer Modellrobustheit durch Simulation mehrerer feindlicher Angriffe auf den bereits trainierten oder noch zu trainierenden Algorithmus. Ein Beispiel für derartige Möglichkeiten ist beispielsweise eine Adversarial Attack bzw. ein feindlicher Angriff. Darunter ist im Kontext von Künstlicher Intelligenz (KI) bzw. Deep Learning die Verwendung von Adversarial Examples (zu Deutsch „feindliche Beispiele“) zur Manipulation der Klassifikationsergebnisse zu verstehen. Ein Adversarial Example ist ein speziell manipuliertes EingangsSignal in ein künstliches Neuronales Netzwerk, implementiert durch den Algorithmus des maschinellen Lernens, welches dieses/diesen absichtlich zu Fehlklassifikationen verleitet. Die Manipulation wird so vorgenommen, dass ein menschlicher Beobachter diese nicht bemerkt oder nicht als solche erkennt. Beispielsweise bei einem zur Objekterkennung trainierten neuronalen Netzwerk könnten die Pixel eines Bildes leicht verändert werden, sodass diese Veränderungen für Menschen nicht sichtbar sind, der Algorithmus des maschinellen Lernens die Objekte auf dem Bild jedoch falsch zuordnet. Ebenfalls ist ein Programm namens Robusta zur Bewertung der Robustheit eines Algorithmus des maschinellen Lernens bekannt.
-
Insbesondere bei der Verwendung von Algorithmus des maschinellen Lernens für die automatisierte, optische Inspektion (engl. Automated Optical Inspection, kurz AOI) von Fertigungsbauteilen ist im Vergleich zur Verwendung solcher Algorithmus für das autonome Fahren eine Einbeziehung sämtlicher, potenzieller Störgrößen während der Trainingsphase nahezu nicht möglich. Bei AOI-Anwendungsfällen sind die Fehler und/oder Störgrößen nämlich je nach Fertigungsverfahren und/oder Fertigungsart und/oder Fertigungsbauteil unterschiedlich. Beispielsweise ist ein Riss als Störgröße bei der Prüfung von Metalloberflächen sehr wichtig, wohingegen bei der Prüfung von Leiterplatten fehlende und/oder falsch platzierte Bauteile als kritisch angesehen werden. Wenn nun ein Algorithmus des maschinellen Lernens mit einer Reihe allgemeiner Datenerweiterungen trainiert wird, bleibt das Fachwissen darüber, welche Fehler und/oder Störgrößen für einen bestimmten AOI-Anwendungsfall am wichtigsten sind, unberücksichtigt. Zudem ist es in den meisten AOI-Anwendungsfällen schwierig vorherzusagen, wie anfällig ein bereits trainierter Algorithmus des maschinellen Lernens für eine jeweilige Störgröße ist.
-
Indem wir das trainierte Modell für jede Störung einzeln auswerten, können wir die Anfälligkeit des Modells für verschiedene Störungen verstehen. Auf der Grundlage des Domänenwissens aus jedem Anwendungsfall können wir projektspezifische Störungen auswählen und diese Teilmenge von Störungen als Datenerweiterung während des Modelltrainings verwenden. Diese Methode trägt dazu bei, die Robustheit des Modells gegenüber anwendungsfallspezifischen Störungen zu verbessern, und gewährleistet somit die Leistungsfähigkeit des Modells während der Anwendung.
-
Der Erfindung liegt somit die Aufgabe zugrunde ein gegenüber dem Stand der Technik optimiertes Verfahren und/oder System zum Verbessern der Robustheit eines Algorithmus des maschinellen Lernens insbesondere zum automatisierten, optischen Inspizieren mindestens eines Fertigungsbauteils anzugeben.
-
Die Aufgabe wird gelöst durch ein Verfahren gemäß den Merkmalen des Patentanspruchs 1. Ferner wird die Aufgabe gelöst durch ein System gemäß den Merkmalen des Patentanspruchs 11.
-
Offenbarung der Erfindung
-
Gemäß einer Ausführungsform der Erfindung wird diese Aufgabe gelöst durch ein Verfahren zum Verbessern der Robustheit eines Algorithmus des maschinellen Lernens insbesondere zum automatisierten, optischen Inspizieren mindestens eines Fertigungsbauteils. Der Algorithmus des maschinellen Lernens ist auf Basis von Trainingsbilddaten dazu trainiert, Bilddaten des mindestens einen Fertigungsbauteiles zu inspizieren, um derart Produktionsfehler und/oder Fehlstellen und/oder Bauteilfehler und/oder Fertigungsfehler und/oder sonstige Fehler an dem mindestens einen Fertigungsbauteil zu erkennen und/oder zu ermitteln. Auf Basis dessen kann beispielsweise eine Warnung und/oder ein Signal ausgegeben werden, ob ein Fertigungsbauteil vorbestimmte Kriterien erfüllt oder mangelhaft ist. Das Verfahren weist folgende Schritte auf: Analysieren der durch den trainierten Algorithmus des maschinellen Lernens inspizierten Trainingsbilddaten auf eine Genauigkeit und/oder Robustheit des Algorithmus des maschinellen Lernens bei der Erkennung mindestens einer bauteilspezifischen und/oder fertigungsspezifischen Störgröße, die in den inspizierten Trainingsbilddaten umfasst ist, jedoch ggf. durch den bereits trainierten Algorithmus bei der vorangehenden und/oder testweisen Bildauswertung nicht fehlerfrei oder ggf. nicht erkannt wurde; Erzeugen von erweiterten Trainingsbilddaten auf Basis der mindestens einen bauteilspezifischen und/oder fertigungsspezifischen Störgröße; und Nachtrainieren des Algorithmus des maschinellen Lernens auf Basis der erweiterten Trainingsbilddaten, wodurch die Genauigkeit des nachtrainierten Algorithmus des maschinellen Lernens bei der zukünftigen Erkennung der mindestens einen bauteilspezifischen und/oder fertigungsspezifischen Störgröße, und dadurch die Robustheit des Algorithmus des maschinellen Lernens verbessert ist
-
Unter Bilddaten und/oder Trainingsbilddaten werden Daten verstanden, welche mit Hilfe eines speziellen Programmes als Bild beziehungsweise Grafik wiedergegeben werden können. Dass ein Objekt, wie beispielsweise ein Fertigungsbauteil, in Bilddaten repräsentiert ist, bedeutet ferner, dass die entsprechenden Bilddaten das Objekt zumindest teilweise und/oder zumindest ausschnittsweise zeigen und/oder eine Darstellung des Objektes aufweisen.
-
Das Analysieren der durch den trainierten Algorithmus des maschinellen Lernens inspizierten Trainingsbilddaten auf eine Genauigkeit und/oder Robustheit des Algorithmus des maschinellen Lernens bei der Erkennung mindestens einer situationsspezifischen und/oder bauteilspezifischen und/oder fertigungsspezifischen Störgröße kann mithilfe eines Computerprogrammes, das einen Bildanalysecode umfasst und/oder mithilfe von menschlichem Fachwissen und/oder mithilfe von Expertenwissen und/oder mithilfe von historischen, bereits auf eine spezifische Störgröße und/oder einen spezifischen Fehler ausgewertete Bilddaten erfolgen. Mit anderen Worten erfolgt erfindungsgemäß ein Analysieren und/oder ein Testen der Modellleistung, d.h. der Modell-Genauigkeit und/oder der Modell-Ausweichrate, über eine Reihe von (Bild-) Störgrößen und/oder (Bild-) Fehlern. Auf Basis der Analyse erfolgt vorzugsweise eine Auswahl der relevantesten Störgrößen und/oder Fehler für den spezifischen AOI-Anwendungsfall unter Einbeziehung eines Domänenwissens. Die mindestens eine ausgewählte Störgrößen und/oder der mindestens eine ausgewählte Fehler wird dazu verwendet, störgrößenspezifische und/oder fehlerspezifische erweiterte Trainingsbilddaten zu erzeugen. Durch die Datenergänzung kann ein Nachtrainieren des bereits trainierten Modells bzw. Algorithmus erfolgen, wodurch die Modellrobustheit verbessert wird.
-
Es versteht sich, dass das Verfahren und/oder System und/oder der erfindungsgemäße insbesondere trainierte Algorithmus des maschinellen Lernens auch in anderen Anwendungsgebieten, beispielsweise bei Anwendungen des autonomen oder teilautonomen Fahrens verwendet werden kann, insofern beispielsweise situationsspezifische und/oder umweltspezifische und/oder fahrzeugspezifische Störgrößen und/oder Fehler auftreten, die von den in den Trainingsbilddaten umfassten, oftmals standardisierten Störgrößen und/oder Fehlern abweichen. Ebenfalls kann das Verfahren und/oder System und/oder der insbesondere trainierte Algorithmus des maschinellen Lernens bei medizinischen und/oder chirurgischen und/oder plastischen Bildauswertungen angewendet werden.
-
Die automatische optische Inspektion beschreibt Systeme, die mittels Bildverarbeitungsverfahren Fehler in der Produktion und in anderen Gütern finden und melden können. Sie sind eine Weiterentwicklung des maschinellen Sehens.
-
Mit anderen Worten betrifft die vorliegende Erfindung den Kontext eines domänenübergreifenden und/oder anwendungsfallübergreifenden Augmentierens und/oder Erweiterns von Trainingsbilddaten um situationsspezifische und/oder fertigungsspezifische und/oder bauteilspezifische Störgrößen und/oder Fehler, durch die die Robustheit des Algorithmus des maschinellen Lernens negativ beeinflusst werden könnte. Dabei befasst sich die Erfindung besonders mit Algorithmen, die für die automatisierte optische Inspektion verwendet werden. Im Kern wird erfindungsgemäß vorgeschlagen, dass ein trainierter Algorithmus des maschinellen Lernens unterschiedlichen, insbesondere störgrößenspezifischen Trainingsdatenerweiterungen ausgesetzt und derart nach störgrößenspezifisch nachtrainiert wird. Hierdurch werden situationsspezifische und/oder fertigungsspezifische und/oder bauteilspezifische Störgrößen und/oder Fehler, die die Robustheit und/oder Leistungsfähigkeit des Algorithmus bei der späteren Erkennung von Bilddaten im realen Anwendungsfall negativ beeinflussen würden, dem Algorithmus antrainiert.
-
Das erfindungsgemäße Verfahren und/oder System hat/haben den Vorteil, dass es für eine Vielzahl von unterschiedlichen Anwendungsfällen verwendet werden kann, wohingegen die bekannten Methoden zur Verbesserung der Robustheit anwendungsabhängig sind.
-
Indem der bereits trainierte Algorithmus des maschinellen Lernens bzw. das bereits trainierte Modell für jede Störgröße und/oder für jeden Fehler einzeln analysiert und/oder auswertet wird, kann die Anfälligkeit des Modells für verschiedene situationsspezifische und/oder fertigungsspezifische und/oder bauteilspezifische Störgrößen und/oder Fehler nachvollzogen und beim Nachtrainieren des Modells entsprechend berücksichtigt werden. Ist das Modell bei einer bestimmten situationsspezifischen und/oder fertigungsspezifischen und/oder bauteilspezifischen Störgröße und/oder einem bestimmten situationsspezifischen und/oder fertigungsspezifischen und/oder bauteilspezifischen Fehler beispielsweise besonders anfällig, kann für diese Störgröße und/oder diesen Fehler eine Vielzahl von störgrößenspezifischen und/oder fehlerspezifischen Trainingsbilddaten erzeugt bzw. augmentiert werden. Auf der Grundlage eines Hintergrundwissens und/oder eines Domänenwissens über die Fertigung und/oder das Fertigungsbauteil können in jedem Fertigungsfall und/oder für jedes Fertigungsbauteil situationsspezifische und/oder fertigungsspezifische und/oder bauteilspezifische Störgrößen und/oder Fehler ausgewählt und diese Teilmenge von Störgrößen und/oder Fehlern jeweils in Form von erweiterten Trainingsbilddaten bzw. als Datenerweiterung während eines Nachtrainierens des bereits trainierten Modells verwendet werden. Die erfindungsgemäße Methode trägt dazu bei, die Robustheit des Modells bzw. des Algorithmus des maschinellen Lernens gegenüber situationsspezifischen und/oder fertigungsspezifischen und/oder bauteilspezifischen Störgrößen zu verbessern, und gewährleistet somit eine erhöhte Leistungsfähigkeit des Modells während der realen Anwendung.
-
Im Vergleich bekannten Verfahren zur Steigerung und/oder Bewertung der Robustheit eines Algorithmus des maschinellen Lernens konzentriert sich das erfindungsgemäße Verfahren und System nicht nur auf allgemein auftretende Störgrößen, sondern erstellt erweiterte Trainingsbilddaten für jede situationsspezifische und/oder fertigungsspezifische und/oder bauteilspezifische Störgröße, die die Genauigkeit und/oder Leistungsfähigkeit und/oder Robustheit des Algorithmus negativ beeinflusst. Da die erfindungsgemäß einbezogenen Störgrößen auf die einzelnen Anwendungsfälle zugeschnitten sind, kann so das Risiko eines Leistungsabfalls des Modells während der späteren Einsatzphase verringert werden.
-
In einer weiteren Ausführungsform der Erfindung weist der Schritt des Erzeugens von erweiterten Trainingsbilddaten ein Modifizieren einer Darstellung der mindestens einen bauteilspezifischen und/oder fertigungsspezifischen Störgröße in den Trainingsbilddaten durch ein Anwenden eines Bildverarbeitungsalgorithmus auf. Ein derartiger Bildverarbeitungsalgorithmus kann basierend auf der bauteilspezifischen und/oder fertigungsspezifischen Störgröße eine geometrische Transformation, insbesondere ein Spiegeln und/oder ein Beschneiden und/oder ein Drehen, und/oder eine Farbraumvergrößerung, insbesondere ein Anpassen und/oder Veränderung eines Bildkontrasts und/oder ein Anwenden eines Kernel-Filters auf mindestens eine Trainingsbilddatei, bevorzugt auf mehrere Trainingsbilddaten anwenden. Derart können die erweiterten Trainingsbilddaten erzeugt werden.
-
Alternativ oder ergänzend können die, insbesondere störgrößenspezifischen und/oder fehlerspezifischen erweiterten Trainingsbilddaten mit Hilfe von GANs (Generative adversarial networks) oder mit Tools, wie https-//snorpey.github.io/jpg-glitch/ erzeugt werden. Derartige erweiterte Trainingsbilddaten umfassen dann die spezifische Störgröße(n) und/oder den spezifischen Fehler(n), die/der von einem erzeugten Trainingsbild zu einem weiteren erzeugen Trainingsbild in ihrer/seiner Bilddarstellung geringfügig manipuliert ist. Dadurch kann der Algorithmus des maschinellen Lernens beim Nachtrainieren die Störgröße und/oder den Fehler in diversen Abwandlungen lernen zu erkennen.
-
In einer weiteren Ausführungsform der Erfindung umfassen die Trainingsbilddaten Sensordaten, die durch mindestens einen innerhalb einer Fertigungs- und/oder Produktionslinie angeordneten, optischen Sensor von dem Fertigungsbauteil erfasst sind.
-
Unter einem optischen Sensor, welcher auch als Detektor, (Messgrößen- oder Mess-)Aufnehmer oder (Mess-)Fühler bezeichnet wird, wird ein technisches Bauteil verstanden, das physikalische und/oder chemische Eigenschaften und/oder eine Beschaffenheit des mindestens einen Fertigungsbauteils und/oder einer Fertigungsumgebung und/oder eines Fertigungsschrittes optisch qualitativ und/oder quantitativ, insbesondere als Bilddaten erfassen kann. Der Sensor kann ausgebildet sein, Daten über das mindestens eine Fertigungsbauteil zu erfassen. Der optische Sensor kann eine Kamera und/oder einen Ultraschallsensor und/oder einen Lidar-Sensor und/oder einen Infrarotsensor und/oder einen sonstigen optischen Sensor umfassen.
-
In einer weiteren Ausführungsform der Erfindung wird das Verfahren für eine Vielzahl unterschiedlicher, bauteilspezifischer und/oder fertigungsspezifischer Störgröße wiederholt durchgeführt, um derart die Robustheit des Algorithmus des maschinellen Lernens wiederholt zu verbessern. So kann sichergestellt werden, dass die Robustheit des Algorithmus des maschinellen Lernens über eine Reihe von Störgrößen und/oder Fehlern optimiert wird, und nicht lediglich das Erkennen einer einzigen Störgröße und/oder eines einzigen Fehlers durch Nachtrainieren dem Algorithmus angelernt wird.
-
In einer weiteren Ausführungsform der Erfindung werden für jede bauteilspezifische und/oder fertigungsspezifische Störgröße jeweils erweiterte Trainingsbilddaten erzeugt, durch die eine Anzahl von für den Algorithmus des maschinellen Lernens verfügbaren Trainingsbilddaten mit jeder bauteilspezifischen und/oder fertigungsspezifischen Störgröße erweitert und/oder vergrößert wird. Durch jeden Datensatz an erweiterten Trainingsbilddaten kann ein Nachtrainieren des Modells bzw. des Algorithmus des maschinellen Lernens erfolgen, wodurch dieses/dieser immer weiter optimiert wird.
-
In einer weiteren Ausführungsform der Erfindung umfasst die bauteilspezifische und/oder fertigungsspezifische Störgröße mindestens einen Fertigungsbauteilfehler und/oder einen Produktionsfehler und/oder einen Fertigungsfehler und/oder einen durch die Fertigung und/oder Produktion ausgelösten Effekt. Auch andere Störgrößen, beispielsweise umweltbedingte und/oder umgebungsbedingte Störgrößen und/oder Fehler sind möglich. Beispielsweise kann/können Staub und/oder Schmutz und/oder Fremdpartikel, die sich auf einem Fertigungsbauteil ungewünscht ablagern, eine derartige Störgröße darstellen.
-
Unter standardmäßigen Störgrößen, die nicht notwendigerweise situationsspezifische und/oder bauteilspezifisch und/oder fertigungsspezifisch sind, wird beispielsweise eine abweichende Belichtung und/oder Farbgebung und/oder eine Darstellungswinkel-Veränderung und/oder ein Perspektivenwechsel und/oder eine Unschärfe und/oder eine Fehlfokussierung und/oder vorbestimmte Bauteilabweichungen, beispielsweise Fertigungstoleranzen, verstanden. Derartige Störgrößen und/oder Fehler sind bereits in den ursprünglichen Trainingsbilddaten umfasst um müssen durch den Algorithmus des maschinellen Lernens nicht notwendigerweise nachtrainiert werden. Für die korrekte Erkennung dieser Störgrößen und/oder Fehler ist der Algorithmus vorzugsweise bereits auf Basis der ursprünglichen Trainingsbilddaten trainiert.
-
In einer weiteren Ausführungsform der Erfindung umfasst der Schritt des Analysierens der durch den trainierten Algorithmus des maschinellen Lernens inspizierten Trainingsbilddaten mindestens eine Anwendung eines analytischen und/oder statistischen Algorithmus auf die Trainingsbilddaten umfasst. Alternativ oder ergänzend kann ein Analysieren auf Basis von historischen Daten und/oder durch Bildvergleich und/oder durch Einbeziehung von Expertenwissen erfolgen.
-
In einer weiteren Ausführungsform der Erfindung umfasst der Algorithmus des maschinellen Lernens ein Deep-Learning-Modell zur computergestützten Bilderkennung. Auch andere Modelle der künstlichen Intelligenz sind denkbar.
-
In einer weiteren Ausführungsform der Erfindung gehen dem Schritt des Erzeugens der erweiterten Bilddaten, mindestens die folgenden Schritte voraus: Auswählen der mindestens einen bauteilspezifischen und/oder fertigungsspezifischen Störgröße aus einem Datensatz, in dem eine Vielzahl von Störgrößen für unterschiedliche Fertigungsbauteile und/oder Fertigungsschritte und/oder Fertigungsabläufe hinterlegt sind, und Anwenden der mindestens einen bauteilspezifischen und/oder fertigungsspezifischen Störgröße auf die Trainingsbilddaten. Der Datensatz basiert vorzugsweise auf einem situationsspezifischen und/oder bauteilspezifischen und/oder fertigungsspezifischen Domänenwissens und/oder Fachwissens und/oder Expertenwissens. Das Auswählen kann eine oder mehrere störgrößenspezifische und/oder fehlerspezifische Gewichtungen einbeziehen und/oder darauf basieren, welche Störgröße durch den trainierten Algorithmus des maschinellen Lernens (der noch nicht nachtrainiert ist) besonders fehlerhaft erkannt wird oder gar vollkommen unerkannt bleibt.
-
In einer weiteren Ausführungsform der Erfindung wird ein System zum Verbessern der Robustheit eines Algorithmus des maschinellen Lernens insbesondere zum automatisierten, optischen Inspizieren mindestens eines Fertigungsbauteils angegeben. Der Algorithmus des maschinellen Lernens ist auf Basis von Trainingsbilddaten dazu trainiert, Bilddaten des mindestens einen Fertigungsbauteiles zu inspizieren, um derart Produktionsfehler und/oder Bauteilfehler und/oder Fertigungsfehler zu erkennen. Das System ist ausgebildet, ein Verfahren zum Verbessern der Robustheit eines Algorithmus des maschinellen Lernens insbesondere zum automatisierten, optischen Inspizieren mindestens eines Fertigungsbauteils nach mindestens einer der vorstehend genannten Ausführungsformen auszuführen. Die zu dem Verfahren gemachten Ausführungen gelten in gleicher Weise für das System.
-
In einer weiteren Ausführungsform der Erfindung ist ein Computerprogramm mit Programmcode beansprucht, um ein Verfahren zum Verbessern der Robustheit eines Algorithmus des maschinellen Lernens insbesondere zum automatisierten, optischen Inspizieren mindestens eines Fertigungsbauteils nach mindestens einer der vorstehend genannten Ausführungsformen auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird. Die zu dem Verfahren und/oder System gemachten Ausführungen gelten in gleicher Weise für das Computerprogramm. An dieser Stelle wird auf weitere Ausführungen verzichtet.
-
In einer weiteren Ausführungsform der Erfindung ist ein computerlesbarer Datenträger mit Programmcode eines Computerprogramms beansprucht, um ein Verfahren zum Verbessern der Robustheit eines Algorithmus des maschinellen Lernens insbesondere zum automatisierten, optischen Inspizieren mindestens eines Fertigungsbauteils nach mindestens einer der vorstehend genannten Ausführungsformen auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird. Die zu dem Verfahren und/oder System gemachten Ausführungen gelten in gleicher Weise für den computerlesbaren Datenträger. An dieser Stelle wird auf weitere Ausführungen verzichtet.
-
Die beschriebenen Ausgestaltungen und Weiterbildungen lassen sich beliebig miteinander kombinieren.
-
Weitere mögliche Ausgestaltungen, Weiterbildungen und Implementierungen der Erfindung umfassen auch nicht explizit genannte Kombinationen von zuvor oder im Folgenden bezüglich der Ausführungsbeispiele beschriebenen Merkmalen der Erfindung.
-
Kurze Beschreibung der Zeichnungen
-
Die beiliegenden Zeichnungen sollen ein weiteres Verständnis der Ausführungsformen der Erfindung vermitteln. Sie veranschaulichen Ausführungsformen und dienen im Zusammenhang mit der Beschreibung der Erklärung von Prinzipien und Konzepten der Erfindung.
-
Andere Ausführungsformen und viele der genannten Vorteile ergeben sich im Hinblick auf die Zeichnungen. Die dargestellten Elemente der Zeichnungen sind nicht notwendigerweise maßstabsgetreu zueinander gezeigt.
-
Es zeigen:
- 1 ein Flussdiagramm zum Verbessern der Robustheit eines Algorithmus des maschinellen Lernens insbesondere zum automatisierten, optischen Inspizieren mindestens eines Fertigungsbauteils gemäß Ausführungsformen der Erfindung; und
- 2 ein schematisches Blockschaltbild eines Systems zum Verbessern der Robustheit eines Algorithmus des maschinellen Lernens insbesondere zum automatisierten, optischen Inspizieren mindestens eines Fertigungsbauteils gemäß Ausführungsformen der Erfindung.
-
In den Figuren der Zeichnungen bezeichnen gleiche Bezugszeichen gleiche oder funktionsgleiche Elemente, Bauteile oder Komponenten, soweit nichts Gegenteiliges angegeben ist.
-
1 zeigt ein Verfahren 1 zum Verbessern der Robustheit eines Algorithmus des maschinellen Lernens insbesondere zum automatisierten, optischen Inspizieren mindestens eines Fertigungsbauteils. Der Algorithmus des maschinellen Lernens ist auf Basis von Trainingsbilddaten dazu trainiert, Bilddaten des mindestens einen Fertigungsbauteiles zu inspizieren, um derart Produktionsfehler und/oder Bauteilfehler und/oder Fertigungsfehler und/oder sonstige Fehler zu erkennen. Diese Bilderkennung wird auch als Automated Optical Inspection (AOI) bezeichnet.
-
Das Verfahren 1 umfasst zumindest folgende Schritte.
-
In einem Schritt S1 erfolgt ein Analysieren der durch den trainierten Algorithmus des maschinellen Lernens inspizierten Trainingsbilddaten auf eine Genauigkeit des Algorithmus des maschinellen Lernens bei der Erkennung mindestens einer situationsspezifischen und/oder bauteilspezifischen und/oder fertigungsspezifischen Störgröße, die in den inspizierten Trainingsbilddaten umfasst ist, jedoch durch den Algorithmus bei der Bildauswertung nicht fehlerfrei oder ggf. nicht erkannt wurde. Der Schritt des Analysierens S1 der durch den trainierten Algorithmus des maschinellen Lernens inspizierten Trainingsbilddaten kann mindestens eine Anwendung eines analytischen und/oder statistischen Algorithmus auf die Trainingsbilddaten umfassen.
-
In einem rein optionalen Schritt S2 erfolgt ein Auswählen der mindestens einen situationsspezifischen und/oder bauteilspezifischen und/oder fertigungsspezifischen Störgröße aus einem Datensatz, in dem eine Vielzahl von Störgrößen für unterschiedliche Fertigungsbauteile und/oder Fertigungsschritte und/oder Fertigungsabläufe hinterlegt sind.
-
In einem ebenfalls rein optionalen Schritt S3 erfolgt ein Anwenden der mindestens einen situationsspezifischen und/oder bauteilspezifischen und/oder fertigungsspezifischen Störgröße auf die Trainingsbilddaten.
-
In einem Schritt S4 erfolgt ein Erzeugen von erweiterten Trainingsbilddaten auf Basis der mindestens einen bauteilspezifischen und/oder fertigungsspezifischen Störgröße. Der Schritt des Erzeugens S4 von erweiterten Trainingsbilddaten kann ein Modifizieren einer Darstellung der mindestens einen situationsspezifischen und/oder bauteilspezifischen und/oder fertigungsspezifischen Störgröße in den Trainingsbilddaten durch ein Anwenden eines Bildverarbeitungsalgorithmus aufweisen. Ein derartiger der Bildverarbeitungsalgorithmus kann basierend auf der situationsspezifischen und/oder bauteilspezifischen und/oder fertigungsspezifischen Störgröße eine geometrische Transformation, insbesondere ein Spiegeln und/oder ein Beschneiden und/oder ein Drehen, und/oder eine Farbraumvergrößerung, insbesondere ein Anpassen und/oder Veränderung eines Bildkontrasts und/oder ein Anwenden eines Kernel-Filters auf die Trainingsbilddaten anwenden, um derart die erweiterten Trainingsbilddaten zu erzeugen.
-
In einem Schritt S5 erfolgt ein Nachtrainieren des Algorithmus des maschinellen Lernens auf Basis der erweiterten Trainingsbilddaten, wodurch die Genauigkeit des nachtrainierten Algorithmus des maschinellen Lernens bei der zukünftigen Erkennung der mindestens einen bauteilspezifischen und/oder fertigungsspezifischen Störgröße, und dadurch die Robustheit des Algorithmus des maschinellen Lernens verbessert ist.
-
In 2 ist ein System 10 zum Verbessern der Robustheit eines Algorithmus des maschinellen Lernens insbesondere zum automatisierten, optischen Inspizieren mindestens eines Fertigungsbauteils schematisch gezeigt. Der Algorithmus des maschinellen Lernens ist auf Basis von Trainingsbilddaten dazu trainiert, Bilddaten in der Realanwendung des mindestens einen Fertigungsbauteiles zu inspizieren, um derart Produktionsfehler und/oder Bauteilfehler und/oder Fertigungsfehler zu erkennen.
-
Das System 10 ist dazu ausgebildet, das vorstehend beschriebene Verfahren zum Verbessern der Robustheit eines Algorithmus des maschinellen Lernens insbesondere zum automatisierten, optischen Inspizieren mindestens eines Fertigungsbauteils in jeglicher Ausführungsform des Verfahrens auszuführen.
-
Wie in 2 dargestellt, umfasst das insbesondere mit einer rückführenden Ausgabe/Eingabe (d.h. als Schleife) ausgebildete System 10 mindestens zwei Eingänge 12. Einer der Eingänge 12 ist durch einen bereits trainierten Algorithmus 14 des maschinellen Lernens bestimmt. Ein anderer der Eingänge 12 ist durch mindestens einen Satz oder mehreren Sätze von insbesondere gestörten, erweiterten Trainingsbilddaten 16 ausgebildet, die auf Basis mindestens einen situationsspezifischen und/oder bauteilspezifischen und/oder fertigungsspezifischen Störgröße erzeugt wurden.
-
Der bereits trainierte Algorithmus 14 des maschinellen Lernens wertet die erweiterten Trainingsbilddaten 16 aus, und versucht beispielsweise bestimmte Störgrößen und/oder Fehler in den Trainingsbilddaten 16 korrekt zu erkennen.
-
Nach der Auswertung durch den Algorithmus erfolgt eine Analyse 18 der durch den trainierten Algorithmus 14 des maschinellen Lernens inspizierten Trainingsbilddaten 16 auf eine Genauigkeit des Algorithmus 14 des maschinellen Lernens bei der Erkennung mindestens einer situationsspezifischen und/oder bauteilspezifischen und/oder fertigungsspezifischen Störgröße 20, die in den inspizierten Trainingsbilddaten 16 umfasst ist. In dem Gezeigten Diagramm (siehe mittig in 2) sind die verschiedenen Störgrößen 20 als jeweilige Balken auf der Abszisse angezeigt. Auf der Ordinate ist eine Genauigkeit 22 und/oder Erkennungsrate und/oder Fehlerrate für jede Störgröße 20 für eine korrekte und/oder fehlerfrei Auswertung der jeweiligen Störgröße 20 angezeigt. Nachfolgend kann eine nicht näher gezeigte Auswahl von Störgrößen 20', die für den spezifischen Anwendungsfall am relevantesten sind und für die der Algorithmus fehleranfällig ist, erfolgen. Die ausgewählten Störgrößen 20` können dann auf die Trainingsbilddaten angewendet werden, um erweiterte Trainingsbilddaten 16` auf Basis der mindestens einen situationsspezifischen und/oder bauteilspezifischen und/oder fertigungsspezifischen ausgewählten Störgröße 20`. Die Erzeugung der Trainingsbilddaten erfolgt vorzugsweise mittels Techniken der Datenaugmentierung.
-
Basierend auf den derart erzeugten erweiterten Trainingsbilddaten erfolgt das Nachtrainieren S5 des Algorithmus 14 des maschinellen Lernens auf Basis der erweiterten Trainingsbilddaten 16`, wodurch die Genauigkeit des nachtrainierten Algorithmus 14 des maschinellen Lernens bei der zukünftigen Erkennung der mindestens einen situationsspezifischen und/oder bauteilspezifischen und/oder fertigungsspezifischen Störgröße 20', und dadurch die Robustheit des Algorithmus 14 des maschinellen Lernens verbessert ist.
-
Zum besseren Verständnis sind in 2 die Verfahrensschritte ebenfalls angezeigt. Das Verfahren 1 kann vorzugsweise mehrfach, insbesondere als Dauerschleife ausgeführt werden, so dass in einer nächsten Abfolge des Verfahrens 1 aus der in 2 gezeigten Eingabe der Trainingsbilddaten 16 die erweiterten Trainingsbilddaten 16' werden, die dann wiederum verfahrensgemäß um mindestens eine weitere Störgröße und/oder um einen weiteren Fehler durch Datenaugmentierung erweitert werden. Das Verfahren kann so lange wiederholt werden, bis das Modell bzw. der Algorithmus 14 die angestrebte Leistung bei der Analyse der Trainingsbilddaten in Abhängigkeit einer jeweiligen Störgröße und/oder eines jeweiligen Fehlers erreichen kann.
-
Es versteht sich, dass die Trainingsbilddaten 16 ggf. bereits durch das erfindungsgemäße Verfahren als erweiterte Trainingsbilddaten erzeugt wurden und es sich nicht notwendigerweise um die ursprünglichen Trainingsbilddaten handeln muss. So kann beispielsweise für die Trainingsbilddaten 16 bereits in einer vorherigen Durchführung des Verfahrens 1 mindestens eine Störgröße 20` ausgewählt worden sein, auf deren Basis die ursprünglichen oder ebenfalls bereits erweiterten Trainingsbilddaten 16 erweitert wurden.