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.
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 :
Gewichtsmodifikation :
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
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.
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 :
Überblick über den Algorithmus