Diplomarbeit - Konstruktion von NN für Regressionsanalysen - Kapitel 2.1

von Daniel Schwamm (09.11.2000)

2.1 Neuronale Netzwerke

In diesem Abschnitt wird der Begriff neuronales Netzwerk definiert und ein Schema vorgeschlagen, mit dessen Hilfe sich die verschiedenen Typen von neuronalen Netzwerken voneinander abgrenzen lassen. Auf diese Weise können diejenigen Modelle durch Nennung der Klassifizierungskriterien charakterisiert werden, die für die Problemstellung der vorliegenden Arbeit relevant erscheinen. Eine vertiefte Betrachtung der Thematik, insbesondere die Beschreibung der Stärken und Schwächen der einzelnen Modelltypen sowie die Darstellung der Analogien zwischen neuronalen Netzwerken und (menschlichen) Gehirnen, findet bei Niedereichholz/Mechler (1992), Lawrence (1992) und Kruse et al. (1991) statt.

Als neuronale Netzwerke bezeichnet man aus einfachen (adaptiven) Bausteinen zusammengesetzte, massiv parallele Verbundnetzwerke, deren Struktur und Arbeitsweise dem natürlichen Vorbild des Nervensystems angelehnt ist. Ihre Architektur soll dadurch zur Nachbildung biologischer Intelligenz in künstlichen Systemen potenziell besser geeignet sein, als die sequenziell organisierte von-Neumann-Architektur herkömmlicher Computer. Die Neuroinformatik verfolgt das Ziel, so komplexe menschliche Fähigkeiten wie "Intelligenz" und "selbstständige Problemlösung" in neuronalen Netzwerken zu implementieren. Diesen Anspruch erfüllen neuronalen Netzwerke (bisher) nicht. Wie sie auch heute schon leistungsstark eingesetzt werden können, wird in Kapitel 3 vorgeführt werden.

Es gibt eine Vielzahl verschiedener Typen von neuronalen Netzwerken. Wie im folgenden gezeigt wird, können sie zur Vereinfachung durch die drei Kriterien Neuronentyp, Topologie und Lernverfahren klassifiziert und charakterisiert werden.

2.1.1 Neuronentyp

Die Neuronen eines künstlichen neuronalen Netzwerks haben die Aufgabe, in spezifischer Weise Eingabesignale zu Ausgabesignale zu verarbeiten. Der Transformationsprozess innerhalb eines Neurons ist in Abbildung 2.1 schematisch veranschaulicht: Die Eingabesignale werden beim Eintritt in das Neuron jeweils gewichtet, zu einem Gesamtsignal aufsummiert, danach (nicht-)linear transformiert und schliesslich als Ausgabesignal wieder nach aussen abgegeben. Da das beschriebene Verarbeitungsprinzip Allgemeingültigkeit für alle künstlichen Neuronen besitzt, ist durch die Anzahl der vorgeschalteten Gewichte, die Propagierungsfunktion und die Aktivierungsfunktion der Typ eines Neurons vollständig determiniert. Die verwendeten Begriffe werden im Folgenden definiert.

abb2-1

Abbildung 2.1: Transformationsprozess innerhalb eines (versteckten) Neurons.
Quelle: Angelehnt an Niedereichholz/Mechler (1992), S. 9.

Durch sogenannte Gewichte werden Signale, die zwischen den Neuronen eines künstlichen neuronalen Netzwerks ausgetauscht werden, gezielt verstärkt oder geschwächt. Neuronen, die über keine vorgeschalteten Gewichte verfügen, bezeichnet man als Eingabeneuronen. Analog dazu bezeichnet man Neuronen ohne nachgeschaltete Gewichte als Ausgabeneuronen. Alle anderen Neuronen sind versteckte Neuronen. Der beschriebene Transformationsprozess innerhalb eines Neurons wird im hohen Masse durch die vorgeschalteten Gewichte beeinflusst.

Die Propagierungsfunktion berechnet (in der Regel durch einfache Summation) den Nettoinput eines Neurons aus den gewichteten inhibitorischen und exitatorischen Signalen. Der Nettoinput wird (je nach zugrunde liegendem Neuronenmodell mit dem aktuellen Aktivierungszustand des Neurons aufaddiert) an die Aktivierungsfunktion übergeben, wodurch der neue Aktivierungszustand des Neurons bestimmt wird. Gegebenenfalls muss der Aktivierungszustand einen vorher festgelegten Schwellenwert übertreffen, um als Ausgabesignal nach aussen abgegeben zu werden. Man sagt, ein Neuron "feuert", falls es ein Ausgabesignal liefert. In der Literatur wird der Begriff Ausgabefunktion nicht einheitlich definiert, aber in dieser Arbeit wird darunter die Aktivierungsfunktion der Ausgabeneuronen verstanden.

Eine Auswahl möglicher Aktivierungsfunktionen zeigt Abbildung 2.2. Unterschieden werden unter anderem lineare und nichtlineare, analoge und diskrete, differenzierbare und nicht-differenzierbare, mit und ohne Schwellwert behaftete, sowie deterministische und stochastische Funktionen. Sie besitzen jeweils typische Eigenschaften, die sich in spezifischer Weise auf den Transformationsprozess innerhalb des Neurons auswirken. Welche Aktivierungsfunktion die beste ist, hängt von der Art des durch das neuronale Netzwerk zu lösenden Problems ab.

Image138 Image139

(a) Lineare Funktion (b) Signum-Funktion

