Künstliche neuronale Netze

Maschinelles Lernen – vom Gehirn inspiriert

27.01.2023 von Theo Steininger
Ob Aufbau, Training, Arten oder Herausforderungen – Was Sie über künstliche neuronale Netze und ihre Eigenschaften wissen müssen.
Künstliche neuronale Netze sind dem menschlichen Gehirn mit seinen Synapsen nachempfunden und ein wichtiges Teilgebiet der Künstlichen Intelligenz.
Foto: MattLphotography - shutterstock.com

Künstliche neuronale Netze - Definition

Das menschliche Gehirn ist ein wahres Wunderwerk der Natur. Es ist die Steuerzentrale unseres Körpers und verfügt über rund 100 Milliarden Gehirnzellen, die durch Synapsen miteinander verbunden sind. Diese Kontaktstellen spielen eine wichtige Rolle bei der Aufnahme, Bewertung und Verarbeitung von Informationen. Künstliche neuronale Netze sind diesem Prinzip nachempfunden und ein wichtiger Forschungsgegenstand der Neuroinformatik sowie Teilgebiet der Künstlichen Intelligenz. Entsprechende Netze sind in der Lage, verschiedenste Problemstellungen computerbasiert zu lösen sowie komplexe Zusammenhänge zu erlernen. Die Voraussetzung: Sie müssen trainiert werden.

Künstliche neuronale Netze - Aufbau

Das abstrahierte Modell eines künstlichen neuronalen Netzes besteht aus Neuronen, auch Units oder Knoten genannt. Diese können Informationen von außen oder von anderen Neuronen aufnehmen und durch eine Aktivierungsfunktion modifiziert an andere Neuronen weiterleiten oder als Endergebnis ausgeben. Dieser Prozess erfolgt über drei verschiedene Schichtbereiche, denen jeweils eine Neuronenart zugeordnet werden kann:

Die Neuronen selbst sind miteinander über Kanten verbunden. Je nach Stärke und Bedeutung der Verbindung hat jede Kante eine bestimmte Gewichtung. Je größer diese ist, desto größer ist der Einfluss, den ein Neuron über die Verbindung auf ein anderes Neuron ausüben kann. Das Wissen und auch die Künstliche Intelligenz eines neuronalen Netzes ist damit letztendlich in der Struktur der Verbindungen und deren Gewichtungen gespeichert. Besteht der verborgene Schichtbereich aus sehr vielen Schichten, spricht man von tiefen neuronalen Netzen und bei deren Einsatz von Deep Learning.

Künstliche neuronale Netze - Funktionsweise

Die Informationen werden in Form von Mustern oder Signalen von der Außenwelt durch Input-Neuronen aufgenommen. Diese verarbeiten die Informationen und führen diese gewichtet an den verborgenen Schichtbereich weiter. Während Eingabe- und Ausgabeschichtbereich lediglich aus einer Schicht bestehen, können im verborgenen Schichtbereich beliebig viele Schichten vorhanden sein. Hier werden die empfangenen Informationen erneut gewichtet und von Neuron zu Neuron bis zum Ausgabeschichtbereich weitergereicht. Da die genaue Prozessierung der Informationen in den Schichten des verborgenen Schichtbereiches nicht sichtbar ist, leitet sich an dieser Stelle der Begriff "Blackbox-Modell" ab. Der Ausgabeschichtbereich ist die letzte Schicht und schließt unmittelbar an die letzte Schicht des verborgenen Schichtbereiches an. Die Output-Neuronen beinhalten die je nach Anwendungsfall unterschiedlichen Berechnungsergebnisse, die als Informationsfluss hervorgehen.

Künstliche neuronale Netze - Einsatzmöglichkeiten

Anwendungen für künstliche neuronale Netze gibt es viele. Zum Einsatz kommen sie vor allem in Bereichen, in denen wenig systematisches Wissen vorliegt, aber eine große Menge - in vielen Fällen auch unstrukturierte - Eingabeinformationen verarbeitet werden müssen, um ein konkretes Ergebnis zu erhalten. Dazu gehören beispielsweise die Sprach-, Bild- oder Mustererkennung. Künstliche neuronale Netze sind außerdem in der Lage, Simulationen und Prognosen für komplexe Systeme und Zusammenhänge zu erstellen - in der medizinischen Diagnostik, in Wirtschaftsprozessen oder der Wettervorhersage. Auch im Alltag basieren bereits viele Produkte und Services auf künstlichen neuronalen Netzen. Gerade Konzerne wie Google, Facebook oder Amazon gelten als Vorreiter bei der Entwicklung und Anwendung von Deep Learning und KI.

