Hallo zusammen
In einem Netz, das ich einem 'working paper' nachgebaut habe und jetzt mit eigenen Daten füttere, erhalte ich nach einer bestimmten Anzahl von Trainingsdurchläufen (im Bereich 4'000. - 6'000. Durchlauf) ein seltsames Verhalten. Der Ist-Output verändert sich zu einer annähernd geraden Linie. Aus dieser Form findet das Netz nicht mehr hinaus.
Ich lege das Netz und die Trainingsdaten bei, ebenso ein Screenshot.
Kann mir jemand helfen? Liegt es an der Rekursion?
Danke für Eure Hilfe.
Gruss
Jürg
Zeitreihenprognose - seltsames Verhalten
Re: Zeitreihenprognose - seltsames Verhalten
Hallo Jürg,
das liegt wahrscheinlich tatsächlich an der Rekursion, ja. Wenn man Netze massiv übertrainiert, dann können einzelne Links eskalieren und das passiert besonders gerne in rekursiven Netzen.
Was manchmal hilft:
Die rückwärtsgerichteten Links (in MemBrain gestrichelt dargestellt) auf den Wert (Gewicht) 1 setzen und sperren (Lock-Eigenschaft).
Ebenso bei den Neuronen, zu denen diese Links führen: Activation Function auf 'IDENTICAL', Activation Threshold auf '0' setzen und sperren (Eigenschaft 'Lock' aktivieren).
Viele Grüße und viel Erfolg,
das liegt wahrscheinlich tatsächlich an der Rekursion, ja. Wenn man Netze massiv übertrainiert, dann können einzelne Links eskalieren und das passiert besonders gerne in rekursiven Netzen.
Was manchmal hilft:
Die rückwärtsgerichteten Links (in MemBrain gestrichelt dargestellt) auf den Wert (Gewicht) 1 setzen und sperren (Lock-Eigenschaft).
Ebenso bei den Neuronen, zu denen diese Links führen: Activation Function auf 'IDENTICAL', Activation Threshold auf '0' setzen und sperren (Eigenschaft 'Lock' aktivieren).
Viele Grüße und viel Erfolg,
Thomas Jetter
Re: Zeitreihenprognose - seltsames Verhalten
Hallo Thomas
Danke für Deine rasche Antwort. Ich werde die Anpassungen nächstens austesten.
Eine Zusatzfrage: Kann der durch das Netz mit dem Test- bzw. Trainingsinput erzeugte Output exportiert werden? Nur so kann ich doch den Erfolg berechnen?
Danke für Deine Antwort.
Gruss
Jürg
Danke für Deine rasche Antwort. Ich werde die Anpassungen nächstens austesten.
Eine Zusatzfrage: Kann der durch das Netz mit dem Test- bzw. Trainingsinput erzeugte Output exportiert werden? Nur so kann ich doch den Erfolg berechnen?
Danke für Deine Antwort.
Gruss
Jürg
Re: Zeitreihenprognose - seltsames Verhalten
Hallo Jürg,
Ich habe Dir ein solches angehängt, es ist das selbe, das auch in der MemBrain Hilfe unter 'Validating Your Net' agbedruckt ist, erweitert mit der Funktion, das Netz vor der Berechnung per 'ResetNet' in einen vordefinierten Zustand zu bringen. Das ist bei zeitabhängigen Netzen notwendig, da der Output ja nicht alleine vom Input sondern auch vom inneren Zustand des Netzes abhängt.
Im Sktipt einfach oben die entsprechenden Dateinamen eintragen. Das Netz und die Validierungsdatei müssen im selben Verzeichnis abgelegt werden wie das Skript. Dann in MemBrain über 'Script' - 'ExecuteScript...' das Skript ausführen, es erzeugt dann die Ergebnisdatei, die Du mit z.B. Excel öffnen kannst (CSV Datei).
Das Skript basiert momentan auf Roh-CSV Dateien, es lässt sich aber natürlich auch auf MemBrain Sectioned CSV Dateien oder Lesson files (.mbl Dateien) anpassen. Dazu musst Du lediglich die Aufrufe 'ImportLessonRaw' durch 'ImportLesson' (für Sectioned CSV) bzw. 'LoadLesson' (für mbl-Dateien) ersetzen.
Grüße,
Ja, das geht natürlich. Das geht manuell durch ein paar Klicks, bequemer und weniger fehleranfällig funktioniert es aber mit einem kleinen Skript.Admin wrote: Kann der durch das Netz mit dem Test- bzw. Trainingsinput erzeugte Output exportiert werden?
Ich habe Dir ein solches angehängt, es ist das selbe, das auch in der MemBrain Hilfe unter 'Validating Your Net' agbedruckt ist, erweitert mit der Funktion, das Netz vor der Berechnung per 'ResetNet' in einen vordefinierten Zustand zu bringen. Das ist bei zeitabhängigen Netzen notwendig, da der Output ja nicht alleine vom Input sondern auch vom inneren Zustand des Netzes abhängt.
Im Sktipt einfach oben die entsprechenden Dateinamen eintragen. Das Netz und die Validierungsdatei müssen im selben Verzeichnis abgelegt werden wie das Skript. Dann in MemBrain über 'Script' - 'ExecuteScript...' das Skript ausführen, es erzeugt dann die Ergebnisdatei, die Du mit z.B. Excel öffnen kannst (CSV Datei).
Das Skript basiert momentan auf Roh-CSV Dateien, es lässt sich aber natürlich auch auf MemBrain Sectioned CSV Dateien oder Lesson files (.mbl Dateien) anpassen. Dazu musst Du lediglich die Aufrufe 'ImportLessonRaw' durch 'ImportLesson' (für Sectioned CSV) bzw. 'LoadLesson' (für mbl-Dateien) ersetzen.
Grüße,
- Attachments
-
- ValidationScript.as
- Script zum Aufzeichnen des Netz-Outputs auf Basis einer Lesson
- (2.62 KiB) Downloaded 638 times
Thomas Jetter