Vorlesungsfolien
Vorlesungsfolien
Vorlesungsfolien
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Jörn Fischer<br />
j.fischer@hs-mannheim.de<br />
Willkommen zur Vorlesung<br />
Fortgeschrittenes<br />
Maschinelles Lernen
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
2<br />
Vorstellung<br />
Zu meiner Person...<br />
Seite 2
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Überblick<br />
Inhalt<br />
●<br />
●<br />
●<br />
●<br />
●<br />
Organisatorisches<br />
Einführung<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Genetische Programmierung<br />
Reinforcement Learning<br />
Seite 3
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Organisatorisches<br />
Fragen…<br />
<br />
Fragen können gerne auch per Email an mich gerichtet werden oder aber<br />
bei Diskussionsbedarf einfach per Mail einen Termin vereinbaren...<br />
<br />
Rückkopplung ist ausdrücklich erwünscht !!!!!<br />
Page 4
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Einführung<br />
Ziel der Vorlesung<br />
<br />
<br />
<br />
<br />
...ist, dass ihr maximal dabei lernt<br />
Dass ihr die Algorithmen versteht<br />
Dass ihr sie selbst programmieren könnt<br />
Dass Ihr sie selbst erklären könnt<br />
Seite 5
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Einführung<br />
Mein Ansatz<br />
●<br />
●<br />
●<br />
Ich werde Euch ausgesuchte Algorithmen und deren Grenzen erklären<br />
Ihr werdet die Algorithmen in elementarer Form programmieren...<br />
auch zu Hause!<br />
Die Algorithmen werden testiert und gelten als<br />
Zulassung für die Klausur<br />
Seite 6
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Organisatorisches<br />
Fragen zu organisatorischen<br />
Dingen?<br />
Seite 7
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Organisatorisches<br />
Frage an Sie...<br />
Haben Sie schon mal was von<br />
●<br />
●<br />
●<br />
●<br />
MLE besucht?<br />
Evolutionäre Algorithmen<br />
Reinforcement Learning<br />
Neuronale Netze<br />
Gehört oder etwas mit gemacht?<br />
Seite 8
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Einführung<br />
Seite 9
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Einführung<br />
Literatur<br />
<br />
Russel, Stuard; Norvig, Peter: Künstliche Intelligenz. Prentice Hall, New<br />
Jersey, 1995<br />
<br />
Mitchell, Tom: Machine Learning. McGraw-Hill, 1997<br />
<br />
<br />
Zell, Andreas: Simulation Neuronaler Netze. Oldenbourg Verlag, München,<br />
1997<br />
Sutton, Richard; Barto, Andrew G.: Reinforcement Learning. MIT Press,<br />
1998<br />
Seite 10
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Einführung<br />
Frage?<br />
●<br />
Was hält uns also davon ab eine Maschine zu bauen, die in allen<br />
Belangen die Leistungsfähigkeit eines Menschen hat?<br />
Antwort:<br />
?<br />
Seite 11
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Einführung<br />
Frage?<br />
●<br />
●<br />
Was hält uns also davon ab eine Maschine zu bauen, die in allen<br />
Belangen die Leistungsfähigkeit eines Menschen hat?<br />
Antwort:<br />
Die Möglichkeit nicht nur Lösungen zu finden sondern auch neue<br />
Lösungsmethoden erlernen oder entwickeln zu können<br />
●<br />
●<br />
●<br />
Die Angepasstheit an unsere Umwelt durch eine Jahrtausende<br />
währende Evolution<br />
Die Fähigkeit Lernmethoden zu erlernen (Methalernen)<br />
…<br />
Seite 12
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Einführung<br />
Was bedeutet ein System lernt<br />
Die Änderung von Informationen im System mit dem Ziel effizienter zu sein.<br />
●<br />
●<br />
●<br />
besser generalisieren zu können<br />
besser agieren zu können<br />
besser vorhersagen zu können<br />
Seite 13
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Einführung<br />
Was ist ein Agent<br />
Als Agent kann alles angesehen werden, was seine Umwelt durch<br />
Sensoren (sensors) wahrnimmt und durch Effektoren (effectors) beeinflußt.<br />
Zitat: Russel und Norvig<br />
Seite 14
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Einführung<br />
Was für Problemkategorien kann man unterscheiden?<br />
vollständig wahrnehmbar teilweise wahrnehmbar<br />
deterministisch stochastisch<br />
(Episoden sind<br />
unabhängig<br />
voneinander)<br />
episodisch sequentiell<br />
statisch dynamisch<br />
diskret kontinuierlich<br />
Seite 15
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Einführung<br />
Was für Methoden kann man unterscheiden?<br />
●<br />
●<br />
●<br />
Überwachtes lernen (supervised learning)<br />
eine Funktion wird anhand Ein-Ausgabe Paaren gelernt<br />
Unüberwachtes Lernen (unsupervised learning)<br />
der Algorithmus findet anhand von Eingabedaten ein Modell, welches<br />
die Eingaben beschreibt und Vorhersagen ermöglicht<br />
Bekräftigungs Lernen (reinforcement learning)<br />
der Algorithmus belohnt oder bestraft eine Taktik wie in potentiell<br />
auftretenden Situationen zu handeln ist<br />
Seite 16
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter<br />
Neuronaler Netze<br />
Seite 17
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Überblick<br />
●<br />
●<br />
●<br />
●<br />
●<br />
Einführung<br />
Perzeptron<br />
Biologische Neuronen<br />
Dynamische Systeme<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
Was ist ein dynamisches System<br />
Begriffserläuterungen<br />
Wofür braucht man die Theorie Dynamischer Systeme?<br />
Welche Arten von Dynamiken gibt es?<br />
Phasendiagramm, Bifurkatiosdiagramm, Lyapunov Exponent<br />
Beispiele<br />
Das rekurrente IML-Netzwerk<br />
Seite 18
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Einführung<br />
Warum Neuronale Netze?<br />
●<br />
●<br />
●<br />
Neuronale Netze können Funktionen aufgrund von Messdaten<br />
erlernen, so dass Modelle, die nur schwer in DGL‘s oder andere<br />
Abbildungen gefasst werden können trotzdem erlernbar sind.<br />
Man spricht dann von „Black Box Modelling“<br />
Neuronale Netze funktionieren auch in hochdimensionalen Räumen, in<br />
denen die Komplexität der Daten ein konstruieren von Funktionen per<br />
Hand unpraktisch oder sogar unmöglich werden lässt
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Einführung<br />
Welche Arten von Anwendungen gibt es?<br />
●<br />
●<br />
●<br />
●<br />
Funktionsapproximation bzw. Regressionsanalyse einschließlich<br />
Fitnessapproximation und Zeitreihenvorhersage<br />
Klassifikation, einschließlich Muster und Sequenzerkennung,<br />
Erkennung neuer bzw. unbekannter Daten (novelty detection) und<br />
sequentielles Entscheidungsfällen (bsp. Reinforcement Learning)<br />
Datamining, wie Filterung, Clustering, Blind Source Separation und<br />
Kompression<br />
Robotik, wie Bewegungskontrolle, Aufmerksamkeitssteuerung,<br />
Reinforcement Learning, etc.
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Einführung<br />
Konkret?<br />
●<br />
Spiele wie Backgammon (TD Gammon), ein Reinforcement Learner<br />
gekoppelt mit Neuronalem Netz, welcher zu spielen lernt, indem er<br />
gegen sich selbst spielt.<br />
●<br />
Tesauro, Gerald (March 1995). "Temporal Difference Learning and TD-<br />
Gammon". Communications of the ACM 38 (3). Retrieved 2010-02-08.
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Einführung<br />
Konkret?<br />
●<br />
●<br />
Krebs Diagnostik<br />
Ganesan, N. "Application of Neural Networks in Diagnosing Cancer<br />
Disease Using Demographic Data". International Journal of Computer<br />
Applications.
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Einführung<br />
Konkret?<br />
●<br />
●<br />
Prädiktion von Energieen in der Dichte Funktionstheorie<br />
Roman M. Balabin, Ekaterina I. Lomakina (2009). "Neural network<br />
approach to quantum-chemistry data: Accurate prediction of density<br />
functional theory energies". J. Chem. Phys. 131 (7): 074104.<br />
doi:10.1063/1.3206326. PMID 19708729.
Einführung<br />
Ausserdem?<br />
●<br />
Regelung und Analyse von komplexen Prozessen<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
Frühwarnsysteme<br />
Optimierung<br />
Zeitreihenanalyse (Wetter, Aktien etc.)<br />
Sprachgenerierung (Beispiel: NETtalk)<br />
Bildverarbeitung und Mustererkennung<br />
Schrifterkennung (OCR)<br />
Spracherkennung<br />
Data-Mining<br />
Informatik: Bei Robotik, virtuellen Agenten und KI-Modulen in Spielen und Simulationen.<br />
Medizinische Diagnostik, Epidemiologie und Biometrie<br />
Klangsynthese<br />
Strukturgleichungsmodell zum Modellieren von sozialen oder betriebswirtschaftlichen<br />
Zusammenhängen<br />
Quelle: http://de.wikipedia.org/wiki/K%C3%BCnstliches_neuronales_Netz<br />
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Neuronale Netze<br />
Das Perzeptron
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Neuronale Netze<br />
Das Perzeptron<br />
Beim Perzeptron ist die Neuronenaktivität :<br />
(2.1)<br />
t<br />
φ +1 n<br />
j =∑ i =1<br />
w t t<br />
ij o i<br />
Die Transferfunktion des Perzeptrons ist eine Schwellwertfunktion:<br />
Oj=<br />
{<br />
1 if φj >= 0<br />
0 if φj < 0
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Neuronale Netze<br />
Das Perzeptron (1 Layer)<br />
Lineare Separierbarkeit<br />
o1<br />
o3<br />
o2<br />
OR problem<br />
o1 o2 o3<br />
0 0 0<br />
0 1 1<br />
1 0 1<br />
1 1 1<br />
oII1<br />
1<br />
1 1 1 1 1 1 1 1 1<br />
1 1 1 1 1 1 1 1<br />
1 1 1 1 1 1 1<br />
0<br />
0 0<br />
0 0 0 0<br />
0 0 0 0 0 0<br />
1 1 1 1 1 1<br />
1 1 1 1<br />
1 1 1<br />
0 1<br />
o2
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Neuronale Netze<br />
Das Perzeptron (1 Layer)<br />
n<br />
Anzahl von<br />
Binärfunktionen mit n<br />
Inputs<br />
Anzahl der linear<br />
separablen Funktionen<br />
1 4 4<br />
2 16 14<br />
3 256 104<br />
4 65 536 1 772<br />
5 4.3 * 10 9 94 572<br />
6 1.8 * 10 19 5 028 134<br />
[Wasser, 89, Widner 60]
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Neuronale Netze<br />
Das Perzeptron (2 Layer)<br />
o3<br />
o1<br />
o6<br />
o4<br />
o2<br />
AND Verknüpfung<br />
von verschiedenen<br />
Bereichen<br />
o5<br />
Gewichte<br />
definiere die<br />
Bereiche<br />
o1<br />
1<br />
0 0 1 1 1 1 1 1 0<br />
1 1 1 1 0 0<br />
0 0 0<br />
0 0 0 0 0 0 0 0<br />
0 0 0 0 0 0 0 0 0 0 0<br />
0 0 0 0 0 0 0 0 0 0 0<br />
0 0 0 0 0 0 0 0 0 0 0<br />
0 1<br />
o2
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Neuronale Netze<br />
Das Perzeptron (3 Layer)<br />
o1<br />
o6<br />
o8<br />
o7<br />
AND Verknüpfung der<br />
verschiedenen Bereiche<br />
Gewichte definieren<br />
konvexe Bereiche<br />
1<br />
1 1 1 0 0 0 0 0 1<br />
0 0 0 0 1 1<br />
0 0 0<br />
0 0 0 0 0 0 0 0<br />
0 0 0 0 0 0 0 0 0 0 0<br />
0 0 0 0 0 0 0 0 0 0 0<br />
0 0 0 0 0 0 0 0 0 0 0<br />
o3<br />
o4<br />
o5<br />
0 1<br />
o2<br />
o1<br />
o2<br />
Gewichte<br />
definieren die<br />
Bereiche
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Neuronale Netze<br />
Das Perzeptron (Lernregel)<br />
If Oj=0 and tj=1 and Oi=1 then<br />
Wij = Wij + Oi<br />
Oj<br />
tj = target<br />
If Oj=1 and tj=0 and Oi=1 then<br />
Wij = Wij - Oi<br />
wij<br />
Oi
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Biologische Neuronen<br />
●<br />
Eine Pyramidenzelle (Cajal, 1911) Die Information fließt von den<br />
Dendriten über den Soma zum Axon und zu den Synapsen, welche das<br />
Neuron mit anderen Neuronen verbindet<br />
Seite 32
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Biologische Neuronen<br />
Seite 33
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Biologische Neuronen<br />
Seite 34
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Seite 35
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Was ist ein dynamisches System?<br />
●<br />
Unter einem dynamischen System versteht man ein mathematisches<br />
Modell eines zeitabhängigen Prozesses, der homogen bezüglich der<br />
Zeit ist, also dessen Verlauf zwar von der Zeit, also dessen Verlauf<br />
zwar vom Anfangszustand, aber nicht vom Anfangszeitpunkt abhängt.<br />
(Wikipedia)<br />
Seite 36
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Begriffserläuterungen<br />
●<br />
●<br />
●<br />
●<br />
●<br />
●<br />
Zustand: N Koordinaten oder N Werte, die das System zu einem<br />
gegebenen Zeitpunkt T vollständig beschreiben<br />
Anfangszustand: Der N-dimensionale Zustand, von dem aus ein<br />
Zustands-Verlauf beobachtet wird i.a. Bei T=0<br />
Orbit/ Trajektorie : Ein Zustandsverlauf im N-dimensionalen<br />
Phasenraum/ Zustandsraum: Der N-dimensionale Raum der<br />
Koordinaten, in dem ein Orbit oder eine Trajektorie verläuft<br />
Zeit diskretes dynamisches System: Wenn der Zustand eines Systems<br />
nur für diskrete Zeiten berechnet wird<br />
Attraktor: in einem nichtlinearen System werden Fixpunkte, Orbits und<br />
allgemeine nichtperiodische Grenzmengen als Attraktor bezeichnet<br />
Seite 37
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Wofür braucht man die Theorie Dynamischer Systeme?<br />
●<br />
●<br />
●<br />
Die Theorie der dynamischen Systeme versucht die Art der Dynamik<br />
einzuordnen.<br />
Wenn man die Art der Dynamik kennt, die ein System beinhaltet, weiß<br />
man ob sich der Zustand einem Statischen Zustand nähert, ob der<br />
Zustand oszilliert oder sogar chaotisch verläuft.<br />
Man kann Aussagen über Zustandsänderungen und Vorhersagen bzw.<br />
Vorhersagefähigkeit treffen.<br />
Seite 38
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Zeitdiskrete Lineare Systeme (1)<br />
●<br />
●<br />
Lineare Systeme kann man i.A. In Matrixdarstellung schreiben. Man<br />
kennt die Gleichung von der Geraden: x(t+1)=m x(t) + b wobei x(t) und<br />
b jeweils ein Vektor ist und m eine Matrix<br />
Wenn man diese Gleichung z.B. auf einen Punkt im 2 Dimensionalen<br />
Zustandsraum anwendet, so bekommt man zu Folgezeiten (t+n)<br />
weitere Punkte.<br />
Seite 39
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Zeitdiskrete Lineare Systeme (2)<br />
●<br />
Angenommen b = 0 und die Beträge in der Matrix m sind klein (
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Zeitdiskrete Lineare Systeme (3)<br />
●<br />
Falls b 0 bewegt sich der Punkt ins unendliche und divergiert<br />
Seite 41
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Zeitdiskrete Lineare Systeme (4)<br />
●<br />
●<br />
●<br />
Falls b = 0 und m beispielsweise eine Rotationsmatrix, so bekommt<br />
man ein periodisches oder quasiperiodisches Verhalten.<br />
Periodisch nennt man es, wenn es nach n-Abbildungen wieder auf dem<br />
selben Punkt landet. Dann hat es die Periode n.<br />
Quasiperiodisch nennt man es, wenn die Schrittweite beispielsweise<br />
Seite 42
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Zeitdiskrete Lineare Neuronale Netze:<br />
Seite 43
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Stabilität<br />
Ein Fixpunkt ist genau dann stabil, wenn alle Eigenwerte der Matrix negative Realteile<br />
besitzen.<br />
Seite 44
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Stabilität<br />
●<br />
Was aber, wenn der Punkt in n von N Richtungen Anziehend und N-n<br />
Richtungen abstoßend ist? → Dann ist er trotzdem instabil !!!<br />
Sattelpunkt<br />
Seite 45
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Zeitdiskrete Nichtlineare Systeme<br />
●<br />
●<br />
●<br />
●<br />
Die Dynamik kann komplexer werden, denn es gibt nun, wenn die<br />
Abbildung steil genug verläuft auch Chaotisches Verhalten.<br />
Chaotisch heißt dass kleine Störungen zu komplett unterschiedlichem<br />
Verhalten führen.<br />
Beispiel: Galton Brett<br />
Wenn die<br />
Sigmoide eher eine<br />
Schwellwertfunktion ist<br />
und man nahe dem<br />
Ursprung ist springt der<br />
Output z.B. von 0 auf 1<br />
Seite 46
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Zeitdiskrete Nichtlineare Systeme<br />
●<br />
Chaotischer Attraktor: Minimale Änderungen in der Anfangsbedingung<br />
führen zu einem komplett unterschiedlichen Verhalten<br />
Lorenzattraktor<br />
Seite 47
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Zeitdiskrete Nichtlineare Neuronale Netze<br />
●<br />
Ein simples 2 Neuronen Netz:<br />
Seite 48
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Zeitdiskrete Nichtlineare Neuronale Netze<br />
●<br />
Bifurkationsdiagramm: Ein 2 Neuronen Netz dessen Gewicht w11 verändert<br />
wird und der Output eines Neurons aufgezeichnet wird.<br />
Seite 49
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Zeitdiskrete Nichtlineare<br />
Neuronale Netze<br />
●<br />
Ein Maß für das Chaos<br />
ist der sogenannte<br />
Ljapunov Exponent.<br />
mit<br />
Seite 50
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Zeitdiskrete Nichtlineare Neuronale Netze<br />
●<br />
●<br />
●<br />
Ist der größte Ljapunov Exponent > 0, so ist das System i.d.Regel<br />
divergent.<br />
Ist er < 0, so entspricht dies einer Phasenraum kontraktion, d.h. das<br />
System ist dissipativ und agiert stationär oder periodisch stabil.<br />
Ist die Summe aller Ljapunov Exponenten = 0, so so handelt es sich um ein<br />
konservatives System(wie ein Potentialfeld, wo keine Kräfte reingesteckt<br />
werden)<br />
Seite 51
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Evolutionäre Algorithmen<br />
Aufgabe 1)<br />
●<br />
Ergänzt die Vorlage (BifurcationAndPhaseDiagram-Aufgabe.zip) so, dass<br />
das Bifurkationsdiagramm und das Phasendiagramm gezeichnet werden. Die<br />
Gewichtsmatrix des jeweiligen Neuronalen Netzes kann dem Paper<br />
entnommen werden.<br />
Seite 52
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Das rückgekoppelte IML-Network<br />
●<br />
●<br />
●<br />
Ein Neuronales Netz wird i.A. Genutzt um eine Abbildung von Input zu<br />
Output zu bekommen<br />
Diese Abbildung kann von vergangenen Inputs abhängen, braucht also eine<br />
Art Gedächtnis<br />
Ein Gedächtnis bekommt ein Neuronales Netz mittels Rückkopplungen<br />
oder mindestens Nachbarschaftskopplungen<br />
Seite 53
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Das rückgekoppelte IML-Network<br />
●<br />
●<br />
●<br />
Ein Echo-State Netzwerk (Herbert Jäger) ist ein Netzwerk, welches genau<br />
solche Rückkopplungen im hidden Layer hat. Die Gewichte sind zufällig und<br />
ändern sich nicht, wobei durch Gewichtsskalierung dafür gesorgt werden<br />
muss, dass die Hidden Schicht nicht chaotische Attraktoren hervorbringt.<br />
Auch die Eingangsgewichte sind zufällig!<br />
Gelernt werden dann nur die Gewichte zu den Ausgangsneuronen mittels<br />
linearer Regression.<br />
Seite 54
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Das rückgekoppelte IML-Network<br />
●<br />
●<br />
Ein IML-Netzwerk ist die vereinfachte Version des Echo-State Netzwerkes,<br />
denn innerhalb der Hidden Schicht existieren nur seitliche Kopplungen zu<br />
den rechten Nachbarn mit einer Dichte von etwa 5%. Dass heißt, dass nur<br />
jede 20. mögliche Verbindung existiert.<br />
Eine Skalierung der Gewichte ist nicht notwendig, da innerhalb des Hidden<br />
Layers keine chaotische Dynamik entstehen kann.<br />
Seite 55
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Dynamik Rekurrenter Neuronaler Netze<br />
Das rückgekoppelte IML-Network<br />
●<br />
●<br />
●<br />
Die Eingangsgewichte der Hidden Schicht sollte so skaliert werden, dass<br />
der Output des Hidden Layers weder „Binär“ (dann sind Gewichte zu groß)<br />
noch zu klein ist (dann sind auch die Gewichte zu klein).<br />
Zum erlernen der Output Gewichte sollte der quadratische Fehler der<br />
Abbildung minimiert werden.<br />
Dafür muss dann nur ein Gleichungssystem gelöst werden:<br />
Seite 56
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Evolutionäre Algorithmen<br />
Aufgabe 2)<br />
●<br />
Programmiert mit Hilfe der Vorlage ein feedforward IML-Netz, welches das<br />
Spiralproblem löst. In der Vorlage fehlt die Aktivierung des Netzes und die<br />
Vernetzung der Hidden mit der Eingangsschicht.<br />
●<br />
Die zweite Vorlage beinhaltet den Code für ein rückgekoppeltes IML-Netz<br />
(ohne Seitwärtskopplungen). Es lernt den Lorenzattraktor. Plottet bitte den<br />
Output einiger Hidden Neuronen, skaliert gegebenenfalls die Gewichte und<br />
traniert den Attraktor mehrfach indem ihr am Eingang rauschen mit geringer<br />
Amplitude hinzugebt.<br />
Seite 57
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Optimierung<br />
Raum und Dimensionen<br />
Seite 58
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Optimierung<br />
Nachbarzustände (Travelling Salesman)<br />
●<br />
Wie viele Nachbarzustände k gibt es, wenn man im Traveling<br />
Salesman Problem Städte vertauscht um eine n Städte Rundreise zu<br />
optimieren?<br />
k = n*(n-1)<br />
●<br />
●<br />
Dabei sucht man sich zunächst eine der n Städte aus und vertauscht<br />
sie mit einer der übriggebliebenen (n-1) Städte.<br />
→ Nachbarn können i.a. alle geprüft werden<br />
Seite 59
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Optimierung<br />
Nachbarzustände (Hill Climber)<br />
●<br />
Wie viele Nachbarzustände k hat ein HillClimber, wenn der Parameterraum<br />
n Dimensionen hat?<br />
k=3 n -1<br />
n<br />
k<br />
n=1 k=2<br />
1 2<br />
2 8<br />
n=2 k=8<br />
4 80<br />
8 6560<br />
n=3 k=26<br />
16 43046720<br />
32 18*10 14<br />
64 34*10 29<br />
Nachbarn können i.a. nicht alle geprüft werden<br />
Seite 60
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Evolutionäre Algorithmen<br />
Genetische Algorithmen<br />
Seite 61
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Evolutionäre Algorithmen<br />
Seite 62
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Evolutionäre Algorithmen<br />
In der Informatik<br />
●<br />
●<br />
●<br />
Mutation: In der Gensequenz werden mit gegebener Wahrscheinlichkeit<br />
zufällig Bits „gekippt“<br />
Rekombination (Crossover): Aus den Genen zweier effizienter Individuen<br />
wird durch Wählen eines oder mehrerer Crossover Punkte ein neues Gen<br />
(Individuum) produziert. Dabei wird der erste Teil des einen Gens (bis zum<br />
Crossoverpunkt) und der zweite Teil des anderen Gens zu einem neuen<br />
Gen zusammengefügt.<br />
Selektion: Bei der Selektion werden die Individuen bewertet und nur die<br />
effizientesten werden in die darauffolgende Generation übernommen<br />
Seite 63
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Evolutionäre Algorithmen<br />
p sei die Anzahl der Hypothesen(=Individuen) in der Population P<br />
r sei der Anteil, der in jedem Schritt durch Crossover ersetzt wird<br />
m sei Mutationsrate<br />
Initialisiere die Population (erzeuge Zufallshypothesen)<br />
Errechne die Fitness für alle Hypothesen<br />
while maxFitness
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Evolutionäre Algorithmen<br />
integer select()<br />
{<br />
randNum sei Zufallszahl [0..1]<br />
summe = 0<br />
index = Zufallszahl [0..p]<br />
do<br />
index = index + 1<br />
index = index modulo p<br />
summe := summe + Pr(index)<br />
while summe
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Evolutionäre Algorithmen<br />
Problem bei der Mutation<br />
●<br />
●<br />
Problem: Ein genetischer Algorithmus findet einen Bitstring „011111“ = 31<br />
der noch nicht optimal ist, denn „100000“ = 32 währe der optimale Bitstring.<br />
Dann müsste der genetische Algorithmus alle Bits invertieren um dahin zu<br />
gelangen. Leider führt jede Invertierung eines Bits zunächst zu einem<br />
schlechteren Ergebnis…<br />
Lösung: Nach Möglichkeit kodiert man die zu optimierenden Parameter im<br />
Graycode. Damit ist garantiert, dass Nachbarzustände immer durch<br />
Änderung eines der Bits erreicht werden können!<br />
Seite 66
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Evolutionäre Algorithmen<br />
Graycode Kodierung<br />
Sei b={Bn..B1} eine n stellige Binärzahl und g={Gn..G1} der dazu passende<br />
Graycode, dann kann g aus b mit Hilfe folgender Vorschrift gewonnen werden:<br />
G n<br />
= B n<br />
(Das oberste Bit ist gleich)<br />
G i<br />
= XOR(B i+1<br />
,B i<br />
)<br />
(für alle 1 < i < n-1)<br />
genauso gilt:<br />
B n<br />
= G n<br />
(Das oberste Bit ist gleich)<br />
B i<br />
= XOR(B i+1<br />
,G i<br />
)<br />
(für alle 1 < i < n-1)<br />
Seite 67
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Evolutionäre Algorithmen<br />
Genetische Algorithmen<br />
Vorteile:<br />
●<br />
GA‘s sind nicht so anfällig dafür in lokalen Minima stecken zu bleiben (durch<br />
Operatoren wie Crossover können die Nachkommen z.B. weit auseinander<br />
liegen)<br />
Der Algorithmus ist einer der universellsten und lässt sich auch auf Probleme<br />
mit nicht stetiger Fitnessfunktion (im Prinzip sogar auf Probleme zeitlich<br />
veränderlicher Fitnessfunktion) anwenden<br />
●<br />
Nachteile<br />
●<br />
●<br />
Individuen mit hoher Fitness übernehmen schnell durch Kopien eine der<br />
folgenden Generationen, so dass weniger Diversität auftritt (crowding).<br />
Man findet nicht so konsequent und schnell die Minima wie beim<br />
Gradientenabstieg<br />
Seite 68
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Evolutionäre Algorithmen<br />
Genetische Algorithmen<br />
Was kann man tun um die Nachteile des Crowding zu überwinden?<br />
●<br />
●<br />
●<br />
Man kann beispielsweise die Fitness verringern, wenn es viele ähnlich<br />
Individuen gibt : „fitness sharing“<br />
Man kann die Rekombination auf ähnliche Individuen beschränken, so erhält<br />
man Gruppen von „subspecies“<br />
Man kann die Selektionsstrategie ändern:<br />
z.B. durch Tournament Selection oder Rank Selection<br />
Seite 69
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Evolutionäre Algorithmen<br />
Genetische Algorithmen<br />
●<br />
Tournament selection (Goldberg, Deb 1991)<br />
2 Hypothesen werden zufällig aus P ausgewählt; mit vordefinierter<br />
Wahrscheinlichkeit p wird die Hypothese ausgewählt, die die höhere Fitness<br />
hat, mit (1-p) Wahrscheinlichkeit die mit der kleineren Fitness<br />
→ führt zu mehr Diversität in der Population<br />
●<br />
Rank selection<br />
Die Hypothesen werden nach Fitness sortiert und die Wahrscheinlichkeit,<br />
dass eine Hypothese ausgewählt wird, hängt vom Rang statt von der Fitness<br />
ab.<br />
Seite 70
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Evolutionäre Algorithmen<br />
Aufgabe 3)<br />
●<br />
Schreibt einen universellen genetischen Algorithmus, der eine gewünschte<br />
Anzahl von Parametern mit jeweils 32 Bit (Floating Point IEEE754) optimiert.<br />
Die Fitness sollte der (-1)*Euklidische Abstand eines zufällig gewählten<br />
Punktes im Parameterraum sein<br />
Seite 71
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Evolutionäre Algorithmen<br />
Genetische Programmierung<br />
Seite 72
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Evolutionäre Algorithmen<br />
Genetische Programmierung<br />
●<br />
●<br />
Bei der genetischen Programmierung wird der Genotyp, d.h. die genetische<br />
Information oder der Bitstring in den Phänotyp nämlich einen<br />
Programmquelltext übersetzt.<br />
Koza (1992) beschreibt in seiner Veröffentlichung die Grundlagen<br />
genetischer Programmierung.<br />
(Koza, J.(1992) Genetic Programming: On the programming of Computers by means of natural<br />
selection. Cambridge, MA: MIT Press)<br />
Seite 73
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Evolutionäre Algorithmen<br />
Repräsentation von Programmen<br />
●<br />
Programme werden i.a. als Bäume dargestellt<br />
●<br />
Dabei stellt ein Funktionsaufruf einen Knoten dar und die Argumente sind<br />
weitere Knoten<br />
Seite 74
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Evolutionäre Algorithmen<br />
Repräsentation von Programmen<br />
●<br />
●<br />
●<br />
Mutationen ändern einfach nur die Knoteninhalte.<br />
Dabei ist in unserem Beispiel darauf zu achten, dass die Blätter des<br />
Baumes Variablen oder Konstanten und die Zwischenknoten<br />
Rechenoperationen sind.<br />
Crossover: Es wird ein zufällig gewählter Unterbaum eines Elternteils durch<br />
einen zufällig gewählten Unterbaum des anderen Elternteils ersetzt.<br />
Seite 75
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Evolutionäre Algorithmen<br />
Repräsentation von Programmen<br />
X<br />
=<br />
Seite 76
Evolutionäre Algorithmen<br />
Beispiel Befehlssatz:<br />
Opcode Mnemonic<br />
0 LDA #123 // Konstante<br />
1 LDO #123 // Konstante<br />
2 JSR #123 // Konstante Jump Subroutine (Aussprungadresse kommt auf<br />
unsichtbaren Stack)<br />
3 RET // Wenn jsr vorher, dann zurückspringen, sonst Programmende<br />
4 LDA %O<br />
5 LDO %O<br />
6 STA %O<br />
7 CMP O // Acc < = > O setzt Equal, Lower, Higher Flags<br />
8 SUB O // Acc = Acc - O<br />
9 ADD O // Acc = Acc + O<br />
10 MUL O // Acc = Acc * O<br />
11 JIE O // Jump if Equal<br />
12 JIL O // Jump if Lower (bei CMP O -> ACC 1<br />
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Seite 77
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Evolutionäre Algorithmen<br />
Aufgabe 4)<br />
●<br />
Schreibt einen Algorithmus der genetischen Programmierung, der den<br />
Speicher so voll schreibt, dass vom genetischen Programm möglichst viele<br />
unterschiedliche Primzahlen in den Speicher geschrieben werden<br />
Seite 78
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Reinforcement Learning<br />
Seite 79
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Reinforcement Learning<br />
Was ist Reinforcement Learning<br />
Reinforcement Learning (bzw. bestärkendes Lernen) ist ein Lernen, bei<br />
dem ein Agent lediglich aufgrund von Belohnung (positivem „reward“) und<br />
Bestrafung (negativem „reward“) lernt seinen Nutzen zu optimieren<br />
Umgebung<br />
Zustand<br />
reward<br />
Aktion<br />
Agent<br />
Zustand s kann sein:<br />
- Sensorwerte der Umwelt<br />
- eigene errechnete Position<br />
- Innere Zustände wie<br />
Speicherinhalte<br />
Aktion a kann sein:<br />
- Manipulator bewegen<br />
- Abwarten<br />
- Speicher beschreiben<br />
Reward r ist:<br />
- Belohnung, die positiv oder<br />
negativ sein kann<br />
Seite 80
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Reinforcement Learning<br />
Bewertungsfunktion<br />
Value Funktion V(s) oder Q(s,a) (Bewertungsfunktion / Value-Funktion):<br />
●<br />
●<br />
Die Bewertungsfunktion spiegelt die zu erwartende Belohnung (reward)<br />
wieder. Ist sie gelernt, so kann der Agent in jedem Zustand die Aktion<br />
aussuchen, die die größte zu erwartende Belohnung widerspiegelt.<br />
Sei Q* die optimale Bewertungsfunktion, dann gilt:<br />
γ=[0..1]<br />
Q t ∗ =∑ i=0<br />
∞<br />
γ i r t +i<br />
Dabei ist<br />
Discount Faktor, der dafür sorgt, dass weit in der<br />
Zukunft liegende mögliche Rewards geringer gewichtet werden.<br />
(t=0 ist der aktuelle Zeitpunkt, t>0 ist die Anzahl der Schritte in die Zukunft)<br />
Seite 81
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Reinforcement Learning<br />
Bellmansches Optimalitätsprinzip<br />
„An optimal policy has the property that whatever the initial state and initial<br />
decision are, the remaining decisions must constitute an optimal policy with<br />
regard to the state resulting from the first decision.“ (Bellman 1957, Chap<br />
II.3)<br />
Beispiel:<br />
Wenn die Zustandsfolge 1,2,3,4,5 (mit Aktionen a,b,c,d) optimal ist, so ist<br />
auch die Teilfolge 2,3,4,5 mit Aktionen b,c,d optimal.<br />
Seite 82
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Reinforcement Learning<br />
Herleitung der Q-Learning Update-Formel<br />
Sei Q* die optimale Value-Funktion:<br />
Q ∗ ∞<br />
t =∑ i=0 γ i r t +i<br />
0=r t<br />
+γQ ∗ ∗<br />
t+1<br />
−Q t<br />
Q ∗ ∞<br />
t =r t +∑ i=1 γ i r t +i<br />
Q ∗ ∞<br />
r<br />
t =r t +∑ i=0 γ i+1 t<br />
+γ max a<br />
r<br />
t<br />
(Q t +1<br />
)−Q t<br />
t +i+1<br />
Q ∗ ∞<br />
t =r t +γ∑ i =0 γ i r i +(t +1)<br />
Q ∗ ∗<br />
Q<br />
t<br />
=r t<br />
+γQ t<br />
=Q t<br />
+α(r t<br />
+γ max a t<br />
(Q t +1<br />
)−Q t<br />
)<br />
t +1<br />
α∈[0..1]ist Lernrate z.B. α=0.01<br />
γ∈[0..1]ist Discountfaktor<br />
r t<br />
ist Reward (Belohnung)<br />
negativ,wenn Qt zu groß<br />
= 0, wenn Qt optimal<br />
positiv, wenn Qt zu klein<br />
Seite 83
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Reinforcement Learning<br />
Aktionsauswahl<br />
●<br />
●<br />
●<br />
Immer die Aktion mit der größten zu erwartenden Belohnung zu wählen<br />
nennt man Greedy-Strategie<br />
Fast immer die Aktion mit der größten Bewertung zu wählen, aber mit<br />
einer ε-Wahrscheinlichkeit eine der anderen Aktionen zu wählen nennt<br />
man ε-greedy<br />
Alle Aktionen mit gewichteten Wahrscheinlichkeiten zu wählen nennt<br />
man Softmax Action Selection:<br />
p [a ]=<br />
n<br />
∑ j=1<br />
eQ t[ a ]/ τ<br />
e Q t [ b]/ τ Seite 84
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Reinforcement Learning<br />
Softmax action Selection<br />
p[a ]=<br />
n<br />
∑ j=1<br />
eQ t[ a ]/ τ<br />
e Q t [ j ]/ τ Seite 85<br />
Die Verteilung nennt man Gibbs oder Boltzmann Verteilung<br />
tau nennt man Temperatur<br />
Für Ƭ unendlich ist p[a] für alle a etwa gleich groß<br />
Für Ƭ 0 ist p[a greedy<br />
]=1 und für alle anderen p[a not_greedy<br />
]=0
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Reinforcement Learning<br />
Q-Learning(Watkins, 1989)<br />
Q(s t<br />
, a t<br />
)=Q(s t<br />
, a t<br />
)+α[r t<br />
+γ max a<br />
Q(s t +1<br />
, a)−Q(s t<br />
, a t<br />
)]<br />
α = [0..1] ist die Lernrate<br />
Der Algorithmus:<br />
Seite 86
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Reinforcement Learning<br />
Markow Entscheidungs Prozess<br />
Reinforcement Learning wird häufig als Markow Entscheidungsprozess<br />
aufgefasst und es wird vorrausgesetzt, dass die Markoweigenschaft erfüllt<br />
ist.<br />
Markoweigenschaft<br />
Die Markoweigenschaft garantiert, dass das Verhalten des Systems und<br />
damit die Wahrscheinlichkeiten, in welche Folgezustände das System<br />
gelangt nur vom aktuellen Zustands-Aktionspaar abhängt.<br />
Seite 87
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Reinforcement Learning<br />
Aufgabe 5)<br />
Implementieren Sie einen Q-Learning Agenten der lernt ein PingPong Spiel zu<br />
spielen! Das Spiel wird vorgegeben.<br />
●<br />
●<br />
Reward = 1 bekommt der Agent, wenn der Schläger den Ball trifft.<br />
Reward = -1 bekommt der Agent, wenn er den Ball nicht trifft
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Reinforcement Learning<br />
Erweiterungen<br />
Es gibt eine Reihe von Erweiterungen für das klassische Reinforcement Learning:<br />
●<br />
●<br />
Approximation der Value-Funktions (Neuronale Netze, CMAC, Multi Resolution etc.)<br />
Hierarchisches Reinforcement Learning (Feudal Q-Learning)<br />
●<br />
Modell basierte Verbesserungen (Dyna, Priorized Sweeping)
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Reinforcement Learning<br />
Approximation der Value Funktion<br />
Neuronale Netze<br />
●<br />
Neuronale Netze werden zur Approximation der Value Funkion hinzugezogen, in<br />
einigen Arbeiten sogar rekurrente Netze.<br />
●<br />
Rekurrente Neuronale Netze haben ein Gedächtnis und können Zustände der<br />
ergangenheit mit beachten (Markow Eigenschaft) (Meeden, McGraw, & Blank, 1993;<br />
Lin& Mitchell, 1992; Schmidhuber, 1991)
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Reinforcement Learning<br />
Approximation der Value Funktion<br />
CMAC (Cerebellar model articulation controller) Albus, J. S. (1975)<br />
Fig. aus (Frederick G. Harmon, Andrew<br />
A. Frank , Sanjay S. Joshi 2005)<br />
The control of a parallel hybrid-electric<br />
propulsion system for a small unmanned<br />
aerial vehicle using a CMAC neural<br />
network
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Reinforcement Learning<br />
Approximation der Value Funktion<br />
Multi Resolution<br />
PartiGame Algorithmus (Moore 1994) generalisiert über Zustände<br />
Generiert neue Zustände gemäß eines Minimax Kriteriums
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Reinforcement Learning<br />
Hierarchisches Reinforcement Learning<br />
Feudal Q-Learning (Dayan & Hinton, 1993; Watkins, 1989)<br />
●<br />
●<br />
Im einfachsten Fall: high-level master Modul und low-level slave Modul<br />
Master bekommt Reinforcement vom Environment<br />
●<br />
Master gibt Kommandos an die low-level Module und belohnt sie, selbst wenn es<br />
keinen externen Reward gibt.<br />
●<br />
●<br />
Master lernt Mapping von State zu Kommandos und Belohnung<br />
Slave lernt Mapping von Kommandos<br />
zu externen Aktionen
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Reinforcement Learning<br />
Hierarchisches Reinforcement Learning<br />
Compositional Q-Learning (Singh 1992)<br />
●<br />
Hierarchie basiert auf zeitliche Abfolge von Unterzielen<br />
●<br />
Elementar-Tasks sind Verhaltensweisen, die eine wahrnehmbare Bedingung<br />
erfüllen<br />
●<br />
High-Level Ziel ist es mehrere Elementartasks in vorgegebener Reihenfolge zu<br />
lernen<br />
●<br />
Erst werden Elementary Tasks trainiert, dann lernt die sogenannte „gating-function“<br />
die Elementary-Tasks in der richtigen Reihenfolge anzusteuern
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Reinforcement Learning<br />
Modell basierte Verbesserungen<br />
Dyna (Richard Sutton 1990/91)<br />
●<br />
Modell wird beim Handeln erstellt<br />
● Q-update<br />
●<br />
K mal wird ein Q-Update im Modell gelernt (ausgehend von k State-Action Paaren)
Jörn Fischer - j.fischer@hs-mannheim.de - Raum 113a - Tel. (0621)292-6767<br />
Reinforcement Learning<br />
Modell basierte Verbesserungen<br />
Priorized Sweeping (Moore & Atkeson, 1993)<br />
●<br />
Funktioniert wie dyna nur statt k-mal Q-update mit zufälligen State-Action Paaren:<br />
●<br />
Q- odert V-Value des letzten Zustands wird gespeichert und die Differenz des<br />
letzten zum bisherigen Q/V wird als Priorität für das Update benutzt<br />
●<br />
Dass bedeutet, dass gerade da wo die Differenz beim Update groß ist, dort wird das<br />
nächste mal eher ein Update gemacht.