Künstliche neuronale Netze - Training

Bevor ein künstliches neuronales Netz für die vorgesehenen Problemstellungen oder Aufgaben eingesetzt werden kann, muss es zunächst trainiert werden. Anhand des vorgegebenen Lernmaterials und der Lernregeln gewichtet das Netz die Verbindungen der Neuronen, bis es die Trainingsdaten bestmöglich erklärt und damit eine auf den entsprechenden Anwendungsfall ausgerichtete Intelligenz entwickelt hat. Die Lernregeln geben dabei vor, wie das Lernmaterial das künstliche neuronale Netz verändert.

Lesetipp: Deep Learning - Artificial Intelligence - das Training macht den Unterschied

Zu Beginn des Trainings weicht der vom künstlichen neuronalen Netz berechnete Output noch stark vom gewünschten Ergebnis im Trainingsdatensatz ab. Eben jene Fehler lassen sich aber quantifizieren, ebenso wie der Anteil, den einzelne Neuronen an dem Fehler hatten. So wird im nächsten Lerndurchlauf das Gewicht jedes Neurons so verändert, dass sich der Fehler minimieren lässt.

Im nächsten Durchlauf wird eine neue Messung des Fehlers mit Anpassung durchgeführt. Auf diese Weise lernt das neuronale Netz mit jedem Trainingslauf besser, von den Input-Daten auf bekannte Output-Daten zu schließen. Die Kunst liegt allerdings darin, das Training zur richtigen Zeit abzubrechen, damit das künstliche neuronale Netz nur die echten Strukturen und nicht das Rauschverhalten mitlernt.

Künstliche neuronale Netze - Arten

Es gibt viele Arten von neuronalen Netzwerkarchitekturen. Die zwei folgenden stechen aber besonders heraus:

Long short-term memory (LSTM)

Wörtlich übersetzt bedeutet Long short-term Memory langes Kurzzeitgedächtnis und beschreibt ein Verfahren, das nicht nur bereits 1997 vorgestellt wurde, sondern auch erheblich zur Entwicklung von künstlichen neuronalen Netzen beigetragen hat. Was steckt dahinter?

Beim Training eines künstlichen neuronalen Netzes erfolgt üblicherweise die oben beschriebene Anpassung der Gewichte von hinten nach vorne. Man spricht von einer Rückpropagation des Vorhersagefehlers; ähnlich einer Welle der Erkenntnis, die durch das neuronale Netz rollt. Nun hat diese Welle die ungünstige Eigenschaft, von Schicht zu Schicht entweder abzuebben oder sich immer weiter aufzubauen. Damit werden die vorne gelegenen Schichten entweder kaum oder aber viel zu stark angepasst. Dieser Effekt ist umso stärker, je mehr Schichten ein neuronales Netz hat. Beim Long-Short-Term-Memory-Ansatz besitzen die Neuronen eine komplizierte Struktur inklusive kleinem Gedächtnis, um das Trainingsverhalten genau steuern zu können. Damit schufen LSTMs die technische Grundlage für tiefe neuronale Netze in Form einer großen Menge an trainierbaren Schichten. Dadurch wurde die Anpassungs- und Leistungsfähigkeit der künstlichen neuronalen Netze deutlich erhöht.

Convolutional Neural Networks

Ein Convolutional Neuronal Network oder zu deutsch faltendes neuronales Netz wird vorwiegend in der Bild- und Audioerkennung eingesetzt. Die Besonderheit dieses Netzwerkes besteht darin, dass die erste Schicht eine sogenannte Faltungsoperation mit den Eingangsdaten durchführt. Dadurch werden die jeweils benachbarten Pixel eines Bildes in Beziehung zueinander gesetzt, wodurch Strukturen wie Kanten - unabhängig von ihrer Position auf dem Bild - besonders gut erkannt werden können. Und das bei gleichzeitig vergleichsweise niedrigen Anforderungen an Rechenkapazität und Trainingsdatenmenge.

