SNNS Tutorial für

Backpropagation Lernen

 

 

 

Marcus Trunkenpolz

9802525

LV-Nr: 407.248

LV: Wissensverarbeitung UE WS00/01

 

 

In diesem Beispiel wird anhand einens XOR-Netzes mit SNNS ein Netz für Backpropagation Lernen erstellt.

 

Um die einzelnen Schritte zu erleichtern, werden Screenshots vom SNNS-Manager verwednet.

 

 

Folgende Schritte werden erklärt:

1) Netz erstellen

2  Netz speichern und ansehen

3) Pattern-Files fürs Trainieren und Testen definieren

4) Einstellungen für Trainieren einstellen

5) Zu guter Letzt, trainieren und dann testen

 

1)     NETZ erstellen:

Man wählt im Menü BIGNET den Punkt „feed_forward“ aus.



Nun muss die Topologie des Netzes festgelegt werden. Also man braucht eine Input-, mindestens eine Hidden- und eine Output-Schicht.
Die Art der zu erstellenden Schichten kann mit dem Typ Button geändert werden.

Weiters muss die Neuronenanzahl der Schicht angegeben werden, dies funktioniert ähnlich der Definition der Größe einer Matrix. (Siehe Screenshot)



Nachdem alle Daten eingegeben wurden, muss nur noch der ENTER Knopf gedrückt werden.

Nun müssen Sie nur noch eine Eingabe-, eine Hidden- und eine Ausgabeschicht erstellen.

Nachdem Sie dies gemacht haben, einfach auf FULL CONNECTION klicken.

Jetzt sollten die Verbindungen erstellt sein, somit kann das Netz mit CREATE NET erzeugt werden.


2)     Netz speichern und ansehen


NETZ speichern:
Speichern ist immer wichtig, da Sie bei falscher Handhabung den SNNS Manager zum Absturz bzw. zum unfreiwilligen beenden bringen können.
Drucken Sie einfach auf den FILE-Button, dann kommt der File Browser (Siehe Screenshot)


Geben Sie nun den Filenamen ein, danach einfach auf SAVE klicken. Es muß dabei NET schwarz unterlegt sein.

NETZ ansehen:
Um das Netz anzusehen, klicken Sie auf DISPLAY, danach erhalten Sie folgendes Netz:



Um die Verbindungen zu sehen, muss unter  SETUP der ON und der 2,35-Button für den Punkt LINKS aktiviert werden.


 

3)     Pattern-Files fürs Trainieren und Testen definieren

In einem Musterfile (suffix: PAT) werden die Ein- und die dazugehörigen Ausgabewerte angegeben. Dazu muss der Header, die Anzahl der Patterns, der Eingabe- und Ausgabeneuronen angegeben werden. Danach folgen die einzelnen Ein- und Ausgabemuster. Mit den Zeichen # wird ein Kommentar gestartet.

Trainingsdatei XOR

SNNS pattern definition file V3.2
generated at Zeiselmauer März 20 10:20:23 2001

No. of patterns: 4
No. of input units 2
No. of outputs units: 1

#input pattern:1
0 0
# Output pattern: 1
0
#input pattern 2:
0 1
#Output pattern 2:
1
#input pattern 3:
1 0
#Output pattern 3:
1
#input pattern 4:
1 1
#Output pattern 4:
0



Diese obige Datei wird komplett übernommen und einfach mit der Extension(suffix) .pat gespeichert.

Pattern Files werden über den File Browser mit LOAD geladen.


 

4)     Einstellungen für Trainieren einstellen

Bevor wir mit dem Lernen anfangen können, müssen noch einige Einstellungen vorgenommen werden.


Die Anzahl der Durchläufe stellt man bei CYCLES ein.

Nun sollte auch das Test und Trainingsfile ausgewählt werden.

Durch Verwendung des Button USE könenn die verwendeten Muster ausgewählt werden, wobei obiger für die Trainingsmuster und unterer für die Testmuster steht.

Falls Sie ein Testmuster erstellt haben und dieses verwenden, müssen Sie darauf achten, dass der VALID Wert ungleich Null ist. (entspricht der Toleranzgrenze, ob ein Ausgabemuster zufriedenstellend ist)

Lernverfahren bestimmen(LEARN):
   .) Lernverfahren mit SEL.FUNCTION bestimmen (Std_Backpropagation)
   .) Parameter einstellen, zB [0,3] (Lernrate) und 0.1 (max erlaubte Abw.)

Updatemodus bestimmen (UPDATE)
  .) Modus mit SEL.FUNCTION bestimmen (Topological_Order)
  .)
SHUFFLE-Button drücken (dadurch werden die Muster in zufälliger
      Reihenfolge  ausgewählt)

Netzgewichte initialisieren (INIT)
   .) Initialisierungsfunktion mit SEL.FUNCTION bestimmen (zb
       Randomize_Weights)
   .) Bereich auswählen zB [+1,-1]
   .) INIT Button drücken


5)     Trainieren und TESTEN

Um die Ausgabe zu erleichtern, ist es beim Trainieren und Testen sinnvoll, das Graph-Panel zu aktivieren.



Trainieren selbst, wird mit dem Button ALL im Control Panel gestartet. Bei nichtzufriedenstellendem Ergebnis, kann dies nochmals wieder holt werden.
Wichitg ist jedoch, dass das Netz dabei mit RESET zurückgesetzt wird und die Gewicht der Verbindungen mit INIT neu bestimmt werden.

Ergebnisse werden über den File Browser als RES-File gesichert.