Wrażliwość BFGS na początkowe przybliżenia Hesji


9

Próbuję zaimplementować metodę Broyden-Fletcher-Goldfarb-Shanno, aby znaleźć minimum funkcji. Potrzebuję dwóch wstępnych domysłówx1 I x0 oraz wstępne przybliżenie macierzy Hesji B0. Jedyne wymagania, które znajdujęB0 jest to, że jeśli Hesjan jest symetryczny, pozytywnie określony, to samo powinno B0. Patrząc na wikipedię, widzę, że typowe wstępne przybliżenie toB0=I(matryca tożsamości). Czy to zawsze dobry inicjałB0? Czy jest jakiś powód, dla którego mógłbym chcieć wybrać coś innego niżI? Czy inne wybory B, spełniające te same właściwości macierzy, miałyby duży wpływ na zbieżność metody?

Odpowiedzi:


6

Jeśli masz uzasadnione przybliżenie Hesji, lepiej jest użyć go zamiast arbitralnego B0=I.

Edycja: uzasadnienie jest takie, że jeśli zaczniesz blisko rozwiązania x, początkowy wskaźnik konwergencji wynosi (dla dowolnego r>0) r+1-step liniowy za pomocą r+1-stopniowy współczynnik konwergencji wynoszący q=B01f(x)GJeśli to jest przez pewien stopień korekcji macierzy tożsamości. Dlatego próba uczynienia tego małego jest bardzo cennym. (Jest to równoważne z kondycjonowaniem systemu.) Współczynnik zbieżności poprawia się z upływem czasu i ostatecznie zbliża się do zera (zbieżność superliniowa), ale w wielu rzeczywistych problemach (szczególnie wysokowymiarowych) nigdy nie wykonuje się wystarczającej liczby iteracji, aby osiągnąć reżim superlinearny. Zatem początkowa prędkość jest dość ważna.<1rG

Jednym z ważnych przypadków jest rozwiązanie nieliniowych problemów najmniejszych kwadratów (zminimalizuj ), gdzie aproksymacja Gaussa-Newtona początkowego Hesji obliczone bez potrzeby stosowania drugich instrumentów pochodnych. Użycie go sprawia, że ​​metoda BFGS zapewnia niezmiennik afiniczny, tj. Niezmiennik przy liniowych przekształceniach jak metoda Newtona, co jest zwykle bardzo korzystne.F(x)22B0=F(x0)TF(x0)x

Innym ważnym przypadkiem jest rozwiązanie sekwencji powiązanych problemów. Często ponowne uruchomienie solvera z ostatecznym przybliżeniem poprzedniego problemu w Hesji znacznie zmniejsza liczbę potrzebnych iteracji.


Jeśli oczekuje się, że hessian będzie symetryczny dodatnio określony, jakaś symetryczna dodatnia określona macierz nadal będzie prowadzić do zbieżności, ale tempo zbieżności zależy od tego, jak bardzo przypomina Hesję? B0B0
Paweł

Nie, ostatecznie BFGS zapomina o macierzy początkowej, więc zbieżność, ponieważ zawsze ma tę samą kolejność. Ale to oczywiście nie jest interesujące, ponieważ nigdy nie robisz nieskończenie wielu kroków. k
Wolfgang Bangerth,

@Paul: Zobacz moją edycję.
Arnold Neumaier,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.