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 HebbRegel • 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 DeltaRegel • 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 DeltaRegel – 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 – XORProblem Neues Beispiel für DeltaRegel: 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: FeedforwardNetze • Zyklische FeedbackNetze
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 • ForwardPass: Berechnen des Ausgangs • Fehlerbestimmung: Ausgang = gewünschter Ausgang? • BackwardPass: 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 DeltaRegel: ∂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 DeltaRegel: ∂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 DeltaRegel: Δ ω 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 XORProblem
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 (DeltaRegel, 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 – QuickpropAlgorithmus mit Verbindungen aus allen vorigen Layers: 8000 Epochen
Technische Universität München
Fragen?