22.12.2013 Aufrufe

Lernverfahren von Künstlichen Neuronalen Netzwerken

Lernverfahren von Künstlichen Neuronalen Netzwerken

Lernverfahren von Künstlichen Neuronalen Netzwerken

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

hinausgeschossen.<br />

In einer Pseudo-Programmiersprache könnte der Algorithmus etwa so aussehen. t j ist dabei der erwartete Output:<br />

while Menge der Eingabemuster nicht leer do<br />

lege neues Eingabemuster p an und berechne den Output o j<br />

if o j = t j then mache nichts<br />

else if o j = 0 then { Ausgabe ist 0, sollte 1 sein, also w ij erhöhen}<br />

for each i ≤ n do w ij := w ij + η · o i endfor<br />

endif<br />

if o j = 1 then { Ausgabe ist 1, solle 0 sein, also w ij verringern}<br />

for each i ≤ n do w ij := w ij − η · o i endfor<br />

endif<br />

endif<br />

endwhile<br />

3.1.5 <strong>Lernverfahren</strong> bei Randerkennung<br />

Zur Veranschaulichung des Lernalgorithmus wird hier einem einstufigen Perzeptron<br />

mit drei Eingabeneuronen die logische AND-Funktion beigebracht. Für<br />

die Gewichte und den Schwellenwert des Ausgabeneurons werden am Anfang<br />

zufällige Werte eingesetzt. Als Schwellenwert hat sich 1.5 ergeben, diese Zahl<br />

wird in der Lernphase nicht mehr geändert. Die Lernrate ist mit 0.7 relativ<br />

hoch.<br />

Wie in Abb. 10 ersichtlich, hat das Netz die Funktion nach vier Schritten gelernt.<br />

Dem Netz wurden dazu verschiedene Eingabemuster und die dazugehörige<br />

Ausgabe t 4 präsentiert. Beim ersten Muster, ist das Ausgabeneuron aktiv, sollte<br />

es aber nicht sein. Darum werden die Gewichte w 24 und w 34 um die Lernrate<br />

erniedrigt, das Gewicht w 14 bleibt gleich, weil das Neuron 1 nicht aktiviert ist.<br />

Dies geht so weiter bis nach dem vierten Schritt die Gewichte richtig eingestellt<br />

sind und somit keine weiteren Gewichtsänderungen mehr gemacht werden, weil<br />

dann o 4 und t 4 bei jedem beliebigen Eingabemuster übereinstimmen.<br />

Man merkt, wenn man den Algorithmus an einem konkreten Beispiel durchrechnet,<br />

dass er der Hebbschen Lernregel sehr ähnlich ist. Es mussten nur einige<br />

Abb. 10: Ein Perzeptron lernt die<br />

Anpassungen gemacht werden, da es sich um überwachtes Lernen handelt. Im<br />

AND-Funktion<br />

Vergleich mit der Hebbschen Lernregel erkennt man bei diesem Lernalgorithmus folgende Unterschiede:<br />

1. Es erfolgt nur eine Gewichtsänderung, wenn das Netz einen Fehler gemacht hat. Dies ist auch sinnvoll ist<br />

aber nur möglich, weil es sich um überwachtes Lernen handelt.<br />

2. Ist das Ausgabeneuron nicht aktiv, sollte aber aktiv sein, werden die Gewichte zwischen den aktiven Eingabeneuronen<br />

und dem nicht aktiven Ausgabeneuron geändert. Das wäre bei strikter Anwendung der Hebbschen<br />

Lernregel nicht möglich.<br />

3. Der Wert der Gewichte kann auch kleiner werden, bei der Hebbschen Lernregel gibt es keinen Fall bei dem<br />

eine Verbindung an Stärke abnimmt.<br />

14

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!