Skip to content
Simio background artwork

Neuronale Netze: Was ist das und was ist die Geschichte dahinter?

Simio Personal

November 3, 2021

Das Konzept einer „denkenden Maschine“ oder einer unbelebten Einheit, die denkt, geht auf die Wissenschaftler des antiken Griechenlands zurück, die versuchten, Objekten analytische Fähigkeiten zu verleihen. Der Erfolg der alten Griechen bei der Verwirklichung der denkenden Maschine war jedoch stark eingeschränkt, da sie nicht verstanden, wie das menschliche Gehirn funktionierte und wie die Nervenaktivität ablief. Es sollte noch einige Jahrhunderte dauern, bis sie die Denkmaschine konzipierten und herausfanden, wie das menschliche Gehirn durch miteinander verbundene Gehirnzellen, die so genannten Neuronen, komplexe Muster erzeugen konnte.

Die Forschungsarbeit „A Logical Calculus of the Ideas Immanent in Nervous Activity“ von Warren S. McCulloch und Walter Pitts aus dem Jahr 1943 machte die Welt mit der neuronalen Aktivität des Gehirns bekannt. Die Mitarbeiter skizzierten den Prozess, bei dem Neuronen innerhalb des Nervensystems Signale aneinander senden, um einen Impuls auszulösen. Sie postulierten, dass ein Neuron, das mit Tausenden von anderen Neuronen verbunden ist, eine unterschiedliche Menge an Energie sendet und empfängt und dass ein Neuron nur dann Energie aussendet, wenn seine Schwelle erreicht ist.

Diese wichtige Arbeit ebnete den Weg für die Integration neuronaler Netze in die MINT-Bereiche KI, maschinelles Lernen und Deep Learning. Die Forschung bildete die Grundlage für die Nutzung neuronaler Netze in Computerprogrammen, damit diese eigenständig Muster erkennen und Probleme lösen können.

Was sind neuronale Netze?

Neuronale Netze spiegeln die Verhaltensmuster des menschlichen Gehirns wider, indem sie den Kommunikationsprozess biologischer Neuronen während neuronaler Aktivitäten nachahmen. In den Bereichen des maschinellen Lernens und des Deep Learning werden neuronale Netze als künstliche neuronale Netze (ANN) oder simulierte neuronale Netze (SNN) bezeichnet. Diese Bezeichnungen unterstreichen die Tatsache, dass die Anwendung neuronaler Netze in diesen Bereichen vom menschlichen Gehirn inspiriert ist.

Künstliche neuronale Netze bestehen aus Knotenschichten, darunter eine Eingabeschicht, einzelne oder mehrere versteckte Schichten und eine Ausgabeschicht. Hier stellen die Knoten künstliche Neuronen dar, und jeder Knoten hat seine zugehörigen Gewichte und Schwellenwerte. Wenn die Ausgabe eines einzelnen Knotens über dem festgelegten Schwellenwert liegt, wird der Knoten aktiviert und sendet Daten an die nächste Knotenschicht innerhalb des Netzwerks. Umgekehrt werden keine Daten an die nächste Schicht des Knotennetzes gesendet, wenn die Ausgabe den Schwellenwert des Knotens nicht überschreitet. Der Charakter eines Neurons kann also als Schwellenwert-Logikeinheit (TLU) definiert werden, die verschiedene gewichtete Größen eingibt, diese Größen summiert und eine Größe ausgibt, sobald die summierten Größen ihren festgelegten Schwellenwert (Theta) erreichen oder überschreiten.

Die Kennzeichnung von Zeichen wie Eingangsgröße, Schwellenwert und Ausgang ermöglicht ein besseres Verständnis der Funktionsweise neuronaler Netze. Ein Beispiel: Eine Eingabe und ihre Gewichtung werden mit X 1, X 2, …, X n und W 1, W 2, …,W n beschriftet . Die Summe des Inputs und seiner Gewichtung ist also – X!*W! und ergibt den Aktivierungsgrad (a) eines Knotens. Also a = (X1 * W1) + (X2 * W2) +…+ (Xn * Wn).

In Szenarien, in denen das Aktivierungsniveau (a) gleich oder größer als der Schwellenwert (theta) ist, wird eine Ausgabe (y) erzeugt, aber wenn das Aktivierungsniveau kleiner als theta ist, erfolgt keine Ausgabe. Theta muss also erreicht oder übertroffen werden, um ein Neuron zu aktivieren und eine gewichtete Ausgabe an die nächste Knotenschicht zu senden.

Wie Schwellenwert-Logikeinheiten lernen

