Lernen und Klassifizieren AS2-2

Slides:



Advertisements
Ähnliche Präsentationen
Christian Scheideler SS 2009
Advertisements

Perceptrons and the perceptron learning rule
Adaptive Systeme Prof. Rüdiger Brause WS 2011.
Rekursion: Rekurrenz: Algorithmen rufen sich selbst (rekursiv) auf.
Falls Algorithmen sich selbst rekursiv aufrufen, so kann ihr Laufzeitverhalten bzw. ihr Speicherplatzbedarf in der Regel durch eine Rekursionsformel (recurrence,
Polynomial Root Isolation
Wismar Business School
Simulation komplexer technischer Anlagen
Schnelle Matrizenoperationen von Christian Büttner
Zusatzthemen. Kapitel 5 © Beutelspacher Juni 2004 Seite 2 Inhalt Gleichungssysteme mit Parameter Wurzelgleichungen Irrationale Zahlen Induktion WGMS III.
4. Konzepte des Konnektionismus – Theorie Künstlich Neuronaler Netze
TECHNISCHE UNIVERSITÄT DARMSTADT Naive Bayes for Ranking
Maschinelles Lernen   Präsenzübung.
Seminar „Extrapolationsmethoden für zufällige Felder“
Marvin Minsky und das Perceptron
Adaptive Systeme Prof. Rüdiger Brause WS 2009.
Konkurrentes Lernen AS-1
Lernen und Klassifizieren AS-2
Adaptive lineare Transformationen AS-2
Lernen und Klassifizieren AS-1
Einführung Übersicht Einsatz der Zielwertsuche Einsatz des Solvers
Wiederholung und Beispiele
Neuronale Netze (Mitchell Kap. 4)
Machine Learning KNN und andere (Kap. 8).
Maschinelles Lernen und automatische Textklassifikation
Universität Stuttgart Wissensverarbeitung und Numerik I nstitut für K ernenergetik und E nergiesysteme Numerik partieller Differentialgleichungen, SS 01Teil.
Ausgleichungsrechnung I
Ausgleichungsrechnung II
Lernen und Klassifizieren AS2-2
Adaptive Systeme Prof. Rüdiger Brause WS 2013.
Adaptive lineare Transformationen AS2-3 Rüdiger Brause: Adaptive Systeme, Institut für Informatik, WS Lineare Schichten Sequenz linearer Schichten.
Radiale Basis-funktionen AS1-5
Lernen und Klassifizieren AS1-2 Rüdiger Brause: Adaptive Systeme AS-1, WS 2011 Lernen in Multilayer-Netzen Assoziatives Lernen Lernen linearer Klassifikation.
Lernen und Klassifizieren AS1-2
Adaptive Systeme-2 Grundlagen
Adaptive Systeme-2 Prof. Rüdiger Brause WS 2011 Organisation Einführung in adaptive Systeme B-AS-1, M-AS-1 Vorlesung Dienstags Uhr, SR9 Übungen.
Adaptive lineare Transformationen AS-2
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Effiziente Algorithmen
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/ /23.1.
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
Information und Kommunikation Hartmut Klauck Universität Frankfurt SS
Hartmut Klauck Universität Frankfurt WS 06/
Neuronale Netze.
Neuronale Netze Nachtrag Perzeptron
Fundamente der Computational Intelligence
Praktische Optimierung

Radiale Basis-funktionen
Begriff der Zufallsgröße
Variogramme und Kriging
setzt Linearität des Zusammenhangs voraus
Institut für Informationssysteme Technische Universität Braunschweig Institut für Informationssysteme Technische Universität Braunschweig Verdrängung von.
Geoinformationssysteme
Organisation Referate Materialien Dritter Termin Workshop 27.Oktober 2010 Projektseminar WS 09/10 Konnektionistische Sprachverarbeitung 1.
Independent Component Analysis: Analyse natürlicher Bilder Friedrich Rau.
Methoden der Psychologie
 Präsentation transkript:

Lernen und Klassifizieren AS2-2 Rüdiger Brause: Adaptive Systeme AS-2 WS 2011

Stochast. Klassifikation Lernen linearer Klassifikation Lernen und Zielfunktion Stochast. Klassifikation Lernen in Multilayer-Netzen Backpropagation-Lernen Rüdiger Brause: Adaptive Systeme AS-2 WS 2011

R S A y Das Perzeptron j Idee: Reize wiedererkennen Rosenblatt 1958 Künstliche Retina Assoziations-Schicht Response-Schicht j X · · · · y · · A R S Verbindungen zu A fix (zufällig): x = (x1,...,xn)T = (1(S),...,n(S))T Stärke der Verbindungen zu R veränderbar: w = (w1,...,wn)T Rüdiger Brause: Adaptive Systeme AS-2 WS 2011

Das Perzeptron Entscheiden DEF Log. Prädikat := {x} alle Muster,  = 1 + 2 1 : Menge aller x aus Klasse 1 2 : Menge aller x aus Klasse 2 Schwelle DEF Log. Prädikat Mit den Erweiterungen x = (x1,...,xn,1)T w = (w1,...,wn,s)T wird Rüdiger Brause: Adaptive Systeme AS-2 WS 2011

Das Perzeptron: Pseudo-code 3 DEF numerische Werte PERCEPT3: Wähle zufällige Gewichte w zum Zeitpunkt t:=0. REPEAT t:= t+1; w(t) = w(t–1) +  (L(x) – y(x)) x(t) Fehler-Lernregel UNTIL (alle x richtig klassifiziert) Sogar ohne Umdefinition der Muster aus 2! Rüdiger Brause: Adaptive Systeme AS-1, WS 2011

Das Perzeptron: Konvergenz Perzeptron - Konvergenztheorem (Minsky Papert 1988) Wenn die Mustermenge i linear separierbar ist, so konvergiert der Algorithmus bei t   Problem: Wenn Klassen sich überlappen, so wird die Grenzlinie bei g = 1 immer hin und her geschoben

Das Perzeptron: Zielfunktion Ziel: Verallgemeinerung der Lernregel Hier: Minimierung aller Fehlentscheidungen DEF Perzeptron-Zielfunktion „Energie“ Neuformulierung erwartetes Lernen: Gradient d.h. Stochast. Lernen

Lernen durch Iteration Gradientenabstieg einer Zielfunktion R(w) R ( w ) - ¶ R ( w ) ¶ W w ) w * ( t w ( t - 1 ) w w := (w(t-1) – w(t)) ~ – wR(w(t–1)) w(t) = w(t–1) – (t) wR(w(t–1)) Rüdiger Brause: Adaptive Systeme AS-2 WS 2011 Rüdiger Brause: Adaptive Systeme AS-1, WS 2009 - 8 - 8

Was kann ein Perzeptron ? Erwartung: „Intelligente Leistungen“ durch Wahl von (S) Abbildung der Merkmale auf linear separierbare Mustermengen Perzeptronarten diameter-limited perceptrons nur Bildpunkte aus einem begrenzten Radius order-restricted perceptrons von maximal n (beliebigen) Bildpunkten abhängig random perceptrons eine zufällige Auswahl aller Bildpunkte

Was kann ein Perzeptron ? Topologische Prädikate, z.B. „X ist ein Kreis“ ? „X ist eine konvexe Figur“ ? „X ist eine zusammenhängende Figur“ ? ... Tatsache: keine korrekte Klassifizierung von Punktmengen X (Bildpixeln) dieser Arten Tatsache: keine korrekte Klassifizierung von Punktmengen X (Bildpixeln) dieser Arten Nur „X hat Eulerzahl E“ E(X) : = K(X) – Anzahl der Löcher Nur „X hat Eulerzahl E“ E(X) : = K(X) – Anzahl der Löcher

Was kann ein Perzeptron ? Eulerzahl E E(X) : = K(X) – Anzahl der Löcher K(X) : = zusammenhängende Komponenten Loch := zusamm. Komponente der komplementären Menge K(x) = 2, Löcher = 1  E(x) = 1

Was kann ein Perzeptron ? Beispiel: keine korrekte Klassifizierung von Punktmengen X (Bildpixeln) für Prädikat „X ist Typ A“ möglich mit „diameter-limited“ Perzeptron Typ A Muster 1 Muster 2 Nicht Typ A Muster 4 Muster 3

Was kann ein Perzeptron ? Beweis: offen: Typ A Nicht Typ A

Adaline: Aktivität Schwellwert - regler w Quantisierer S(z) Ausgabe y Quantisierer S(z) Ausgabe y Regler Summierer Fehleranzeige d Schalterfeld für Eingabemuster Lehrer - Schalter für gewünschte Ausgabe Rüdiger Brause: Adaptive Systeme AS-1, WS 2011

Adaline: Aktivität Verlauf des Klassifizierungsfehlers für „Klasse T liegt vor“ bei Präsentationen von T,G,F und sofortiger Nachregelung Rüdiger Brause: Adaptive Systeme AS-1, WS 2011

Adaline: Lernalgorithmus Minimierung des erwarteten quadratischen Fehlers R(w,L) := (z(x) – L(x))2x= (wTx – L(x))2x durch Anpassung der Parameter w(t) = w(t–1) – (t) R(w(t–1)) w(t) = w(t-1) – (t)(wTx–L(x))x stochastische Approximation w(t) = w(t–1) – (t)(wTx–L(x)) Widrow-Hoff Lernregel

Übersicht: Lernen Assoziativspeicher 1. Muster xk eingespeichert wi(1) = Lik xk (Hebb‘sche Regel) Perzeptron wi(t) = wi(t-1) + (Li(x)-yi)x (Fehler-Lernregel) wi(1) = (Li(xk)-yi)xk = Lik xk bei wi(0) = 0  yik(0) = 0. Adaline wi(t) = wi(t-1) + (t)(L(x)-zi)x (Gradientenabstieg) wi(1) = (Li(xk)-zi)xk = Lik xk bei wi(0) = 0  zik(0) = 0. Assoziativspeicher = Grundfunktion von Netzen

Lernen und Zielfunktionen Lernen linearer Klassifikation Lernen und Zielfunktionen Stochast. Klassifikation Lernen in Multilayer-Netzen Backpropagation-Lernen Rüdiger Brause: Adaptive Systeme AS-2 WS 2011

Übersicht Lernarten Beispiel-basiertes Lernen (example based learning, feedback learning) Gegeben: ( Eingabe x, gewünschte Ausgabe L) Ziel: Differenz zwischen y und L im Laufe des Lernens klein machen. Erklärungs-basiertes Lernen (explanation based learning EBL) Gegeben: Beispielpaare, Ziel sowie Regeln, es zu erreichen. Lernen: Generalisierung der Beispiele. (regelbasierte Systeme, nicht bei neuronalen Netzen) Score-basiertes Lernen (reinforcement learning) Gegeben: skalares Gütemaß ("gut", "schlecht", mit Abstufungen dazwischen) für Lernleistung. Lernen: ?? Der Lernende muss daraus selbst sehen, was an der Ausgabe zu ändern ist. Unüberwachtes Lernen (observation based learning, emotion based learning, similarity learning) Gegeben: keine explizite Rückmeldung über die Güte seines Lernens Lernen: Vergleich gewünschte Auswirkungen mit beobachteten Auswirkungen. Folgerung für geeignete Verhaltensänderung.

Lernen durch Iteration Modifikationen Gradientenabstieg Taylorentwicklung f(x+Dx) = f(x) + Dx + (Dx)2 + ... R(w+w) – R(w) = wR(w)T w + ½wTR w + ... mit R = Hesse-Matrix Conjugate gradient R(w+w) – R(w) = (wR(w)T + ½wTR) w = 0 löse n-dim Gleichungssystem für w Statt nach dem 1. Glied (Gradientenabstieg) kann man auch nach dem 2. Glied abbrechen. Dies erhöht aber den Rechenaufwand.

Lernen durch Iteration Newton-Iteration F(w) f(w) f’(w ) t f’(wt) = f(w ) t w = w* w w t+1 wt+1 = wt – Newton-Verfahren wt+1 = wt –

Lernen durch Iteration Konvergenz des Gradientenverfahrens Es ist R(t) = Ljapunov-Funktion mit Konvergenz, wenn R(t+1) < R(t) bzw. < 0 monoton fallend Ex. endliches R0 < R(t) für jedes t Ljapunov-Bedingung Also: Wenn dann Konvergenz Hinreichend dafür: = – w R(w) mit  > 0 weil = – (w R(w))2 < 0 Mit  und t = 1 ist w(t) – w(t-1) = – w R(w) Gradientenabstieg (w(t)) = w R(w) < 0

Stochastische Approximation Gesucht: Nullstelle einer stochast. Funktion f(x,w) = R‘(x,w) F ( w ) a | - * + b f x , Methode 1: Alle Ereignisse x abwarten und dann F(w) = f(x,w)x bilden w(t) = w(t-1) – (t) F(w(t-1)) Methode 2: Einfach f(x,w) verwenden Robbins, Monro 1951 w(t) = w(t-1) – (t) f(w(t-1),x(t)) stochastische Approximation

Stochastisches Lernen Lernen mit Zielfunktion R(w) = r(w,x)x w(t) = w(t-1) - (t) w R(w(t-1)) wird ersetzt durch Lernen mit stochast. Zielfunktion r(w,x) w(t) = w(t-1) - (t) w r(w(t-1),x(t)) stochastisches Lernen

Stochastische Approximation Voraussetzungen das klein Gedruckte... die Funktion F(w) := f(x,w)x ist zentriert, d.h. F(w*) = 0 F(w) ist ansteigend, d.h. F(w<w*) < 0, F(w>w*) > 0 . F(w) ist beschränkt mit |F(w)| < a|w-w*|+b <  a,b > 0 f(x,w) hat endliche Varianz, d.h. 2(w) = (F(w) - f(x,w))2x <  (t) verschwindet, (t)  0 (t) wird nicht zu schnell klein =  (t) wird nicht zu groß 2 <  Dann ex. (w(t) – w*)2 = 0 mittl. quadr. Konv. Robbins-Monro P( w(t) = w*) = 1 Blum

Stochastische Iteration: Konvergenz Beispiel Sei die Zufallsvariable x gegeben, geschätzt durch w. Abweichung bei der Schätzung ist R(w) = r(w,x)x = (w-x)2x mean squared error w(t) = w(t-1) - (t) wr(w(t-1),x(t)) stoch. Gradient w(t) = w(t-1) - (t)(w(t-1)-x(t)) Zeitabhängigkeit R(w)  R(w*) bei w  w* stoch. und erwarteter Verlauf?

Stochastische Iteration: Konvergenz wi(t) = wi(t-1) - (t)(wi(t-1)-x(t)) Behauptung Bei (t) := 1/ t ist immer w(t) = xx Beweis durch vollständige Induktion w(0)  0 Kap.2.3.2 w(t=1) = 0 - (t)(0-x) = x = xx Induktionsverankerung Mit w(t-1) = xt-1 = Induktionsvoraussetzung gilt w(t) = ... = xt Induktionsschritt q.e.d.

Konvergenzverlauf x = 1

Erwarteter Konvergenzverlauf Rechnung Anhang D.4 mittl. quadrat. Abweichung Erwartungswert aller Verläufe Abweichung durch Standardabweichung beschreibbar  |w* - w(t)|  = t = x / t

Konvergenzverlauf Abweichung w*(t) w* = 1, x = 0,288

Stochastisches Lernen Beispiel Klassentrennung wi(t) = wi(t-1) - (t)(wi(t-1)-x(t)) Behauptung Bei (t) := 1/ t ist immer w(t) = xx Klassenprototyp Beweis durch vollständige Induktion w(0)  0 Problem: xx ist abhängig von der Klassenentscheidung für x

Lernen und Zielfunktionen Lernen linearer Klassifikation Lernen und Zielfunktionen Stochast. Klassifikation Lernen in Multilayer-Netzen Backpropagation-Lernen Rüdiger Brause: Adaptive Systeme AS-2 WS 2011

Stochastische Musterklassifikation Grundsituation der Erkennung w M 1 2 P ( i ) . P ( X | w i ) mit P(x) empfangen Muster x w 1 P ( i | X ) 2 . M Empfänger a posteriori Quelle, Sender a priori Notation: Mustermenge  = {x}, unterteilt in Klassen i k = " Klasse k liegt vor "  Klassifikation k: P(k|x) = maxj P(j|x) Bayes-Klassifikation Wie erhalten wir P(j|x) ? Rüdiger Brause: Adaptive Systeme AS-2 WS 2011 - 33 - 33

Stochastische Klassifikation P(j|x) = ? Bekannte Quellen Sei a-priori P(j), P(x|j), P(x) bekannt und P(x, j) = P(j|x)P(x) = P(x|j)P(j) so ist P(j|x) = P(x|j)P(j) / P(x) mit P(x) = j P(x|j)P(j) Aufgabe ! Unbekannte Quellen A-posteriori P(j|x) lernen ! Zielfunktion: Messung der Klassifikationsleistung ? Rüdiger Brause: Adaptive Systeme AS-2 WS 2011 - 34 - 34

Klassifikationsleistung Diagnose-Situation (Diagnose, Realität) Name Wahrscheinlichkeit (D(x) =  | ) Sensitivität TP PK= P(D(x) = | ) (D(x) = | ) Ignoranz FP PI = P(D(x) = | ) (D(x) = | ) Fehlalarm FN PA= P(D(x) = | ) (D(x) = | ) Spezifität FP PL= P(D(x) = | ) PK + PI = 1 FP = FRR false rejection rate PA + PL= 1 FN = FAR false acceptance rate Seien die Wahrscheinlichkeiten dieser Ereignisse mit PA = P(Fehlalarm) = 1–PL und PI = P(Ignoranz) = 1–PK notiert. Im Idealfall sind die Wahrscheinlichkeiten der Sensitivität und Spezifität, PL und PK, eins, und die beiden Wahrscheinlichkeiten PA und PI sind null. Leider ist dies aber nicht möglich: Alle Diagnosesysteme machen Fehler. Meist kann man eine der beiden Wahrscheinlichkeiten (PL bzw. PK) immer nur auf Kosten der anderen minimieren.

Klassifikationsleistung Diagnose-Situation („confusion matrix“)   D(x) =  Sensitivität P(D(x) = | ) true positive Fehlalarm P(D(x) = | ) false negative D(x) =  Ignoranz P(D(x) = | ) false positive Spezifität P(D(x) = | ) true negative Seien die Wahrscheinlichkeiten dieser Ereignisse mit PA = P(Fehlalarm) = 1–PL und PI = P(Ignoranz) = 1–PK notiert. Im Idealfall sind die Wahrscheinlichkeiten der Sensitivität und Spezifität, PL und PK, eins, und die beiden Wahrscheinlichkeiten PA und PI sind null. Leider ist dies aber nicht möglich: Alle Diagnosesysteme machen Fehler. Meist kann man eine der beiden Wahrscheinlichkeiten (PL bzw. PK) immer nur auf Kosten der anderen minimieren.

ROC -Kurven von Diagnosesystemen Wechselseit. Abhängigkeit Sensitivität / Spezifität Beispiel med. Diagnose Leistung eines Diagnosesystems Receiver Operating Characteristic (ROC) Spezifität PL= f(PK) EER Eingezeichnet ist auch eine reine Zufallsentscheidung, eine Gerade mit 45°. Jede ROC-Kurve, die bei gegebener Sensitivität PK eine höhere Spezifität aufweist, ist an dieser Stelle besser. Da dies aber an anderer Stelle schlechter sein kann, wird üblicherweise die Güte des Diagnosesystems durch die Gesamtkurve mittels der Fläche unter der ROC-Kurve (area under curve AUC) charakterisiert. Die AUC ist in schraffiert dargestellt. Man beachte bei dieser Modellierung, daß die ROC- Kurve von einem realen System meist nur als statistische Näherung, also als „verrauschte“ Kurve, gemessen werden kann und deshalb in der Praxis nur näherungsweise in Optimierungsversuche eingehen kann. Ein Beispiel dafür ist rechts zu sehen. Dabei ist die Diagnosewahrscheinlichkeiten „Spezifität“ und „Sensistivität“ auf verschiedenen Datenbasen (Trainingsdaten) und für verschiedene Parameterwerte, die Entscheidungsschwellen , gemessen worden und das Ergebnis (PK, PL) als Punkt im Diagramm eingezeichnet. Die mittlere ROC-Kurve erhält man dann durch Mittelwertbildung über alle Punkte. Sensitivität Area Under Curve (AUC)

ROC -Kurven von Diagnosesystemen Aufgabe: Ex. ein Diagnosesystem mit D(x) > c Klasse A liegt vor D(x) < c Klasse A liegt nicht vor Frage: Wie wird ROC und AUC davon gemessen? Antwort: Für festes c über alle x die Leistung (Pk ,PL ) messen, einen Punkt der Grafik einzeichnen c variieren, und jeweils Punkt zeichnen ROC in die Punkte einpassen, AUC davon berechnen

Lernen und Zielfunktionen Lernen linearer Klassifikation Lernen und Zielfunktionen Stochast. Klassifizierung Lernen in Multilayer-Netzen Backpropagation-Lernen Rüdiger Brause: Adaptive Systeme AS-2 WS 2011

0 = { } = {(0,0), (1,1)} 1 = { } Das XOR-Problem Aufgabe Trennung zweier Klassen durch eine Gerade – wie ? x1 x2 x1 x2 0 0 0 1 1 1 0 1 1 x 0 = { } = {(0,0), (1,1)} 2 1 1 = { } = {(1,0), (0,1)} Klassen nicht linear separierbar! 1 x 1 Rüdiger Brause: Adaptive Systeme AS-1, WS 2011

Das XOR-Problem Lösung Trennung durch zwei Schichten y := x x y := x y 0 0 0 1 1 1 0 1 1 x y = (x1 x2) negiertes XOR = (x1ORx2) AND (x1OR x2) 2 1 y 1 := x OR 2 _ x y 2 := 1 _ x OR x 1 x 1 y XOR := y 1 AND y 2 z.B. formale binäre Neuronen S(z>s) = 1, S(z<s) = 0 Þ w 1 = w 4 5 6 = 1/3 2 3 = - 1/3 s1=s2=0, s = 1/2 Rüdiger Brause: Adaptive Systeme AS-1, WS 2011

Multilayer-Klassifikation Separierung von Klassen 1.Neuron 2.Neuron 3.Neuron

Fähigkeiten der Multilayer-Netzwerke Approximationsnetze Interpolation anhand von Beispielen (Stützstellen) Typ. Netz Linearkombinationen von Basisfunktionen S(.) Sigma-Funktion F: wobei { z | z(x) = w(1)Tx+b } affine Funktionen n S ist Quetschfunktion

Fähigkeiten der Multilayer-Netzwerke Satz Hornik, Stinchkombe, White 1989 Für die Funktionswerte jeder beliebigen Funktion f(x) : n von N Mustern x1 .. xN ex. eine Sigma-Funktion F, so dass für alle Muster xi mit i = 1..N gilt F(xi) = f(xi) Gilt auch für Schicht {Fi} Assoziativspeicher Satz Jede beliebige, stetige Funktion f(x) in einem kompakten Intervall ("kompakte Teilmenge des n ") kann beliebig dicht (uniform dicht im Sinne der Ls-Norm in der Menge Cn aller stetigen Funktionen und p-dicht in der Menge der Borel meßbaren Funktionen) durch eine Sigma-Funktion F(x) approximiert werden Anmerkung: Gilt auch für S = stetig, begrenzt, nicht-konstant (RBF)

Fähigkeiten der Multilayer-Netzwerke Frage: Wieviel Schichten muss ein Netzwerk mindestens haben, um eine beliebige Funktion beliebig gut zu approximieren? ? Antworten: eine zwei drei unendlich viele

Fähigkeiten von Mehrschicht-Netzen Mehrschichten-Netze Fähigkeiten von Mehrschicht-Netzen nicht-linear linear Eingabe z.B. DNA, Patienten-daten, Roboter-sensoren x 1 2 n y f Ausgabe z.B. Struktur, Diagnose, Roboter-bewegung Ein 2-Schichtennetzwerk mit nicht-linearer Ausgabefunktion S(z) kann JEDE beliebige Funktion so genau wie gewünscht approximieren, wenn genügend Neuronen ex. Neuronenzahl gegeben. Lernalgorithmus=?

Lernen und Zielfunktionen Lernen linearer Klassifikation Lernen und Zielfunktionen Stochast. Klassifizierung Lernen in Multilayer-Netzen Backpropagation-Lernen Rüdiger Brause: Adaptive Systeme AS-2 WS 2011

Backpropagation Netzarchitektur und Aktivität x Eingabe hidden units Ausgabe x Gesamtaktivität

Backpropagation-Grundidee Netzarchitektur und Lernen Eingabe 1.Schicht 2.Schicht Ausgabe y (2) (1) y (1) = x (2) x hidden Ausgabe units units d (1) d (2) L - y (2) Schichtweise Verbesserung durch Rückführung des Fehlers

Backpropagation-Lernregel letzte Schicht Lernziel: R(w*) = min E(y(w) - L(x))2 min.mittl. quadr. Fehler wi (t+1) = wi (t) - g Gradienten-Lernregel wij (t+1) = wij (t) - g (yi(wij)-L(x)) stoch. Approximation mit = Mit i := - (yi(wij)-L(x)) S‘(zi) ist wij(x) =  i xj Delta-Regel

Fehler-Backpropagation Beeinflussung voriger Schichten zi(1)R Delta-Regel für Schicht 1, unabh. von R

Online vs Offline-Lernen Beispiel Buchstabenerkennung Überwachtes Lernen Lernziel (Zielfunktion) Lehrer Eingabe Gewichte On-line learning (Training) ..., H, ... Testmenge   off-line learning Trainings- menge H ! W Fehler ? E ? Neuronales System E A, B, C, D, E, F, ..., Z. Ergebnis A, B, C, D, E, F, ..., Z.

Anwendung BP Gegeben DECtalk Ausgabe Text  Sprache der Fa. Digital Eq. (DEC) Aufwand 20 PJ für 95% Genauigkeit Beispiel NetTalk Sejnowsky, Rosenberg 1986 16 CPU-Stunden BP-Training für 98% Genauigkeit Adaptives Programm statt neu programmieren!

NetTalk: Kodierung Ausgabekodierung Binäre Kodierung der 26 Laute . e n w - F r o t b c k s d p l h i f q 8 u m ( X ) = 7 2 9 3 E g v 6 A : / Präkontext Postkontext Eingabe 26 Buchstaben + 3 Sonderzeichen 23 Laute +(cont, Wortgrenze, stop) Ausgabekodierung Binäre Kodierung der 26 Laute 26 Buchstaben +(cont, Wortgrenze, stop) Eingabekodierung Binäre Kodierung der 29 Buchstaben Lauffenster der Trainingsbuchstaben

Analyse der Neuronengewichte Visualisierung der Gewichte Hinton Diagramm Gewichte von Neuron 1 Gewichte von Neuron 2 Sinn = ? pos. Gewichte neg. Gewichte

Analyse der Neuronengewichte Clusteranalyse P 1 3 2 4 5 6 7 8 d a Maximaler Nachbarabstand Hierarchische Clusteranalyse Dendrogramm Sukzessives Zusammenfassung Reihenfolge durch Cluster-Abstandsmaß w 2 P 4 P a a 5 1 3 P P 2 8 P 3 a P P 2 P 7 1 6 w Für eine Clusterung müssen zwei Masse bekannt sein: der maximale Intra-Clusterabstand Und der maximale Inter-Clusterabstand 1 d(x,Nachbar) < dN gleicher Cluster

Analyse der Neuronengewichte Clusteranalyse Clusterung der Muster im Eingaberaum („in vitro“) Clusterung der Ausgabewerte bei äquidistanten Testmustern („in vivo“)  Funktionsgruppen von Neuronen

Analyse der Neuronengewichte Sensitivitätsanalyse Aufstellen der Abhängigkeit des Fehlers des Netzes von der Eingabe bzw. den Gewichten.  Wichtigkeitsliste der Eingabevariablen Aber: Fehler hängt ab von Signalgrösse Normierung d. Signale Grosse Gewichte auch bei random-Eingabe Abhängigkeit von Eingabevar. nicht erfasst System ?

Verbesserungen des BP-Algorithmus Problem Das System kann in einem lokalen Optimum "stecken" bleiben Lösung Gewichte der hidden units als Eigenvektoren initialisieren Mehrere Durchgänge mit zufallsveränderten Gewichten Regelmässige Störung der Gewichte & Neulernen Mit kleiner Wahrscheinlichkeit auch gegen das Optimum verändern Sequentieller Netzaufbau, gesteuert durch Kriterium (Ausgabeentropie, Fehler, ...)

Verbesserungen des BP-Algorithmus Problem Trotz guter Trainingsleistung zeigt der Test schlechte Ergebnisse Überanpassung (overfitting) ! f(x) training samples test samples x

Verbesserungen des BP-Algorithmus Lösung: Stopped Training

Problem: Partition der Daten Training und Testen Problem: Partition der Daten zufällige Einteilung der Aufteilung der Daten Datenmenge aller Patienten nach Patienten

Verbesserungen des BP-Algorithmus Problem wij(x) =  i xj =  (..)S‘(zi) xj Die Konvergenz ist relativ langsam, besonders bei mehreren Schichten Problem Ausgabefunktion Bei Wahl von S = Fermifunktion ist die Ableitung eine Glocken- Funktion mit S‘(-) = 0 = S‘() und damit bei sehr großem oder kleinem x (x) = 0  Kein Lernen mehr möglich! S(z) S‘(z)

Verbesserungen des BP-Algorithmus Abhilfen für die Ausgabefunktion: Andere Lernfunktion wählen, z.B. Ergänzung durch Backpropagation Trägheitsmoment (t+1) = (t) + (1-)(t-1) z.B.  = 0.9 Quickprop: Addiere 0,1 zu S‘(z) = (1-S)S Ist die Veränderung zu klein, wird sie Null gesetzt Ergänzung durch einen Abklingterm und Schrittinterpolation wij(t) =  (t)Rx(t)/wij (t)wij(t-1) + (t)wij(t-1) Andere Ausgabefunktion wählen (z.B. Sinus)

Verbesserungen des BP-Algorithmus Problem Die Konvergenz ist relativ langsam, besonders bei mehreren Schichten Lösung Abhilfe bei Ausgabefunktion Wahl von (t) als Hauptdiagonal-Matrix Änderung von (t) bei Vorzeichen des Gradienten Lernen der Einzelschichten, falls möglich (z.B. zuerst EV bei hidden units verwenden und 2. Schicht lernen, dann 1. Schicht) Andere Zielfunktion wählen (Information statt erwart. quadr. Fehler MSE)

Wechsel der Zielfunktion Zielfunktion Information Wahrsch. für Klassifik. von Muster k in Klasse j bei Lehrerurteil L Pkj = P(j|xk)Lj (1-P(j|xk))1-Lj Wahrsch. bei M Entscheidng., Muster k richtig zu klassifizieren DEF Rx:= I(xk) =  log Pk Zielfunktion Kap.2.6.9 = log P(j|xk) + (1-Lj) log (1-P(j|xk)) yj = P(j|xk) log yj + (1-Lj) log (1-yj) =  d(2) = (y-L)

Wechsel der Zielfunktion Beispiel: Klassifikation von Phonemen MSE 68% ok Information 78% ok 2. Formantenfrequenz 1. Formantenfrequenz