Aufrufe
vor 2 Monaten

PC & Industrie 5-2018

Fachzeitschrift für Industrielle Automation, Mess-, Steuer- und Regeltechnik

Qualitätssicherung Deep

Qualitätssicherung Deep Learning für die Qualitätskontrolle ist der spezifische Name, den der Hersteller dem Auto gegeben hat, wie z. B. Focus, Accord, Pathfinder, etc. Für Menschen ist das eine sehr einfache Aufgabe, besonders für Autoliebhaber. Ein Mensch kann Autos an gewissen Hauptmerkmalen wie z. B. Logos, Kühlerfiguren, Form oder Aufschrift, usw. erkennen. Für Computer war dies bisher aufgrund der visuellen Komplexität eine schwierige Aufgabe. Unser Verstand lässt visuelle Erfassung sehr einfach aussehen. Ein Mensch kann mühelos einen Panda von einem Eisbären unterscheiden, kann ein Schild lesen oder das Gesicht eines anderen Menschen erkennen oder Obst sortieren. Aber diese Aufgaben sind ziemlich schwierig mit einem Computer zu lösen. Es scheint nur für den Menschen so einfach, weil unser Verstand so exzellent darin ist Bilder zu verstehen. In den letzten Jahren hat Machine oder Deep Learning stark aufgeholt und ist mit neuen Algorithmen und verbesserter Rechenleistung diese Schwierigkeiten angegangen. Besonders durch das Modell Convolutional Neural Network (CNN), das vor allem in der industriellen Bildverarbeitung von großer Bedeutung ist, sind nun auch verwertbare Ergebnisse für schwierige visuelle Erkennungsaufgaben erhältlich, die nicht nur den menschlichen Fähigkeiten ähnlich sind, sondern diese auf manchen Gebieten auch übertreffen. Ein Beispiel dafür ist Make and Model. Make and Model – Autos erkennen besser als der Mensch? Hier geht es um die Erkennung von Automarke und -typ mit Hilfe industrieller Bildverarbeitung. „Make bezieht sich auf den Hersteller eines Fahrzeugs – den „Maker“, wie z.B.: Ford, Toyota, Honda usw. „Model“ Was leistet Make and Model? Es kann nicht „einfach nur“ Automarken erkennen und zwischen Audi und VW unterscheiden, es kann auch das Baujahr des selben Modells erkennen, etwas das für den Menschen auch sehr schwierig ist. Allerdings sehen nicht nur Autos der selben Marke ähnlich aus, sondern auch ähnliche Typen anderer Hersteller, beispielsweise die vielen Modelle der SUVs. Auch hier ist eine eindeutige Klassifizierung seitens des Systems möglich. Makeand-Model erkennt also nicht nur das Offensichtliche – wie Autos wie z. B. a Bugatti Veyron „Hypercar“, mit einem sehr speziellen Aussehen – sondern Unterschiede, die selbst für das menschliche Auge schwer zu erkennen sind. Fließhecks die z. B. bei Marken wie Nissan und Toyota sehr ähnlich aussehen, können immer noch unterschieden werden und das auch bei Bildaufnahmen von einer Straße mit vorbeifahrenden Autos, wie Autobahnen oder anderen vielbefahrenen Straßen. Die Erkennung ist auch möglich, wenn das System ein wesentliches Merkmal, beispielsweise das Logo nicht erkennen kann. Die Auswertung vieler eingelernter Merkmale Kurz gefasst Deep Learning gibt es schon länger, aber in den letzten Jahren ist es so leistungsfähig geworden, dass es bestimmte Aufgabenstellungen besser und fehlerfreier als der Mensch lösen kann. 24 PC & Industrie 5/2018

