Stiftungspreis für Arbeit zu Deep Learning

Für seine wissenschaftliche Arbeit mit dem Thema „Deep Learning in der Bilderkennung: Steuerung autonomer mobiler Roboter mit Hilfe neuronaler Netze“ erhielt ein Mitarbeiter der Organon Informationssysteme GmbH am 2. Februar 2018 den Friedrich-Dessauer-Stiftungspreis.

Die außerordentlichen Fähigkeiten und Leistungen des menschlichen Gehirns sind für die Forschung der künstlichen Intelligenz eine enorme Herausforderung sowie fortwährender Ansporn, die Funktionsweise des Gehirns zu verstehen und in Analogie auf schnellen Computersystemen mittels künstlicher neuronaler Netze zu simulieren. Seit den Arbeiten zum ersten Modell für Neuronen im Jahr 1943 wurden mathematische und programmiertechnische Konzepte für künstliche neuronale Netze stetig weiterentwickelt. Die Einführung neuer Techniken der künstlichen Intelligenz, wie z.B. Maschinelles Lernen (ein selbstadaptiver Algorithmus), sowie Deep Learning (bezeichnet eine Klasse von Optimierungsmethoden künstlicher neuronaler Netze), einhergehend mit gewaltigen Leistungssteigerungen im Bereich der Computerhardware, ermöglichen heute Erfolge bzw. Produktinnovationen, die bislang als utopisch oder gar unmöglich angesehen waren. Dies zeigt u.a. der Go-Turniergewinn des Programms AlphaGo gegen die weltbesten menschlichen Spieler.

Die Entwicklung von mobilen autonomen Systemen, die die Navigation auf Grundlage von Bilddaten durchführen, war in der Vergangenheit aufgrund von begrenzter Leistungsfähigkeit und Flexibilität der vorhandenen Systeme vor große Herausforderungen gestellt. Begegnet wurde diesen Herausforderungen durch die Entwicklung neuer Techniken der künstlichen Intelligenz sowie dem Einsatz von hochgerüsteten und kostenintensiven Hardware-Ressourcen, die überwiegend nur einem kleinen Kreis von Spezialisten mit ausreichend finanziellen Mitteln zur Verfügung standen.

Die wissenschaftliche Arbeit zeigt anhand einer praktischen Anwendung mit einem selbstentwickelten Roboterfahrzeug und unter Verwendung von Standard-Hardwarekomponenten, bestehend aus einem Consumer-Desktop mit Grafikkarte und einem Rapsberry Pi, wie Computer selbständig lernen, sich durch visuelle Wahrnehmung in ihrem Umfeld zu orientieren und zu navigieren.

Der Aufbau und das Training von tiefen neuronalen Netzen ist durch die große Zahl an Berechnungen sehr ressourcenlastig. Daher ist es erforderlich, entsprechend performante Hardware einzusetzen. Diese Berechnungen, die in den Forward- und Backwardsteps für jeden Knoten im Graphen eines neuronalen Netzes ablaufen, sind hoch-parallelisierbar, weshalb sich der Einsatz einer leistungsfähigen GPU (Graphical Processing Unit) in besonderem Maße eignet. Eine GPU mit ihren mehreren hundert Rechenkernen hat bei der Verarbeitung von parallelen Rechenaufgaben einen deutlichen Vorteil gegenüber einer aktuellen CPU mit ihren 4 – 8 Kernen.

Es existiert bereits eine Reihe von Frameworks für neuronales Lernen unterder Verwendung von Grafikkarten. Für einen thematischen Einstieg in die Zielsetzung der Arbeit wurde unter diesen Frameworks aufgrund der guten Dokumentation und des zur Verfügung gestelltem Sourcecodes, auch zu den behandelten Modellen, TensorFlow und die Programmiersprache Python für die praktische Umsetzung der Konzepte des Deep Learning ausgewählt.

Für die auf der vorliegenden Hardware ablaufenden Lernvorgänge der neuronalen Netze wurde der Ansatz gewählt, bereits veröffentlichte Modelle neuronaler Netze mit guten Erkennungsleistungen bezüglich ihrer Fähigkeit zur Bilderkennung in dynamischen Systemen zu prüfen und nach einer Auswahl eine Lösung zur Steuerung des im Rahmen dieser Arbeit entwickelten Roboterfahrzeugs zu implementieren. Dazu wurden die in ihrem Aufbau unveränderten Modelle mit den vorgesehenen Datensätzen sowie angepasste Modelle mit eigenen Trainingsdaten hinsichtlich ihrer Lauffähigkeit und Performanz auf Standard-Hardware geprüft. Abschließend erfolgte die Umsetzung der theoretischen Konzepte und der Modelle des Deep Learning in künstlichen neuronalen Netzen mit dem praktischen Einsatz des Roboterfahrzeugs.

