Anzeige

Deep Learning bringt Machine Vision auf das nächste Level

Deep Learning ist eine der Schlüsseltechnologien für künftige Entwicklungen im Bereich des rechnergestützten Sehens. Wir sprachen mit Jeff Bier, dem Gründer der Embedded Vision Alliance, über die Möglichkeiten von Deep Learning, den Einfluss dieser Technologie auf das rechnergestützte Sehen und das erste Deep Learning-Training in Deutschland, das die Embedded Vision Alliance auf Basis des Open Source Frameworks TensorFlow von Google durchführt.

Bild: Embedded Vision AllianceBild: Embedded Vision Alliance

Deep Learning scheint derzeit eine Art magischer Begriff in der Welt des rechnergestützten Sehens zu sein. Können Sie diese Technologie kurz beschreiben?

Jeff Bier: Klassische Algorithmen für die optische Erkennung werden häufig noch von Grund auf von Ingenieuren für sehr spezifische Aufgaben entwickelt. Um zum Beispiel bestimmte Typen von Objekten zu identifizieren spezifizieren die Entwickler von Algorithmen typischerweise kleine Objektmerkmale wie z.B. Ecken oder Kanten, die durch den Algorithmus dann erkannt werden sollen. Danach geben die Entwickler vor, wie Gruppen dieser kleinen Merkmale dazu verwendet werden können, um größere Merkmale zu identifizieren, und so weiter. Solche Ansätze funktionieren sehr gut, solange die zu erkennenden Objekte sehr ähnlich und die Bedingungen für die Erkennung günstig sind. Ein Beispiel dafür ist, wenn Flaschen auf einer Abfüllanlage daraufhin überprüft werden, ob die richtigen Etiketten auf korrekte Weise angebracht wurden. Derartige Ansätze erweisen sich allerdings häufig als problematisch, sobald die Randbedingungen schwieriger werden, also wenn z.B. die Prüfobjekte deformiert sein können, wenn es signifikante Variationen des Aussehens von einem zum nächsten Objekt geben kann, oder wenn die Beleuchtungssituation nicht optimal ist. Auf Basis der jüngsten Weiterentwicklungen bei Prozessoren und Sensoren kann man davon ausgehen, das Algorithmen heute den Flaschenhals bei der Entwicklung von effektiven 'sehenden Maschinen' darstellen. Tiefe neuronale Netze stellen einen völlig anderen Ansatz für die optische Erkennung dar, und nicht nur dafür, denn diese Technologie kommt auch in vielen anderen Bereichen zum Einsatz. Kurz gesagt: Statt einer Maschine zu 'sagen', wie sie Objekte erkennen soll ('suche erst nach Ecken, dann nach Kanten, die einen Kreis bilden könnten' etc.) ist es mit künstlichen neuronalen Netzen möglich, Algorithmen zu 'trainieren', indem man ihnen eine große Anzahl von Beispielen zeigt und dann eine Feedback-Prozedur nutzt, die automatisch und auf Basis der Beispiele die Funktionalität des Algorithmus adaptiert. Etwas spezifischer gesagt: Convolutional Neural Networks sind massive parallele Algorithmen, die aus mehrlagigen Berechnungsknoten bzw. 'Neuronen' bestehen. Solche Netze führen keine Programme aus. Statt dessen wird ihr Verhalten bestimmt durch ihre Struktur (was ist womit verbunden), die Möglichkeit einfacher Berechnungen, die jeder Knoten durchführt, und Koeffizienten oder Gewichtungen, die durch eine Anlernprozedur bestimmt werden. Anstatt also zum Beispiel zu versuchen, Hunde von Katzen zu unterscheiden, indem man schrittweise eine Art Rezept anwendet, lernt ein Convolutional Neural Network diese Kategorisierung durch das Zeigen einer großen Anzahl von Beispielbildern. Drei Dinge machen diesen Ansatz nun sehr spannend:

1) In vielen Bereichen der Bilderkennung übertreffen tiefe neuronale Netze die Genauigkeit der bislang leistungsfähigsten Techniken erheblich.

2) Das Tempo, mit dem sich die Genauigkeit tiefer neuronaler Netze bei optischen Erkennungsaufgaben verbessert, ist wesentlich höher als alles, was wir im Bereich klassischer Techniken bisher gesehen haben.