Lesetipp: Künstliche Intelligenz - Kostenlose KI-Tools für Entwickler

Künstliche neuronale Netze - Herausforderungen

Die Einsatzbereiche von künstlichen neuronalen Netzen sind vielfältig, aber nicht nur deshalb gibt es so viele Arten. Denn: Bei ihrem Einsatz kommt es in der Praxis trotz aller Vorteile zu einer Reihe an Herausforderungen, die sich nicht alle gleichzeitig lösen lassen. Dazu zählen:

Machine Learning FAQ
Facebook-Gesichter
Computer können lernen, menschliche Gesichter zu unterscheiden. Facebook nutzt das für die automatische Gesichtserkennung.
Machine Learning
Anders als das Bild suggeriert ist Machine Learning ein Teilgebiet von Artificial Intelligence – allerdings ein sehr wichtiges.
AlphaGo
Maschine schlägt Mensch: 2016 besiegte Googles Machine Learning System AlphaGo den Weltmeister im Spiel Go.
Grafikprozessoren GPU Nvidia
Die führenden Companies im Machine Learning nutzen für die parallele Verarbeitung der Daten Grafikprozessoren (GPUs) - etwa von Nvidia.
Deep Learning
Deep Learning Verfahren lernen erst Low-Level Elemente wie Helligkeitswerte, dann Elemente auf mittlerer Ebene und schließlich High-Level Elemente wie ganze Gesichter.
IBM Watson
IBM Watson integriert mehrere Artificial Intelligence Methoden: Neben maschinellem Lernen sind das Algorithmen der natürlichen Sprachverarbeitung und des Information Retrieval, der Wissensrepräsentation und der automatischen Inferenz.

Topologie, Transferfunktion und Lernstrategie?

Es gibt nahezu unbegrenzte Möglichkeiten, wie ein künstliches neuronales Netz aufgebaut werden kann, selbst wenn man sich auf einen einzigen Typ beschränkt. Trotzdem existiert kein Universalrezept, wie viele Schichten man nutzen sollte oder wie die Learning-Rate für ein bestmögliches Trainingsergebnis einzustellen ist. Hier ist zum einen die Erfahrung von Data Scientists notwendig. Zum anderen gibt es Ansätze, in denen wiederum Machine Learning (beispielsweise auch in Form eines künstlichen neuronalen Netzes) genutzt wird, um diese Hyperparameter zu optimieren. In diesem Fall trainieren also künstliche neuronale Netze künstlichen neuronale Netze.

Schwierige Nachvollziehbarkeit

Die größte Stärke - nämlich, dass Strukturen selbstständig aus Daten gelernt werden - ist zugleich eine große Schwäche der Netze: Für den Menschen ist es kaum nachvollziehbar, wie ein künstliches neuronales Netz zu einem spezifischen Einzelergebnis kommt. Das macht es schwierig, einzelne Ergebnisse zu beurteilen, beziehungsweise die Robustheit und Zuverlässigkeit eines Netzes im Allgemeinen zu bewerten. Dies erschwert den Einsatz in sicherheitskritischen Anwendungen wie beispielsweise beim Autonomen Fahren.

Künstliche neuronale Netze - ein mächtiges Werkzeug

Künstliche neuronale Netze sind mächtige Werkzeuge, die wie kaum eine andere Technologie eine Ambivalenz in sich tragen: Zum einen können sie äußerst selbstständig lernen und damit Strukturen erkennen, deren manuelle Modellierung in häufigen Fällen gar nicht leistbar ist. Als Computertechnologie ist sie dabei massiv skalierbar. Gleichzeitig aber erfordern die Auswahl der richtigen Netztopologie und Trainingsstrategie, deren (Hyper-)Parametrisierung sowie die Intransparenz der Trainingsergebnisse ein hohes Maß an Erfahrung und Handarbeit. Diese Eigenschaft bremst aktuell noch den universellen Einsatz der Technologie durch Laien aus.
Gerade deshalb ist es spannend, auch zu künstlichen neuronalen Netzen komplementäre Technologien auf dem Schirm zu behalten - zum Beispiel die sogenannten Bayes'schen Netze, um für jeden Use Case den richtigen Ansatz parat zu haben. (bw)