30
Multi-Layer Networks and Learning Algorithms 16.12.03 Referent: Alexander Perzylo Betreuer: Martin Bauer

Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Embed Size (px)

Citation preview

Page 1: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Multi-Layer Networksand Learning Algorithms

16.12.03

Referent: Alexander Perzylo

Betreuer: Martin Bauer

Page 2: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 2

Überblick

Multi-Layer Perceptron und Back-PropagationHopfield Netze (Hebb-Regel)Kohonen Self-Organizing Maps

Page 3: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 3

Mögliche Lernabläufe in NN

Einführen/Löschen von NeuronenEntwicklung/Löschen von VerbindungenModifikation der Verbindungs-GewichtungenModifikation der Neuronen-SchwellenwerteModifikation der Aktivierungs-, Propagierungs- oder Ausgabefunktion

Page 4: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 4

Arten von LernverfahrenÜberwachtes Lernen (supervised)

• Lernalgorithmus minimiert den Fehler zwischen berechnetem und gewünschtem Output

Unüberwachtes Lernen (unsupervised)• Optimierung von Gewichten basierend auf Kriterien, die

das Netz selber hat

Bestärkendes Lernen (reinforcement)• Lernalgorithmus adaptiert Gewichte basierend auf

Maximierung einer Belohnung (reward) bzw. Minimierung einer Bestrafung (punishment), die aufgrund des berechneten Outputs ausgesprochen wird

Page 5: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 5

Back-Propagation Learningüberwachtes Lernenfür Multi-Layer Feedforward NetzeIdee:

• Präsentation eines Eingabevektors• Propagierung vorwärts durch das Netz• Bestimmung des Ausgabevektors• Ermittlung des Fehlermaßes für die Ausgabe• Rückschreitend schrittweise Ermittlung des Fehlermaßes

der Neuronen der verdeckten Schicht(en)• Änderung der Gewichte der Neuronen der

Ausgangsschicht und der verdeckten Schichten anhand ihrer Fehleranteile

Page 6: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 6

Back Propagation: Pseudocode

Page 7: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 7

Page 8: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 8

Backpropagation: mathemat. Hintergrund

Back Propagation ist Gradientenabstiegs-verfahren auf derFehleroberflächeüber der Menge allerGewichtungen

Page 9: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 9

Backpropagation: mathemat. Hintergrund

Gewicht Update Regel in Ausgabeschicht:

Wir definieren den Fehlerterm ∆ :

