Einführung in Neuronale Netze

Werbung
Grundlagen
Neuronale Netze
Einführung in
Neuronale Netze
Grundlagen
Neuronale Netze
Zusammengestellt aus:
•
•
•
Universität Münster: Multimediales Skript
Internetpräsentation der MFH Iserlohn (2000)
U. Winkler: Untersuchungen zur Anwendung
Neuronaler Netze für die Lösung von Problemen der
Informationsverarbeitung in der biologischen
Reinigungsstufe von Kläranlagen (1998)
• Stöcker:
Stöcker: Mathematik
• Projektarbeit – M. Höhler
• Eigenen Unterlagen
1
Grundlagen
Neuronale Netze
Literatur:
• InternetInternet-Skript von Prof. Dr. Westenberger
•
http://www.gm.fhhttp://www.gm.fh-koeln.de/~west/
Lehrbuch: Andreas Zell: Simulation neuronaler Netze
Grundlagen
Neuronale Netze
Inhalt:
•Einleitung
•Biologisches Vorbild
•Prinzipien Künstlicher Neuronaler Netz
2
Grundlagen
Neuronale Netze
Inhalt:
•Einleitung
•Biologisches Vorbild
•Prinzipien Künstlicher Neuronaler Netze
Einleitung
• Was versteht man unter „Neuronalen
Netzen“?
» Neuronale Netze sind dem
Gehirnfunktionen nachempfundene
Strukturen, die einen Lernprozess
ermöglichen.
3
Einleitung
Abgrenzung von konventionellen Programmen und
Wissensverarbeitung
Einleitung
Abgrenzung von Systemen zur Wissensverarbeitung
4
Einleitung
Abgrenzung von menschlichem zu künstlichem
Experten
Einleitung
Simulationsmodell: (a) konventionell und
(b) mit Neuronalen Netzen
5
Einleitung
•Computer lösen schnell Algorithmen.
•Menschen erkennen schneller Zusammenhänge.
•Das Gehirn arbeitet auch bei ungenauen Eingaben.
•Es arbeitet auch, wenn einige Zellen defekt sind.
•Es ist lernfähig, benötigt also keine Algorithmen.
•Informationsverarbeitung erfolgt parallel:
Resultat: Hohe Fehlertoleranz und
nur kleiner Wissensausfall bei Zerstörung eines Neurons.
Was ist ein neuronales Netz ?
Mathematische
Inputs
?
Outputs
Formel
6
Einsatzgebiete neuronaler Netze
Anwendungen
» Prognose
» Zinsprognose
» Wechselkursprognose
» Entscheidungsunterstützung
» Kreditwürdigkeitsprüfung
» Mailingaktionen
» Steuerung und Regelung
» Abfallsortierung
» Bewegungssteuerung
7
Zinsprognose
Outputs
Inputs
Mathematische
?
• BSP
• DAX
• Inflationsrate
• usw.
Formel
Zins
Zinsprognose
Inputs
Output
InputSchicht
HiddenSchicht
OuputSchicht
Bruttosozialprodukt
Kapitalmarktzins
Inflationsrate
Leitzins der Bundesbank
8
Kreditwürdigkeitsprüfung
HiddenSchicht
Input
OutputSchicht
Familienstand
Kennzahl für Kreditwürd.
Einkommen
Kennz. für SCHUFA Auskunft
Mailing Aktion
Input
HiddenSchicht
OutputSchicht
Branche
Jahresumsatz
Kennzahl für Erfolgsaussicht
Entfernung in km
9
Vergleich: Gehirn/Computer
0 1 1 0 1 0 0 1 1 1 0
1011
•Anzahl Neuronen
•Schaltzeit eines Elements
•„Taktfrequenz“
10-3 s
bis 1 kHz
109
•Anzahl Transistoren
•Schaltzeit eines Elements
•Taktfrequenz
10-9 s
2,5 GHz
Ein Mensch benötigt 0,1s um eine ihm bekannte Person zu erkennen,
der Computer erkennt in der Zeit noch nichts!
2003
Meinolf Höhler
Quelle: ©Prof. Westenberger, FH Köln, Neuronale Netze 99V011
Vergleich: Gehirn/Computer
0 1 1 0 1 0 0 1 1 1 0
Eigenschaft
Gehirn
Computer
Parallelität
hoch
niedrig
Präzision
mäßig
hoch
Fehlertoleranz
hoch
niedrig
Speicherzugriff
Erkennen von Mustern
Ausnutzen von Ähnlichkeiten
lokal
gut
schlecht
ja
nein
Numerisch präzise Berechnungen
schlecht
gut
Fehlerloses Speichern von Daten
schlecht
gut
Rekonstruieren verrauschter Daten
gut
schlecht
Verallgemeinern von Beispielen
gut
schlecht
ja
bisher nicht
Selbstorganisation
2003
Meinolf Höhler
global
Quelle: ©http://www.inf.hs-zigr.de/~wagenkn/TI/Komplexitaet/Referate98/vogt/neuronales/neuronaleNetze.html
10
Grundlagen
Neuronale Netze
Inhalt:
•Einleitung
•Biologisches Vorbild
•Prinzipien Künstlicher Neuronaler Netze
Biologisches Vorbild
Aufbau einer Nervenzelle
11
Biologisches Vorbild
Aufbau einer Nervenzelle:
• Zellkörper 0,25 mm groß
• Dendriten – die Zellfortsätze
zur Aufnahme von Signalen
• Axone – die Zellfortsätze
zum Senden von Signalen
• Organellen versorgen die
Zellen mit Energie
Biologisches Vorbild
Nervenzellen
Dieses Photo zeigt multipolare (mit vielen Fortsätzen) ausgestattete
Nervenzellen. Der zentrale Zellkörper jeder Zelle ist deutlich
erkennbar, ebenso die Dendriten – kurze Fortsätze des Zellkörpers,
die Nervenreize aufnehmen.
12
Biologisches Vorbild
Schalten einer Nervenzelle:
• Axone öffnen sich für Na+
Ionen
• Dadurch ergibt sich ein
Potentialausgleich
• Nach 11-2 ms wieder
Ruhepotential
Biologisches Vorbild
(A) Elektronenmikroskopische Aufnahme einer Retzius-Nervenzelle des Blutegels auf
dem metallfreien Gate eines Feldeffekt-Transistors. Source und Drain des Transistors sind
durch das Profil der Oberfläche gekennzeichnet. (B) Source-Drain-Strom eines NeuronTransistors (obere Linie) und intrazelluläre Spannung (untere Linie). Die positiven
Veränderungen der intrazellulären Spannung rufen eine Unterdrückung des Stroms im pleitenden Kanal des Transistors hervor.
13
Biologisches Vorbild
Aufbau des Gehirns
Biologisches Vorbild
Aufbau des Gehirns:
• Großhirn: Sensorik, Motorik
• Thalamus: Sinnesorgane –
Signalvorverarbeitung
• Hypothalamus: Vegetatives
System
• Mittelhirn: Schlafsteuerung
• Kleinhirn: Gleichgewicht
• Nachhirn: Reflexe
14
Grundlagen
Neuronale Netze
Inhalt:
•Einleitung
•Biologisches Vorbild
•Prinzipien Künstlicher Neuronaler Netze
Aufbau des neuronalen Netzes
2003
Meinolf Höhler
15
Aufbau des neuronalen Netzes
•ein NN besteht aus mehreren Schichten (Layer)
1
Inputlayer
Hiddenlayer
3
2
4
6
Outputlayer
5
7
2003
Meinolf Höhler
Aufbau des neuronalen Netzes
•ein NN besteht aus mehreren Schichten (Layer)
•eine einfache Tabelle dient zur Speicherung der Verbindungen
und Neuronen
1 2 3 4 5 6 7
1
Inputlayer
Hiddenlayer
Outputlayer
3
2
4
6
5
7
1
2
3
4
5
6
7
1 2 3 4 5 6 7
2003
Meinolf Höhler
1
16
Aufbau des neuronalen Netzes
•ein NN besteht aus mehreren Schichten (Layer)
•eine einfache Tabelle dient zur Speicherung der Verbindungen
und Neuronen
•wenn in Zelle (x;y) ein Wert steht, besteht eine Verbindung von
Neuron x zu y
1 2 3 4 5 6 7
1
Inputlayer
Hiddenlayer
3
2
4
6
Outputlayer
5
7
1
2
3
4
5
6
7
1 2 3 4 5 6 7
1
2003
Meinolf Höhler
Aufbau des neuronalen Netzes
•ein NN besteht aus mehreren Schichten (Layer)
•eine einfache Tabelle dient zur Speicherung der Verbindungen
und Neuronen
•wenn in Zelle (x;y) ein Wert steht, besteht eine Verbindung von
Neuron x zu y
•Inputvektor wird angelegt und Zeilenweise berechnet; Ergebnis
ist ein Outputvektor
1 2 3 4 5 6 7
Inputvektor
1
Inputlayer
Hiddenlayer
Outputlayer
3
2
4
6
5
7
1
2
3
4
5
6
7
1 2 3 4 5 6 7
2003
Meinolf Höhler
Outputvektor
1
17
Topologien neuronaler Netze
Netze ohne Rückkopplung (Feedforwardnetz)
Ebenenweise verbundenes Netz
1
3
1 2 3 4 5 6 7
2
4
6
5
7
1
2
3
4
5
6
7
2003
Meinolf Höhler
Topologien neuronaler Netze
Netze ohne Rückkopplung (Feedforwardnetz)
Ebenenweise verbundenes Netz mit Shortcut-connections
1
3
4
6
1 2 3 4 5 6 7
2
5
7
1
2
3
4
5
6
7
2003
Meinolf Höhler
18
Topologien neuronaler Netze
Netze mit Rückkopplung (rekurrente Netze)
direkte Rückkopplung
1
3
1 2 3 4 5 6 7
2
4
6
5
7
1
2
3
4
5
6
7
2003
Meinolf Höhler
Topologien neuronaler Netze
Netze mit Rückkopplung (rekurrente Netze)
indirekte Rückkopplung
1
3
4
6
1 2 3 4 5 6 7
2
5
7
1
2
3
4
5
6
7
2003
Meinolf Höhler
19
Topologien neuronaler Netze
Netze mit Rückkopplung (rekurrente Netze)
laterale Rückkopplung
1
3
1 2 3 4 5 6 7
2
4
6
5
7
1
2
3
4
5
6
7
2003
Meinolf Höhler
Topologien neuronaler Netze
Netze mit Rückkopplung (rekurrente Netze)
vollständig verbunden ohne direkte Rückkopplung
1
3
4
6
1 2 3 4 5 6 7
2
5
7
1
2
3
4
5
6
7
2003
Meinolf Höhler
20
Bestandteile neuronaler Netze
1. Zellen i=1....n mit
-
Aktivierungszustand ai (t )
f (.)
Transferfunktion
θi
Schwellwert
oi (t )
Ausgabewert
Aktivierungszustand: momentaner Grad der Aktivierung
berechnet aus einer
Aktivierungsfunktion und dem
Schwellenwert
Transferfunktion
Ausgabewert
: Funktion, die aus der Aktivierung den
Ausgabewert berechnet
: Wert, der über die Kanten an die
anderen Neuronen weitergegeben wird
Sigmoidfunktion : f ( x) =
1
1 + e−x
2003
Meinolf Höhler
Bestandteile neuronaler Netze
1. Zellen i=1....n mit
-
Aktivierungszustand ai (t )
f (.)
Transferfunktion
θi
Schwellwert
oi (t )
Ausgabewert
2. Verbindungsnetzwerk der Zellen mit Gewichten:wij
(gerichteter, gewichteter Graph, Gewichtsmatrix W)
Verbindungsnetzwerk: Matrix mit den Gewichtswerten der
Kanten zwischen den Neuronen
2003
Meinolf Höhler
21
Bestandteile neuronaler Netze
1. Zellen i=1....n mit
-
Aktivierungszustand ai (t )
f (.)
Transferfunktion
θi
Schwellwert
oi (t )
Ausgabewert
2. Verbindungsnetzwerk der Zellen mit Gewichten:wij
(gerichteter, gewichteter Graph, Gewichtsmatrix W)
3. Propagierungsfunktion net j (t )
Propagierungsfunktion: ist die Berechnungsvorschrift, wie
die Ausgaben der Vorgänger als
Eingabe des Neurons verwendet werden
2003
Meinolf Höhler
Bestandteile neuronaler Netze
1. Zellen i=1....n mit
-
Aktivierungszustand ai (t )
f (.)
Transferfunktion
θi
Schwellwert
oi (t )
Ausgabewert
2. Verbindungsnetzwerk der Zellen mit Gewichten:wij
(gerichteter, gewichteter Graph, Gewichtsmatrix W)
3. Propagierungsfunktion net j (t )
4. Lernregel: Training der Gewichte (Synapsen)wij
Lernregel: Algorithmus, über den das Lernverfahren
definiert wird
2003
Meinolf Höhler
22
Prinzipien
Künstlicher Neuronaler Netze
Drei Elemente:
•Zellkörper
•Dendrit
•Axon
Prinzipien
Künstlicher Neuronaler Netze
Aktivierungszustand Z
gibt den Aktivierungsgrad der Zelle an
Aktivierungsfunktion fact
gibt an, wie sich ein neuer Aktivierungszustand Zneu,j
des Neurons j aus der alten Aktivierung Zalt,j und der
Netzeingabe netj(t) sowie dem Schwellenwert des
Neurons j ergibt.
Ausgabefunktion fout
bestimmt aus der Aktivierung die Ausgabe des Neurons
23
Prinzipien
Künstlicher Neuronaler Netze
Faßt man Aktivierungs- und Ausgabefunktion zu einer
Transfer-Funktion zusammen, verwendet man häufig
die gewichtete Summe:
Prinzipien
Künstlicher Neuronaler Netze
Der Aktivierungszustand Z hängt vom alten Zustand und der Veränderung
der Aktivierungsfunktion ab und kann beispielsweise dargestellt werden
durch:
24
Prinzipien
Künstlicher Neuronaler Netze
Auch für künstliche
Neuronen gibt es eine
Schwellenwertfunktion:
Prinzipien
Künstlicher Neuronaler Netze
Die folgende Abbildung
enthält
einige gebräuchliche
Aktivierungs- bzw.
Ausgabefunktionen,
wobei die beiden
letzteren am häufigsten
verwendet werden.
25
Prinzipien
Künstlicher Neuronaler Netze
Tanh als übliche Sigmoidfunktion
Prinzipien
Künstlicher Neuronaler Netze
Formel
26
Prinzipien
Künstlicher Neuronaler Netze
Die Neuronen künstlicher neuronaler Netze sind im Vergleich zu ihren natürlichen
Vorbildern sehr stark idealisiert. Trotzdem gibt es viele Gemeinsamkeiten:
- Die massive Parallelität der Neuronen
- Relativ einfache Elemente: Neuronen verarbeiten die Aktivierungen der
Vorgängerneuronen und die Stärke der Verbindung zu einer Ausgabe.
- Die Neuronen sind durch gewichtete Verbindungen (biologisch: Synapsen)
miteinander verbunden.
- Die Verbindungsgewichte bei künstlichen Neuronen sind modifizierbar. Das
entspricht der Plastizität der Synapsen beim biologischen Vorbild.
- Ein Neuron ist mit sehr vielen anderen Neuronen verbunden (hohe Konnektivität).
Prinzipien
Künstlicher Neuronaler Netze
Neuronale Netze lassen sich gemäß der
folgenden Topologien klassifizieren:
1. Netze ohne Rückkopplung (feedforwardNetze)
2. Netze mit Rückkopplungen (rekurrente
Netze)
27
Prinzipien
Künstlicher Neuronaler Netze
Prinzipien
Künstlicher Neuronaler Netze
28
Prinzipien
Künstlicher Neuronaler Netze
Ein neuronales Netz "lernt", indem es sich gemäß einer fest
vorgegebenen Vorschrift, der Lernregel, selbst modifiziert. Prinzipiell
kann der Lernprozeß bestehen aus:
oEntwicklung neuer Verbindungen
oLöschen existierender Verbindungen
oModifikation der Verbindungsstärke (Veränderung
der Gewichte)
oModifikation des Schwellenwertes
oModifikation der Aktivierungs- bzw. Ausgabefunktion
oEntwicklung neuer Zellen
oLöschen bestehender Zellen
Prinzipien
Künstlicher Neuronaler Netze
1. Überwachtes Lernen (supervised learning)
Beim überwachten Lernen gibt ein externer Lehrer dem Netz
zu jeder Eingabe die korrekte Ausgabe oder die Differenz
der tatsächlichen zur korrekten Ausgabe an. Anhand dieser
Differenz wird dann das Netz über die Lernregel modifiziert.
Diese Technik setzt allerdings voraus, dass Trainingsdaten
existieren, die aus Paaren von Ein- und Ausgabedaten
bestehen.
29
Prinzipien
Künstlicher Neuronaler Netze
Ein typisches überwachtes Lernverfahren wie z.B. Backpropagation
durchläuft für alle Paare von Ein- und Ausgabemustern folgende
Schritte:
1. Das Eingabemuster wird dem Netz durch entsprechende Aktivierung
der Eingabeneuronen präsentiert.
2. Die angelegte Eingabe läuft vorwärts durch das Netz. Dadurch wird ein
Ausgabemuster für die aktuelle Eingabe erzeugt.
3. Tatsächliche und korrekte Ausgabe werden verglichen und die
Differenz berechnet.
4. Die Fehler laufen rückwärts von der Ausgabe- zur Eingabeschicht.
Dabei werden die Verbindungsgewichte verändert, so daß der Fehler
verringert wird.
Die Gewichte aller Neuronen werden um die vorher berechneten Werte
verändert.
Prinzipien
Künstlicher Neuronaler Netze
Unüberwachtes Lernen (unsupervised learning)
Hierbei gibt es überhaupt keinen externen Lehrer, daher heißt
dieses Lernparadigma auch self-organized learning. Das Netz
versucht ohne Beeinflussung von außen die präsentierten Daten
in Ähnlichkeitsklassen aufzuteilen.
30
Grundlagen
Neuronale Netze
Problem beim GradientenabstiegsverfahrenGradientenabstiegsverfahrenSuche des Minimums
Grundlagen
Neuronale Netze
Lernrate (engl. learning rate):
Bestimmt den Verlauf des Gradientenabstiegs.
Kleinere Lernrate führt zu kleineren Sprüngen in der
Objektfunktion und eventuell auch exakterer Adaption.
Größere Lernrate kann den Lernvorgang beschleunigen
und Entkommen aus lokalen Minima erleichtern. Eine
geeignete Lernrate ist von Fall zu Fall durch Probieren zu
ermitteln.
31
Grundlagen
Neuronale Netze
Objektfunktion während des Lernens
(links: große Lernrate, rechts: kleine Lernrate)
Grundlagen
Neuronale Netze
Klassifikation Neuronaler Netze
Binäre Eingangssignale
Überwachtes
Lernen
Hopfield
Netz
Hamming
Netz
Unüberwachtes
Lernen
Grossberg
Netz
Kontinuierliche Eingangssignale
Überwachtes
Lernen
Perceptron Multilayer
Perceptron
Unüberwachtes
Lernen
Kohonen
Netz
Quelle: MIT GmbH, Aachen
32
Grundlagen
Neuronale Netze
VorVor- und Nachteile der Netzwerktypen
Netzwerktyp
Multilayer
Perceptron
Kohonen
Netzwerk
Beschreibung
Nachteile
Anwendungen
Der Aufbau des MLPs gleicht dem
~ flexibel
Aufbau des zuvor gezeigten, neuronalen ~ geringe Komplexität
Netzes. Es ist strikt linear aufgebaut. Die
Eingangsfunktion ist die Summe der
gewichteten Eingangswerte. Die
Aktivierungsfunktion ist entweder eine
lineare, eine Sigmoid- oder eine TangensHyperbolicus-Funktion.
Vorteile
~ Netzgröße (Anzahl
der Gewichte) muß
genau an das
Problem angepaßt
werden.
~
Überwachung des
Lernvorgangs
notwendig
z.B. Zeitreihenprognosen
n-Dimensionales Netz, bei dem die
Neuronenposition durch Ihre
Merkmalsausprägung beschrieben wird
~ schlecht geeignet
für Merkmale ohne
def. Abstand z.B.
Telefonnr.
~ Abhängigkeit von
der Präsentationsreihenfolge
z.B. Einteilung in
Klasse
~ kaum
Expertenwissen
erforderlich
~ unüberwachtes
Lernen
~ findet unbekannte
Strukturen
Grundlagen
Neuronale Netze
VorVor- und Nachteile der Netzwerktypen
Netzwerktyp Beschreibung
Fuzzy
Kohonen
Netzwerk
n-Dimensionales Netz, bei dem
die Neuronenposition durch Ihre
Merkmalsausprägung
beschrieben wird. Zusätzlich wird
beim Lernalgorithmus FuzzyClustering eingesetzt, um die
Nachteile des reinen
Kohonennetzes auszugleichen.
Vorteile
Nachteile
Anwendungen
~ kaum
Expertenwissen
erforderlich
~ unüberwachtes
Lernen
~ findet unbekannte
Strukturen
~ konvergiert schneller
als reines Kohonen
~ unabhängig von
Präsentationsreihenfolge d.
Trainingssätze
~ schlecht
geeignet für
Merkmale ohne
def. Abstand
z.B. Telefonnr.
z.B. Einteilung in
beliebig geformte
Klassen im
Merkmalsraum
33
Grundlagen
Neuronale Netze
Lernverfahren Beschreibung
Einsatzgebiet
Überwachter Lernalgorythmus; heuristisches Verfahren, Multilayer Perceptron und
bei dem die Gewichte solange verändert werden, bis das Varianten
Quick Propagation Ergebnis mit der Vorgabe weitesgehenst übereinstimmt;
vorwärtsgerichtet
Überwachter Lernalgorythmus; ausgehend von der
Multilayer Perceptron und
Abweichung des IST- vom SOLL-Wertes, werden die
Varianten
Gewichte von der Ausgabeschicht zur Eingabeschicht,
also in umgekehrter Richtung, justiert. Dabei fließt der
Fehler (SOLL-IST-Abweichung) mit in das neue Gewicht
Back Propagation mit ein. Der Weg, auf dem die größten
Gewichtsänderungen während des Trainingssatzes
stattgefunden haben, ist der Weg, der am stärksten von
der Korrektur betroffen ist; rückwärtsgerichtet
Grundlagen
Neuronale Netze
Lernverfahren
Kohonen "Winner
Take All"
Simuliertes
Ausglühen
Beschreibung
Einsatzgebiet
Die Neuronen werden im n-dimensionalen Raum in
Kohonen Netz und in
Abhängigkeit von ihren Merkmalsausprägungen
modifizierter Form im
plaziert. Auch der Eingangsvektor wird in diesem
Fuzzy-Kohonen-Netz
Raum plaziert. Das Neuron, welches dem
Eingangsvektor am räumlich am nächsten kommt wird
verändert. Und zwar wird der Eingangsvektor vom
Vektor, der die Position des Neurons im Raum angab,
abgezogen. Unüberwachtes Lernverfahren
Minimierung der Energiefunktion im Netz. Hierbei wird
versucht den SOLL-Wert so nahe, wie möglich zu
kommen. Die Vergrößung des Fehlers wird als
Energiezunahme (pot. Energie) interpretiert. Durch
stochastische Methoden wird versucht den SOLLWert zu erreichen und gleichzeitig die Gesamtenergie
des Netzes zu minimieren.
34
Schlussbemerkung
– "You work is to discover your world and then with all your heart give
yourself to it."
- BUDDHA -
– "The purpose of computing is insight,
insight, not numbers."
numbers."
-
Richard Hamming -
– "The history of technology shows us that
we overestimate what a technology can do for us in a few years and
underestimate what it can do in a decade or two."
two."
Fiegenbaum,
Fiegenbaum, MCCorduck,
MCCorduck, Nii -
– "Chance favors the prepared mind." - Louis Pasteur -
35
Herunterladen