Part 1 - Kooths.de
Part 1 - Kooths.de
Part 1 - Kooths.de
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Neuronale Netze/<br />
Soft Computing<br />
Teil 1<br />
BiTS, Wintersemester 2004/2005<br />
Dr. Stefan <strong>Kooths</strong><br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 1
Glie<strong>de</strong>rung<br />
1. Einführung und Einordnung<br />
2. Neuronale Netze 1: Grundlagen<br />
3. Neuronale Netze 2: Konzeption und Anwendung<br />
4. Neuro-Fuzzy-Systeme<br />
5. Genetische Algorithmen<br />
6. Zusammenfassung und Ausblick<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 2
Glie<strong>de</strong>rung<br />
1. Einführung und Einordnung<br />
2. Neuronale Netze 1: Grundlagen<br />
3. Neuronale Netze 2: Konzeption und Anwendung<br />
4. Neuro-Fuzzy-Systeme<br />
5. Genetische Algorithmen<br />
6. Zusammenfassung und Ausblick<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 3
Einordnung:<br />
NN/SC EUS bzw. Business Intelligence<br />
Diplom: EUS<br />
• Entscheidungslehre/<br />
Simulation von<br />
Entscheidungen<br />
• Wissensbasierte<br />
Systeme/Expertensysteme<br />
• Künstliche Intelligenz<br />
• Neuronale Netze<br />
BA/MA: BI<br />
• Management Support<br />
Systems<br />
• Knowledge-Based<br />
Systems<br />
• Soft Computing<br />
• Case Studies<br />
Prüfungsleistung: Projektarbeit<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 4
Einordnung in die BI-relevanten KI-Gebiete<br />
Wissensbasierte Systeme<br />
(Expertensysteme)<br />
Soft<br />
Computing<br />
Multiagentensysteme<br />
(verteile Intelligenz)<br />
Kennzeichnung<br />
Trennung von<br />
Wissensbasis und<br />
Problemlösungsstrategie<br />
Erklärung <strong>de</strong>r<br />
gefun<strong>de</strong>nen Lösung<br />
Lernfähigkeit und<br />
Toleranz gegenüber<br />
unscharfem,<br />
ungewissem und<br />
unvollständigem Wissen<br />
Emergente<br />
Problemlösung durch<br />
Kooperation vieler<br />
kontextbezogener,<br />
autonomer und<br />
flexibler Module<br />
Teilgebiete<br />
-logikbasiert<br />
- regelbasiert<br />
-framebasiert<br />
- mo<strong>de</strong>llbasiert<br />
- fallbasiert<br />
- statistisch<br />
jeweils für Zwecke <strong>de</strong>r<br />
Diagnose, Simulation<br />
und Konstruktion<br />
- Fuzzy Logic<br />
-Neuronale Netze<br />
- Genetische<br />
Algorithmen<br />
(- Probabilistisches<br />
Schließen)<br />
- Agenten<strong>de</strong>sign<br />
- Kommunikation<br />
- Kooperation und<br />
Konfliktlösungen<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 5
Soft Computing: Kennzeichnung<br />
• Lernfähigkeit und Toleranz gegenüber<br />
Ungenauigkeit, Unschärfe, Unsicherheit und<br />
Datenfehlern<br />
• Ziel:<br />
• handhabbare, robuste und kostengünstige<br />
Softwarelösungen, …<br />
• … die nicht notwendigerweise perfekt sind, …<br />
• … aber unter <strong>de</strong>n gegebenen Bedingungen als<br />
befriedigend gelten können<br />
• natürliche Vorbil<strong>de</strong>r (aber: kein Nachbau,<br />
son<strong>de</strong>rn Inspiration)<br />
• 50 % Wissenschaft und 50 % Kunst (= Können =<br />
Erfahrung)!<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 6
Soft Computing: Teilgebiete (Basistechnologien)<br />
• Neuronale Netze<br />
• Informationsverarbeitung orientiert am biologischen<br />
Vorbild Gehirn<br />
• Behandlung komplexer, nicht-linearer Systeme zur<br />
Mustererkennung<br />
• Fuzzy Logik<br />
• multivalente (graduelle) Verallgemeinerung <strong>de</strong>r<br />
Mengenlehre<br />
• Repräsentation von approximativem (Experten-) Wissen<br />
• Weiterentwicklung: Computing with Words<br />
• Genetische Algorithmen<br />
• evolutionäre Problemlösungsheuristik<br />
• Problemdarstellung in Chromosomenform, Lösungssuche<br />
durch Vererbung, Mutation und Auslese<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 7
Soft Computing im KI-Kontext:<br />
Überschneidungen und Hybridansätze<br />
Unschärfe<br />
Lernfähigkeit<br />
explizites Wissen<br />
Genetische<br />
Algorithmen<br />
Neuronale<br />
Netze<br />
Fuzzy<br />
Logik<br />
Expertensysteme<br />
Neuro-Fuzzy-Systeme<br />
(Hybridbeispiel)<br />
Agenten<strong>de</strong>sign<br />
Multiagentensysteme<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 8
Literatur<br />
• Backhaus, K. u.a.: Multivariate Analysemetho<strong>de</strong>n; 10. Aufl., Springer-<br />
Verlag, Berlin u.a.O. 2003. [Kap. 12]<br />
• Badiru, A. B. / Cheung, J. Y.: Fuzzy Engineering Expert Sytems with<br />
Neural Network Applications; John Wiley & Sons 2002. [Ch. 8,9]<br />
• Callan, R.: Neuronale Netze im Klartext; Pearson Studium, München 2003.<br />
• Lange, C.: Neuronale Netze in <strong>de</strong>r wirtschaftswissenschaftlichen Prognose<br />
und Mo<strong>de</strong>llgenerierung; Physica-Verlag, Hei<strong>de</strong>lberg 2004.<br />
• Luger, G. F.: Artificial Intelligence: Structures and Strategies for Complex<br />
Problem Solving, 5th Ed., Addison-Wesley, Upper Saddle River 2005. [Ch.<br />
11,12]<br />
• <strong>Kooths</strong>, S.: Erfahrungsregeln und Konjunkturdynamik – Makromo<strong>de</strong>lle mit<br />
Neuro-Fuzzy-generierten Erwartungen; Peter Lang Europäischer Verlag<br />
<strong>de</strong>r Wissenschaften, Frankfurt/M. u.a.O. 1998. [Kap. 2]<br />
• McCord Nelson, M. / Illingworth, W. T.: A Practical Gui<strong>de</strong> to Neural Nets;<br />
Addison-Wesley, New York u.a.O. 1994.<br />
• Rehkugler, H. / Zimmermann, H. G. (Hrsg.): Neuronale Netze in <strong>de</strong>r<br />
Ökonomie – Grundlagen und finanzwirtschaftliche Anwendungen; Verlag<br />
Vahlen, München 1994.<br />
• Turban, E. / Aronson, J. E. / Liang, T.-P.: Decision Support Systems and<br />
Intelligent Systems, 7th Ed., Prentice Hall, Upper Saddle River 2005. [Ch.<br />
12]<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 9
Weblinks<br />
• Einführung in Neuronale Netze (Uni Münster)<br />
http://wwwmath.unimuenster.<strong>de</strong>/SoftComputing/lehre/material/www<br />
nnscript/startseite.html<br />
• Soft Computing Home Page<br />
http://www.soft-computing.<strong>de</strong><br />
• Neurocomputing<br />
http://www.softcomputing.<strong>de</strong><br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 10
Glie<strong>de</strong>rung<br />
1. Einführung und Einordnung<br />
2. Neuronale Netze 1: Grundlagen<br />
3. Neuronale Netze 2: Konzeption und Anwendung<br />
4. Neuro-Fuzzy-Systeme<br />
5. Genetische Algorithmen<br />
6. Zusammenfassung und Ausblick<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 11
(Künstliche) Neuronale Netze<br />
• Verwandte Begriffe<br />
• Konnektionismus<br />
• Parallel Distributed Processing<br />
• Subsymbolisches Paradigma<br />
• Grundi<strong>de</strong>e<br />
• Verbindung vieler, relativ einfach aufgebauter Einheiten<br />
(Neuronen)<br />
• Leistungsfähigkeit ergibt sich aus Zusammenschaltung<br />
und Parallelverarbeitung im Verbund<br />
• Wissenserwerb und -repräsentation<br />
• Lernen anhand von Beispielen (Training)<br />
• Kodierung <strong>de</strong>s Wissens liegt in impliziter Form vor<br />
(unterhalb <strong>de</strong>r für Menschen verständlichen Symbolebene)<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 12
(Künstliche) Neuronale Netze<br />
• Verwandte Begriffe<br />
• Konnektionismus<br />
• Parallel Distributed Processing<br />
• Subsymbolisches Paradigma<br />
• Grundi<strong>de</strong>e<br />
• Verbindung vieler, relativ einfach aufgebauter Einheiten<br />
(Neuronen)<br />
• Leistungsfähigkeit ergibt sich aus Zusammenschaltung<br />
und Parallelverarbeitung im Verbund<br />
• Wissenserwerb und -repräsentation<br />
• Lernen anhand von Beispielen (Training)<br />
• Kodierung <strong>de</strong>s Wissens liegt in impliziter Form vor<br />
(unterhalb <strong>de</strong>r für Menschen verständlichen Symbolebene)<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 13
Haupteinsatzgebiete/-eigenschaften<br />
• universelle, beliebig-dimensionale<br />
Funktionsapproximation<br />
• Schätzverfahren (Alternative zu statistischen<br />
Regressionsanalysen)<br />
• Mustererkennung<br />
• Fehlertoleranz<br />
• gegenüber Daten<br />
• gegenüber eigener Struktur<br />
liegen Daten nur bruchstückhaft vor o<strong>de</strong>r wird ein Teil<br />
<strong>de</strong>s Netzes zerstört, so lei<strong>de</strong>t nur die Güte <strong>de</strong>s<br />
Ergebnisses, nicht die Fähigkeit <strong>de</strong>s Netzes, überhaupt<br />
eine (Näherungs-) Lösung erarbeiten zu können<br />
• Voraussetzung: Repräsentative Trainingsbeispiele<br />
für die abzubil<strong>de</strong>n<strong>de</strong>n Zusammenhänge<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 14
Natürliches Vorbild: Menschliches Gehirn<br />
• Motivation<br />
• I<strong>de</strong>ntifizierung von Ähnlichkeiten<br />
(Mustererkennung, Unschärfe- und Fehlertoleranz)<br />
• Generalisierungsfähigkeit<br />
(Einschätzung bislang unbekannter Situationen und<br />
Ableitung geeigneter Verhaltensweisen)<br />
• Lernfähigkeit<br />
(Anpassung an neue Umweltzustän<strong>de</strong> durch<br />
Erfahrungsbildung)<br />
• Aufbau<br />
• 10 bis 100 Mrd. (relativ langsame) Neuronen<br />
• bis zu 10.000 Verbindungen von einem Neuron zu<br />
an<strong>de</strong>ren Neuronen<br />
• Gewicht: 1375 g (Männer), 1245 g (Frauen)<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 15
Menschliches Nervensystem<br />
Nervensystem <strong>de</strong>s Menschen<br />
(Gesamtheit <strong>de</strong>s Nervengewebes)<br />
animal<br />
(Kommunikation mit <strong>de</strong>r Außenwelt)<br />
→ bewußte Steuerung<br />
vegetativ<br />
(Regelung <strong>de</strong>s inneren Betriebs <strong>de</strong>s Organismus)<br />
→ unbewußte Steuerung<br />
Peripheres Nervensystem (PNS)<br />
→ Signalübermittlung zwischen ...<br />
... Rezeptoren und ZNS<br />
... ZNS und Effektoren<br />
Zentrales Nervensystem (ZNS)<br />
→ Signalintegration und -verarbeitung<br />
Rückenmark<br />
→ Signalweiterleitung zum Gehirn<br />
Gehirn<br />
→ eigentliche Signalverarbeitung<br />
(Informationsverarbeitung)<br />
Gliazellen (90%) und Neuronen (10%)<br />
Stützung, Isolation, Versorgung und ...?<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 16
SOR-Mo<strong>de</strong>ll<br />
INPUT<br />
(Problem)<br />
„Informations“-<br />
Verarbeitung<br />
OUTPUT<br />
(Entscheidung)<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 17
Biologische Nervenzelle<br />
Dendriten (Zellfortsätze)<br />
Soma (Zellkörper)<br />
Kern<br />
Ausläufer von Axonen<br />
an<strong>de</strong>rer Neuronen<br />
Synapse<br />
(Zellverbindung)<br />
Axon<br />
(Nervenfaser)<br />
Axonverzweigungen<br />
5 bis 100 Mikrometer<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 18
Signalfluss in einem natürlichen Neuron<br />
eingehen<strong>de</strong> Impulse<br />
von an<strong>de</strong>ren Neuronen<br />
exitatorische Synapse<br />
Erregung/Hemmung<br />
Reizpegel <strong>de</strong>s Neurons<br />
(elektr. Polarisation)<br />
Schwellenwertüberschreitung?<br />
ja<br />
"Feuern"<br />
<strong>de</strong>s<br />
Neurons<br />
(Entladung)<br />
Ausgangssignal<br />
elektrisch<br />
chemisch<br />
(Ionenaustausch)<br />
elektrisch<br />
inhibitorische Synapse<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 19
Vernetzung und synaptische Plastizität<br />
Signalübermittlung<br />
Gesamtlänge <strong>de</strong>r<br />
Neuronenverbindungen:<br />
500 Millionen Meter<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 20
„Informationsverarbeitung“,<br />
Wissensrepräsentation und -akquisition<br />
• Informationsverarbeitung<br />
• Signalübermittlung<br />
• Beeinflussung <strong>de</strong>r neuronalen Aktivitätsniveaus<br />
• Wissensrepräsentation<br />
• Signale bzw. Aktivitätsniveaus tragen für sich<br />
genommen keine sinnhafte Be<strong>de</strong>utung<br />
• implizite Abbildung symbolischer Informationen durch<br />
das (eigenorganisierte) Aktivierungsmuster einer Gruppe<br />
von Neuronen<br />
• Wissen steckt im Netzaufbau (Anzahl und Verbindungen<br />
<strong>de</strong>r Neuronen) sowie in <strong>de</strong>n Verbindungsgewichten<br />
• Wissensakquisition<br />
• Trainingsprozesse (Lernen aus Fehlern)<br />
• Anpassung <strong>de</strong>r Gewichte, Än<strong>de</strong>rn <strong>de</strong>r Topologie<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 21
Einsatzmodi<br />
• Recallmodus (Arbeitsmodus)<br />
• Einsatz <strong>de</strong>s erworbenen Wissens<br />
• Trainingsmodus<br />
• Wissenserwerb aus Trainingsbeispielen<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 22
Formale Neuronen (Processing Units)<br />
• Eigenschaften<br />
• verfügen über Ein- und Ausgänge<br />
• empfangen Signale<br />
• aggregieren diese zu einem Nettosignal<br />
• generieren aus <strong>de</strong>m Nettosignal einen eigenen<br />
Signalwert<br />
• sen<strong>de</strong>n diesen Signalwert an nachgelagerte Neuronen<br />
• Arten<br />
• Inputneuronen (Signalempfang von <strong>de</strong>r Außenwelt)<br />
→ vgl. natürliche Rezeptorzellen<br />
• innere/ver<strong>de</strong>ckte Neuronen (Signalverarbeitung und -<br />
verteilung) → interne Repräsentation <strong>de</strong>r Domäne<br />
• Outputneuronen (Signalweitergabe an die Außenwelt)<br />
→ vgl. natürliche Effektorzellen<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 23
Schematischer Aufbau formaler Neuronen<br />
Informationsfluss im Recallmodus<br />
Eingangssignale (Neuroneninputs) =<br />
Ausgangssignale vorgelagerter Neuronen<br />
in 1<br />
in 2<br />
in 3<br />
Gewichte<br />
g j,1<br />
g j,2<br />
g j,3<br />
Ausgabefunktion<br />
Propagierungsfunktion<br />
Σ<br />
Nettoinput<br />
Aktivierungsfunktion<br />
Aktivierungswert<br />
Ausgangssignal<br />
(Neuronenoutput)<br />
out j<br />
out j<br />
Eingangssignale für nachgelagerte Neuronen<br />
"Ausläufer von Axonen<br />
an<strong>de</strong>rer Neuronen"<br />
"Synapsen"<br />
"Dendriten"<br />
"Zellkörper"<br />
"Axonverzweigungen"<br />
Entsprechungen im biologischen Vorbild<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 24
Interne Funktionen eines Neurons<br />
• Propagierungsfunktion: netin = f(g 1·in 1 ,…,g n·in n )<br />
• bestimmt Nettoinput netin durch Summation <strong>de</strong>r gewichteten<br />
Eingangssignale<br />
• Aktivierungsfunktion: Z = g(Z -1 ,netin)<br />
• bestimmt Aktivierungswert Z <strong>de</strong>s Neurons aus (optional:<br />
bisheriger Aktivierung und) Nettoinput<br />
• Ausgabefunktion: out = a(Z)<br />
• bestimmt Ausgabewert out aus Aktivierungswert<br />
• Vereinfachung: out = a(netin)<br />
• Transferfunktion als Zusammenfassung von Aktivierungs- und<br />
Ausgabefunktion<br />
• Aktivierungsfunktion als I<strong>de</strong>ntität (Z = netin)<br />
• beachte: uneinheitliche Terminologie<br />
• Propagierungsfunktion = Integrationsfunktion<br />
• Transferfunktion = Aktivierungsfunktion = Ausgabefunktion<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 25
Vereinfachtes formales Neuronenschema<br />
Σ<br />
Transferfunktion<br />
(a)<br />
Eingangssignale (Neuroneninputs) =<br />
Ausgangssignale vorgelagerter Neuronen<br />
Ausgangssignal<br />
(Neuronenoutput)<br />
Eingangssignale für nachgelagerte Neuronen<br />
in 1<br />
Gewichte<br />
g j,1<br />
out j<br />
Akti-<br />
Nettoinput<br />
= vierungs-<br />
in 2<br />
in 3<br />
g j,2<br />
Propagierungsfunktion<br />
(f)<br />
netin<br />
wert<br />
out<br />
out j<br />
gj,3<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 26
Bestimmung <strong>de</strong>s Nettoinputs<br />
hier:<br />
netin = net<br />
in = x<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 27
Transferfunktionen<br />
• Halbraum-aktiv<br />
• Schwellenwertfunktion<br />
• sigmoi<strong>de</strong> Funktion<br />
Schwellwertfunktion<br />
logistische Funktion<br />
• lokal aktiv<br />
• trianguläre Funktion<br />
• Gauß-Funktion<br />
trianguläre Funktion<br />
Gauss-Funktion<br />
• entschei<strong>de</strong>nd: nicht-lineare Funktionstypen<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 28
Komponenten/Eigenschaften<br />
eines Neuronalen Netzes<br />
• Neuronen<br />
(Menge von einfachen Verarbeitungseinheiten)<br />
• Propagierungsfunktion<br />
• Aktivierungsfunktion<br />
• Ausgabefunktion<br />
Transferfunktion<br />
• Konnektivitätsmuster<br />
(Struktur <strong>de</strong>r Neuronenverbindungen)<br />
• Festlegung <strong>de</strong>s Signalflusses<br />
(Regel zum Propagieren von Signalen durch das<br />
Netzwerk)<br />
• Lernregel zum Anpassen <strong>de</strong>r Gewichte<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 29
Systematisierung Neuronaler Netze (Netztypen) 1<br />
• Neuronentyp<br />
• Topologie<br />
• Lernverfahren<br />
• Funktion/Aufgabe (Lerngegenstand)<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 30
Systematisierung Neuronaler Netze (Netztypen) 2<br />
• Neuronentyp<br />
• Bestimmung <strong>de</strong>s Aktivierungszustands<br />
– Z=g(Z -1 ,netin)<br />
– Z=g(netin) | Z = netin<br />
• Funktionstyp <strong>de</strong>r Ausgabefunktion<br />
– halbraum-aktiv<br />
– lokal aktiv (Radiale Basisfunktionen)<br />
• Topologie<br />
• Lernverfahren<br />
• Funktion/Aufgabe (Lerngegenstand)<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 31
Systematisierung Neuronaler Netze (Netztypen) 3<br />
• Neuronentyp<br />
• Topologie<br />
• Anzahl <strong>de</strong>r Neuronen<br />
• Anordnung <strong>de</strong>r Neuronen<br />
– geschichtet<br />
– ungeschichtet<br />
Konnektivitätsmuster<br />
• Signalfluss<br />
– ohne Rückkopplung (feedfoward)<br />
– mit Rückkopplung (feedback)<br />
• Lernverfahren<br />
• Funktion/Aufgabe (Lerngegenstand)<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 32
Netztopologien 1:<br />
Feedforward-Netze (Netze ohne Rückkopplung)<br />
• geschichtet (ebenenweise verbun<strong>de</strong>n)<br />
Ausgabeschicht (output layer)<br />
ver<strong>de</strong>ckte Schicht (hid<strong>de</strong>n layer)<br />
Eingabeschicht (input layer)<br />
• allgemein (Existenz von Shortcuts)<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 33
Netztopologien 2:<br />
Rekurrente Netze (Netze mit Rückkopplung)<br />
• direkte Rückkopplung (direct feedback)<br />
Ten<strong>de</strong>nz zu Grenzzustän<strong>de</strong>n<br />
bezüglich <strong>de</strong>r Aktivierung<br />
einzelner Neuronen<br />
• indirekte Rückkopplung (indirect feedback)<br />
Aufmerksamkeitssteuerung auf<br />
bestimme Eingabemerkmale<br />
durch das Netz<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 34
Netztopologien 3:<br />
Netze mit Rückkopplungen (Forts.)<br />
• laterale Kopplung<br />
oftmals als winnertake-all<br />
Netze genutzt<br />
(laterale Hemmung)<br />
• vollständig verbun<strong>de</strong>ne Netze<br />
Hopfield-Netztyp<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 35
Zwei- bzw. dreischichtiges Feedforward-Netzes<br />
Eingabeschicht verborgene Schicht Ausgabeschicht<br />
(1. Schicht) (2. Schicht) (3. Schicht)<br />
g<br />
2<br />
1,1<br />
N 2 1<br />
1<br />
N 1 1<br />
N 2 2<br />
1<br />
N 1 2<br />
N 2 3<br />
N 3 1<br />
1<br />
N 1 3<br />
N 2 4<br />
N 3 2<br />
N 2 5<br />
g 3 2,5<br />
Informationsfluss im Recallmodus<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 36
Konnektivitätsmuster in Matrixnotation<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 37
Demo 1<br />
Problemkomplexität und Netz<strong>de</strong>sign<br />
• Komplexe Problemstellung (nicht linear-trennbar)<br />
• Be<strong>de</strong>utung <strong>de</strong>r Nichtlinearität <strong>de</strong>r Transferfunktion<br />
• Be<strong>de</strong>utung <strong>de</strong>r ver<strong>de</strong>ckten Schicht<br />
• OR- und XOR-Operator im Vergleich<br />
OR-Operator<br />
(inklusives O<strong>de</strong>r)<br />
XOR-Operator<br />
(exklusives O<strong>de</strong>r)<br />
y<br />
y<br />
wahr<br />
(1)<br />
1<br />
1<br />
wahr<br />
(1)<br />
1<br />
0<br />
falsch<br />
(0)<br />
0 1<br />
falsch<br />
(0)<br />
0 1<br />
falsch<br />
(0)<br />
wahr<br />
(1)<br />
x<br />
falsch<br />
(0)<br />
wahr<br />
(1)<br />
x<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 38
Demo 1<br />
Lösungsbaustein: Perceptrons<br />
• Erfin<strong>de</strong>r: Frank Rosenblatt (Anfang <strong>de</strong>r 1960er)<br />
• binäre Transferfunktion mit Schwellwert θ<br />
• falls netin < θ, dann out = 0<br />
• sonst out = 1<br />
• führt lineare Trennung <strong>de</strong>s Eingaberaumes durch<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 39
Demo 1<br />
OR-Operator<br />
x<br />
Neuronales Netz<br />
1. Schicht 2. Schicht<br />
0,5<br />
Transferfunktionen<br />
1. Schicht<br />
2. Schicht<br />
a(netin)<br />
a(netin)<br />
1<br />
0,1<br />
y<br />
0,5<br />
netin<br />
netin<br />
0,1<br />
Schwellenwert<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 40
Demo 1<br />
XOR-Operator<br />
x<br />
y<br />
Neuronales Netz<br />
1. Schicht 2. Schicht 3. Schicht<br />
+1<br />
+1<br />
-1<br />
-1<br />
0,1<br />
0,1<br />
+1<br />
+1<br />
0,1<br />
1. Schicht<br />
a(netin)<br />
Transferfunktionen<br />
netin<br />
2. und 3. Schicht<br />
a(netin)<br />
1<br />
netin<br />
0,1<br />
Schwellenwert<br />
• ohne ver<strong>de</strong>ckte Schicht geht es nicht<br />
• Transferfunktion in <strong>de</strong>r ver<strong>de</strong>ckten Schicht muss<br />
nicht-linear sein (sonst äquivalent zu<br />
zweischichtigem Netz)<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 41
Demo 1<br />
Grafische Interpretation von Perceptrons 1<br />
• einstufige (= zweischichtige) Perceptron-Netze<br />
n = 2<br />
n = 3<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 42
Demo 1<br />
Grafische Interpretation von Perceptrons 2<br />
• zwei-stufige (dreischichtige) Perceptron-Netze<br />
• drei-stufige<br />
(vierschichtige)<br />
Perceptron-Netze<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 43
Demo 2<br />
Funktionsapproximation<br />
• Problemformulierung:<br />
• f(x) = sin(x+5)+1<br />
• Approximation auf <strong>de</strong>m Interval [0;9]<br />
• Neuronale Netzlösung<br />
• Topologie: 1-3-1 Feedforward-Netz<br />
• Neuronentyp<br />
– hid<strong>de</strong>n: logistisch<br />
– sonst: I<strong>de</strong>ntität<br />
• Technischer Trick: Bias-Neuron<br />
– Schwellwertkodierung (hid<strong>de</strong>n und output layer)<br />
– Skalierungsfaktor (hid<strong>de</strong>n layer)<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 44
Demo 2<br />
Netzmo<strong>de</strong>ll (ohne Bias-Neuronen)<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 45
Systematisierung Neuronaler Netze (Netztypen) 4<br />
• Neuronentyp<br />
• Topologie<br />
• Lernverfahren<br />
• überwacht (supervised)<br />
– korrigierend (mit „Lehrer“)<br />
– verstärkend (mit „Bewerter“, reinforcement learning)<br />
• unüberwacht (unsupervised)<br />
– kooperativ<br />
– wettbewerblich (winner-take-all)<br />
• Funktion/Aufgabe (Lerngegenstand)<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 46
Allgemeine Aspekte neuronaler Lernverfahren<br />
• Recall- vs. Trainingsphase<br />
• Recall: „gegeben x und gegeben G, fin<strong>de</strong> y“<br />
• Training: „gegeben x und gegeben y, fin<strong>de</strong> G“<br />
mit:<br />
– x: Inputvektor<br />
– y: Outputvektor<br />
– G: Menge <strong>de</strong>r Netzgewichte<br />
• Generalisierungsfähigkeit vs. Overlearning<br />
• Auswahl <strong>de</strong>r Trainingsmenge P<br />
• Rechtzeitiger Abbruch <strong>de</strong>s Trainings<br />
• Trainingsmusterpaar für überwachtes Lernen<br />
• Eingabemuster: x(p)<br />
• (Soll-) Ausgabemuster: y(p)<br />
für Trainingsmuster p<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 47
Lernzyklus<br />
• Schritt 1<br />
• Auswahl eines Trainingsmusters p[x(p),y(p)]<br />
• Anlegen <strong>de</strong>s Eingabemusters an die Inputschicht<br />
• Schritt 2<br />
• Verarbeitung <strong>de</strong>s ausgewählten Trainingsmusters zum<br />
Netzoutput out<br />
• Schritt 3<br />
• Soll-Ist-Vergleich: Netzoutput vs. Ausgabemuster <strong>de</strong>s<br />
Trainingsbeispiels (out(p) vs. y(p))<br />
• Ermittlung <strong>de</strong>s Fehlermaßes E(p)<br />
• Schritt 4<br />
• Berechnung <strong>de</strong>r durch das Fehlermaß <strong>de</strong>s Trainingsbeispiels<br />
induzierten Än<strong>de</strong>rung <strong>de</strong>r Netzgewichte ∆g(p)<br />
(Anwendung <strong>de</strong>r Lernregel)<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 48
Trainingsepochen und -modus<br />
• Trainingsepoche<br />
• Vollständige Präsentation aller Trainingsbeispiele aus <strong>de</strong>r<br />
Trainingsmenge P<br />
• Trainingsmodus<br />
• Batch-Modus (epochales Lernen)<br />
– Kumulation <strong>de</strong>r induzierten Gewichtsän<strong>de</strong>rungen über<br />
die gesamte Epoche<br />
– Än<strong>de</strong>rung <strong>de</strong>r tatsächlichen Netzgewichte am En<strong>de</strong><br />
einer Epoche<br />
• Online-Modus (musterweises Lernen)<br />
– Än<strong>de</strong>rung <strong>de</strong>r tatsächlichen Netzgewichte nach je<strong>de</strong>m<br />
Trainingsbeispiel<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 49
Lernziel<br />
• Minimierung <strong>de</strong>s Netzfehlers<br />
E = 0,5·∑[out(p) – y(p)] 2<br />
• unter Beibehaltung <strong>de</strong>r Generalisierungsfähigkeit<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 50
Lernphase<br />
• Initialisierung <strong>de</strong>r Netzgewichte<br />
• Epochendurchlauf bis …<br />
• … Abbruchkriterium erfüllt<br />
• vorgegebene Epochenanzahl<br />
• Unterschreiten <strong>de</strong>r Güteschwelle<br />
• Anstieg <strong>de</strong>s Testmengenfehlers<br />
• evtl. Pruning <strong>de</strong>r Netzgewichte mit<br />
Validierungsdaten<br />
• Performancetest <strong>de</strong>s Netzes mit<br />
Generalisierungsdaten<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 51
Musterkategorien<br />
• Mo<strong>de</strong>llierungsdaten<br />
• Trainingsdaten<br />
• Testmengen- bzw. Validierungsdaten<br />
• Generalisierungsdaten<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 52
Hebbsche Lernregel: Einfache Form<br />
• D. O. Hebb (1949)<br />
• Wenn zwei Neuronen gleichzeitig aktiviert sind, so verstärkt<br />
sich die zwischen ihnen geschaltete Verbindung, an<strong>de</strong>rnfalls<br />
baut sie sich ab.<br />
• einfache Form<br />
mit: µ = Lernrate<br />
• Einfluss <strong>de</strong>r Lernrate<br />
• niedrig → langsames Lernen<br />
• hoch → Gefahr <strong>de</strong>s Vergessens<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 53
Hebbsche Lernregel und Klassische<br />
Konditionierung (Pawlowsche Hun<strong>de</strong>)<br />
vorher<br />
nachher<br />
1. Schicht 2. Schicht<br />
1. Schicht 2. Schicht<br />
Futter<br />
Futter<br />
Klingel<br />
1. Schicht 2. Schicht<br />
Speichelfluss<br />
Lernprozess<br />
Klingel<br />
1. Schicht 2. Schicht<br />
Speichelfluss<br />
Futter<br />
Klingel<br />
Speichelfluss<br />
Futter<br />
Klingel<br />
Speichelfluss<br />
neue Bahnung (Synapsenverstärkung) durch Training<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 54
Hebbsche Lernregel: Allgemeine Form<br />
• Problem <strong>de</strong>r einfachen Hebb-Regel<br />
• Gewichte wachsen im laufen<strong>de</strong>n Lernprozess immer weiter<br />
(keine Stabilisierung)<br />
• Lösung (allgemeine Form <strong>de</strong>r Hebbschen Lernregel)<br />
• Berücksichtigung eines Zielwertes (target) für das Neuron, zu<br />
<strong>de</strong>m das jeweils betrachtete Gewicht gehört<br />
• Berücksichtigung <strong>de</strong>s bisherigen Niveaus <strong>de</strong>s Gewichtes<br />
• Spezielle Lernregeln<br />
• Spezifizierung <strong>de</strong>r Funktionen ϕ und ψ (sprich: Phi und Psi)<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 55
Delta-Regel (Widrow-Hoff-Regel)<br />
• Widrow/Hoff (1960)<br />
• Abhängigkeit <strong>de</strong>r Gewichtsän<strong>de</strong>rung vom Fehlersignal <strong>de</strong>s<br />
Neurons, zu <strong>de</strong>m das Gewicht gehört<br />
• Spezifikationen für ϕ und ψ<br />
• Delta-Regel<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 56
Generalisierte Delta-Regel<br />
(Error-Backpropagation-Algorithmus)<br />
• Problem <strong>de</strong>r Delta-Regel<br />
• Wie kommt man zu einem Fehlersignal für die<br />
ver<strong>de</strong>ckten Neuronen?<br />
• Lösung: Generalisierte Delta-Regel!<br />
(s. nächster Gp.)<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 57
Systematisierung Neuronaler Netze (Netztypen) 5<br />
• Neuronentyp<br />
• Topologie<br />
• Lernverfahren<br />
• Funktion/Aufgabe (Lerngegenstand)<br />
• heteroassoziativ<br />
• autoassoziativ<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 58
Lerngegenstand und Lernverfahren<br />
Neuronale Netze<br />
autoassoziativ<br />
Eingabemuster = Ausgabemuster<br />
Neuronenbeziehung?<br />
wettbewerblich<br />
Input-Output-<br />
Beziehung?<br />
heteroassoziativ<br />
Eingabemuster ≠ Ausgabemuster<br />
Lerngegenstand<br />
korrigierend<br />
("mit Lehrer")<br />
überwacht<br />
Fehlermaß?<br />
verstärkend<br />
("mit Bewerter")<br />
externe<br />
Ergebniskontrolle?<br />
kooperativ<br />
unüberwacht<br />
Lernverfahren<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 59
Vereinfachungen gegenüber <strong>de</strong>m biologischen Vorbild<br />
• Wesentlich geringere Zahl von Neuronen<br />
• Viel geringere Zahl von Verbindungen<br />
• Nur ein Parameter für die Stärke <strong>de</strong>r<br />
synaptischen Kopplung (Vernachlässigung<br />
zeitlicher Phänomene und <strong>de</strong>s Einflusses<br />
verschie<strong>de</strong>ner Neurotransmitter)<br />
• Keine genauere Mo<strong>de</strong>llierung <strong>de</strong>r zeitlichen<br />
Vorgänge <strong>de</strong>r Nervenleitung<br />
• Konzentration auf homogene Netzwerke<br />
• Keine Berücksichtigung chemischer Einwirkungen<br />
benachbarter Neuronen<br />
• Biologisch unplausible Lernregeln<br />
• …<br />
KOOTHS – BiTS: Neuronale Netze / Soft Computing, WS 2004/2005 | Teil 1 60