nntp2http.com
Posting
Suche
Optionen
Hilfe & Kontakt

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
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