Upload
elke-schmeling
View
107
Download
2
Embed Size (px)
Citation preview
Künstlich Neuronale Netze
Aufbau, Training und Visualisierungauf der Stuttgarter
Simulationsplattform SNNS v4.1
2. Anhand zweier Beispiele: - 2-Bit Decoder - Kennlinie
Forschungsverbund Neuronale Fuzzy-Logik
Martin Hardes
2-Bit Decoder Kennlinie
0 0
0 1
1 0
1 11
0
1
2
3
4Z0
Z1
Input
Output
0
0,1
0,2
0,3
0,4
0,5
0,6
0,7
0,8
0,9
0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9
Z0 Z1 n
0 0 0
0 1 0,25
1 0 0,50
1 1 0,75
Trainingsdaten Testdaten
Testdaten
Trainings-, Valid- und Testdaten werden in PATTERN-Dateien abgelegt
Decoder_train.pat Kennline_train.pat
SNNS pattern definition file V3.2generated at Thu Jun 08 18:53:43 2000
No. of patterns : 3No. of input units : 2No. of output units : 1
# Input 1:0 0# target 1:0# Input 2:0 1# target 2:0.25# Input 3:1 1# target 3:0.75
SNNS pattern definition file V3.2generated at Thu Jun 08 18:53:43 2000
No. of patterns : 9No. of input units : 1No. of output units : 1
# Input 1:0.1500# target 1:0.1500# Input 2:0.2375# target 2:0.1527# Input 3:0.3250# target 3:0.1610
# Input 4:0.4125# target 4:0.1939# Input 5:0.5000# target 5:0.3257# Input 6:0.5875# target 6:0.6771# Input 7:0.6750# target 7:0.8089# Input 8:0.7625# target 8:0.8418# Input 9:0.8500# target 9:0.8500
Trainings-, Valid- und Testdaten werden in PATTERN-Dateien abgelegt
Decoder_valid.pat Kennline_valid.pat
SNNS pattern definition file V3.2generated at Thu Jun 08 18:53:43 2000
No. of patterns : 1No. of input units : 2No. of output units : 1
# Input 1:1 0# target 1:0.5
SNNS pattern definition file V3.2generated at Thu Jun 08 18:53:43 2000
No. of patterns : 1No. of input units : 1No. of output units : 1
# Input 1:0.63125# target 1:0.7750
Trainings-, Valid- und Testdaten werden in PATTERN-Dateien abgelegt
Decoder_test.pat Kennline_test.pat
SNNS pattern definition file V3.2generated at Thu Jun 08 18:53:43 2000
No. of patterns : 1No. of input units : 1
# Input 1:0.63125
SNNS pattern definition file V3.2generated at Thu Jun 08 19:50:56 2000
No. of patterns : 1No. of input units : 2
# Input 1:1 0
Bignet
Erstellen eines Feedforward Netzesfür das Decoder Beispiel
Decoder.net
Kennlinie.net
Darstellung der Netzstrukturen mit DISPLAY
Darstellung der Aktivierungsfunktion
0
0,1
0,2
0,3
0,4
0,5
0,6
0,7
0,8
0,9
1
1,1
-10 -9 -8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
net
out
Aktivierung:0,144
-4,952
Aktivierung:0,144-4,952
1
2
3
Aktivierung:0,502Bias:1,437
Ausgabefunktion (linear) : oi = ai = 0,144
Netzeingabe: net3 = (w13 * o1) + (w23 * o2)net3 = (-4,952*0,144)+(-4,952*0,144) = -1,426
Aktivierungsfunktion (sigmoid) : aj = 1/(1+e-(netj + bias))a3= 1/(1+e-(-1,426 + 1,437)) = 0,502
Darstellung der NET-Dateien in Textformat
SNNS network definition file V1.4-3Dgenerated at Thu Aug 12 16:15:18 1999
network name : dec_testd_xsource files :no. of units : 5no. of connections : 6no. of unit types : 0no. of site types : 0
learning function : Rpropupdate function : Topological_Order
unit default section :
act | bias | st | subnet | layer | act func | out func-----------|-----------|----|----------|------- |------------------|------------- 0.00000| 0.00000| h | 0| 1 | Act_Logistic | Out_Identity -----------|-----------|----|----------|--------|------------------|-------------
unit definition section :
no. | typeName | unitName | act | bias | st | position | act func | out func |----|--------------|---------------|------------|------------|----|------------|----------|------------|- 1 | | in1 | 0.00000 | 0.00000 | i | 2,2,-4349 | | | 2 | | in2 | 0.00000 | 0.00000 | i | 2,3,-4349 | | | 3 | | h1 | 0.00000 | 0.00000 | h | 5,2,-4349 | | | 4 | | h2 | 0.00000 | 0.00000 | h | 5,3,-4349 | | | 5 | | out | 0.00000 | 0.00000 | o | 8,2,-4349 | | |----|--------------|---------------|------------|------------|----|------------|----------|------------|-
connection definition section :
target | site | source:weight--------|------|--------------------------------------------------------------------------------------- 3 | | 1: 0.00000, 2: 0.00000 4 | | 1: 0.00000, 2: 0.00000 5 | | 3: 0.00000, 4: 0.00000--------|------|---------------------------------------------------------------------------------------
Decoder.net
Darstellung der NET-Dateien in Textformat
SNNS network definition file V1.4-3Dgenerated at Thu Aug 12 17:33:23 1999
network name : kennlinesource files :no. of units : 8no. of connections : 14no. of unit types : 0no. of site types : 0
learning function : Rpropupdate function : Topological_Order
unit default section :
act | bias | st | subnet | layer | act func | out func-----------|------------|----|----------|--------|-----------------|------------- 0.00000 | 0.00000| h | 0 | 1 | Act_Logistic | Out_Identity -----------|------------|----|----------|--------|-----------------|-------------
unit definition section :
no. | typeName | unitName | act | bias | st | position | act func | out func | ----|---------------|--------------|------------|------------|----|-----------|----------|-------------|-- 1 | | in | 0.00000 | 0.00000 | i | 2, 2, 0 | | | 2 | | h11 | 0.00000 | 0.00000 | h | 5, 2, 0 | | | 3 | | h12 | 0.00000 | 0.00000 | h | 5, 3, 0 | | | 4 | | h13 | 0.00000 | 0.00000 | h | 5, 4, 0 | | | 5 | | h14 | 0.00000 | 0.00000 | h | 5, 5, 0 | | | 6 | | h21 | 0.00000 | 0.00000 | h | 8, 2, 0 | | | 7 | | h21 | 0.00000 | 0.00000 | h | 8, 3, 0 | | | 8 | | out | 0.00000 | 0.00000 | o | 11, 2, 0 | | |----|---------------|--------------|------------|------------|----|-----------|----------|-------------|--
connection definition section :
target | site | source:weight--------|------|----------------------------------------------------------------------------- 2 | | 1: 0.00000 3 | | 1: 0.00000 4 | | 1: 0.00000 5 | | 1: 0.00000 6 | | 2: 0.00000, 3: 0.00000, 4: 0.00000, 5: 0.00000 7 | | 2: 0.00000, 3: 0.00000, 4: 0.00000, 5: 0.00000 8 | | 6: 0.00000, 7: 0.00000--------|------|-----------------------------------------------------------------------------
Kennline.net
Durchführung des Lernvorgangs des Decodernetzes
decoder.net und dec_XXXX.pat laden
Durchführung des Lernvorgangs des Decodernetzes
Control-Panel und Graph-Panel öffnen und Lernparameter im Control-Panel einstellen
Δwij (t) Δwij (t-1)
t+1
t
t-1
Im Beispiel links:
S(t-1) S(t) > 0 S(t) > 0
E
wij
ij (t-1) + falls S(t-1) S(t) > 0
ij (t-1) - falls S(t-1) S(t) < 0
ij (t-1) sonst
Δij (t)
-ij (t) falls S(t-1) S(t) > 0 S(t) > 0
ij (t) falls S(t-1) S(t) > 0 S(t) < 0
-wij (t-1) falls S(t-1) S(t) < 0
-sgn (S(t)) ij (t) sonst
Δwij (t)
Beschreibung des Lernverfahrens Resilient Propagation
Bestimmung des Betrags der Gewichtsveränderung Bestimmung Gewichtsveränderung
η+ = 1,2 und η- =0,5 (bei SNNS voreingestellt)
wij (t+1) = wij (t) + Δwij (t)
Darstellung der Gewichtsveränderung im Decodernetzwährend des Lernvorgangs
Lernkurve im Graph
Bias und Gewichte
Aktivierung und Gewichte
0 Epochen10 Epochen20 Epochen50 Epochen100 Epochen225 Epochen
Beispiel zur Berechnung der Aktivierung mittels Aktivierungs- und Ausgangsfunktion
Ausgangssituation: Abschluß des Lernvorgangs nach 225 EpochenAusgangsfunktion (linear): netj (t) = ( wij · oi )
Aktivierungsfunktion (sigmoid): aj(t) = (1+e - ( net j (t) + ) ) -1 mit bias
Berechnung der Aktivierung im Neuron 3:
net3= (1.000 · -2.264) + (0.000 · -1.552) = -2.264
a3= (1 + e-(-2.264+0.486))-1 = 0.144
Berechnung der Aktivierung im Neuron 5
net5= (0.144 · -4.952) + (0.144 · -4.952) = -1.426
a5= (1 + e-(-1.426+1.437))-1 = 0.502
-1,55242 Bias: 0,000 Bias: 0,486
Aktivierung: 0,144-4,952
Aktivierung: 0,144-4,952 Bias: 0,486
Aktivierung: 0,000-1,552
Aktivierung: 1,000-2,264-2,264
31
5 Aktivierung: 0,502
1
2
3
4
5Bias: 0,000
Bias: 1,437
Darstellung der Ergebnisse nach dem Lernvorgang
Gewichtsverteilung im Decodernetz mit
Ausgabe des Ausgangswertes bei
Verwendung der Testdaten
Gewichtsverteilung im Kennliniennetz mit Ausgabe des Ausgangswertes bei Verwendung der Testdaten
Darstellung der Ergebnisse nach dem Lernvorgang
Z1 Z2 Soll-Ausgangswert
Ausgangswert nach [TEST]
0 0 0,000 0,009
0 1 0,250 0,250
1 0 0,500 0,502
1 1 0,750 0,749
Testdaten
Kennlinie mit vom KNN berechneten Y-Werten
0
0,1
0,2
0,3
0,4
0,5
0,6
0,7
0,8
0,9
0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9
x-Achse
y_Ac
hse
Kennlinie mit vom KNN berechneten Y-Werten
Tabelle mit vom KNN berechneten Ausgangswerten des Decoders
SollwerteGelernte Werte
Bewertung des Projektes
SNNS wurde für Unix Workstations geschrieben und ist auf Windows Rechnern nur mit X-Windows lauffähig (X-Windows ist kostenlos nur als Testversion mit max. Laufzeit 2 h verfügbar)
--
Grafische Oberfläche von SNNS unter Windows schwer zu bedienen (ein Button muss mit der Maus genau fokussiert werden).
--
Mit SNNS sind umfangreiche Netztopologien und Parametrierungen der Netze möglich.
++
Unkomplizierter Einstieg mit Durchführungsbeispiel im Bedienerhandbuch ++
Umfangreiche Beispieldatenbank mit vielen untrainierten und trainierten Netzen verschiedenster Struktur
++