Neuronale Netze müssen trainiert werden, um ihre Genauigkeit bei der Problemlösung und Entscheidungsfindung zu verbessern, bevor sie in KI-Anwendungen genutzt werden können. Die Verbesserung der Genauigkeit eines neuronalen Netzes beginnt damit, dass man einen Einblick in den Lernprozess von Schwellenwert-Logikeinheiten erhält.

Wie lernen also Schwellenwert-Logikeinheiten und wie werden neuronale Netze trainiert?

Die kurze Antwort lautet, dass eine TLU lernt, indem sie kontinuierlich ihre Gewichte und Schwellenwerte ändert. Die längere Antwort bezieht sich auf den Prozess des überwachten und unbeaufsichtigten Trainings. Beim überwachten Training werden neuronale Netze trainiert, indem eine Reihe von Beispielen eingegeben wird:

  • Diverse zu klassifizierende Gegenstände und
  • Die richtigen Klassifizierungen, die den Positionen zugeordnet sind

Das neuronale Netz verwendet die bereitgestellten Informationen, um seine Gewichte zu ändern, bis es die Elemente den richtigen Klassifizierungen zuordnet. Das neuronale Netz analysiert also sowohl die Eingabe- als auch die Ausgabedaten, um Antworten zu entwickeln, die die eingegebenen Mengen einer Ausgabe zuordnen.

Beim unüberwachten Training wird nur eine Reihe von zu klassifizierenden Elementen oder Eingabedaten bereitgestellt. Das neuronale Netz wendet eine statistische Analyse an, um Unterschiede oder Anomalien innerhalb des eingegebenen Datensatzes festzustellen. Das bedeutet, dass das neuronale Netz beim unbeaufsichtigten Training mit den Daten arbeiten und Ergebnisse produzieren kann, ohne dass die analytischen Richtungen des Netzes gefärbt werden.

Die Verwendung eines realen Szenarios hilft dabei, zu verstehen, wie neuronale Netze lernen. So kann beispielsweise ein einzelner Knoten darauf trainiert werden, anhand von Binärwerten zu analysieren, ob in einer Produktionshalle zusätzliche Geräte benötigt werden. Nehmen wir zunächst an, dass drei Faktoren seine Entscheidungsfindung beeinflussen:

  1. Gibt es genügend Unterbringungskapazität? (Ja = 1, Nein = 0)
  2. Rechtfertigt die Nachfrage eine zusätzliche Ausrüstung? (Ja = 1, Nein = 0)
  3. Sind genügend Mittel vorhanden? (Ja = 1, Nein = 0)

Danach gelten die folgenden Eingangsannahmen:

  • X1 = 1, ja, es ist genügend Platz für neue Geräte vorhanden
  • X2 = 0, die Nachfrage rechtfertigt nicht den Bedarf an neuen Geräten
  • X3 = 0, Keine ausreichenden Mittel für neue Ausrüstung.

Als Nächstes muss jeder Eingabe eine Gewichtung zugewiesen werden. Dabei bedeutet ein größeres Gewicht einen größeren Einfluss auf die letztendlich zu treffende Entscheidung:

  • W1 = 3, weil der Platz für die Unterbringung neuer Geräte wichtig ist
  • W2 = 5, die Nachfrage ist entscheidend für die Entscheidung, ob neue Geräte notwendig sind
  • W3 = 2, Mittel können immer beschafft werden, wenn der Bedarf an neuen Geräten dringend ist

Schließlich muss ein Schwellenwert zugewiesen werden, um sicherzustellen, dass das neuronale Netz die bereitgestellten Informationen auswertet, um richtig zu antworten. In diesem Fall ist der Schwellenwert 4, was einem Bias-Wert von -4 entspricht. Setzt man all diese Werte in die oben genannte Formel „a = (X1 * W1) + (X2 * W2) +…+ (Xn * Wn)“ ein, ergibt sich folgendes Bild:

Y = (1 * 3) + (0 * 5) + (0 * 2) – 4 = -1.

Die endgültige Berechnung ergibt -1 und ist kleiner als die Aktivierungsfunktion, die zur Erzeugung einer Ausgabe erforderlich ist. Die Ausgabe dieses Knotens ist also 0. Das bedeutet, dass neue Geräte nicht erforderlich sind oder zu diesem Zeitpunkt nicht gekauft werden können.

Das in diesen Beispielen hervorgehobene Training neuronaler Netze ist Feedforward, da sie nur in eine Richtung fließen – von der Eingabe zur Ausgabe. Backpropagation ist eine weitere Technik, die für das Training neuronaler Netze verwendet wird. Bei der Backpropagation werden die den einzelnen Neuronen zugeordneten Fehler in die Berechnungen einbezogen, um die Parameter eines Netzmodells entsprechend anzupassen.