conjugate gradient Schrittweitenadaption
Von: Philipp Kraus (philipp.kraus@flashpixx.de) [Profil]
Datum: 07.11.2009 17:12
Message-ID: <hd469v$ntr$1@online.de>
Newsgroup: de.sci.mathematik
Datum: 07.11.2009 17:12
Message-ID: <hd469v$ntr$1@online.de>
Newsgroup: de.sci.mathematik
Hallo, ich benutze einen stochastischen Gradientenabstieg mit Schrittweitenadaption um eine Funktion auf Messdaten zu fitten. Generell funktioniert das auch so ganz gut, nur habe ich bei einigen Datensätzen sätzen das Problem, dass der Feher zuerst in einem lokalen Optimium konvergiert und dann plötzlich aus dem Optimum wieder rausspringt und gegen "unendlich" läuft. Das Problem sind definitiv die Anpassung der Schrittweiten. Ich vergrößere den Schritt, falls fich von der n-ten nur (n+1) Iteration kaum etwas verändert hat, bzw verringere sie, falls sich das Vorzeichen des Gradienten ändert. Das Problem scheint hier darin zu liegen, dass ich in meiner Fehlerfläche oszilliere. Wenn er mir eine annähernd gutes lokales Optimum findet, reicht mir das, das Optimum, das er findet, bevor er hinausspringt, ist völlig in Ordnung. Gibt es eine gute Technik um sinnvolle Schrittweiten und Schrittweitenadaptionen zu ermitteln, z.B. während des iterativen Fittings? Das Problem tritt nicht generell, sondern nur bei einzelnen Datensätzen auf. Unter http://flashpixx.de/cg.jpg ist ein Bild zu sehen. Die Fehlerfunktion für I,B ist genau wie ich es haben will, für sigma,y0 und x0 sieht man, dass sie bis zu einem gewissen Grad konvergiert und dann herausspringt. Die erste Reihe sind die zu fittenden Werte, die zweite Reihe gibt den Wert pro Iteration des Gradienten an und die dritte Reihe die Schrittweitenveränderung. Danke für die Hilfe[ Auf dieses Posting antworten ]
Antworten
- Christian Gollwitzer (09.11.2009 13:29)
- Philipp (09.11.2009 18:32)
- Peter Vogel (10.11.2009 05:36)
- Philipp (10.11.2009 11:16)
- Peter Vogel (10.11.2009 22:30)
- Christian Gollwitzer (11.11.2009 11:09)
- Philipp (11.11.2009 13:37)