Daraus folgt die Regel:

)(',, iijijij ingErraWW ⋅⋅⋅+← α

ijijij aWW ∆⋅⋅+← α,,

)(' iii ingErr ⋅=∆

Page 10: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 10

Backpropagation: mathemat. HintergrundFehlerterm ∆ für Eingabeschicht:

Gewicht Update Regel für Eingabeschicht:

∑ ∆=∆i

iijjj Wing ,)('

jkjkjk IWW ∆⋅⋅+← α,,

Page 11: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 11

Backpropagation: mathemat. Hintergrund

Wir verwenden als Fehlerfunktion:

Für allgemeines 2 Schichten Netz gilt:

∑ ∑−=i j

jiji aWgTWE 2, ))((

21)(

∑ ∑ ∑−=i j k

kjkiji IWgWgT 2,, )))(((

21

∑ −=i

ii OTE 2)(21

Page 12: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 12

Backpropagation: mathemat. Hintergrund

Nun leiten wir E nach ab:

Ableitung von E nach ähnlich:

ijW ,

)(')( ,,

∑−−=∂∂

jjijiij

ij

aWgOTaWE

ijiiij aingOTa ∆−=−−= )(')(

jkW ,

jkjk

IWE

∆−==∂∂

K,

Page 13: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 13

Back-PropagationErinnerung:

Ziel ist Minimierung des Fehlers=> Um Gewicht Update Regeln zu erhalten:• Gewichte in entgegengesetzte Richtung des

Gradienten der Fehlerfunktion bewegen

Anmerkung: sigmoid-Funktion als Aktivierungsfunktion

• Vorteil: ))(1( xsigmoidsigmoidx

sigmoid−=

∂∂

Page 14: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 14

Back-PropagationProbleme:

• Anzahl der Verdeckten Neuronen und der Lernrate vom Anwendungsgebiet abhängig

• Konvergenz zu einer (optimalen) Lösung nicht immer gegeben

• Nur lokales Minimum möglich• Optimale Minima können während des Lernens verlassen

werden• Gefahr des Überlernens (Overfitting,Overshooting)• keine Begründung für ein Ergebnis (Blackbox)

Page 15: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 15

Back-Propagation: Konvergenzprobleme

Page 16: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 16

Back Propagation: Overfitting

Gegenmaßnahmen:Gegenmaßnahmen:Zufällige Reihenfolge der Zufällige Reihenfolge der Trainigsdaten Trainigsdaten und und ValidierungValidierung des Netzes mit anderen Beispielen des Netzes mit anderen Beispielen als dem als dem TrainingssetTrainingsset

Page 17: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 17

Multi-Layer Network:Berechnungseffizienz

Hängt von Zeit ab, die benötigt wird, das Netz auf ein Set von Beispielen zu trainierenEin Durchlauf (Epoche) eines Trainingssetsmit m Beispielen und w Gewichten hat eine Zeitkomplexität von O(mw)Im Worst-case: Anzahl Durchläufe = , n = Dimension des Eingabevektors

Variiert jedoch sehr stark in der Praxis

n2

Page 18: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 18

Multi-Layer Network: Anwendungsbeispiele

(1987) NETtalk kann geschriebenen englischen Text vorlesen. Input besteht aus dem auszusprechenden Buchstaben und dem Vorgänger und 3 Nachfolgern

• 80 Verdeckte Neuronen.• Output-Schicht: hoch, tief, betont, unbetont,...• Training: 1024 Worte. Nach 50 Epochen: 95%

korrekt auf Trainingsmenge.• Test-Menge: Zu 78 % korrekt.

Page 19: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 19

Multi-Layer Network: Anwendungsbeispiele

(1989) handgeschriebene Postleitzahlen auf Briefumschlägen erkennen:

• Eingabe: 16x16 Pixel-Array.• 3 Verdeckte Schichten, mit jeweils 768, 192, 30

Neuronen. 10 Ausgabeneuronen (0-9). Das ergibt 200000 Gewichte!

• Trick: Neuronen in der ersten Schicht untersuchen nur eine 5 x 5 Teilmatrix: 768 = 12 x 64. Jede der 12 Gruppen benutzt gleiche Gewichte und ist für ein Merkmal zuständig => Insgesamt 9760 Gewichte

• Training: 7300 Beispiele, Test-Menge: zu 99% korrekt erkannt

Page 20: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 20

Multi-Layer Network: Anwendungsbeispiele

Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural Network)

• Input: Stereo Farb-Kamera, Radar• Bild wird in ein 30 x 32 Pixel-Array umgewandelt

(Eingabevektor)• Verdeckte Neuronen: Eine Schicht mit 5 Neuronen• Output-Schicht: 30 Neuronen (entspricht Lenk-Winkel)• Ausgewählt wird das Ausgabe-Neuron mit höchster

Aktivierung• Training: Ein Mensch fährt 5 Minuten und das Netz „sieht

zu“• Probleme: Mensch fährt zu gut, stark Helligkeitsabhängig

(Wetter, Straßenbelag)

Page 21: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 21

Hopfield Netzist autoassoziativer SpeicherFunktion: Mustervervollständigung /

MusterklassifizierungZunächst: gewünschte Muster werden im Netz „abgespeichert“neue Eingaben können vervollständigt bzw. klassifiziert werden

Page 22: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 22

Hopfield Netzalle Neuronen miteinander verbundenEingabe- zugleich Ausgabeschicht

Dimension n (n = #Neuronen)ist bipolar (enthält Werte –1 und 1)

Symmetrische Gewichte:lernt mit Hebb-Regel: „Die synaptischeEigenschaft (Verstärken oder Hemmen) ändert sich proportional zum Produkt von prä- und postsynaptischer Aktivität“

jiij WW ,, =

Page 23: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 23

Hopfield Netz„Merkvorgang“:

Startzustand = zu lernendes MusterModifikation der Gewichte:•Für alle vorhandenen Verbindungen:

• Verstärkung um Lernrate, bei zwei Neuronen gleicher Aktivität (–1 bzw. 1)

• Abschwächung um Lernrate, sonst

• Lernrate meist 1/n (n = #Neuronen)

Page 24: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 24

Hopfield NetzVorgang der Mustererkennung:

Initialisierung durch Eingabevektor(binär)Nachfolgezustand: für jedes Neuron:• Aufsummieren aller eingehenden Gewichte:

Addition bei aktivem gegenüberliegendem Neuron (Wert 1), Subtraktion bei passivem Neuron (Wert -1)

• Wenn Summe >= 0 ist Neuron aktiv, sonst passiv

• Iteriere bis keine Veränderung mehr auftritt

Page 25: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 25

Kohonen SOMUnüberwachtes LernenEingabeschicht mit allen Neuronen der Kohonenschicht verbunden

Page 26: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 26

Kohonen SOMErmittlung des sog. Gewinnerneurons:

euklidischer Abstand zw. Eingabevektor und Gewichtsvektor d. Neuronen

• Neuron mit minimalem Abstand => Gewinner

in „Nachbarschaft“ des Gewinners:Anpassung der Gewichtsvektoren

)( ii WIW −=∆ α

2)( iWI −

Page 27: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 27

Kohonen SOMNachbarschaftsfunktionen:

• z.B. Gaußsche Glockenfunktion, Mexikanerhut-funktion, Zylinder und Doppelzylinder

Page 28: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 28

Kohonen SOMGröße der Nachbarschaft, sowie Lernrate sinken im Laufe des Trainings

• Erst Umordnung, dann Konvergenz

Abbruch meist nach vorgegebener Anzahl an Durchläufen oder wenn Gewichtsänderung

ε<∆W

Page 29: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 29

Noch Fragen ? Noch Fragen ?

Page 30: Multi-Layer Networks and Learning Algorithmscampar.in.tum.de/twiki/pub/Far/MachineLearningWiSe2003/NNVortrag.pdf · Auto fahren: (1993) ALVINN (Autonomous Land Vehicle In a Neural

Hauptseminar: Machine Learning 30

Vielen Dank Vielen Dank für Ihre für Ihre

Aufmerksamkeit!Aufmerksamkeit!