Themenblog künstliche Intelligenz

Part 3 Deep Learning

Deep Learning ist ein Teilbereich des maschinellen Lernens, der neben großen Datenmengen (Big Data) auch künstliche neuronale Netze (KNN) nutzt, um Entscheidungen und Prognosen zu treffen. Ähnlich wie im menschlichen Gehirn greift das Deep Learning neue Informationen und Inhalte auf und verknüpft diese mit bereits gelerntem oder erweitert seinen „Wissensstand“. Deep Learning hat also die Aufgabe, das menschliche Gehirn und seine Funktionsweise zu kopieren und somit einen Lernprozess in Gang zu setzen. In diesem Lernvorgang sollen, aus bereitgestellten Datensätzen, Muster und Regelmäßigkeiten erkannt und zugeordnet werden. Dabei wird dieser Lernprozess durch das kontinuierliche Wiederholen verbessert. Sobald sich eine Entscheidung bestätigt, erhöht sich die Gewichtung der Informationsverknüpfung. Wird die Entscheidung revidiert, verringert sie sich entsprechend. Die daraus resultierenden Modelle und Klassifizierungen werden auch als Cluster bezeichnet.

  • Anlagenstatus

Der Aufbau eines KNN ist auf den ersten Blick recht simpel. Es besteht aus einem Input-Layer, der die Informationen der Außenwelt aufnimmt und an die nächste, entscheidende Schicht, den Hidden-Layer, weitergibt. Dieser Layer nimmt die Informationen auf und verarbeitet diese. Er vergleicht die Informationen mit bereits gesammelten Daten und entscheidet schließlich, wie der nächste Schritt aussieht. Es folgen mehrere Hidden-Layer, die nach und nach Ihre eigenen Schlussfolgerungen treffen, bis letztlich der Output-Layer das Ergebnis an die Außenwelt weitergibt. Je mehr Schichten vorhanden sind, desto komplexere Herausforderungen können gelöst werden. Aufgrund der Menge (Tiefe) der Hidden-Layer innerhalb eines neuronalen Netzes ist die Bezeichnung „Deep Learning“ entstanden.

Eine besondere Form der künstlichen neuronalen Netze ist das rekurrente neurale Netz (RNN). Hierbei sind Neuronen verschiedener Schichten rückgekoppelt und geben die Informationen nicht nur in eine Richtung weiter, wie es bei Feedforward-Netzen der Fall ist. Es entstehen Kreisstrukturen, die vergleichbar mit dem menschlichen Gedächtnis sind. Hierdurch ist es möglich Prognosen zu erstellen und komplexe Sequenzen zu verarbeiten. Eins von vielen Einsatzgebieten der RNN ist z.B. die Spracherkennung. Da es in unserer Sprache viele Wörter gibt, die je nach Kontext, verschiedene Bedeutungen haben, ist es wichtig, den Gesamtzusammenhang zu erkennen und anschließend eine passende Entscheidung zu treffen. Ein simples Beispiel wäre das Wort „auf“, welches als Präposition für „oben drauf“ oder als Adjektiv für „offen“ verstanden werden kann.

Damit die KNN überhaupt in der Lage sind, zutreffende Antworten zu geben, müssen diese zunächst trainiert werden. Hierfür werden große Mengen an Daten benötigt, die zugeordnet sind und dem KNN den Trainingsprozess ermöglichen. Als Beispiel sollen Bilder von Männern dienen, die einen Bart tragen. Das KNN soll diese von rasierten Männern unterscheiden. Zu Beginn des Trainings erhält jedes Neuron eine zufällig gewählte Startgewichtung. Ein Eingangssignal durchläuft dann alle vorhanden Layer und das jeweilige Neuron gewichtet das erhaltene Ergebnis mit seinem Gewicht. Im Output-Layer werden sicherlich viele falsche Antworten ausgegeben, denn das System weiß noch nicht, wie ein Mann mit Bart aussieht. Das erhaltene Ergebnis wird nun genutzt, um die Größe des Fehlers, und den Anteil jedes einzelnen Neuron daran, zu berechnen. Anschließend werden die Gewichte der einzelnen Neuronen ein wenig in die Richtung korrigiert, die den Fehler minimieren. Diese Abfolge wird solange durchlaufen, bis das gewünschte Ergebnis erzielt wird. Dieser Prozess, bei dem der Mensch der KI den Input und den gewünschten Output vorgibt, wird auch als Supervised Learning (überwachtes Lernen) bezeichnet.