3) Mit tiefen neuronalen Netzen können wir eine Reihe allgemeiner Techniken anwenden, um eine Vielzahl optischer Erkennungsaufgaben zu lösen. Das ist ein großer Fortschritt im Vergleich zu klassischen Techniken, wo viele verschiedene Typen von Algorithmen verwendet werden, um unterschiedliche Aufgaben zu lösen.

Wie können Entwickler aus dem Bereich des rechnergestützten Sehens von dieser Technologie profitieren?

Bier: Tiefe neuronale Netze liefern in vielen Bereichen der visuellen Erkennung exzellente Ergebnisse, z.B. bei der Erkennung von Gesichtern und Objekten oder auch beim Thema optischer Fluss. Selbst sehr anspruchsvolle Aufgabenstellungen wie das Lesen von Lippen führen beim Einsatz solcher Algorithmen zu vielversprechenden Ergebnissen. Aus diesen Gründen sollten Entwickler, die sich mit der Lösung schwieriger Bilderkennungsaufgaben befassen, Techniken aus dem Bereich der tiefen neuronalen Netze als mögliche Basis für ihre Arbeit unbedingt in Betracht ziehen.

Welche Applikationen oder Systeme können dazu führen, dass die Nutzung von Deep Learning-Technologien neue Märkte für das rechnergestützte Sehen erschließt?

Bier: Bisher war das rechnergestützte Sehen vor allem bei Anwendungen wie der Inspektion von Produkten während der Herstellung erfolgreich, wo die Rahmenbedingungen für die Bilderfassung kontrolliert und die Kriterien für Gut-/Schlecht-Entscheidungen relativ einfach quantifiziert werden können. Es gibt jedoch zahllose Einsatzfälle für das rechnergestützte Sehen, wo die Rahmenbedingungen für die Bilderfassung nicht kontrolliert werden können und wo die Prüfobjekte große Variationen aufweisen. Tiefe neuronale Netze sind speziell in diesen Fällen sehr hilfreich. Für den Menschen ist es beispielsweise sehr einfach, Erdbeeren von anderen Früchten zu unterscheiden. Für einen Algorithmus ist diese Aufgabe bei weitem nicht trivial, wenn man bedenkt, wie stark die Größen und Formen von Erdbeeren variieren können. Das Problem verschärft sich noch, wenn man Variationen der Kameraansicht, der Beleuchtung oder benachbarter Objekte mit einbezieht. Auf ähnliche Weise stellt das Erkennen von Fußgängern für ein Kfz-Sicherheitssystem eine sehr große Herausforderung dar, da ja die Menschen unterschiedlich groß sind, verschiedenste Kleidung tragen können und sich völlig unterschiedlich bewegen.

Googles Open Source Framework Tensorflow basiert auf Deep Learning-Technologien. Laut einer kürzlich veröffentlichten Studie der Embedded Vision Alliance ist Tensorflow derzeit die beliebteste Deep Learning-Plattform für rechnergestütztes Sehen und hat dabei Caffe, OpenCV und andere Optionen hinter sich gelassen. Worin liegen Ihrer Meinung nach die Gründe für diesen Erfolg?

Bier: Ich denke ein Grund für die Popularität von Tensorflow ist sicher, dass Google ein Technologieführer ist und Tensorflow selbst extensiv einsetzt. Ingenieure anderer Firmen haben großes Interesse daran, die selbe Technologie zu verwenden wie solche führenden Unternehmen. Die Tatsache, dass Tensorflow eine Open Source-Plattform ist, spielt sicher auch eine große Rolle - es kostet schlichtweg nichts, Tensorflow zu benutzen. Hinzu kommt, dass Tensorflow das erste Deep Learning Framework ist, das sich auf den effizienten Einsatz von tiefen neuronalen Netzen nicht nur in Rechenzentren, sondern auch in Embedded-Systemen und in mobilen Geräten fokussiert.

Die Embedded Vision Alliance veranstaltet am 7. September 2017 in Hamburg das erste Tensorflow-Training in Deutschland. Wer sollte daran teilnehmen und was steht auf dem Programm?

