Neuronale Netze - Supervised Learning

Binärer Ausgang o = (ω. 1 i. 1. + ω. 2 i. 2. ≥ )θ ... Überwachtes Lernen: Lernen durch Abarbeiten eines. Trainingssets ... Verstärkendes Lernen. • Pfade zwischen ...
2MB Größe 39 Downloads 361 Ansichten
Technische Universität München

Neuronale Netze – Supervised Learning Proseminar Kognitive Robotik (SS12)

Hannah Wester Juan Jose Gonzalez

Technische Universität München

Kurze Einführung

Warum braucht man Neuronale Netze und insbesondere  Supervised Learning?

Technische Universität München

Das Perzeptron • Eingänge i1 und i2 • Gewichte ω1 und ω2 • Schwellwert θ (Bias) • Binärer Ausgang o = (ω1i1 + ω2i2 ≥ θ)

Technische Universität München

Das Perzeptron

Technische Universität München

Das Perzeptron – Trainingsphase • Training durch Änderung der Gewichte – θ wird oft als  fester Eingang i0 = ­1 mit variablem Gewicht ω0 definiert • Überwachtes Lernen: Lernen durch Abarbeiten eines  Trainingssets • Aufbau eines Trainingssets: Festgelegte Eingänge mit  gewünschten Ausgängen • Ein Durchlauf durch ein Trainingsset nennt man Epoche

Technische Universität München

Das Perzeptron – Lernregeln Hebb­Regel • Verstärkendes Lernen • Pfade zwischen aktiven Eingängen und aktiven  Ausgängen werden verstärkt • Lernrate ε: Grad der Verstärkung • Δωi = ε ii o bzw  Δωij = ε ii oj

Technische Universität München

Das Perzeptron – Lernregeln Delta­Regel • Korrigierendes Lernen • Die Gewichte werden proportional zur Differenz zwischen  gewünschten und aktuellen Ausgängen verändert • Δωi = ε ii (ō ­ o) bzw  Δωij = ε ii (ōj ­ oj)

Technische Universität München

Das Perzeptron – Lernregeln Delta­Regel – Beispiel Eingang i1 Eingang i2 0 0 0 1 1 0 1 1

Ausgang o 0 1 0 1

• Lernrate ε: 0.2 • Gewichte zu Beginn: Alle 1.0 • Gewichte nach 2 Epochen: ω0 = 1.0, ω1 = 0.8, ω2 = 1.2

Technische Universität München

Das Perzeptron – Lernregeln Epoche 1

i1=0/i2=0

i1=0/i2=1

i1=1/i2=0

i1=1/i2=1

ω0

1.0

1.0

1.2

1.2

ω1

1.0

1.0

0.8

0.8

ω2

1.0

1.0

1.0

1.0

Epoche 2

i1=0/i2=0

i1=0/i2=1

i1=1/i2=0

i1=1/i2=1

ω0

1.2

1.0

1.0

1.0

ω1

0.8

0.8

0.8

0.8

ω2

1.0

1.2

1.2

1.2

Technische Universität München

Das Perzeptron – Ausführungsphase • Überprüfung: wurde das Trainingsmaterial erfasst? • Überprüfung: kann das trainierte Netz auch weitere,  ähnliche Problemstellungen lösen? • Nicht gewünschte Ausgaben: neues Trainingsset, weiter  trainieren

Technische Universität München

Das Perzeptron – XOR­Problem Neues Beispiel für Delta­Regel: Eingang i1 0 0 1 1

Eingang i2 0 1 0 1

Keine Lösungsfindung möglich!

Ausgang o 0 1 1 0

Technische Universität München

Lineare Trennbarkeit • sum = ω1i1 + ω2i2 ≥ θ

ω1 θ • i 2≥ ω 2 – ω 2 i1 → Geradengleichung • Gerade trennt Eingaberaum in Eingaben die null liefern  und Eingaben die eins liefern

Technische Universität München

Lineare Trennbarkeit

Trennbarkeit für  Beispiel1  gezeigt

Technische Universität München

Lineare Trennbarkeit

Trennbarkeit für  Beispiel2 nicht  möglich!

Technische Universität München

Mehrschichtige Netze • Zusätzlich versteckte Schichten (Hidden Layers) • Beliebig viele Ein­ und Ausgänge • Gerichtete Graphen nur von niedrigeren auf höhere Schichten:  Feedforward­Netze • Zyklische Feedback­Netze

