Cascade-Correlations-Verfahren anhand des Xor-Problems
Cascade-Correlations-Verfahren anhand des Xor-Problems
Cascade-Correlations-Verfahren anhand des Xor-Problems
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Kandidatentraining<br />
Das <strong>Verfahren</strong> erzeugt ein neues Neuron, initialisiert zufällig <strong>des</strong>sen Gewichte und<br />
modifiziert diese innerhalb einer Trainingsprozedur. Das Neuron erhält während seines<br />
Trainings Eingaben von allen Neuronen der Eingabeschicht und allen verborgenen<br />
Schichten.<br />
Das Kandidatenneuron beeinflusst die Ausgabe <strong>des</strong> Netzes nicht, da es keinerlei<br />
Informationen in das Netzwerk leitet. Insbesondere besteht keinerlei Verbindung <strong>des</strong><br />
Kandidaten zu den Neuronen der Ausgabeschicht. Ziel <strong>des</strong> Kandidatentrainings ist die<br />
Bestimmung der Gewichte einer weiteren verborgenen Schicht, deren Einfügung sich positiv<br />
auf die zukünftige Fehlerentwicklung auswirkt.<br />
Um die Auswirkung <strong>des</strong> potentiellen Einfügens eines Kandidaten in das Netz zu beurteilen,<br />
wird der Korrelationskoeffizient betrachtet.<br />
Im Fall <strong>des</strong> XOR-<strong>Problems</strong> befindet sich das aktuelle Netz immer noch im Zustand t=0. Es<br />
k<br />
wird ein Neuron n mit einem dreidimensionalen Gewichtsvektor erzeugt. Als<br />
Aktivierungsfunktion seit fact<br />
( x ) = tanh( x ) gewählt. Die Abb. 4 demonstriert diese Situation.<br />
Kovarianzsumme<br />
Das Kandidatenneuron liefert folgende Ausgaben bei Anlegen der Eingabedaten an das<br />
Netz:<br />
Nr. Muster O 1 O 2 O 3<br />
k<br />
O<br />
1 1 1 1 -0.197375<br />
2 0 1 1 -0.996682<br />
3 1 0 1 -0.761594<br />
4 0 0 1 -0.999329<br />
o<br />
o<br />
o<br />
o<br />
k<br />
1<br />
k<br />
2<br />
k<br />
3<br />
k<br />
4<br />
= tanh(1⋅ 3.00 + 1⋅ 0.80 + 1 ⋅( − 4.00)) =−0.197375<br />
= tanh(0⋅ 3.00 + 1⋅ 0.80 + 1 ⋅( − 4.00)) =−0.996682<br />
= tanh(1⋅ 3.00 + 0⋅ 0.80 + 1 ⋅( − 4.00)) =−0.761594<br />
= tanh(0⋅ 3.00 + 0⋅ 0.80 + 1 ⋅( − 4.00)) =−0.999329<br />
Anschließend verändert das <strong>Verfahren</strong> die Gewichte <strong>des</strong> Kandidatenneurons durch<br />
k k k k<br />
Maximierung der Kovarianzsumme S ( w , w , w ) nach Formel (3), die zur Zeit t=0<br />
folgenden Wert annimmt:<br />
0 1 2 3<br />
1<br />
S (3.00,0.80, − 4.00) = ⋅( − ) =<br />
4<br />
k<br />
k<br />
0 ∑op<br />
δp4 δ4<br />
p p=<br />
1<br />
1<br />
= ( − 0.197375 ⋅ 1.010413 + ( − 0.996682) ⋅ ( − 1.004359) +<br />
4<br />
+− ( 0.761594) ⋅− ( 0.995641) + ( −0.999329) ⋅ 0.989587 =<br />
1<br />
= 0.570947 = 0.1427369<br />
4<br />
δ<br />
4<br />
= (1.008519 −1.006253 − 0.997535 + 0.987693) / 4 =− 0.001894<br />
10