Empfindlichkeit von BFGS gegenüber anfänglichen hessischen Näherungen

9

Ich versuche, die Broyden-Fletcher-Goldfarb-Shanno-Methode zu implementieren, um das Minimum einer Funktion zu finden. Ich brauche zwei anfängliche Vermutungen & und eine anfängliche hessische Matrixnäherung . Die einzigen Anforderungen, die ich für finde, sind, dass wenn der Hessische symmetrisch positiv definit ist, auch . Wenn ich auf Wikipedia schaue, sehe ich, dass eine typische anfängliche Annäherung (die Identitätsmatrix) ist. Ist das immer eine gute Initiale ? Gibt es einen Grund, warum ich etwas anderes als wählen möchte ? Würden andere Entscheidungen von B, die dieselben Matrixeigenschaften erfüllen, die Konvergenz der Methode stark beeinflussen? x 0 B 0 B 0 B 0 B 0 = I B 0 I.x1x0B0B0B0B0=IB0I

Paul
quelle

Antworten:

6

Wenn Sie eine berechtigte hessische Annäherung haben, ist es besser , es zu verwenden , anstatt die willkürliche .B0=I

Bearbeiten: Das Grundprinzip ist, dass, wenn Sie in der Nähe der Lösung , die anfängliche Konvergenzrate (für jedes ) Schritt linear mit einem Schritt-Konvergenzfaktor vonwenn dies für eine Rang- Korrektur der Identitätsmatrix ist. Daher ist es sehr wertvoll, dies klein zu machen. (Dies entspricht einer Vorkonditionierung des Systems.) Der Konvergenzfaktor verbessert sich mit der Zeit und nähert sich schließlich Null (superlineare Konvergenz), aber bei vielen realen Problemen (insbesondere hochdimensionalen) werden nie genug Iterationen durchgeführt, um das superlineare Regime zu erreichen. Daher ist die Anfangsgeschwindigkeit sehr wichtig.xr>0r+1r+1< 1 r G.q=B01f(x)G<1rG

Ein wichtiger Fall ist die Lösung nichtlinearer Probleme der kleinsten Quadrate (Minimierung von ), wobei die Gauß-Newton-Näherung des anfänglichen Hessischen sein kann berechnet ohne die Notwendigkeit für zweite Ableitungen. Die Verwendung dieser Methode macht die BFGS-Methode affin invariant, dh invariant unter linearen Transformationen von wie die Newton-Methode, was normalerweise sehr vorteilhaft ist. B 0 = F ' ( x 0 ) T F ' ( x 0 ) xF(x)22B0=F(x0)TF(x0)x

Ein weiterer wichtiger Fall ist, wenn Sie eine Folge verwandter Probleme lösen. Durch einen Neustart des Lösers mit der endgültigen hessischen Näherung des vorherigen Problems wird häufig die Anzahl der erforderlichen Iterationen erheblich reduziert.

Arnold Neumaier
quelle
Wenn erwartet wird, dass der Hessische symmetrisch positiv definit ist, führt jede symmetrische positiv definierte Matrix immer noch zur Konvergenz, aber die Konvergenzrate hängt davon ab, wie stark dem Hessischen ähnelt. B 0B0B0
Paul
Nein, schließlich vergisst BFGS die Startmatrix, sodass die Konvergenz als immer dieselbe Reihenfolge hat. Aber das ist natürlich nicht interessant, weil Sie nie unendlich viele Schritte machen. k
Wolfgang Bangerth
@ Paul: Siehe meine Bearbeitung.
Arnold Neumaier