Technische Universität München

Mehrschichtige Netze

Technische Universität München

Nichtlineare Netze Inputfunktionen: • Summe: 

net j =∑ ω ij i i

• Produkt:

net j =∏ ω ij i i

• Maximum:

net j =max (ω ij i j )

• Minimum:

net j =min(ω ij i j )

i

i

Technische Universität München

Nichtlineare Netze Aktivierungsfunktionen 

f (net i )=a i

{

1  falls net i ≤θ 0  sonst

• Lineare Schwellwertfkt: 

ai =

• Fermi Funktion:

1 ai = −net 1+e

i

Technische Universität München

Nichtlineare Netze Outputfunktion  f(ai) = oi: • Identität: • Schwellwertfunktion:  

oi =a i

{

1  falls a i ≤0 oi = 0  sonst

Technische Universität München

Nichtlineare Netze

Technische Universität München

Backpropagation • Algorithmus, um auch die Gewichte zwischen versteckten  Schichten trainieren zu können • Forward­Pass: Berechnen des Ausgangs • Fehlerbestimmung: Ausgang = gewünschter Ausgang? • Backward­Pass: Modifizieren der Gewichte

Technische Universität München

Backpropagation 1 2 E= ∑ (ō j −o j ) • Fehlerfunktion 2 j • Ableiten der Fehlerfunktion, um das Minimum zu finden  • Gradientenabstiegsverfahren

Technische Universität München

Backpropagation Gradienten­ abstiegsverfahren im  dreidimensionalen  Raum

Technische Universität München

Backpropagation  Gradientenabstieg im zweidimensionalen Raum ●  Vergrößern des Gewichtes, bis lokales Min.    gefunden ●

Technische Universität München

Backpropagation • Verallgemeinerung der Delta­Regel: ∂E Δ ω ij =−ε ∂ ω ij • Umformen der Partiellen Ableitung: ∂ E ∂ E ∂ o j ∂ net j = ∂ ω ij ∂ o j ∂ net j ∂ ω ij  

Technische Universität München

Backpropagation • Verallgemeinerung der Delta­Regel: ∂E Δ ω ij =−ε ∂ ω ij • Umformen der Partiellen Ableitung: ∂ E ∂ E ∂ o j ∂ net j = ∂ ω ij ∂ o j ∂ net j ∂ ω ij  

Technische Universität München

Backpropagation •

W e g e n   net j =∑ ω ij i i  und  oi = f (net i ) ergibt sich: i

∂ net j ∂ oi =i i  u nd  = f ' (net i ) ∂ ω ij ∂ net i

• oj in Ausgabeschicht: 1 −∂ E −∂ 1 2 = ( ∑ (ō j −o j ) )=−2 (ō j −o j )(−1)=(ō j −o j ) ∂oj ∂oj 2 j 2

Technische Universität München

Backpropagation • oj in versteckter Schicht: −∂ E ∂ E ∂ net k =−∑ ∂oj k ∂ net k ∂ o j ∂E ∂ ∂E =−∑ ω i =− ω jk ∑ ∑ ik i k ∂ net k ∂ o j i k ∂ net k •

∂E − =δ j → Δ ω ij =ε δ j i i ∂ net j

Technische Universität München

Backpropagation • Verallgemeinerte Delta­Regel: Δ ω ij =ε δ j i i  mi t f ' (net j )(ō j −o j )  falls  o j  in Ausgabeschicht δ j= f ' (net j ) ∑ δ k ω jk  falls  o j  in versteckter Schicht

{

k

Technische Universität München

Lösung XOR­Problem

Technische Universität München

Probleme von Backpropagation • Die Struktur muss vorher definiert werden • Sehr langsame Lernphase – Mehrere tausend Epochen  sind üblicherweise nötig: – Gradientenabstiegsverfahren über ∂E/∂ω → langsame  Konvergenz beim Minimum – Alle Neuronen werden gleichzeitig trainiert →  möglicherweise erkennen mehrere die gleiche  Eigenschaft (keine homogene Verteilung)

Technische Universität München

Beschleunigte Backpropagation • Verringert die nötigen Schritte zur Konvergenz zum  Minimum der Fehlerfunktion • Beispiel: “Backpropagation with Momentum” – ∆ω basiert nicht nur auf den aktuellen Werten, sondern  auch auf vorherigen Änderungen – Neue Formel:  ∆ ωij (t)=− ε(δ j oi )+α∆ ωij (t − 1)

Technische Universität München

Cascade Correlation • Das Netz wird “nach Bedarf” aufgebaut, es gibt keine  vordefinierte Struktur • Jedes Neuron wird einzeln trainiert und bezieht sich auf  das Ergebniss aller vorigen → Bessere Erkennung der  Eigenschaften des Inputs • Bei den Trainingsschritten müssen nur die Outputwerte  des neuen Neurons neu berechnet werden, alles andere  ist konstant → Benutzung von Caches möglich

Technische Universität München

Cascade Correlation – Aufbau

Technische Universität München

Cascade Correlation – Aufbau

Technische Universität München

Cascade Correlation – Aufbau

Technische Universität München

Cascade Correlation – Training • Ziel: Maximierung der Korrelation S zwischen den  Ausgangswerten der Kandidaten und dem Fehler der  Ausgangsneuronen

Korrelation:  S =∑ o˙





E p , o˙ −avg ( ̂ E o˙ )) ∑ (o p , k −avg (ok ))( ̂ p

Änderung der Gewichte:  ∂S ∆ ωik =ε =ε∑ ∑ σo ( ̂ E p , o˙ − avg ( ̂ E o˙ )) f ' p (o p , i ) ∂ ωik o˙ p

Technische Universität München

Cascade Correlation – Training • Mehrere Kandidaten werden gleichzeitig trainiert → höhere  Wahrscheinlichkeit, ein optimales Neuron zu finden • Der beste Kandidat wird in das Netz eingefügt und die  Gewichte der Ausgangsneuronen mit einem geeigneten  Algorithmus (Delta­Regel, Backpropagation with  Momentum, etc) angepasst

Technische Universität München

Cascade Correlation – Training • Mögliche Optimierungen – Kandidaten mit verschiedenen Aktivierungsfunktionen – Anwendung von Verbesserungen wie z.B. bei  “Backpropagation with Momentum” beim Trainieren der  Kandidaten → Schnellere Maximierung von S

Technische Universität München

Cascade Correlation – Performanz Das “Two Spirals”­Problem • Benchmark für überwachte Lernalgorithmen • Bestehend aus 194 (x,y)­Inputs mit dazugehörigen Outputs  (1 oder ­1) • Komplex wegen der Nichtlinearität der Werte

Technische Universität München

Cascade Correlation – Performanz Das “Two Spirals”­Problem

Technische Universität München

Cascade Correlation – Performanz Das “Two Spirals”­Problem – Training

Technische Universität München

Cascade Correlation – Performanz Das “Two Spirals”­Problem – Training

Technische Universität München

Cascade Correlation – Performanz Das “Two Spirals”­Problem – Training

Technische Universität München

Cascade Correlation – Performanz Das “Two Spirals”­Problem – Training

Technische Universität München

Cascade Correlation – Performanz Das “Two Spirals”­Problem – Training

Technische Universität München

Cascade Correlation – Performanz Das “Two Spirals”­Problem – Training

Technische Universität München

Cascade Correlation – Performanz Das “Two Spirals”­Problem – Training

Technische Universität München

Cascade Correlation – Performanz Das “Two Spirals”­Problem – Training

Technische Universität München

Cascade Correlation – Performanz Das “Two Spirals”­Problem – Training

Technische Universität München

Cascade Correlation – Performanz Das “Two Spirals”­Problem – Training

Technische Universität München

Cascade Correlation – Performanz Das “Two Spirals”­Problem – Training

Technische Universität München

Cascade Correlation – Performanz Das “Two Spirals”­Problem – Training

Technische Universität München

Cascade Correlation – Performanz Das “Two Spirals”­Problem – Training

Technische Universität München

Cascade Correlation – Performanz Das “Two Spirals”­Problem – Ergebnisse • Trainingsepochen bis zum korrekten Ergebnis: – Cascade Correlation: durchschnittlich 1700 Epochen – Modifizierte Version von Backpropagation: 150000 bis  200000 Epochen – Quickprop­Algorithmus mit Verbindungen aus allen  vorigen Layers: 8000 Epochen

Technische Universität München

Fragen?