Bier: Diese Schulung eignet sich für Ingenieure, die Algorithmen und Software für das Maschinensehen entwickeln und die TensorFlow schnellstmöglich für diese Aufgaben nutzen wollen. Einsatzgebiete dafür finden sich in verschiedensten Applikationsfeldern, unter anderem in Bereichen Industrie, Medizin, Endanwender, Einzelhandel, öffentliche Sicherheit oder Automotive. Auch für Manager, die Grundlagen für das Entwickeln von tiefen neuronalen Netzen und den Einsatz von Tensorflow aufbauen wollen, stellt dieses Training eine hervorragende Möglichkeit dar, ihr Wissen zu erweitern. Ganz allgemein gesagt werden von diesem Training alle profitieren, die sich mit jeglicher Form des 'Maschinensehens' befassen, ganz gleich, ob sie Methoden der optischen Erkennung in der Cloud, auf einem PC, in Embedded-Systemen oder auf Mobilgeräten implementieren. Inhalt der Schulung ist eine praxisnahe Einführung in das Tensorflow-Framework, wobei der Schwerpunkt darauf liegt zu demonstrieren, wie man Tensorflow dazu nutzen kann, tiefe neuronale Netze für Aufgaben im Bereich des Maschinensehens zu entwickeln, zu trainieren, zu evaluieren und einzusetzen. Für weitere Details zur Agenda empfehle ich den Besuch der Webseite www.tensorflow.embedded-vision.com.

Wer ist der Trainer in Hamburg?

Bier: Die Schulung wird von Douglas Perry präsentiert, der dafür einzigartige Qualifikationen aufweisen kann. Er hat in den vergangenen fünf Jahren bereits Dutzende von professionellen Schulungen für Ingenieure aus der Elektronikindustrie durchgeführt und hat darüber hinaus viele praktische Erfahrungen mit Tensorflow-basierten tiefen neuronalen Netzen. Bei der Vorbereitung der Trainingsinhalte und der praktischen Übungen wird Douglas von meinen Kollegen bei BDTI unterstützt, die bereits einen Beitrag zur Entwicklung früherer, sehr erfolgreicher Schulungen zum Thema Deep Learning geleistet hatten.

Welchen Nutzen werden die Teilnehmer aus der Veranstaltung in Hamburg ziehen können?

Bier: Die Teilnehmer werden sehr viel schneller praktische Techniken erlernen und erfahren, wie man Tensorflow in Anwendungen der optischen Erkennung effektiv einsetzen kann. Nach dem Training werden sie in der Lage sein, Tensorflow auf produktive Weise für ihre Aufgaben zu nutzen.

Wie können sich Interessierte für das Training anmelden?

Bier: Wir haben unter https://tensorflow.embedded-vision.com eine Webpage mit allen Informationen zu dieser Schulung in Hamburg und zu weiteren Trainings eingerichtet. Die Anmeldung kann auf dieser Seite erfolgen.

Werden Kenntnisse zu tiefen neuronalen Netzen schon vor dem Training vorausgesetzt?

Bier: Am meisten profitieren Teilnehmer dann von der Schulung, wenn ihnen grundlegende Konzepte und die Terminologie tiefer neuronaler Netzen bekannt sind. Interessierten, die eine Einführung in Algorithmen für tiefe neuronale Netze benötigen, werden wir vor der Tensorflow-Schulung ein kostenloses, zweistündiges Online-Videotutorial zur Verfügung stellen.

Sie haben die Embedded Vision Alliance 2011 gegründet. Was sind die wesentlichen Aufgaben dieser Organisation und warum fördert sie Technologien wie Deep Learning und das Tensorflow-Framework so aktiv?

Bier: Die Embedded Vision Alliance existiert, um den praktischen Einsatz des rechnergestützten Sehens in jeder Art von Anwendung zu erleichtern. Wir versuchen, dieses Ziel vor allem dadurch zu erreichen, dass wir Schulungen und andere weiterbildende Maßnahmen für Ingenieure und Firmen anbieten, die Methoden der optischen Erkennung in ihren Geräten, Systemen oder Applikationen bereits einsetzen oder planen, dies zu tun. Die Organisation hilft außerdem Technologielieferanten wie z.B. Herstellern von Prozessoren und Sensoren dabei, die nötigen Informationen und Hintergründe zu erhalten, die sie benötigen, um in diesem Markt erfolgreich zu sein.

Embedded Vision Alliance

Dieser Artikel erschien in Embedded Design 5 2017 - 18.09.17.
Für weitere Artikel besuchen Sie www.embedded-design.net