- Genetische Lernalgorithmen
- Für kompliziertere Netzstrukturen, beispielsweise Feed-Forward-Netze
mit vielen Schichten, konvergiert die in der
9.Übung
besprochene Error-Back-Propagation recht langsam. Oft sind in
solchen Situationen genetische Algorithmen vorzuziehen.
Man betrachtet dabei eine sich reproduzierende Population von
Netzwerken, die verschiedenen genetischen Operationen unterworfen
wird - asexuelle Reproduktion, Cross-over und Mutation. Dabei werden
jeweils die erfolgreichsten Individuen (Netze, mit der besten
Vorhersageleistung) bevorzugt. Als Genom eines Individuums fungieren
hier die Kopplungsstärken der Synapsen.
- Im vorliegenden Programm soll ein mehrschichtiges Feed-Forward-Netz
eine Zeitreihe vorhersagen (vergl. Perzeptron,
9.Übung),
zum Beispiel die durch die logistische Abbildung
gegebene Folge.
ffngene.c
- Selbstorganisierte Karten
- Im Gehirn sind häufig Bereiche, die benachbarte Regionen des
Körpers kontrollieren, auch durch benachbarte Neuronen repräsentiert.
Es stellt sich also die Frage, wie derartige, die Topologie erhaltende
Abbildungen durch Selbstorganisation entstehen können. Ein
entsprechendes Modell wurde erstmals von Kohonen vorgeschlagen.
- Angenommen, ein neuronales Netz erhält als Eingabe irgendwelche
zufälligen d-dimensionalen Vektoren , die einer gegebenen
Verteilung entsprechen. In einem Satz Neuronen,
, wird jeweils das Neuron aktiv, dessen d-dimensionaler
Vektor synaptischer Gewichte der Eingabe
am nächsten kommt. Ziel der Lernprozedur ist eine optimale Verteilung
der Zuständigkeiten der Neuronen auf mögliche Eingabesignale,
d.h. Eingaben , die mit großer Wahrscheinlichkeit
auftreten, sollten durch viele Neuronen verarbeitet werden.
- Ein entsprechender Lernalgorithmus funktioniert wie folgt:
(i) Zu jeder Eingabe wird das Neuron bestimmt, dessen
synaptischer Vektor der Eingabe am nächsten kommt.
(ii) Die Kopplungen aller Neuronen aus der Nachbarschaft von
werden gemäß
verändert. Dabei ist g(j,t) eine Abschneide-Funktion
(z.B. Gauss-Verteilung), die mit zunehmendem Betrag von j schnell
abfällt. Im Laufe der Iteration werden
und der aktive Bereich der Funktion g verkleinert, so daß
am Ende nur noch Neuronen in unmittelbarer Nähe von modifiziert
werden.
- Ist beispielsweise die Eingabe zweidimensional, die Topologie der
Neuronen dagegen eindimensional, so wird das System versuchen, seine
Kette von Synapsen möglichst ebenenfüllend zu verteilen.
kohomap.c
|