This site is best viewed in a browser that conforms to web standards.
Es besteht eine enge Verbindung zwischen dem Verhalten selbstorganisierender neuronaler Netze und der statistischen Methode der Komponentenanalyse (Principal Component Analysis). In der Tat kann ein vollverbundenes 2-Layer-Netzwerk mit i Inputs and j Outputs (bei i > j) dafür eingesetzt werden, die ersten j Principal Components aus dem Eingangsvektor zu extrahieren und dessen Grösse somit um j-i Elemente zu reduzieren. Bei j=1 funktioniert ein solches Netz als so genannter Eigenfilter, der die erste Hauptkomponente aus dem Eingabevektor extrahiert. Wir wollen die Diskussion der zugrundeliegenden Techniken mit diesem einfachsten Fall beginnen.
Bild. 1: Hebb'scher Eigenfilter. Das n-te Element des Eingangsvektors
, bestehend aus m Inputs, wird durch
den Weight-Vektor
in
transformiert. Zum klareren Verständnis: m ist hierbei die Anzahl der
Inputs, n die Anzahl der Trainingsbeispiele.
Der zum Training des Netzwerks eingesetzte Algorithmus basiert auf Hebb's
Postulat zur Anpassung in selbstorganisierenden Strukturen. Demnach variiert
das synaptische Gewicht
im Laufe der
Zeit. Es wächst, wenn das presynaptische Signal
und das postsynaptische Signal
eine
hohe Übereinstimmung aufweisen (s. Bild 1).
Unter der Annahme, dass alle Nodes innerhalb des Netzwerks lineare Aktivierungsfunktionen
verwenden und kein Bias anliegt, so dass gilt:

können wir schreiben:

Hier steht n für die fortlaufende Nummer des Trainingsbeispiels
und
für die Lernrate. Der aufmerksame
Leser wird feststellen, dass diese unregulierte Form des Trainingsalgorithmus
permanent vergrössert,
so dass es ins Unendliche wächst. Um dies zu verhindern, muss ein Normalisierungsmechanismus
eingeführt werden, der das Wachstum begrenzt. Eine proportionale Verringerung
von
durch einen Normalisierungsterm
führt darüber hinaus eine Konkurrenzsituation unter den Synapsen
ein. Konkurrenz, als ein Prinzip der Selbstorganisation, erweist sich hier
als wesentliche Zutat, um den Lernprozess zu stabilisieren.
Unter Einbeziehung eines Normalisierungsterms in Formel 2 können wir die Lernregel wie folgt formulieren:

wobei die Summierung im Nenner über alle Synapsen ausgeführt wird,
die mit dem Ausgabeneuron verbunden sind. Für eine kleine Lernrate
lässt sich diese Formel ohne grossen Präzisionsverlust vereinfachen
in

Die ersten beiden Terme
in Formel
4 bilden die Hebb'sche Justierung von
ab. Sie sorgen für die Eigenjustierung und damit für die selbstorganisierende
Natur der beschriebenen Infrastruktur. Der zweite Term
verhindert ein unendliches Wachstum von
und stabilisiert den Algorithmus. Er transformiert
in eine Form1
, die sowohl
vom synaptischen Gewicht
als auch vom
Output
abhängt.

Setzen wir Formel 5 in Formel 4 ein, erhalten wir eine generalisierte Form der Lernregel:

