Kohohen-Netze


Kohohennetze gehören zu den sogenannten selbstorganisierenden Netzen. Das heißt, daß keine Ausgabe für eine Eingabe vorgegeben wird. Daher können hier keine Verfahren, die auf der Exitenz einer Fehlerfunktion beruhen, (wie Backpropagation) angewendet werden. Das Netz ist vielmehr in der Lage Häufungen in der Trainingsmenge zu erkennen und Cluster zu bilden, d.h. ähnliche Eingaben auf die gleiche Ausgabe abzubilden. Solche Verfahren sind dann geeignet, wenn wenig Informationen über die Ausgabeklasse (wie Anzahl der Klassen, Klassenzugehörigkeit der Elemente etc.) bekannt sind.
Kohohennetze bilden sogenannte topologische Karten aus. Diese Karten können Bereichsähnlichkeiten abbilden. Jedem Element aus einem Bereich wird die gleiche Ausgabeklasse zugeordnet
Abbildung: Funktion eines Kohohennetzes

Aufbau von Kohohennetzen
Ein Kohohennetz besteht aus eine Eingabeschicht und einer Ausgabeschicht. Jedes Neuron der Eingabeschicht ist mit allen Neuronen der Ausgabeschicht verbunden. Die Neuronen in der Ausgabeschicht sind durch eine Gitterstruktur miteinander verbunden.
Abbildung : Aufbau eines Kohohennetzes Es wurden nur die Verbindungen zu einem Ausgabeneuron eingezeichnet
Durch Kohohennetze werden einige Prinzipien verwirklicht, die auch beim menschlichen Gehirn beobachtet werden können. Das erste ist die Nachbarschaftsinvarianz, d.h. benachbarte Bereiche des Eingaberaums werden auf benachbarte Bereiche des Ausgaberaums abgebildet. Beim Menschen liegen z.B. die Bereiche, die Fuß und Bein 'steuern' im Gehirn nebeneinander. Das Zweite ist die Fovealisiereung. Dies bedeutet, das kleine Bereiche des Ausgaberaums auf größere Bereiche des Ausgaberaums abgebildet werden und dafür einigen größeren Breichen des Eingaberaum 'weniger Beachtung' geschenkt wird. Das heißt, es werden bestimmte Bereiche differenzierter ausgewertet als andere. Beim Menschen ist z.B. die Pupille des Auges ein solcher Bereich, der sehr stark ausgewertet wird. (z.B. im gegensatz zum restlichen Auge). Das Modell versucht, einen n-dimensionalen Eingaberaum in einem zweidimensionalen Ausgaberaum darzustellen. Könnte aber sicherlich auf mehrdimensionale Eingaberäume erweitert werden.

Das Lernverfahren
Zunächst werden die Gewichte der Verbindungen zu der Eingabeschicht mit der Ausgabeschicht geeignet initialisiert. Die Auswahl der Startgewichte beeinflußt das Netz. Eine schlechte Wahl kann zu schlechten Ergebnissen führen. Dann wird die Distanz der Eingabe zu den Ausgabeneuronen berechnet. D.H. für jedes Ausgabeneuron wird der Verktor, deren Elemente die Gewichte der Verbindungen zu den Eingabeneuronen bilden und der aktuellen Eingabe berechnet. Das Neuron mit dem geringsten Abstand (das Gewinnerneuron) wird ermittelt. Dann werden die Gewichte dieses Neurons in Richtung der Eingabe gezogen. (Mittels einer Art Delta-Regel). Die Neurone im Umfeld des Gewinnerneurons werden ebenfalls je nach Abstand zu diesem modifiziert. Der Abstand bzw. das Umfeld eines Neurons wird durch die Gitterstruktur der Ausgabeschicht bestimmt. Dadurch erreicht man die Nachbarschaftsinvarianz. Die Gewichte der benachbarten Neurone werden auch in die Richtung der aktuellen Eingabe gezogen und sind dieser daher 'ähnlich'. Das heißt, wird nun ein ähnliches Neuron aus dem Eingaberaum angelegt, ist ein Ausgabeneuron, daß in der Nachbarschaft lag auch ähnlich zu dieser Eingabe und feuert.

Das ganze in Formeln
Index des Gewinnerneurons : Formel : Index des Gewinnerneurons
Gewichtsmodifikation : Formel : Gewichtsmodifikation
Symbol : Lernrate bezeichnet die zeitlich veränderliche Lernrate aus dem Intervall [0,1]. Diese fällt für gewöhnlich im Laufe der Trainingsphase.
dij bezeichnet die Abstandfunktion, also die Funktion, die den Abstand einen Neurons zu Gewinnnerneuron bestimmt. Sie ist umso größer, je kleiner der Abstand der Neurone ist.
Die Änderungen sind proportional zur Lernrate und der Abstandfunktion.
eine einfache Nachbarschaftsfunktion
Formel : eine einfache Nachbarschaftsfunktion
Als m-ter Nachbar eines Neuron werden alle Neurone bezeichnet, die mit maximal m Schritten über die Kanten des Gitters erreicht werden können.
Man kann sich auch feinere Abstufungen vorstellen. Dazu werden den Neuronen Punkte im Raum zugeordnet. Nun kann man den euklidischen Abstand z von zwei Neuronen berechnen.
Euklidischer Abstand
Dieser kann natürlich noch nicht als Abstandsfunktion verwendet werden, da dies ja proportional zum Abstand ist. Aber z bildet die Grundlage für eine Reihe von Abstandsfunktionen :

Formel :Gauss

 Formel : Mexica Hat

Formel : cos

Überblick über den Algorithmus

  1. Initialisierung :
    - Gewichtsvektoren werden gewählt
    - Lernrate wir geeignet festgelegt
  2. stochatische Auswahl eines Trainingsvektors
  3. Berechnung des Gewinnerneurons
  4. Neuberechnung der Gewichte des Gewinnerneurons und seiner Umgebung
  5. Modifikation von Nachbarschaftsradius und Lernrate
  6. Prüfen eines Konvergenzkriteriums

Der Nachbarschaftradius legt fest, bis zu welchem Abstand die Neurone modifiziert werden. Zum Beispiel kann der Wert von m (für den m-ten Nachbarn) in jedem Schritt verringert werden. Die stochastische Auswahl kann zu einer Fovealisierung führen, indem die Wahrscheinlichkeitsfunktion so gewählt wird, daß mehr Trainingsvektoren aus einem Bereich stammen. Dieses wird dann auf mehr Ausgabeneurone verteilt.
Konvergenzbetrachtungen
Zunächst kann der Fall betrachtet werden, daß das netz nur aus einem Ausgabe- und einem Einbgabeneuron besteht. Das Eingabeneuron kann reelle Zahlen aus einem bestimmten Intervall verarbeiten. Es kann gezeigt werden, daß sich in diesem Fall das Gewicht in der Intervallmitte einpendeln wird. Daraus kann nun der eindimensionale Fall hergeleitet werden. Hier besteht das Netz aus einem Eingabeneuron (das wieder ein bestimmtes Intervall verarbeitet) und einer Menge von Ausgabeneuronen, die linear angeordnet sind. Die Gewichte zu den den Ausgabeneuronen seinen zu Beginn monoton geordnet. Die Netzgewichte werden sich dann so einstellen, daß diese das Intervall in gleich große Stücke zerteilen.
Hat man nun eine zweidimensionale Karte und zwei Eingabeneuronen, die je ein Intervall aufnehmen können und sind die Gewichte in der Karte in beide Richtungen monoton geordent, so werden auch die beiden Intervalle in gleich große Stücke geteilt.