Transcript ppt

Wismar
Business School
Wissensextraktion
mittels
künstlicher neuronaler Netze
Arbeit mit dem JavaNNS
Uwe Lämmel
www.wi.hs-wismar.de/~laemmel
[email protected]
Neuronale Netze - Arbeiten mit dem JavaNNS
Folie 1
Schritte






JavaNNS installieren
Erzeugen eines Netzes
Anlegen einer Training-Datei .pat
Anlegen einer Test-Datei .pat
Trainieren des Netzes
Speichern und Auswerten der Ergebnisse
Neuronale Netze - Arbeiten mit dem JavaNNS
Folie 2
JavaNNS installieren






Herunterladen von
www.ra.cs.uni-tuebingen.de/software/JavaNNS/welcome_e.html
Java / JRE muss installiert sein
Entpacken
Start mit:
>java –jar JavaNNS.jar
besser: anlegen einer .cmd-Datei mit Aufruf-Zeile
Start von JavaNNS und probieren:
– Help > Content
– falls Fehler, dann Browser-Pfad einstellen unter
View > Properties…
Neuronale Netze - Arbeiten mit dem JavaNNS
Folie 3
Erzeugen eines Netzes
 Netz zur Erkennung von Großbuchstaben
 3 Schichten
– Eingabe-Schicht 5x7 Neuronen
– verdeckte Schicht 10 Neuronen
– Ausgabe-Schicht 26 Neuronen
– genau ein Neuron aktiv
– Neuron ~ Buchstabe
Neuronale Netze - Arbeiten mit dem JavaNNS
Folie 4
Erzeugen eines Netzes



Vorbereitung:
– View > Network
Schichten anlegen:
– Tools > Create > Layers…
– Maske füllen
– Typ der Neuronen festlegen
(Input, Hidden, Output)
– Create erzeugt Schicht
Schichten in Reihenfolge
– Eingabe-Schicht
– verdeckte Schicht (hidden)
– Ausgabe-Schicht erzeugen
erzeugen
create layer für Eingabe-Schicht
Neuronale Netze - Arbeiten mit dem JavaNNS
Folie 5
Erzeugen eines Netzes
 Ausgabe-Schicht mit 4x7 Neuronen erzeugen
 Die letzten beiden Neuronen (rechts unten)
löschen !  26 Neuronen in Ausgabe-Schicht
 Netz-Darstellung anpassen unter
View > Display Settings …
Neuronale Netze - Arbeiten mit dem JavaNNS
Folie 6
Erzeugen eines Netzes – Verbindungen
 Tools > Create > Connections …
 Auswahl von:
Connect feed-forward
 Connect – erzeugt die Verbindungen
Sichern nicht vergessen!
Neuronale Netze - Arbeiten mit dem JavaNNS
Folie 7
Erzeugen einer Muster-Datei zum Training
 Editor
PSPad, Notepad++ …
 .pat-Datei erzeugen mit
nebenstehender Struktur
 # Zeilen = Kommentar
 5x7 Eingabe-Neuronen mit
0-1-Buchstaben-Muster
 26 Ausgabe-Neuronen,
25 davon 0 und eine 1 als
Vertreter des Buchstabens
  lettertrain.pat
Neuronale Netze - Arbeiten mit dem JavaNNS
Folie 8
Erzeugen einer pat-Datei zum Testen
 Kopie der Trainingsdatei anlegen
 Zwei Werte in jedem Eingabemuster zufällig
verändern (0->1 oder 1->0)
– entspricht ca. 5% Abweichung
  lettertest.pat
Neuronale Netze - Arbeiten mit dem JavaNNS
Folie 9
Trainieren des Netzes
 Laden der Muster-Datei zum Trainieren
 Bei Fehler:
– Netz prüfen:
– Anzahl und Typ der Neuronen
– Verbindungen
– Muster-Datei prüfen
– Zahl der Muster
– Zahl der Werte 0,1
Neuronale Netze - Arbeiten mit dem JavaNNS
Folie 10
Trainieren des Netzes – Vorarbeiten
 Öffnen
– Tools > Control Panel
– View > Error Graph
 Probieren:
– Control Panel > Updating
– Muster durchklicken
– Eingabe-Muster == Buchstabe
– andere Schichten ohne erkennbare Struktur,
verschiedene Grüntöne
Neuronale Netze - Arbeiten mit dem JavaNNS
Folie 11
Trainieren des Netzes







Control Panel > Learning
Init
Learn All (für etwa 100 Zyklen)
Error Graph beobachten!
ev. weiter Learn All
Fehler-Kurve beobachten
Qualität prüfen (siehe nächste Folie)
Neuronale Netze - Arbeiten mit dem JavaNNS
Folie 12
Trainieren des Netzes – Qualität prüfen





Control Panel > Updating
Muster durchklicken
Ausgabe-Schicht beobachten
Werden alle Buchstaben erkannt?
Falls nein, zurück zur vorherigen Folie
 Learning
Neuronale Netze - Arbeiten mit dem JavaNNS
Folie 13
Speichern und Bewerten der Ergebnisse
 Test-Datei laden
 KEIN Training!
 File > Save Data …
– Dateiname ändern in .res-Datei,
z.b. test1.res
– Erscheint Fenster „Saving details“
– include ouput patterns aktivieren
– speichern
Neuronale Netze - Arbeiten mit dem JavaNNS
Folie 14
Speichern und Bewerten der Ergebnisse
 .res-Datei enthält:
– gewünschtes Output je Muster
– berechneter Output je Muster (real-Werte)
 res-Datei muss ausgewertet werden
 EXCEL / eigenes Programm
Neuronale Netze - Arbeiten mit dem JavaNNS
Folie 15
2 Muster-Dateien parallel
 Laden der Trainingsdatei
 Laden der Test-Datei
 im Control Panel unter Patterns
– Training set
– validation set (Test)
– einstellen
 Trainieren wie beschrieben
 im Error graph Fenster 2 Kurven:
– Fehler Trainingsmenge
– Fehler Testmenge
Neuronale Netze - Arbeiten mit dem JavaNNS
Folie 16
Ende
Neuronale Netze - Arbeiten mit dem JavaNNS
Folie 17