Mit echten Daten neuronale Netze trainieren Maschinelles Lernen praktisch im Deep Learning Lab
Das Deep Learning Lab ist ein Kurs an der Technischen Universität Braunschweig, der Methoden des Maschinellen Lernens praktisch vermittelt. Höhepunkt des Kurses ist eine Challenge: Die Studierenden entwickeln in Teams eine Anwendung zur Gesichterkennung mit Hilfe neuronaler Netze und einer Menge Rechenpower.
„Es freut mich, dass Maschinelles Lernen derzeit wieder einen Hype erlebt“, sagt Professor Tim Fingscheidt. Er arbeitet am Institut für Nachrichtentechnik an der TU Braunschweig und setzt sich dafür ein, dass die Studierenden den Vorlesungsstoff praxisorientiert anwenden. Und in Kontakt mit Industriepartnern kommen. Und Hilfe bei der Unternehmsgründung erhalten. Ja, es gibt tatsächlich diese Erfolgsgeschichten, die Partner und eine Menge Praxis. So ist es kaum verwunderlich, dass er mit Stolz die Abschlussveranstaltung mit einer Siegerehrung zur Challenge im Deep Learning Lab anmoderiert.
Bevor die Studierenden im Deep Learning Lab in Teams gegeneinander antreten, steht ihnen noch Arbeit bevor. Sie eignen sich grundlegende Kenntnisse der Programmiersprache Python und der benötigten Software-Bibliotheken an. Dann lösen sie Aufgaben zu Methoden der Mustererkennung. Erst dann beginnt die Challenge. Sie bekommen echte Daten und eine Aufgabe. Zehn Teams erhalten jeweils 500.000 Datensätze mit Fotos aus der International Movie Data Base und Wikipedia. Die Herausforderung: Welches Team entwickelt die beste Lösung für eine automatische Gesichtserkennung mit Unterscheidung von Geschlecht und Alter? Es gibt keine Vorgaben – jedes Team ist frei bei der Wahl von Software und Strategie. Am Institut steht Rechenpower zur Verfügung, die die Teams für Berechnungen im Bereich des Maschinellen Lernens benötigen. „Wir haben 30 Titan-Grafikkarten von NVIDIA, auf die die Studierenden zurückgreifen können“, sagt Projektleiter Samy Elshamy.
Wie läuft eine Gesichtserkennung ab?
Müssen die Studierenden Altersmerkmale wie Falten und graue Haare und deren Ausprägung bei Frau und Mann mühsam eingeben und dann an den Daten testen? „Nein“, sagt Ernst Seidel aus dem Gewinnerteam und muss schmunzeln: „Das Ziel beim Maschinellen Lernen ist ja gerade, dass der Computer selbstständig lernt, wie er die Unterscheidungen vornimmt.“ Seidel beendet gerade sein Bachelor-Studium in der Elektrotechnik und möchte weiter im Master studieren.
Zuerst werden die Bilddateien für die Datenverarbeitung vorbereitet: Die Fotos werden auf eine einheitliche, kleinere Größe reduziert. Das beschleunigt die Berechung. Dann wird die Wahrscheinlichkeit für jedes Bild berechnet, ob es sich bei dem Motiv um ein Gesicht handelt. Jetzt kommen verschiedene Methoden der Mustererkennung zum Einsatz. Dazu zählen die künstlichen neuronalen Netze. Diese Netze bestehen meist aus mehreren Schichten und die Schichten aus Knoten. Jede Schicht beeinflusst die nächste.
Zwölf Stunden für einen Trainingsdurchlauf
„Das Netz lernt anhand eines Trainingsdatensatzes. Das heisst, es erfasst zum einen die Merkmale eines Bildes und zum anderen das Label mit Alter und Geschlecht“, sagt Qi Zhang, ein Teamkollege von Ernst Seidel. Die Software wird mit Tausenden Bildern und Labels gefüttert, die erfassten Daten gewichtet und von Schicht zu Schicht, von Knoten zu Knoten für feinere Unterscheidungen weitergegeben. „In einem Durchlauf mit allen Dateien des Trainingsdatensatzes vergehen schon einmal zwölf Stunden“, so Zhang, der gerade an seiner Masterarbeit im Studiengang Elektronische Systeme in Fahrzeugtechnik, Luft- und Raumfahrt arbeitet. Dann wird mit einem weiteren Datensatz ohne Labels, also anderen Bildern ohne Zuscheibung von Alter und Geschlecht, berechnet, wie gut das Netz die Gesichter erkennt. Mit daraus resultierenden Korrekturfaktoren und vielen Parameteränderungen wird dann der Prozess immer wieder von neuem gestartet. In der Regel wird dieser Vorgang solange getestet und optimiert, bis zuverlässige Erkennungsquoten erreicht werden.
Maschinelles Lernen als Teil der Künstlichen Intelligenz-Forschung galt lange als Vision. Viele Ansätze, die Funktionsweise des menschlichen Gehirns im Rechner nachzubauen, erwiesen sich als Enttäuschung. Seit den 1980er-Jahren hat die KI-Forschung durch Deep Learning große Fortschritte gemacht, zum Beispiel bei Textübersetzungen, beim autonomen Fahren oder bei Brettspielen Computer gegen Mensch. Beschleunigt wird die Entwicklung durch große Mengen an verfügbaren Daten und die extrem gewachsene Geschwindigkeit bei der Datenverarbeitung.
Präsentation in drei Minuten
Bei der Abschlusspräsentation hat jedes Team drei Minuten Zeit, seinen Lösungsweg aufzuzeigen. Professor Fingscheidt und Projektleiter Elshamy haben alle eingereichten Modelle mit einem Vergleichsdatensatz geprüft und die Gewinnerteams ermittelt. Die Erkennungsrate des Geschlechts funktionierte im Durschnitt mit 90 Prozent überrraschend zuverlässig.
Die Studierenden teilen die Begeisterung von Professor Fingscheidt für das „Deep Learning Lab“. „Ich versuche im Studium alles rund um künstliche neuronale Netze und Maschinenlernen mitzunehmen. Das Lab war hochinteressant“, sagt Seidel. Kommilitone Zhang erinnert sich an die Herausforderungen: „Es war viel Stress. Wir haben vier Modelle getestet, das letzte hat dann funktioniert. Trotzdem: Es hat Spaß gemacht!“
Um die Zukunft seines Faches und die Lernfreude seiner Studierenden braucht sich Professor Fingscheidt also keine Sorgen zu machen. Im nächsten Jahr soll das Deep Learning Lab wieder stattfinden – vielleicht etwas größer und mit weiteren Partnern.