Image140 Image141

(c) Tangens Hyperbolicus (d) Logistische Funktion

Image142 Image143

(e) Quadratische Funktion (f) X×Sinus-Funktion

Abbildung 2.2: Auswahl möglicher Aktivierungsfunktionen.
Quelle: Angelehnt an Anders (1993), S. 3.

Ohne darauf an dieser Stelle näher eingehen zu können, sei erwähnt, dass auch die zur Verfügung stehenden Daten und das später erläuterte Lernverfahren die Wahl der Aktivierungsfunktion einschränken. Im Prinzip gilt, dass jede Aktivierungsfunktion ein eigenes theoretisches Modell des Neurons darstellt.

2.1.2 Topologie

Die Topologie eines neuronalen Netzwerks gibt an, wie die Verbindungsstruktur zwischen den Neuronen aufgebaut ist. Typ-gleiche Neuronen lassen sich zu sogenannten Schichten zusammenfassen. In Analogie zum Typ der Neuronen, aus denen eine Schicht besteht, unterscheidet man die Eingabeschicht, die Ausgabeschicht und die versteckten Schichten. Neuronen innerhalb derselben Schicht tauschen untereinander keine Signale aus. Von schichtlosen neuronalen Netzwerk spricht man, wenn jedes Neuron mit jedem anderen verbunden ist.

Image144 Image145

(a) Vorwärtsgekoppeltes Netzwerk
mit drei Schichten
(b) Rückwärtsgekoppeltes Netzwerk
ohne Schichten

Abbildung 2.3: Topologien von neuronalen Netzwerken.
Quelle: Angelehnt an Niedereichholz/Mechler (1992), S. 10.

Die Topologie legt auch fest, ob die Aktivierungsausbreitung innerhalb des neuronalen Netzwerk in nur eine Richtung oder in mehreren Richtungen erfolgen kann. Bei Verwendung einer vorwärtsgekoppelten Topologie wird das Ausgabesignal eines Neurons ausschliesslich an die nachgeschalteten Neuronen weitergeleitet (vergleiche Abbildung 2.3a). Soll das Ausgabesignal eines Neurons an jedes andere Neuron gesendet werden können, muss eine rückwärtsgekoppelte Topologie implementiert werden. Im Falle einer rückwärtsgekoppelten Topologie kann jedes Neuron sogar das eigene Ausgabesignale als Eingabesignal wiederverwenden (vergleiche Abbildung 2.3b).

2.1.3 Lernverfahren

Neuronale Netzwerke haben grundsätzlich die Aufgabe, eine gegebene Menge von Eingabesignalen (Ist-Eingabemenge) auf eine bestimmte Menge von Ausgabesignalen (Soll-Ausgabemenge) abzubilden. Die gewünschte Langzeitdynamik des neuronalen Netzwerks wird durch die Spezifizierung der Schichtstruktur, der Funktionsstruktur und der Gewichtestruktur erreicht. In Bezug auf das Lernverfahren ist der letzte Punkt von Interesse, denn man kann die Gewichte nur bei sehr einfachen neuronalen Netzwerken auf analytische Weise rechnerisch konstruieren, weswegen man sie üblicherweise durch einen numerischen Trainingsprozess bestimmen lässt. Dabei kommen verschiedene Lernverfahren für neuronale Netzwerke zum Einsatz, die alle auf der hebbschen Hypothese (1949) basieren:

Der Übertragungswiederstand einer Synapse (Gewicht) verändert sich jedes Mal, wenn gleichzeitig vor und nach der Synapse eine neuronale Aktivität besteht.

Ein neuronales Netzwerk "lernt", indem es in Abhängigkeit von den eingespeisten Signalen die Verbindungsstruktur zwischen den Neuronen ändert. Wie diese Modifikation während des Trainingsprozesses konkret vor sich geht, wird in Abschnitt 3.2.3 anhand eines Lernverfahrens beschrieben, welches auf dem Gradientenverfahren basiert. Allgemein gilt, dass der Trainingsprozess so lange ausgeführt wird, bis ein zufriedenstellendes Eingabe-Ausgabe-Verhalten des neuronalen Netzwerks erreicht ist. Im normalen Arbeitsmodus findet dann keine Änderung der Gewichte mehr statt.

Man unterscheidet zwei Kategorien von Lernverfahren:

  1. Überwachte Lernverfahren: Hier werden die Ist-Ausgabesignale des neuronalen Netzwerks nach jedem Schritt mit den zu erbringenden Soll-Ausgabesignalen verglichen. Die Differenz wird jeweils zur Berechnung neuer Gewichtswerte benutzt, die den Fehler auf der Ausgabeseite reduzieren, der durch eine sogenannte Kostenfunktion ermittelt wird. In diese Kategorie ist auch das oben erwähnte Gradientenverfahren einzuordnen.
  2. Nicht-überwachte Lernverfahren: Diese Verfahren setzen im Gegensatz zu den überwachten Lernverfahren keine Kenntnis der Soll-Ausgabesignale voraus. Ein neuronales Netzwerk, welches auf diese Weise trainiert wird, erkennt in den Eingabesignalen quasi selbstständig Regelmässigkeiten. Die Gewichte können dadurch derart geändert werden, dass ähnliche Eingabesignale gleiche Ausgabesignale produzieren. Bei den nicht-überwachten Lernverfahren ist somit nur noch das Anspruchsniveau der Abbruchkriterien durch Experten vorzugeben.