Die von Teuvo Kohonen bereits in den frühen achtziger Jahren vorgestellten Kohonennetze bzw. Self-Organizing Feature Maps (SOFMs) sind biologisch motivierte, einschichtige neuronale Netze, die mit einem unüberwachten Lernverfahren trainiert werden. Die Gewichte der Neuronen entsprechen dabei Vektoren im Inputraum. Jedes Neuron repräsentiert einen Unterraum des Inputraumes, in dem alle Datenpunkte zu seinem Gewichtsvektor eine geringere euklidische Distanz besitzen als zu den Gewichtsvektoren der anderen Neuronen. D.h., es erfolgt eine Voronoi-Zerlegung des Inputraumes. Eine solche Voronoi-Zerlegung kann sich in einem zweidimensionalen Inputraum mit den Komponenten x1 und x2 wie folgt darstellen, wobei die Gewichtsvektoren durch schwarze Kreise symbolisiert werden.

Die Besonderheit der Kohonennetze besteht in einer Anordnung der Neuronen zu geometrischen Strukturen. Möglichkeiten hierfür sind z.B. die Kohonenkette, der Kohonenring und das Kohonengitter.

Die Struktur erhält aufgrund von Nachbarschaftsbeziehungen, die sich aus ihr ergeben, einen starken Einfluss auf den Lernprozess. Sie ist daher problemspezifisch zu wählen.

Das Training von Kohonennetzen findet folgendermaßen statt. Zunächst wird dem Netz ein Input x(t) präsentiert und die Aktivität zi(wi(t),x(t)) aller Neuronen i berechnet:

Das Neuron, dessen Gewichtsvektor den geringsten euklidischen Abstand zum Input x und damit die geringste Aktivierung besitzt, wird das Best-Matching-Neuron bm.

Das Best-Matching-Neuron erhält die Ausgabe ybm=1. Die Ausgabe aller anderen Neuronen beträgt Null.

Der neue Gewichtsvektor wi(t+1) eines Neurons i errechnet sich nun aus seinem aktuellen Gewichtsvektor wi(t), der Lernrate η(t), der Nachbarschaftsfunktion hi,bm(t) sowie der Differenz des Gewichtsvektors wi(t) und des Inputs x(t).

In diesem Praktikum wird die folgende Nachbarschaftsfunktion genutzt. Der Parameter di,bm(t) gibt hierbei die Distanz eines Neurons i zum Best-Matching-Neuron bm entlang der Verbindungen der Neuronen an. Mit Hilfe des Lernradius r(t) ist konfigurierbar, wie stark die Nachbarneuronen des BM-Neurons adaptiert werden.

Am Beispiel einer einfachen Kohonenkette, lässt sich die Nachbarschaftsfunktion für drei verschiedene Lernradien wie folgt darstellen. In der Abbildung werden dabei die Beträge von hi,bm(t) für einem Lernradius r(t)=2.5 ergänzend als Rotfärbung der entsprechenden Neuronen visualisiert.

Aufgrund der Nachbarschaftsfunktion erfolgt in einem Trainingsschritt nicht nur die Adaptation der Gewichte des BM-Neurons, sondern auch die seiner Nachbarn im Kohonennetz. Da sich mit steigendem Lernradius r(t) die Beträge von hi,bm(t) erhöhen, findet eine Verstärkung der Adaptation der Gewichte von Nachbarneuronen des BM-Neurons statt. Mit zunehmender Distanz eines Neurons i zum Best-Matching-Neuron hingegen, sinkt der Wert von hi,bm(t) und führt somit zu einer Einschränkung der Gewichtsadaptation des entsprechenden Neurons, wie die folgende Abbildung am Beispiel einer Kohonenkette zeigt.

Auf diese Weise lernen benachbarte Neuronen ähnliche Inputs zu repräsentieren. D.h., Neuronen, die im Kohonennetz nur eine geringe Distanz besitzen, repräsentieren nach einem abgeschlossenen Training Inputs mit einem geringen euklidischem Abstand im Inputraum.

Um eine Konvergenz des Verfahrens zu gewährleisten, werden die Lernrate η(t) und der Lernradius r(t) mit jedem Trainingsschritt verringert.

Der Lernprozess stabilisiert sich somit nach einer endlichen Anzahl an Trainingsschritten sichtbar.

Bei ungeeigneter Wahl der Parameter η(t), Δη, r(t) sowie Δr ist es möglich, dass sich eine Kohonenkette nicht vollständig entfalten kann. Dadurch können Neuronen, die entlang der Kohonenkette eine hohe Distanz aufweisen, Inputs repräsentieren, die im Inputraum nur einen geringen euklidischen Abstand besitzen.

Solch eine eingeschränkte Entfaltung der Kohonenkette wird als topologischer Defekt bezeichnet.