Wismar
Business School
Wissensextraktion
mittels
künstlicher neuronaler Netze
Wettbewerbslernen
Uwe Lämmel
www.wi.hs-wismar.de/~laemmel
Uwe.Laemmel@hs-wismar.de
Neuronale Netze - Wettbewerbslernen
Folie 1
Inhalt
Wettbewerbslernen
Selbstorganisierende Karte
Neuronale Gase
Adaptive Resonanz Theorie
Neuronale Netze - Wettbewerbslernen
Folie 2
Wettbewerbslernen
Aktivierung eines Neurons nicht nur von Eingabe abhängig
Vergleich mehrere Neuronen notwendig
Netzausgabe durch ein Gewinner-Neuron
Architektur:
k-dim.
Eingabevektor x
Ziel:
ähnliche Eingabe auf
benachbarte Neuronen abbilden
N Neuronen,
Gewinnerneuro
n nx
Neuronale Netze - Wettbewerbslernen
Folie 3
Wettbewerbslernen: Voronoi-Mosaik
•Voronoi-Tesselation
• Voronoi-Mengen eines Neurons s:
Menge aller Punkte,
für die das Neuron s
das Gewinner-Neuron ist
Referenzvektor
Ähnliche Eingaben auf benachbarte Neuronen abbilden
Neuronale Netze - Wettbewerbslernen
Folie 4
Netze und Verfahren
Architektur
fest
– SOM
– Neuronales Gas
– LBG
variabel
– Wachsende Neuronale Gase
– Wachsende Zellstrukturen
Lernverfahren
hart –
nur Gewinner–Neuron
wird adaptiert:
– LBG
weich – auch andere Neuronen
modifizieren:
– SOM,
– Neuronale Gase,
– wachsende Zellstrukturen
Neuronale Netze - Wettbewerbslernen
Folie 5
Inhalt
Wettbewerbslernen
Selbstorganisierende Karte
Neuronale Gase
Adaptive Resonanz Theorie
Neuronale Netze - Wettbewerbslernen
Folie 6
Selbstorganisierende Karten (SOM)
Fähigkeit des Gehirns zur Selbstorganisation nachbilden
räumliche Lage eines Neurons im Kopf bedeutend
(wurde bisher vernachlässigt)
existieren Beziehungen räumlicher Art zur Umgebung
Kohonen Feature Map
zweischichtiger Muster-Assoziator
Eingabe-Schicht voll vernetzt mit Karten-Schicht
Neuronen der Karten-Schicht untereinander voll vernetzt
(virtuell)
Neuronale Netze - Wettbewerbslernen
Folie 7
Clusterung
Ziel:
Alle Eingaben einer Klasse werden auf genau ein Neuron abgebildet
f
ai
Ausgabe B
Eingabemenge A
Problem:
Klassifikation im Eingaberaum allgemein nicht bekannt.
Netz nimmt eine Clusterung vor.
Neuronale Netze - Wettbewerbslernen
Folie 8
Gewinner-Neuron
Winner
Neuron
InputLayer
Kohonen- Layer
Neuronale Netze - Wettbewerbslernen
Folie 9
Lernen in SOM
1. Wahl einer Eingabe k zufällig aus dem Problemraum
2. Das Neuron z mit maximaler Erregung wird bestimmt
3. Anpassung der Gewichtsvektoren in der Nachbarschaft von z:
Neuronen i innerhalb eines Radius r von z.
4. Stopp – falls gewünschte Zahl von Lernzyklen erreicht,
Sonst – Lernfaktor und Radius verkleinern
und mit 1. fortfahren.
Neuronale Netze - Wettbewerbslernen
Folie 10
Erregungszentrum
Prinzip:
Neuronen (-gruppe) mit starker Erregung hemmen Gruppen in der
Umgebung, um eigene Wirksamkeit zu erhöhen!
Problem:
Finden des Erregungszentrums – 2 Möglichkeiten:
Neuron j mit maximalen Nettoinput
w
iz
i
oi max
j
w
ij
oi
i
Neuron j, dessen Gewichtsvektor wj der Eingabe am ähnlichsten
ist (euklidischer Abstand):
z:
x - wz = minj x - wj
Neuronale Netze - Wettbewerbslernen
Folie 11
Anpassen der Gewichte
Gewichte zu Neuronen innerhalb eines Radius r werden erhöht:
wij h jz (mi wij ),
wij
wij sonst
Kohonen benutzt Funktion :
Mexican-Hat-Annäherung
1
0,5
h jz e
3
2
1
0
-1
-2
0
-3
Grad der Beeinflussung
durch den räumlichen Abstand
zum Erregungszentrum?
Lernrate (t) sowie
Radius r(t)
laufen gegen null
falls dist ( j, z ) r
dist( j , z ) 2
2r 2
Neuronale Netze - Wettbewerbslernen
Folie 12
SOM Training – Summary
find the winner neuron z
for an input pattern p
(minimal Euclidian distance)
input
pattern mp
min m p W j m p W z
j
Wj Kohonen layer
adapt weights of connections
input – neurons to
– winner neuron
wij h jz (mi wij ) , if dist( j, z ) r
/
wij
– neighbours
dist( j , z ) 2
w
, otherwise
ij
h jz e
2r 2
Reduce and r (see parameter (H) and (R) in JavaNNS – Kohonen
Randomize training patterns
Neuronale Netze - Wettbewerbslernen
Folie 13
Beispiel Bankkunde
A1: Kredit Geschichte
A2: Schulden
A3: Sicherheiten
A4: Einkommen
Klassifikation bleibt unbeachtet
SOM nimmt Clusterung vor
Neuronale Netze - Wettbewerbslernen
Folie 14
Bank-Kunde
gut
= {5,6,9,10,12}
normal = {3, 8, 13}
schlecht= {1,2,4,7,11,14}
Neuronale Netze - Wettbewerbslernen
Folie 15
Credit Scoring
Pascal tool box (1991)
10x10 neurons
32,000 training steps
Neuronale Netze - Wettbewerbslernen
Folie 16
Visualisation of a SOM
Colour reflects Euclidian
distance to input
Weights used as
coordinates of a neuron
Colour reflects cluster
NetDemo
ColorDemo
TSPDemo
Neuronale Netze - Wettbewerbslernen
Folie 17
Das Rundreiseproblem
Travelling Salesman Problem (TSP):
Es sind mehrere Orte zu besuchen und
danach ist zum Ausgangsort zurückzukehren.
Welches ist der kürzeste (schnellste) Weg für
eine derartige Rundreise?
Neuronale Netze - Wettbewerbslernen
Folie 18
Komplexität des Rundreiseproblems
Stralsund
Aufwand zum Durchsuchen
aller Möglichkeiten:
Rostock
Greifswald
Wismar
Schwerin
Neubrandenburg
(Pascal-Programm, PC Technik, Stand ca. 1998)
18 Kreis- und kreisfreie Städte in MV !
Neuronale Netze - Wettbewerbslernen
Folie 19
SOM solves TSP
Kohonen layer
Draw a neuron at position:
input
w1i= six
(x,y)=(w1i,w2i)
X
Y
w2i= siy
Neuronale Netze - Wettbewerbslernen
Folie 20
SOM löst TSP
Initialer Kreis expandiert zu Rundkurs
Lösungen für mehrere hundert Orte in
kurzer Zeit möglich
Rundkurs muss nicht optimal sein
Neuronale Netze - Wettbewerbslernen
Folie 21
Beispiele
– Probieren sie die Clusterung von Tieren (Kruse) aus.
Verändern Sie den Trainingssatz (Austausch eines Tieres) und
vergleichen Sie die entstehende Clusterung.
– Machen Sie sich mit der Lösung des Rundreiseproblems mittels
einer SOM vertraut.
– Greifen Sie auf das Beispiel Wetter-Spiel zurück und clustern Sie
diese Daten. Vergleichen Sie das Ergebnis mit der gegebenen
Klassifikation
Neuronale Netze - Wettbewerbslernen
Folie 22
Inhalt
Wettbewerbslernen
Selbstorganisierende Karte
Neuronale Gase
Adaptive Resonanz Theorie
Neuronale Netze - Wettbewerbslernen
Folie 23
Neuronales Gas
für Eingabesignal werden alle Neuronen nach ihrem Abstand zur Eingabe geordnet
Adaption entspricht dem Rang des Neurons
Adaption gemäß Zeit- und Reichweiten-Faktor
Wachsende Gase:
– Einfügen eines neuen
Neurons zwischen Neuron
mit größtem Fehler und
einem Nachbarn
Neuronale Netze - Wettbewerbslernen
Folie 24
Hebb‘sches Wettbewerbslernen
Zwischen Gewinner-Neuron und „zweitem“ Gewinner wird neue Verbindung
eingefügt:
Wird in Zusammenhang mit anderen Verfahren verwendet, z.B. Neuronalen Gasen,
Neuronale Netze - Wettbewerbslernen
Folie 25
Wachsende Zellstrukturen/Gitter
Zellstrukturen:
– Verbindungen bilden Simplex, z.B. Dreieck
Gitter:
– rechteckige Gitterstruktur
Neuronale Netze - Wettbewerbslernen
Folie 26
LBG - Linde, Bozo, Gray (1980)
Batch-Verfahren
Referenzvektor wird in Richtung des Schwerpunktes der
Voronoi-Menge bewegt
hartes Lernverfahren
Neuronale Netze - Wettbewerbslernen
Folie 27
Inhalt
Wettbewerbslernen
Selbstorganisierende Karte
Neuronale Gase
Adaptive Resonanz Theorie
Neuronale Netze - Wettbewerbslernen
Folie 28
Adaptive Resonance Theory (ART)
Bisher: Training eines neuen Musters kann Gewichte so zerstören,
dass alte Muster nicht mehr erkannt werden
Stabilitätsproblem
Wie neue Muster und deren Klassifizierungen lernen,
ohne dass vorhandene Klassifizierungen verlernt werden?
Plastizitätsproblem
ART: (entwickelt von Grossberg und G. Carpenter)
zufällige Folge von Eingaben (Vektoren) unüberwacht klassifizieren
(ohne äußere Einwirkung)
Annäherung an biologisches Verhalten
Familie hybrider neuronaler Netze;
hier: ART1: binäre Eingabevektoren
Neuronale Netze - Wettbewerbslernen
Folie 29
ART - Modell
w1
Winkel p:
Aufmerksamkeitsabstand
Klassifikationsraum
w2
Neuronale Netze - Wettbewerbslernen
Folie 30
ART - Arbeitsweise
Arbeitsweise:
Netz versucht Eingabevektor in vorhandene Kategorie zu
klassifizieren;
Falls KEINE Ähnlichkeit mit gespeicherten Kategorien
neue Kategorie;
Falls Kategorie gefunden, wird gespeichertes Muster leicht
korrigiert,
um Ähnlichkeit mit neuer Eingabe zu erreichen;
Muster ohne Ähnlichkeit zur Eingabe bleiben unverändert
Neuronale Netze - Wettbewerbslernen
Folie 31
ART - Architektur
+
+
j
Erkennungsschicht
F2
...
-
g2
Matrix
Wji
(binär)
U
T
V
S
Matrix
WijR
-
+
+
...
i
g1
Vergleichssschicht F1
v
+
Eingabe I Binärvektor
Neuronale Netze - Wettbewerbslernen
Folie 32
ART - Architektur - Arbeitsweise
+ +
j ...
U
T
Komponenten:
Wji
Vergleichschicht (Comparison layer) F1
(binä
S
V
Erkennungsschicht (recognition layer) F2
- r)
+ g+1
zwei Verstärkungsfaktoren (je ein Neuron),
i ...
gain
(Gewinn)
Reset-Komponente (ein Neuron) Vigilance (Wachsamkeit)
g2
Arbeitsweise:
(1) Erkennungsphase
(2) Vergleichsphase
Wij
R
+
v
(3) Suchphase
(4) Adaption der Gewichte
Neuronale Netze - Wettbewerbslernen
Folie 33
ART - Initialisierung
+ +
g2
-
Wji
(binä
r)
+ g+1
j ...
U
T
S
V
Wij
R
-
i ...
+
v
i,j : wij < L/(L-1+m)
(von F1 nach F2)
iF1, jF2 , m=length( I ),
L - Konstante L>1, oft L=2
j,i : wji = 1
(von F2 nach F1)
Toleranzparameter: 0p1 ;
nahe 1: feine Unterschiede;
nahe 0 grobe Klassifizierung
Neuronale Netze - Wettbewerbslernen
Folie 34
ART - Erkennungsphase
+ +
g2
Eingabe=Nullvektor
Verstärkung g2=0 und alle j abgeschaltet,
V=Nullvektor
-
Wji
(binä
r)
+ g+1
j ...
U
T
S
V
i ...
Wij
R
+
Anlegen einer Eingabe I Nullvektor g1=1, g2=1
alle Neuronen i , deren Eingabe Ii=1 ist feuern
(nach 2/3-Regel) S ist Duplikat von I
Bilden aller Skalarprodukte WjS (drückt Ähnlichkeit aus)
J mit max. WjS “gewinnt”! und feuert(oJ=1),
alle anderen gebremst(oj =0 für jJ)
uJ=1 alle anderen Komponenten von U sind 0
nur ein Neuron der Erkennungsschicht feuert
Neuronale Netze - Wettbewerbslernen
Folie 35
v
ART - Vergleichsphase
+ +
j ...
jedes Neuron der Vergleichsschicht
g2
U
erhält vi=wJi (0 oder 1)
T
Wji
vi = ujwji = wJi
(binä
S
V
da nun UNullvektor:
- r)
g1=0, nun feuern nur Neuronen i mit Ii=1 und vi=1, + g+1
i ...
damit werden Komponenten von S auf 0 gestellt,
wo Speichermuster und Eingabe unterschiedlich sind;
S = V I = WJ I
enthält S viele Nullen und I an diesen Positionen 1 dann ex. kein zur
Eingabe ähnliches Muster
Reset-Komponente feuert
Neuron J (lieferte einzige 1) wird auf 0 gesetzt
|S|/|T| = |WJ I | / | I | p
Reset erfolgt für |S|/|T|<p
p=1 totale Übereinstimmung,
p=0 nur eine Klasse
üblich: 0.7p0.99
Neuronale Netze - Wettbewerbslernen
Wij
R
+
Folie 36
v
ART - Suchphase
+ +
g2
-
Falls Reset=1 (keine Ähnlichkeiten entdeckt)
U=(0,..,0) und g1=1 und
S wird wieder zur Kopie von I
Suche nach neuem Gewinner-Neuron
Wji
(binä
r)
+ g+1
j ...
U
T
S
V
Wij
R
-
i ...
+
v
Prozess wird wiederholt bis:
a) gespeichertes Muster gefunden,
welches I genügend ähnlich ist
b) kein gespeichertes Muster ähnlich
neues Neuron j benutzt und
WJ entsprechend Eingabe I gesetzt
Neuronale Netze - Wettbewerbslernen
Folie 37
ART - Adaption der Gewichte
+ +
g2
Wji
(binä
r)
j ...
U
T
S
V
Fast training:
+ g+1
Eingabe solange angelegt,
i ...
bis Gewichte stabil werden:
WJ - Gewichtsmatrix von F (wandelt S in T um: von F1 nach F2 )
wiJ= Lsi / (L - 1 + sk)
si- Komponente des Ausgabevektrors von F1
J- Nummer des Gewinnerneurons von F2
L- Konstant s.o. L=2
wJi = si
Der sogenannte top-down-Vektor Wj = (wj1,...,wjm) ist binäres Abbild
des reellwertigen bottom-up Vektors Wj = (w1j,...,wmj)
Neuronale Netze - Wettbewerbslernen
Wij
R
+
Folie 38
v
ART - Theorem und Beispiele
Nachdem Training stabilisiert ist,
aktiviert ein Trainingsvektor das korrekte Neuron
der Erkennungsschicht ohne Suche.
Der Suchprozess ist stabil; Das Training ist stabil;
Der Trainingsprozess terminiert.
ART1 Beispiele aus SNNS: Buchstaben lernen: art1_letters.*
Aufgabe: Bilden Sie das ART1-Neuronale Netz neu,
benutzen Sie dazu die Option BigNet.
Achten Sie auf korrekte Bias-Werte. Trainieren Sie das Netz.
Entwickeln Sie ein ART1-Netz zur Klassifikation von Würfelzahlen.
Neuronale Netze - Wettbewerbslernen
Folie 39
ART-Netz im SNNS
Neuronale Netze - Wettbewerbslernen
Folie 40
Ende
Neuronale Netze - Wettbewerbslernen
Folie 41