230 likes | 478 Views
30.11.2005. Jordan-Netze und Elman-Netze. 2. Inhalt. 1. Zeitreihenprognose1.1. Begriffsklrung1.2. Mglichkeiten2. Jordan-Netz2.1. Architektur2.2. Eigenschaften2.3. Funktionsweise3. Elman-Netz3.1. Architektur3.2. Eigenschaften3.3. Funktionsweise4. Lernverfahren5. Bei
E N D
1. Jordan-Netze und Elman-Netze 30. November 2005
2. 30.11.2005 Jordan-Netze und Elman-Netze 2 Inhalt 1. Zeitreihenprognose
1.1. Begriffsklärung
1.2. Möglichkeiten
2. Jordan-Netz
2.1. Architektur
2.2. Eigenschaften
2.3. Funktionsweise
3. Elman-Netz
3.1. Architektur
3.2. Eigenschaften
3.3. Funktionsweise
4. Lernverfahren
5. Beispiel XOR-Problem
3. 30.11.2005 Jordan-Netze und Elman-Netze 3 1. Zeitreihenprognose 1.1. Begriffsklärung (Zeitreihe)
Musterfolge, bei der die Reihenfolge der Muster von der Zeit beeinflusst wird
Muster kann nicht mehr isoliert betrachtet werden, sondern im zeitlichen Kontext mit anderen Mustern (wichtig ist die Position im gesamten Musterkontext)
Ausgabe des Netzes hängt nicht nur von der aktuellen Eingabe ab, sondern auch von vorangegangenen (bzw. nachfolgenden) Mustern
z.B. wirtschaftliche Kenndaten (Aktienmarkt), Kontrollsignale (Fahrzeugsteuerung), …
4. 30.11.2005 Jordan-Netze und Elman-Netze 4 Möglichkeiten Es gibt 2 Ansätze zur Repräsentation der Zeit
Zeitfenster
Partiell rekurrente Netze
Es können auch beide kombiniert werden
5. 30.11.2005 Jordan-Netze und Elman-Netze 5 Möglichkeiten Zeitfenster
Eingabe einer Teilfolge von n Mustern (statt des einzelnen Musters)
Somit Zugriff auf ein Teilfenster der Länge n
Für jedes neue Muster wird das Teilfenster um eine Position nach hinten verschoben
Dieses „Sliding window“ erlaubt Verwendung einfacher feedforward-Netze (Training mit Backpropagation)
Nachteile: Grösse des Eingabefensters durch Netztopologie definiert / nur relative Position eines Musters im Eingabefenster relevant -> absolute Postion bleibt unberücksichtigt
6. 30.11.2005 Jordan-Netze und Elman-Netze 6 Möglichkeiten Partiell rekurrente Netze
Beispiel: Vorhersage des nächsten Wertes eines Kurvenverlaufs
7. 30.11.2005 Jordan-Netze und Elman-Netze 7 Möglichkeiten Architektur ermöglicht, dass die zeitliche Reihenfolge der Eingabedaten Einfluss auf das Ergebnis hat
Informationen aus dem Verarbeitungsschritt werden in den Verarbeitungsschritt übernommen
d.h., die Zeit wird im neuronalen Netz repräsentiert
Abgeleitet aus feed-forward-Netzen -> trainierbar durch modifizierte Lernverfahren der feed-forward-Netze
8. 30.11.2005 Jordan-Netze und Elman-Netze 8 Jordan-Netz Architektur
9. 30.11.2005 Jordan-Netze und Elman-Netze 9 Jordan-Netz Eigenschaften
Feedforward Netze mit Kontextzellen, um den Ausgabezustand zu speichern
Eingabezellen und Kontextzellen liefern Eingabe an den hidden Layer, dessen Ausgabe an die Ausgabezellen weiterpropagiert wird
Ausgabewerte werden nach außen weitergegeben und dienen weiterhin, über 1:1 Rückkopplungsverbindungen mit festen Gewichten als Input an Kontextzellen
Kontextzellen besitzen direkte Rückkopplungen mit Stärke , nicht trainierbar, Aktivierungsfunktion: Identität
Anzahl der Kontextzellen = Anzahl der Ausgabezellen
Nur Verbindungen zur verdeckten Schicht und zur Ausgabeschicht sind trainierbar
10. 30.11.2005 Jordan-Netze und Elman-Netze 10 Jordan-Netz Funktionsweise
Ausgabe des Netzes zum Zeitpunkt t: O(t)
Zeitabhängiger interner Zustand: Vektor S(t)
Externe Eingabe zum Zeitpunkt t: I(t)
Ausgabefunktion F
Übergangsfunktion G
11. 30.11.2005 Jordan-Netze und Elman-Netze 11 Jordan-Netz Funktionsweise
Die Aktivierungsfunktion der Zustandszellen ist die identische Abbildung. Ausgehend von einem Startzustand ergibt sich dann für den Zustandsvektor S zur Zeit t:
12. 30.11.2005 Jordan-Netze und Elman-Netze 12 Jordan-Netz Funktionsweise
Mit den Vereinfachungen, dass der Initialkontext der Nullvektor ist und die Rückkopplungsverbindungen von der Ausgabe zu den Kontextzellen alle den Wert besitzen, reduziert sich die Gleichung zu
Diese Übergangsfunktion ist eine gewichtete Summe aller bisherigen Ausgaben
13. 30.11.2005 Jordan-Netze und Elman-Netze 13 Jordan-Netz Funktionsweise
steuert das Erinnerungsvermögen des Netzes
Wert liegt im Bereich [0,1]
Kleiner Wert: weiter zurückliegende Zustände werden nur noch minimal berücksichtigt, die letzten dagegen relativ stark (Netzwerk vergisst schnell, reagiert aber flexibel auf neuere Änderungen)
Wert nahe 1: Einfluss älterer Ausgaben wichtiger
Extremfall Wert=1: Aufsummierung aller bisherigen Ausgaben
14. 30.11.2005 Jordan-Netze und Elman-Netze 14 Jordan-Netz Nachteile:
Oft wird kleiner Wert für benötigt und großer Wert für nahe 1.0 erwünscht
Kontextzellen können nur Ausgaben speichern, nicht internen Zustand der verdeckten Schicht
15. 30.11.2005 Jordan-Netze und Elman-Netze 15 Elman-Netz Architektur
16. 30.11.2005 Jordan-Netze und Elman-Netze 16 Elman-Netz Eigenschaften
Feedforward Netze mit Kontextzellen, um den Zustand der verdeckten Zellen zu speichern
Modifikation der Jordan-Netze
Rückkopplung aus der verdeckten Schicht keine direkte Rückkopplung der Kontextzellen
Anzahl der Kontextzellen = Anzahl der verdeckten Zellen
Rückkopplungsverbindung mit festem Gewicht 1
Aktivierungsfunktion: Identität
Kontextzellen enthalten letzten Zustand der verdeckten Schicht, erlaubt zeitlichen Bezug
17. 30.11.2005 Jordan-Netze und Elman-Netze 17 Funktionsweise
Aktivierungen der Kontextzellen auf definierten Wert setzen
Nach Eingabe des 1.Musters werden verdeckte Zellen von Eingabe –und Kontextzellen aktiviert
Neuer Zustand Kontextzellen=Kopie der Ausgabe der verdeckten Zellen (Identität)
Verdeckte Zellen geben Ausgabe an Ausgabezellen weiter (Ausgabe nach aussen)
Nächstes Muster: Kontextzellen enthalten nun die Aktivierungen der verdeckten Zellen des vorherigen Musters -> So kann ein zeitlicher Bezug zu früheren Mustern hergestellt werden
Aufgabe der verdeckten Zellen: externe Eingabe und gespeicherter interner Zustand auf gewünschte Ausgabe abbilden Elman-Netz
18. 30.11.2005 Jordan-Netze und Elman-Netze 18 Elman-Netz Funktionsweise
Ausbildung einer internen Repräsentation in den verdeckten Zellen durch Training, die die zeitlichen Eigenschaften der Eingabesequenz in geeigneter Weise wiederspiegelt
-> Die Zeit ist in den internen Zuständen der verdeckten Zellen kodiert
Vorteil gegenüber Jordan-Netzen: Eignung des Netzes ist nicht direkt von der zu erzeugenden Ausgabesequenz abhängig
Erweiterbar auf hierarchische Elman-Netze: mehrere verdeckte Schichten, direkte Rückkopplungen -> unterschiedliches Speicherverhalten durch Wahl unterschiedlicher Parameter
19. 30.11.2005 Jordan-Netze und Elman-Netze 19 Lernverfahren Partiell rekurrente Netze können mit einer leicht abgewandelten Form des Backpropagation-Lernverfahrens trainiert werden
Man lässt alle rekurrenten Verbindungen weg und erhält so ein reines Feedforward-Netzwerk, bei dem die Kontextzellen zusätzliche Eingabezellen sind
Das funktioniert, da der Zustandsvektor der Kontextzellen durch eine feste Übergangsfunktion definiert ist (feste Gewichte, nicht veränderbar)
20. 30.11.2005 Jordan-Netze und Elman-Netze 20 Lernverfahren Backpropagation-Algorithmus zum Training partiell rekurrenter Netze
1. Initialisierung der Kontextzellen
2. Für jedes Trainingsmuster wird folgendes durchgeführt
Anlegen des Eingabemusters und Vorwärtspropagierung bis zur Ausgabe (ohne Beachtung der rekurrenten Verbindungen)
Vergleich der tatsächlichen Ausgabe mit der gewünschten und Berechnung des Fehlersignals für jede Ausgabezelle
Rückwärtspropagierung der Fehlersignale von den Ausgabezellen bis zu den Eingabezellen
Berechnung der Gewichtsänderungen mit Hilfe der Fehlersignale
21. 30.11.2005 Jordan-Netze und Elman-Netze 21 Lernverfahren
Anpassung der Gewichte
Berechnung des Folgezustands der Kontextzellen gemäß ihrer Eingangsverbindungen. Dies ist der einzige Schritt bei dem die rekurrenten Verbindungen beachtet werden
22. 30.11.2005 Jordan-Netze und Elman-Netze 22 Beispiel XOR-Problem Eingabe: Blocke von 3 binären Werten
Die ersten beiden Werte sind zufällig
Der dritte Wert ist die XOR-Verknüpfung der ersten beiden
Aufgabe des Netzes: Voraussage des nächsten zu erwartenden Wertes
Dies kann es für die zweite zufällige Eingabe erreichen, indem es zusammen mit der Eingabe des ersten Zeitschrittes die Eingabe des dritten Zeitschrittes berechnet. Um dieses Verhalten zu erreichen, wird die Eingabe um einen Zeitschritt nach vorn versetzt und als Zielwert (durch Backpropagation) eingelernt
23. 30.11.2005 Jordan-Netze und Elman-Netze 23 Beispiel XOR-Problem Es zeigt sich, dass der Erkennungsfehler bei dem jeweiligen zweiten Wert abnimmt
Das Netz erlernt also die XOR-Verknüpfung und kann dort wo es möglich ist den Wert berechnen
Mit Hilfe der vorausgegangenen Eingaben kann das Netz also die nächste Eingabe vorrausbestimmen
24. 30.11.2005 Jordan-Netze und Elman-Netze 24 Ende Das wars ;-)
Vielen Dank für die Aufmerksamkeit