Qualitätssicherung Bild 1: Neurales Netzwerk: Layer L1 = Input Layer, L2/L3 = Hidden Layer, L4 = Output Layer macht es möglich, dass auf einzelne markante Details verzichtet werden kann, ohne das dies zu einem fehlerhaften Ergebnis führt. Bei der Identifikation des Baujahrs unterschiedlicher Modelle kommt der Mensch meist an seine Grenzen, auch Autoliebhaber. Wir können nicht mehr jedes Baujahr und Modell von jedem in Europa oder Asien oder USA fahrenden Auto identifizieren. Hier ist das System im Vorteil. Bild 2: Convolve over all spatial locations Wie kann Machine/ Deep Learning diese Unterschiede erkennen? Die größte Herausforderung ist es eine feinkörnige Klassifizierung zu erreichen und der Grund dafür sind unumstritten die feinen Unterschiede zwischen den unterschiedlichen Klassen. Um diese winzigen Unterschiede zu lernen ist ein sehr großer Datensatz notwendig. Man sollte bedenken, dass Deep Learning unter Bedingungen wie wenig Zeit, Rechenleistung, oder Daten, nicht durchzuführen ist. Machine Learning ist Lernen von Beispielen und Erfahrung welchen Algorithmen zugrunde liegen. Beispielsweise ist Transfer Learning eine Machine-Learning-Technik, welche die gelernten Klassifizierer für neue Aufgaben umwidmet. Transfer learning ist eine Methode, die sich die Lösung eines Problems merkt und das dadurch erlangte Wissen auf die Lösung verwandter Probleme überträgt. Beispielsweise kann das System nach dem Lernen von Automarken auch LKWs identifizieren. Für CNNs (Convolutional Neural Networks) wird ein Basisnetzwerk mit einem Basisdatensatz trainiert um Gewichtung und Eigenschaften zu generieren. Am Ende von Transfer Learning entsteht ein Klassifizierer, welcher auf den neuen Datensatz anwendbar ist. Dies bedeutet weniger Aufwand als ein komplettes Netzwerk neu einzulernen. Dieses durchaus leistungsfähige Tool kann ein großes Zielnetzwerk trainieren und gleichzeitig Data-Overfitting (Überanpassung) minimieren. Beim Trainingsprozess steigt die Erkenntnisleistung parallel zur Anzahl eingelernter Bilder. Ist die Sättigungsphase erreicht, nimmt die Erkenntnisleistung wieder ab, weil sich die Datenrepräsentation des Rechners zu sehr an die Trainingsdaten anpasst und nicht mehr an den zugrundeliegenden Formen orientiert. Dieser Prozess wird als Überanpassung bezeichnet. Selbstverständlich sind auch andere Techniken zum Trainieren anwendbar. Was sind Neural Networks oder auch Convolutional Neural Networks (CNN)? Neurale Netze sind die Basis für Machine/ Deep Learning mit mehreren Layern. Am besten stellt man sich eine Familie an Modellen vor, die sehr „loose“ vom menschlichen Gehirn inspiriert wurden, und Funktionen näherkommen die von einer großen Anzahl an Inputs abhängen. Bei Make and Model gilt je größer der Datensatz an klassifizierten Bildern ist desto besser. Ein Neurales Netz sind Beispiele von nichtlinearen Hypothesen, wo das Modell noch viel komplexere Beziehungen lernen kann zu klassifizieren. Statt dem Computer einzeln jede Möglichkeit der Automodelle einzulernen, wird das Machine Learning Programm einfach mit mehreren Tonnen an existierenden Bildern gefüttert. Ein Neuronales Netz wird durch künstliche Neuronen gebildet, die in Layern (Schichten) angeordnet sind. Dabei gibt es drei Arten von Layern: • Input Layer: sucht nach allen Pixeln in einem Bild • Hidden Layers: können gewissen Merkmale, Aspekte, Formen, Texturen, etc. erkennen • Output Layer Neurale Netze mit mehr als zwei „Hidden Layers“ können als Deep Neural Networks bezeichnet werden. Je mehr Layer desto komplexere Muster können erkannt werden. An einem Beispiel von zwei Layern kann man sich die Verbindungen zwischen den Neuronen als Muster vorstellen, welches gelernt wird. Unterschied zum menschlichen Gehirn Um ein riesiges Neuronales Netzwerk zu bilden und es Artificial Intelligents (AI) zu nennen, müssen u. a. folgende Punkte erfüllt werden: • Die künstlichen Neuronen funktionieren ganz anders als die Nervenzellen in einem Gehirn • Ein menschliches Gehirn hat 100 Milliarden Neuronen und 100 Billionen Verbindungen (Synapsen) und operiert mit ca. 20 Watt (genug um eine schwache Glühbirne zu betreiben) – im Vergleich dazu hat ein Neuronales Netz nur 10 Millionen Neuronen und 1 Mil- PC & Industrie 5/2018 25