Während des Trainingsprozesses werden dem Netzwerk alle n Elemente
des Eingangsvektors x präsentiert. Initialisiert man die Gewichte
innerhalb dieses kleinen neuronalen Netzes mit kleinen positiven Startwerten
und wählt eine hinreichend kleine Lernrate
,
konvergiert der Algorithmus schnell zur letztendlichen Lösung. Man kann
nun den auf diesem Weg ermittelten Weight-Vektor w einfrieren, indem
eine weitere Justierung der Gewichte ausgesetzt wird. Im Anschluss kann der
Eingangsvektor x in das Netz geleitet werden, und wir erhalten am Ausgabeneuron
eine transformierte Zeitreihe: die erste Hauptkomponente des Eingangsvektors.
Kombiniert man mehrere solcher Eigenfilter miteinander in einem 2-Layer-Netzwerk und fügt einen Konkurrenzmechanismus zwischen den Ausgabeneuronen hinzu, erhält man eine Infrastruktur, die eine vollständig selbstorganisierte Komponentenanalyse durchführen kann (siehe Bild 2).
Bild 2: Principal Component Analysis (PCA) unter Verwendung eines 2-Layer Hebb-Netzwerks. Die Eingabe- und Ausgabeneuronen verwenden lineare Aktivierungsfunktionen und sind mit Hebb-Links vollverbunden. Der vorgestellte selbstorganisierende Algorithmus extrahiert unter Verwendung des Weight-Vektors w die ersten j Hauptkomponenten aus dem Eingangsvektor x. Der resultierende - verkleinerte - Ausgabevektor y kann nun als Eingangsvektor für ein normales Backpropagation-Netzwerk verwendet werden. In unserer Implementierung sind PCA-Netz und der Verarbeitungsteil als Symbionten in einem einzigen neuronalen Softwarebaustein miteinander verbunden.
Die Gewichte
werden auch hier nach
einer generalisierten Form Hebb'scher Organisation angepasst:

Das justierte Gewicht
berechnet sich
nach

Formel 7 erfordert ein wenig Erläuterung.
Wie im Bild 2 gezeigt, hat das PCA-Netzwerk i
Inputs und j Outputs, mit i > j. Die Information fliesst
vorwärts und rückwärts durch das Netz. Das Output
wird auf dem Vorwärtsweg berechnet

wobei der Vektor
aus allen synaptischen Verbindungen besteht, die zu Neuron j
hinführen. Im Gegensatz dazu ist der in Formel
9 durch
repräsentierte Vektor, der Vektor aller synaptischen Verbindungen, die
von einem Neuron i zu den Ausgabeneuronen führen. Unter
Verwendung der oben eingeführten Notation
lässt sich die Formel 7 nun wie folgt umformulieren:

Auch hier steht
wieder für die modifizierte Version des i-ten Elements des Eingangsvektors
, das nun jedoch
eine Funktion des Index j ist.

Gehen wir noch einen Schritt weiter, können wir definieren:

und damit Formel 7 in einer Form schreiben, die Hebb's Postulat entspricht:

Im Gegensatz zum Eigenfilter, der die auf dem Vorwärtsweg gewonnenen Informationen für die Adaption der Gewichte verwendet, erfordert das PCA-Netwerk einen zusätlichen Rückfluss von Information. Der Algorithmus kann in drei Schritte unterteilt werden:
wird nach Formel
9 vorwärts durch das Neuronengeflecht geleitet.
zu berechnen.

Sowohl der Hebb'sche Eigenfilter als auch das PCA-Netzwerk setzen voraus,
dass der Eingangsvektor auf Durchschnitt 0 normalisiert ist. Zusätzlich
kann es sinnvoll sein, eine Normalisierung auf eine Standardabweichung von
1 vorzunehmen. Der dimensional reduzierte Ausgabe-Vektor
erbt die Durchschnitt-0-Eigenschaft. Die Standardabweichung der Elemente von
kann hingegen variieren.
Im Allgemeinen konvergiert der Algorithmus sehr schnell. Es gibt jedoch ein ernstzunehmendes Problem: Datenfehler im Eingangsvektor wie etwa vergessene Splits auf Einzelpreise in Finanzzeitreihen können dazu führen, dass einige Gewichte aus dem Regularisierungsmechanismus ausbrechen und ins Unendliche wachsen, was den Eigenfilter oder auch das PCA-Netz zerstört. Die jeweilige Implementierung muss daher geeignete feste Limits setzen und gegebenenfalls einen Abbruch des Algorithmus herbeiführen, um solche Datenfehler abzufangen. •
wird an dieser Stelle
eingeführt, um den komplexeren Fall eines vollständigen Hebb-PCA-Netzwerks
verständlicher herleiten zu können.
und
als Variablen betrachtet werden.
Der vorgestellte Algorithmus operiert auf dem Level des einzelnen Links
und sollte daher eine Methode des Objekts sein, das einen solchen synaptischen
Link repräsentiert.. Die Variable
ist eine Eigenschaft des Neurons i und wird vor Beginn des Feedback-Durchlaufs
auf 0 gesetzt; die Variable
ist
eine Temporärvariable, die lediglich eingeführt wird, um die mehrfache
Berechnung von
zu vermeiden..