Mit den Modellen AlexNet und Inception wurden zwei der bestplatzierten Architekturen der letzten Zeit ausgewählt und für die zugrunde liegende Arbeit evaluiert. Um die Position des Objektes, vorliegend ein Fußball, auf dem Bild zu bestimmen und anhand dieser die Navigation des Roboters zu steuern, wird das Bild in einzelne Segmente unterteilt. Jedes dieser Segmente wird anschließend zur Bewertung herangezogen. Das Segment mit der höchsten Erkennungswahrscheinlichkeit enthält den Fußball. Liegt das Segment, oder, falls in mehreren Segmenten eine hohe Wahrscheinlichkeit vorliegt, die Segmente, im rechten oder linken Bereich navigiert das Roboterfahrzeug in die jeweilige Richtung. Gruppieren sich die Segmente mit relativ hoher Erkennungswahrscheinlichkeit in der Mitte, wird keine Richtungsänderung veranlasst, sondern weiter in diese Richtung gefahren. Eine gute Erkennungsrate wurde in den Tests bereits mit einer Segmentierung in 12 Bildteile erreicht. Diese Bildteile sind entsprechend 160×160 Pixel groß, bei einer Kameraauflösung von 640×480 des Roboterfahrzeugs.

Für die Objekterkennung und -lokalisierung mit Hilfe eines künstlichen neuronalen Netzwerks ist eine System- und Rechenleistung erforderlich, die für im Markt erhältliche, mobil einsetzbare Plattformen eine große Herausforderung darstellt. Da es bisher lediglich für den Raspberry Pi 3 Model B, einen der leistungsstärksten Vertreter von Single Board Computern (SBC), eine Portierung von TensorFlow gibt, kommt dieser in dem hier durchgeführten Projekt zur Verwendung. Der Raspberry Pi ist die zentrale Einheit der aufgebauten Hardware, deren gesamte Komponenten hier mittels Python-Programmen angesteuert werden.

Da es sich bei dem Roboterfahrzeug um ein eigenentwickeltes System handelt, muss vor der eigentlichen Entwicklung der Hardware eine detaillierte Planung mit Definition und Entwurf für die grundsätzliche Eignung aller Komponenten und deren Zusammenwirken für das Vorhaben des mobilen Einsatzes mit künstlichen neuronalen Netzwerken erstellt werden. Da die Verarbeitung einzelner Bilder auf dem Raspberry Pi aufgrund der fehlenden Ressourcen und vor allem der fehlenden Möglichkeit die GPU des Raspberry Pi zu nutzen mit ca. 3 Sekunden pro Bild erfolgt und pro Auswertung i.d.R. mehrere Bildsegmente ausgewertet werden müssen, würde das die Navigation stark verlangsamen. Deshalb wurde eine Client/Server-Lösung implementiert, bei der die Bilder auf einen leistungsfähigen Rechner übertragen werden. Dort erfolgt eine Auswertung der 12 Segmente im Bild in < 70 ms pro Segment, sodass eine hinreichend schnelle Auswertung eines Bildes für eine flüssige Navigation möglich ist.

Mit der Arbeit konnte gezeigt werden, dass mit den in der Bilderkennung eingesetzten Methoden des Deep Learning in Deep Convolutional Neural Networks einem Roboterfahrzeug die Fähigkeit verliehen werden kann, anhand selbständig erlernter Muster von Gegenständen Objekte in seiner Umgebung analog zu Menschen visuell wahrzunehmen, sich an den Objekten im Raum zu orientieren und autonom zu navigieren. Das angestrebte Ziel konnte trotz vergleichsweise beschränkter Hardware-Ressourcen erfolgreich umgesetzt werden. Die einfach gehaltene praktische Anwendung kann nicht verbergen, welche ungeahnten Möglichkeiten sich mit Hilfe der Methoden des selbständigen Lernens in künstlichen neuronalen Netzen damit für neue Anwendungen eröffnen.

Die Auseinandersetzung mit den dieser Arbeit zugrunde liegenden Konzepten und Modellen des Deep Learning in der Bilderkennung, deren Erfolg wesentlich auf der Verwendung komplexer mathematischer Konzepte der linearen Algebra und Methoden der Statistik beruhen, waren eine Herausforderung und aufgrund der überzeugenden Ideen tief beeindruckend. Die einmal geschaffene Anwendung mit dem Roboterfahrzeug lässt sich für künftige Anwendungen mit Sicherheit weiter ausbauen, woran weiterhin großes Interesse besteht.