Lehrveranstaltung Künstliche neuronale Netze Teil 1 Teil 1 Otto Otto - - von von - - Guericke Guericke - - Universität Magdeburg Universität Magdeburg Institut für Elektronik Signalverarbeitung und Institut für Elektronik Signalverarbeitung und Kommunikationstechnik Kommunikationstechnik - - IESK IESK Dr. Dr. - - Ing. Andreas Herzog Ing. Andreas Herzog Institut für Psychologie II Institut für Psychologie II andreas andreas .herzog@ .herzog@ ovgu ovgu .de .de
166
Embed
Teil 1 Otto-von-Guericke-Universität Magdeburg Institut ...€¦ · Teil 1 Otto-von-Guericke-Universität Magdeburg Institut für Elektronik Signalverarbeitung und Kommunikationstechnik
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Lehrveranstaltung Künstliche neuronale Netze
Teil 1Teil 1
OttoOtto--vonvon--GuerickeGuericke--Universität Magdeburg Universität Magdeburg
Institut für Elektronik Signalverarbeitung und Institut für Elektronik Signalverarbeitung und Kommunikationstechnik Kommunikationstechnik -- IESKIESK
Dr.Dr.--Ing. Andreas HerzogIng. Andreas HerzogInstitut für Psychologie II Institut für Psychologie II
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
13
Biologisches Neuron
Eingang
Ausgang
Axon
Soma
Mikroskopbild einer Nervenzelle
Dendriten
Synapsen
passive Weiterleitung
Kodierung
Impuls-weiterleitung
tImpulsfolge
tImpulsfolge
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
14
Vergleich
• Tabelle Computer – Gehirn
• Gehirnjede Nervenzelle ist mit etwa 10.000 anderen Nervenzellen verbunden (Verbindungen variabel)Lernfähig, flexibel Massiv parallel, Regel- und Lernvorgänge in jeder Verbindung100 Schritt Regel (Erkennen von Personen in 0.1 s)
Menschliches Gehirn Rechner Verarbeitungselemente ca. 10 Milliarden Neurone mehrere Millionen
Transistoren Art massiv parallel im allg. seriell Speicherung assoziativ adreßbezogen Schaltzeit eines Elements ca. 1 ms (1 kHz) ca. 1 µs (1 GHz)
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
15
Biologische Grundlagen
• Menschliches Gehirn ist derzeit das Informationssystem mit der
höchsten Komplexität und größten Leistungsfähigkeit
aller bekannten und vergleichbaren natürlichen und künstlichen Systeme.
• Denken und Intelligenzumfaßt eine Vielzahl sehr umfangreicher Operationen
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
16
Neuronaler Code
• Informationen im Neuronalen NetzwerkNicht an allen Stellen gleichSpikefrequenzAbstand der Spikes Gruppen von NeuronenSpikemuster
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
17
Zusammenspiel biologischer Neurone
Höhere FunktionenSynchronisieren, desynchronisieren Rhythmen spielen große RolleLit: Rhythms of the Brain (G. Buzsáki), 2006
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
18
Biologisch plausibles künstliches Neuron
Kabelgleichung
Impulserzeugung
( ) ( ) ( )( ) ( )txIrVtxVt
txVx
txVinjmrestm
mm
m ,,,,2
22 −−+
∂∂
=∂
∂ τλ
DendritenbaumAxonhügel
( ) ( ) ( )LmLKmKNamNaion EVGEVGEVGI −+−+−=
hmgG NaNa3= 4ngG KK =
( )( ) ( ) hmnppVpVdtdp
iiiii ,,;1 =−−= βα
Hodgkin-Huxley Gleichungen
Differentialgleichungen numerisch lösen
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
19
Weitere Mechanismen
• Plastizität des Gehirns (Lernen, Entwicklung)Stabilität vs. Plastizität Änderung von Synapsen (STP, STD, LTP, LTD, Scaling, STDP)Umbau der Architektur
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
20
Gehirn Simulieren?
• Kann man das gesamte Gehirn simulieren?Nicht alle Regelvorgänge sind bekannt und können erfaß werdenWas ist eigentlich nötig?Parametrisierung?Initialisierung?
auf absehbare Zeit nicht möglichAnsätze für einen kleines Hirngebiet,FACETS - Projekt
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
21
Modellierung
• Moderne Rechentechnik ermöglicht die Implementation einzelner, stark ein-geschränkter Teilsysteme
Verschiedene Ebenen (Molekular, Zellen, Zellgruppen,...) Simulation kognitiver Grundfunktionen
• Verwendung von Universalrechnern,Parallelrechnern,spezieller Hardware (Neurochips)
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
22
Warum?
Gesichtspunkte beim Arbeiten mit KNN:• Biologie:
Modell möglichst genau am VorbildVerständnis vergrößernRückschlüsse auf noch ungeklärte EigenschaftenAktiv eingreifen (Krankheiten mindern, heilen)
• Technik:Abstrakte Modelle (schnell rechnen) Nutzen der Vorteile zur Lösung technischer Problemstellungen (Lernen, Generalisieren)
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
23
Forschung in Magdeburg
• Neurowissenschaften ist SchwerpunktMehrere Sonderforschungsbereiche Bernsteingruppe CBBS
SFB 779: Einfluß von Dopamin auf das Lernen
• Institut für Neurobiologie (IfN)
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
24
Technische Netze
System zur Informationsverarbeitung• lernfähig: Funktion nicht explizit vorgeben, sondern nach Beispielen
lernen • fehlertolerant: Störungen werden unterdrückt• generalisierend: Ähnliche Beispiele werden erkannt
Künstliches Neuronales Netz (KNN)
Lernverfahren
KNNEingänge Ausgänge
X Y
Beispiele
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
57
Anwendungen Multi-Layer-Perceptron
• MLP als Klassifikator • MLP zur Koordinatentransformation
• MLP zur Approximation von Funktionsverläufen
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
58
Beispiel MLP 1
Schicht 1Trennung mit Hilfe von Geraden
Schicht 2Zusammenfassung der Ausgängez.B. mit UND-Verknüpfung:
2x
1x
1
1
= 1= 0
y1* > 0
y2* > 0
x1
x2
y1
y2
z
21 yyz ∧=
Zweischichtiges MLP
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
59
Beispiel MLP 2
Zweischichtiges Netzwerk- Separierung von konvexen Polygonen- Jeder Ausgang kann ein konvexes Polygon separieren- gemeinsame Nutzung der Hiddenneuronen für mehrere
Ausgänge möglich
Zweischichtiges MLP 2
x1
x2
y1
y2
y3
2x
1x
1
1
= 1= 0
y1* > 0
y2* > 0
z
y3* > 0
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
60
XOR
Mehrere Möglichkeiten:• Geraden 90 grad gedreht• andere Ausrichtung
2x
1x
1
1
= 1= 0
y1* > 0
y2* > 0
x1
x2
y1
y2
z
XOR mit drei Neuronen
w1 w2 w0
1 1 -0.511 1 -1.52
-1 -0.53 1
Neuron
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
61
XOR
= 1= 0
x1
x2
y1* > 0
2x
1x
1
1
y z
XOR mit zwei Neuronenw12
w11
w22
w21
w32
1. Berechnung von y:
21 xxy ∨=
2. Berechnung von z:( )1 2z x x y= ∨ ∧
2x
1x
y0011
1101
1110
0100
zyx2x1
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
62
Beispiel MLP 3
Dreischichtiges Netzwerk- Separierung auch von konkaven Polygonen und
mehreren Gebieten (beliebiger Form)- Ausreichend für alle gängigen Klassifikationsaufgaben- nur Spezialanwendungen benötigen mehr Schichten- u.U. Einsparung von Neuronen bei mehr Schichten
möglich
Dreischichtiges MLP2x
1x
x1
x2x3
y2
y1
y3
y4
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
63
Anwendungen Multi-Layer-Perceptron
• MLP als Klassifikator
• MLP zur Koordinatentransformation • MLP zur Approximation von Funktionsverläufen
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
65
Encoder - Decoder
Encoder
Eingang
Decoder
Ausgang
• Prinzip: Drehung in ein Koordinatensystem, in dem man ohne Informationsverlust Dimensionen weg lassen kann.
• redundante Informationen werden unterdrückt (Abhängig von Daten)• Dimensionsreduktion• Hauptachsentransformation• Rauschunterdrückung
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
66
Anwendungen Multi-Layer-Perceptron
• MLP als Klassifikator • MLP zur Koordinatentransformation
• MLP zur Approximation von Funktionsverläufen
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
67
MLP zur Approximation von Funktionsverläufen
• Prinzip:Funktion mit Transferfunktionen der Neuronen (Basisfunktionen) zusammensetzen
• Aufbau:2 Schichten
x1
y1
y2
y3
z
Zwischenschicht(nichtlineare TF)
Ausgang(lineare TF)
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
68
MLP zur Approximation von Funktionsverläufen
• Zwischenschichtjedes Neuron erzeugt eine angepaßte Basisfunktion (siehe Drehung)Gewichte: Richtung und Skalierung Bias: Verschiebung
• Ausgangsschicht: Basisfunktionen werden gewichtet zusammengefaßt
101* wxwy kk += *
11
yey
−+=
∑=
+=n
kkk wywz
1202
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
69
MLP zur Approximation von Funktionsverläufen
Beispiel:
(Bildschirmfoto Java Applet Funktion)
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
70
2.2 Kapitel(Zusammenfassung)
• Neuronale Netze sind aus einzelnen Neuronen aufgebaut
• Mehrere Neuronen sind in mehreren Schichten angeordnet
• Schichten bilden eine Hierarchie bezüglich des Datenflusses (Zwischenabbildung der Eingangsdaten)
• Neuronen einer Schicht erhalten (in der Regel) den selben Eingangsvektor
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
71
2.2 Kapitel(Zusammenfassung)
• Durch die Zusammenschaltung der Neuronen wird eine hohe Komplexität des Netzwerkes erreicht
• Durch unterschiedliche Anordnungen kann ein unterschiedliches Grundverhalten des Netzwerkes eingestellt werden
• Die genaue Anpassung des Grundverhaltens wird durch die Veränderung der Gewichte während des Lernens durchgeführt
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
72
2.3 Lernvorgänge
Lernvorgänge
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
73
Lernvorgang
Ziel:Netz lernt die gestellte Aufgabe weitestgehend selbstständig aus
Beispielen
KNNx1x2
xn
y1y2
ym
... ...
LernverfahrenBeispiele
Mögliche Änderungen (freie Parameter):
• Verbindungsstärke (Gewichte)• Hinzufügen oder Löschen von Verbindungen• Hinzufügen oder Löschen von Neuronen (auch ganze Schichten)• Modifikation des Neuronenmodells
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
74
Unterscheidung der Lernverfahren
• Überwachtes LernenBeispiele mit Sollergebnissen
• Unüberwachtes LernenNur Beispieldaten ohne Sollergebnisse
• Bestärkendes LernenBeispieldaten und Bewertung der Ergebnisse
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
75
Überwachtes Lernen
Überwachtes Lernen (Lernen mit Lehrer, Supervised learning)
.
KNNx y
Lernverfahren
Eingangs-daten
ysollZieldaten
Trainingsbeispiele: bestehen aus Eingangs- und zugehörigen Zieldaten
Lernalgorithmus: versucht Differenz zwischen tatsächlicher und gewünschter Reaktion durch Änderung der Eigenschaften zu Minimieren
Beispielnetzwerk: Multi-Layer-Perceptron mit Backpropagation
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
76
Überwachte Klassifikation(Lernen mit Lehrer)
Anwendung:• ähnliche (untrainierte) Daten werden
richtig Klassifiziert
Klassifizierte Beispieldaten (Lern-, Trainingsdaten):K1, K2 und K3
Merkmal 2
Merkmal 1
K2
K1
K3
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
77
Unüberwachtes Lernen
Unüberwachtes Lernen (Lernen ohne Lehrer, Unsupervised learning)
Keine direkte Vorgabe
von Zieldaten !
KNNx y
Lernverfahrenysoll
Eingangs-daten
•Trainingsbeispiele: bestehen nur aus Eingangsdaten.• Lernalgorithmus: Daten mit ähnlichen Signaleigenschaften
werden zu Gruppen zusammengefaßt• Selbstlernendes System
• Basiert auf den inneren Eigenschaften der Trainingsdaten
• Beispielnetzwerk: Selbstorganisierende Karten
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
78
Unüberwachte Klassifikation(Lernen ohne Lehrer)
Merkmal 2
Merkmal 1Klassengrenzen sind a-priori nicht vorhanden!• gesucht Klassifizierung (z.B. zur Analyse, Datenreduktion)
(hochdimensionale Datensätze unübersichtlich)
Bilden von Klassen anhand der Signalähnlichkeiten:
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
79
Bestärkendes Lernen
Bestärkendes Lernen (reinforcement learning)
KNNx y
Lernverfahren
Eingangs-daten
Bewertung
Trainingsbeispiele: bestehen aus Eingangsdaten, die Ergebnisse werden bewertetLernalgorithmus: versucht Bewertung zu Verbessern• langsam, aber biologisch plausibel
Lehrer
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
80
Auswahl des Lenverfahrens
• Das Vorhandensein von Zieldaten für jedes Beispiel entscheidet über die Auswahl des Lernverfahrens
• Innerhalb jedes Lernverfahrens stehen verschiedene Netzwerktypen zur Auswahl
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
81
Gütekriterium(Lernen mit Lehrer)
Gütekriterium beschreibt den Unterschied zwischen Soll- und Istwert für den aktuell angelegten Eingangsvektor.
Q(s) = Q(s)(y1 ...ym , y1soll ...ymsoll)
KNN... ...
...
( )sx1( )sx2
( )snx
( )sy1( )sy2
( )smy
( )ssolly1
( )ssolly2
( )ssollmyV
ergl
eich
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
96
Ablauf Lernvorgang
• Batch: Gewichtsänderungen werden akkumuliert und nur einmal pro Epoche ausgeführtStabil, aber u.U. langsamVorteil bei der Parallelisierung (jeder Trainingsdatensatz bildet eigenen Prozeß)
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
97
Ablauf Lernvorgang
• Online:Gewichtsupdate nach jedem Trainingsdatensatzu.U. schneller als Batch Gefahr der Zyklenbildung (Gewicht ändert sich zyklisch hin und her)Abhilfe: Ändern der Reihenfolge der Trainingsdatensätze in jeder Epoche (zufällige Reihenfolge)
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
98
Ablauf Lernvorgang
• Übertrainieren, Auswendiglernen:Möglich bei Netz mit zu vielen Neuronen/SchichtenKeine Generalisierung (neue untrainierte Daten werden nicht richtig berechnet)Abhilfe: Testen des Netzes mit untrainierten bekannten Daten -> ggf. Netz ändernTeilung der vorhandenen Daten in:
» Trainingsdaten (etwa 2/3 aller Daten)» Testdaten (etwa 1/3 aller Daten, zufällige Auswahl)
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
99
2.3 Kapitel(Zusammenfassung)
• Verwendung eines Gütekriteriumsbasierend auf
» Eingangsdaten» Ausgangsdaten» Solldaten» Gewichten des Netzes
zur Bestimmung des Fehlers zwischen tatsächlichem Zustand und Sollzustand des Netzeszur Minimierung des o.g. Fehlers durch Veränderung (Optimierung) der Gewichte (Training)
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
100
2.3 Kapitel(Zusammenfassung)
• Verwendung des GradientenabstiegsverfahrensAnteil jedes einzelnen Gewichts am Gesamt-fehler wird durch partielle Ableitung bestimmtZiel ist ein möglichst schnelles Erreichen eines FehlerminimumsProbleme entstehen durch
» Vielzahl der zu optimierenden Parameter » lokale Nebenminima der dann hochdimensionalen
FehleroberflächeBasis für viele unterschiedliche Lernverfahren (u.a. Backpropagation)
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
101
2.4 Kapitel
2.4Backpropagation Algorithmus
(Fehlerrückvermittlung)
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
102
Zielstellung
Betrachtung des gesamten Netzwerkes als Abbildungsfunktion
deren freie Parameter beeinflussen das GesamtverhaltenZiel: Einstellung dieser Parameter, um die Abweichung (Fehler) zwischen der
» tatsächlichen und der» gewünschten Abbildungsfunktion des Netzwerkes
anhand der Abweichung des» tatsächlichen von dem» gewünschten Ausgangssignal des Netzwerkeszu minimieren
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
103
Lösungsansatz
• Abbildungsfunktion des Netzes ist in der Regel nichtlinear
• Menge der freien Parameter (Gewichte) spannt hochdimensionalen Raum auf
• Fehlerkriterium ist hochdimensionale Funktion über diesem Raum
• Suche nach Minimum der Fehlerfunktion mittels Gradientenabstieg
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
104
Lösungsansatz
• Ausgangspunkt ist in jedem Fall ein mehrschichtiges Netzwerk mit gerichtetem Datenfluß ...
• Ziel des Backpropagation – AlgorithmusBestimmen der Ableitungen des Fehlers (für das aktuelle Trainingsbeispiel) nach den einzelnen Gewichten in einem mehrschichtigen Netzwerk
• Backpropagation hat 2 Phasen:Vorwärtsvermittlung der DatenRückwärtsvermittlung des Fehlers
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
105
Netzwerk mit gerichteten Datenfluß
x1
x2x3
y2
y1
y3
y4
z.B. Vorwärtsgerichtetes Multilayerperzeptron
Datenfluß
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
106
1. Phase Vorwärtsvermittlung
x1
x2x3
y2
y1
y3
y4
Bei
spie
l
Solld
aten
Erge
bnis
Fehler1.1 Aktivierung der Eingangs schicht mit einem aus dem
Datensatz ausgewählten Trainingsbeispiel1.2 Schrittweise Ermittlung der Aktivitäten der Neuronen der verdeckten
Schicht(en) und der Ausgangsschicht 1.3 Ermittlung des Gesamtfehlers des Netzwerkes anhand der Ausgangs-
und Solldaten
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
107
2. PhaseRückwärtsvermittlung
x1
x2x3
y2
y1
y3
y4Bei
spie
l
Solld
aten
Fehl
er
Fehlerrückvermittlung
2.1 Ermittlung des Fehlermaßes für die Neuronen der Ausgangsschicht2.2 Rückschreitend schichtweise Ermittlung des Fehlermaßes der
Neuronen der verdeckten Schicht(en)2.3 Änderung der Gewichte der Neuronen der Ausgangsschicht und der
verdeckten Schicht(en) anhand ihrer Fehleranteile
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
108
Anforderungen an die Transferfunktion
• Transferfunktiondient in diesem Fall nicht nur der Berechnung der Neuronenaktivität in der Phase der Vorwärtsvermittlung, sondern auch der Rückvermittlung der partiellen Fehler
• Anforderungen an die Transferfunktion:im gesamten Bereich stetig und (analytisch) differenzierbarstreng monoton steigendBeschränktheit im Wertebereich (z.B. auf [0; 1])möglichst in der Mitte des Wertebereiches einen Wendepunkt
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
109
VerwendeteTransferfunktionen
• Die Klasse der semi-linearen Funktionenvereinigen die Eigenschaften von
linearen Funktionen bezüglich der DifferenzierbarkeitSchwellwertfunktionen bezüglich der Separationsfähigkeit
• Beispiele:Sinus (ggf. Beschränkung des Definitions-bereiches auf eine Periode)Tangens hyperbolicusSigmoid
am weitesten verbreitet}
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
110
Beispiele gebräuchlicherTransferfunktionen
Y*
Y
Sigmoid
Y = 1 + e-Y*
1
Y*
Y
Tangens hyperbolicus
Y = e-Y*
e-Y*eY*
eY*
_
+
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
111
Beispiele gebräuchlicherTransferfunktionen
Verwendung in derweiteren Herleitung
Y*
Y
Sigmoid
Y = 1 + e-Y*
1
Y*
Y
Tangens hyperbolicus
Y = e-Y*
e-Y*eY*
eY*
_
+
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
112
Ableitung der Transferfunktion
( ) 11 pp
e−σ =+
( )21
1p
pe
p e−
−
∂σ′σ = =∂ + 1 1 pe−= +
σ
1 1pe− = −σ
Hilfsrechnung
Funktion:
Ableitung:
( )22
11 1 11
− σ⎛ ⎞′σ = − = σ⎜ ⎟σ σ⎝ ⎠⎛ ⎞⎜ ⎟σ⎝ ⎠
Einsetzen:
( )1′σ = σ − σ
( ) 111
1 −−− +=
+p
p ee
Innere * äußere Ableitung
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
113
Berechnung der Ausgangsschicht
Neuron der Ausgangsschicht
iy i solly
Neuron i1iw
2iw
1s
2s
jsijw
... ...
i j ijj
y f s w⎛ ⎞
= ⎜ ⎟⎝ ⎠∑
( )2
i i i sollQ y y= −
Ausgang:
Fehler:
( )212
ii i soll
ij
Q y yw
∂= −
∂
gesucht:
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
114
HerleitungAusgangsschicht
( )212
ii i soll
ij
Q y yw
∂= −
∂( ) i
i sollij ij
yQ y yw w
∂∂= −
∂ ∂
äußere Ableitung( )*iy y= σ *
j ijj
y s w= ∑
( )*ij
ij
y y sw
∂ ′= σ∂
*
jij
y sw
∂=
∂
*i i
*ij ij
y y yw y w
∂ ∂ ∂=
∂ ∂ ∂
Transferfunktion:
mit
Erweitern:
( ) ( )** i
* *
y yyy y
∂σ ∂′σ = =∂ ∂
( ) ( )( )1* *ij
ij
y y y sw
∂= σ − σ
∂
( )1′σ = σ − σ
( )*iy y= σ
( )1ii i j
ij
y y y sw
∂= −
∂
gesucht
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
115
HerleitungAusgangsschicht
( )1ii i j
ij
y y y sw
∂= −
∂Ergebnis:
( ) ii soll
ij ij
yQ y yw w
∂∂= −
∂ ∂
( ) ( )1i soll i i jij
Q y y y y sw
∂= − −
∂
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
116
Herleitung Verborgende Schicht
( ) ( )1i soll i i jij
Q y y y y sw
∂= − −
∂Ausgangsschicht:
Neuron i1uiw
2uiw
1us
2us
ujs
uijw
... ...
1uis +
Rückvermittelter Fehler
11
uku
k k
Q ww
++
∂∂∑
11uw +
12uw +
1ukw +
Zwischenschicht:Zwischenschicht:
( )1 1 11 1u u u u
k i i ju ukij k
Q Q w s s sw w
+ + ++
⎛ ⎞∂ ∂= −⎜ ⎟∂ ∂⎝ ⎠
∑
Ableitungen:
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
117
Erweiterungen
• Basierend auf dem Standard-Algorithmus sind viele Ideen zur Verbesserung entstanden
• Ansatzpunkte sind dabei:Beschleunigung der Konvergenz
» Modifikation oder Ersatz des klassischen Gradientenabstiegsverfahrens (Momentum-Term, Quick Prob)
» kumulative Gewichtsänderungen
Vermeidung des Problems der lokaler Minima» stochastische Ansätze» Gewichte “schütteln”
numerisch verbesserte Implementationen
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
118
2.4. Kapitel (Zusammenfassung)
• Mehrschichtiges Feed-Forward Netz mit gerichtetem Datenfluss
• Überwachtes Lernen (Supervised Training)• Verwendung der Delta-Regel und des
Gradientenabstiegs• Minimierung des quadratischen Abstandes
zwischen Soll- u. Istwerten bezüglich aller Paare von Ein- / Ausgangsvektoren
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
119
2.4. Kapitel (Zusammenfassung)
• Netzwerk mit der weitesten Verbreitung unter den überwacht trainierten Netzen
• Konvergenzprobleme bei Auftreten von mehreren Minima (s.a. Gradientenabstieg)
• Viele Erweiterungen und Modifikationen des originalen Algorithmus
• Zahlreiche realisierte Anwendungen durch universelle Einsetzbarkeit
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
120
3. Kapitel
3.Selbstorganisierende Karten
(Kohonen Karten,Kohonen Maps,
Self organizing map - SOM)
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
121
Sensorische Karten
• Ausgangspunkt: Sensorische und motorische Karten im Gehirn
• Hochdimensionale Daten werden auf zweidimensionale Karten abgebildet
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
122
Teuvo Kohonen(Finnland)
T. Kohonen, Self-Organizing Maps Springer Series in Information Sciences, Vol. 30, Springer, Berlin, Heidelberg, New York, 1995, 1997, 2001. Third Extended Edition, 501pages. ISBN 3-540-67921-9, ISSN 0720-678X
• SOM entwickelt von Teuvo Kohonen
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
123
Unüberwachtes Lernen
Unüberwachtes Lernen (Lernen ohne Lehrer, Unsupervised learning)
Ein Trainingsbeispiel besteht nur aus Eingangsdaten.
Keine direkte Vorgabe
von Zieldaten !
KNNx y
Lernverfahrenysoll
Eingangs-daten
• Selbstlernendes System
• Basiert auf den inneren Eigenschaften der Trainingsdaten
• Daten mit ähnlichen Signaleigenschaften werden zu Gruppen zusammengefaßt
•Beispielnetzwerk: Selbstorganisierende Karten
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
124
Zielstellung
• Netzwerktraining ohne explizite Vorgabe eines Trainingsziels
keine Verwendung von Zielvektoren für die Ausgangsschicht
» z.B. Backpropagationin vielen Anwendungen sind Zielvektoren nicht verfügbar
» z.B. Klassifikation bei unbekannten Klassengrenzen
• Lernen ohne Lehrer (unsupervised training)• Verwendung der inneren Eigenschaften der
Daten
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
125
Lösungsansatz
• Vergleich des exemplarisch abgetasteten Eingangsdatenraumes (Beispiele des Trainingsdatensatzes) mit einem Satz von Prototypen (Gewichte der Neuronen)
• Anpassung der Prototypen an die inneren Eigenschaften des Eingangsdatenraumes
• Zuordnung von Eingangssignalen mit gleichen oder ähnlichen Eigenschaften zum gleichen Prototyp
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
126
Lösungsansatz
• Selbstlernendes System• Modellierung des meist hochdimensionalen
Eingangsdatenraumes durch Projektion auf eine zweidimensionale Fläche (Karte von Neuronen)
DatenreduktionAbstraktion auf wesentliche und markante Eigenschaften der EingangsdatenUnterdrückung von Einzelheiten und im Datensatz unterrepräsentierten Eigenschaften
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
127
Aufbau einer Selbstorganisierenden Karte
x1
x2
x3
Eingangsschicht
Zweidimensionale Kohonen Schicht
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
128
Selbstorganisierende Karte
• Anzahl der Neuronen in der Eingangsschicht:Entspricht Dimension des Eingangsdatenraumes
• Anzahl der Neuronen in der Kohonenschicht:Entspricht der Anzahl der erwarteten oder gewünschten Klassen
• Verbindungen:Jedes Neuron der Eingangsdatenschicht ist mit jedem Neuron der Kohonenschicht verbundenKeine Verbindung der Neuronen in der Kohonenschicht untereinander
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
129
Neuronenmodell
• Neuronenmodell unterscheidet sich vom klassischen technischen Neuron
• Euklidischer Abstandsmaß (ohne Wurzel) zwischen Eingangsdaten und Gewichten
• Bestimmen des Neurons mit dem kleinsten Abstand zum angelegten Eingangsdatensatz (Ausgang = 1, sonst 0)
x1
xn
x3
x2
w1
w2
w3
wn
y( )∑=
−=n
iiijj xwy
1
2*
Eingänge Gewichte
Ausgang
( )⎩⎨⎧ ∀=
=sonst
kyyy kjj 0
min1 **Neuron j
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
130
Neuronenmodell
• Die Gewichte jedes Neuron lassen sich als Position des Neurons im Eingangsdatenraum interpretieren
• Gewinnerneuron ist das Neuron, das dem angelegten Datensatz am nächsten ist.
2x
1x
1
1
Beispiel:• Eingangsdatenraum mit 2 Dimensionen• Jeder Eingangsdatensatz (blau) wird
dem nächstliegenden Neuron zugeordnet (klassifiziert)
Voronoi –Regionen
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
133
3. Kapitel (Zusammenfassung)
• Netzwerk mit je einer eindimensionalen Eingangsschicht und zweidimensionalen Kohonen Schicht
• Anordnung der Neuronen innerhalb der Kohonen Schicht ist wesentlich
• Positionen der Neuronen im trainierten Zustand der Karte nicht untereinander austauschbar
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
134
3. Kapitel (Zusammenfassung)
• Jedes Neuron der Kohonen Schicht ist mit jedem Neuron der Eingangsschicht über Gewichte verbunden
• Keine direkten Verbindungen mit Signalfluß der Neuronen der Kohonen Schicht untereinander
• Indirekte Verbindung der Neuronen der Kohonen Schicht untereinander durch ihre relative Position zueinander
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
135
5. Kapitel (Zusammenfassung)
• Eingangsdaten (Beispielvektoren) mit ähnlichen Eigenschaften werden durch benachbarte Neuronen repräsentiert
• Vielzahl von Erweiterungen und Modifikationen des originalen Algorithmus
• Weit verbreiteter Typ unter den unüberwacht trainierten Netzen
• Zahlreiche Anwendungen
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
136
6. Kapitel
Assoziativspeicher
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
137
Assoziativspeicher
• Informationen werden assoziativ gespeichertInhaltsadressierte Informationsspeicherung
• Gegensatz: Speicherung in einer Liste (RAM)• Speicherkonzept
Information ist über viele Neuronen verteiltsehr robust gegenüber Ausfall eines Teils der NeuronenVerschlechterung des Ergebnisses aber kein “totaler” Ausfallabgelegte Musterpaare (x, y) mit x als Abrufschlüssel (Adresse der Speicherstelle)
• Im Prinzip ist jedes künstliche neuronale Netz ein Assoziativspeicher
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
138
Assoziativspeicher Einteilung
• AutoassoziativspeicherEingabemuster = AusgabemusterAusgabe des ungestörten Musters auch bei gestörten oder unvollständiger EingabeRauschunterdrückung, Musterergänzung
• HeteroassoziativspeicherEingabemuster ≠ AusgabemusterBeliebige Zuordnung von Eingabe zu AusgabemusterKlassifikation, Funktionsapproximation, Vorhersagen
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog
KNN
139
Linearer Assoziativspeicher
1x 2x nx
nw112w11w1y
2y
my
21w
1nw
22w
2nw
nw2
mnw
Lehrveranstaltung „Künstliche neuronale Netzwerke“ Andreas Herzog