CIC Lab
Training des XOR-Problems mit
KNN in JavaNNS
Computational Intelligence
and Control Laboratory
Ulrich Lehmann, Johannes Brenig, Michael Schneider
Inhalt
SS2007
XOR mit JavaNNS 1.1
1
Ende
Inhalt
CIC Lab
Computational Intelligence
and Control Laboratory
• Netz laden
• Display Settings
• Pattern erzeugen und laden
• Control Panel
• Error Graph
• Weights
• Training des Netzes
• Daten auswerten
• Quellen
Inhalt
SS2007
XOR mit JavaNNS 1.1
2
Ende
Netz laden
CIC Lab
Computational Intelligence
and Control Laboratory
Inhalt
SS2007
XOR mit JavaNNS 1.1
3
Ende
Netz laden
CIC Lab
Computational Intelligence
and Control Laboratory
Inhalt
SS2007
XOR mit JavaNNS 1.1
4
Ende
Display Settings
CIC Lab
Computational Intelligence
and Control Laboratory
Inhalt
SS2007
XOR mit JavaNNS 1.1
5
Ende
Display Settings
CIC Lab
Computational Intelligence
and Control Laboratory
Erwarteter
maximaler
Wert für die
Neuronen
Geänderte Farbskala
SS2007
XOR mit JavaNNS 1.1
Erwarteter maximaler
Wert für die Gewichte
Inhalt
6
Ende
Pattern-Dateien laden
CIC Lab
Computational Intelligence
and Control Laboratory
Inhalt
SS2007
XOR mit JavaNNS 1.1
7
Ende
Pattern-Dateien laden
CIC Lab
Computational Intelligence
and Control Laboratory
Bei diesem Beispiel
werden nur
Trainingsdaten
und keine Validierungsund Testdaten
verwendet.
vorhandene Patterndatei (xor.pat) mit den Trainingsdaten auswählen und öffnen
Inhalt
SS2007
XOR mit JavaNNS 1.1
8
Ende
Format der Pattern Dateien
CIC Lab
Computational Intelligence
and Control Laboratory
Pattern-Datei kann mit Text-Editor erzeugt und bearbeitet werden
Aufbau der Kopfzeile ist
zwingend einzuhalten
Anzahl der Pattern muss
mit der tatsächlichen Anzahl
der Datensätze übereinstimmen
Bereitstellung der
Datensätze gemäß
diesem Muster
(hier: Trainingspattern)
Anzahl der
Eingabeneuronen
Anzahl der
Ausgabeneuronen
Inhalt
SS2007
XOR mit JavaNNS 1.1
9
Ende
Control Panel
CIC Lab
Computational Intelligence
and Control Laboratory
Inhalt
SS2007
XOR mit JavaNNS 1.1
10
Ende
Control Panel
CIC Lab
Computational Intelligence
and Control Laboratory
Trainingspattern auswählen
Validierungspattern ist bei diesem Beispiel nicht vorhanden
(Es wird automatisch das vorhandene Pattern gesetzt.)
Inhalt
SS2007
XOR mit JavaNNS 1.1
11
Ende
Control Panel
CIC Lab
Computational Intelligence
and Control Laboratory
zufällige Belegung der Gewichte,
um das Training des KNN
mit möglichst asymetrischen
Gewichten zu starten
-1.0
1.0
Festlegung des Intervalls,
aus dem die zufälligen Werte
für die Anfangsbelegung der Gewichte
ausgewählt werden sollen
Inhalt
SS2007
XOR mit JavaNNS 1.1
12
Ende
Control Panel
CIC Lab
Computational Intelligence
and Control Laboratory
Topological Order bedeutet,
dass das KNN
von links nach rechts
abgearbeitet wird
Inhalt
SS2007
XOR mit JavaNNS 1.1
13
Ende
Control Panel
CIC Lab
Computational Intelligence
and Control Laboratory
Maximaler
zulässiger Fehler
Auswahl des
Trainingsverfahrens
Anzahl der Schritte
nach denen validiert
werden soll
Lernrate 0,1 bis 0,9
Zufällige Wahl der
Reihenfolge der
Trainingsdatensätze
Anzahl der
Lernschritte
Mit „Learn All“ werden
alle Trainingsdatensätze
zum Training
herangezogen. Es sind
jedoch noch weitere
Einstellungen notwendig
bevor das Training
begonnen werden darf.
Vor dem Lernen müssen die
Gewichte initialisiert werden, d. h.
mit zufälligen Startwerten belegt
werden
SS2007
XOR mit JavaNNS 1.1
Inhalt
14
Ende
Error Graph
CIC Lab
Computational Intelligence
and Control Laboratory
Graphische Darstellung
von Trainings- und
Validierungsfehler
Inhalt
SS2007
XOR mit JavaNNS 1.1
15
Ende
Error Graph
CIC Lab
Computational Intelligence
and Control Laboratory
Summe des
Quadratfehlers
Die Achsen sind skalierbar
Löschen der
Fehlerkurven
Gitternetzlinie
Anzahl der Trainingsschritte
Inhalt
SS2007
XOR mit JavaNNS 1.1
16
Ende
Weights
CIC Lab
Computational Intelligence
and Control Laboratory
Graphische Darstellung
der Verbindungsgewichte
in einer Matrix
Inhalt
SS2007
XOR mit JavaNNS 1.1
17
Ende
Weights
CIC Lab
Computational Intelligence
and Control Laboratory
Zielneuron
Aktivierung des
Vebindungsgewichtes
z. B. von Neuron 2 zu
Neuron 3
Die Gewichte sind noch
nicht aktiviert.
Quellneuron
Inhalt
SS2007
XOR mit JavaNNS 1.1
18
Ende
Training
CIC Lab
Computational Intelligence
and Control Laboratory
Initialisieren der Gewichte
Inhalt
SS2007
XOR mit JavaNNS 1.1
19
Ende
Training
CIC Lab
Computational Intelligence
and Control Laboratory
Inhalt
SS2007
XOR mit JavaNNS 1.1
20
Ende
Training
CIC Lab
Computational Intelligence
and Control Laboratory
Inhalt
SS2007
XOR mit JavaNNS 1.1
21
Ende
Daten auswerten
CIC Lab
Computational Intelligence
and Control Laboratory
1. Möglichkeit: Gespeicherte result- file Datei
Vergleich der
Soll- und
Istwerte
Nummer des Datensatzes
Input Werte
Target Werte (Sollwert)
Ergebnis des KNN
Inhalt
SS2007
XOR mit JavaNNS 1.1
22
Ende
Daten auswerten
CIC Lab
Computational Intelligence
and Control Laboratory
2. Möglichkeit: Werte direkt in JNNS ansehen
Sowohl Input als auch Outputwerte
des KNN werden angezeigt
Andere Pattern (z.B. Validierungs- Pattern
und
Unter „Updating“ kann der Datensatz
auswählen
Testdaten) können auf diese Weise(hier
auchnur eineausgewählt
Pattern werden, der angezeigt werden
analysiert werden. Bei einer größeren
soll. Mit den Pfeiltasten können die
Datei vorhanden)
und unübersichtlichen Datenmenge sind
Datensätze des Patterns einzeln
jedoch andere Verfahren zur
durchgegangen werden.
Visualisierung zu empfehlen.
Inhalt
SS2007
XOR mit JavaNNS 1.1
23
Ende
Quellen
CIC Lab
Computational Intelligence
and Control Laboratory
• Software „JNNS incl. Handbuch“:
http://www-ra.informatik.uni-tuebingen.de/software/
• Software „Java“:
http://www.java.com/de
• „Simulation neuronaler Netze“ von Andreas Zell
• Vorlesungsskript Prof. Lehmann
Inhalt
SS2007
XOR mit JavaNNS 1.1
24
Ende
CIC Lab
Computational Intelligence
and Control Laboratory
Vielen Dank für Ihre
Aufmerksamkeit !
Inhalt
SS2007
XOR mit JavaNNS 1.1
25
Ende

KNN 4 Konzepte Architektur Training