Intuicyjna motywacja do aktualizacji BFGS


15

Prowadzę zajęcia z analizy numerycznej i szukam motywacji do metody BFGS dla studentów z ograniczonym zapleczem / intuicją w optymalizacji!

Chociaż nie mam czasu, aby rygorystycznie udowodnić, że wszystko się zbiega, staram się uzasadnić, dlaczego może pojawić się aktualizacja Hesji BFGS. Analogicznie, metodę znalezienia root Broydena (mój opis jest tutaj ) można zmotywować, prosząc, aby twoje obecne przybliżenie jakobianów minimalizowało różnicę ze starym jakobianem z zastrzeżeniem, że bierze ono pod uwagę najnowszą secant : J_k (\ vec x_k- \ vec x_ {k-1}) = f (\ vec x_k) -f (\ vec x_ {k-1 }) .JkJk1Fro2Jk(xkxk1)=f(xk)f(xk1)

Pochodne aktualizacji BFGS wydają się o wiele bardziej zaangażowane i mętne! W szczególności nie chciałbym zakładać z góry, że aktualizacja powinna mieć rangę 2 lub przyjąć określoną formę. Czy istnieje krótka motywacja wyglądająca na wariację dla aktualizacji BFGS w Hesji, jak ta dla Broydena?


4
Jeśli zezwolisz na dowolną aktualizację, możesz po prostu użyć pełnego Hesji w metodzie Newtona. Jedną z głównych zalet obliczeniowych aktualizacji niskiej rangi jest to, że pozwala ona bardzo szybko zaktualizować faktoryzację przybliżonego Hesji.
Brian Borchers,

Odpowiedzi:


12

Wyprowadzenie BFGS jest bardziej intuicyjne, gdy weźmie się pod uwagę (ściśle) funkcjonały wypukłego kosztu:

Jednak niektóre t informacje niezbędne jest: Załóżmy chce się minimalizować wypukłą funkcjonalny Powiedz, że istnieje przybliżone rozwiązanie . Następnie przybliżamy minimum do minimum obciętego rozszerzenia Taylora Oznacza to, że szuka się takiego, że jest minimalne i ustawia . Obliczenie gradientu - „względem ” - i ustawienie go na zero daje relację H ( x k ) [ x k + 1 - x k ] = f ( x k + 1 ) - f ( x k ) , H

fa(x)minxRn.
f f ( x k + p ) f ( x k ) + f ( x k ) T p + 1xkfa
fa(xk+p)fa(xk)+fa(xk)T.p+12)pT.H.(xk)p.()
p()xk+1: =xk+p()p
H.(xk)[xk+1-xk]=fa(xk+1)-fa(xk),
gdzie jest „jakobianem gradientu” lub macierzą Hesji.H.

Ponieważ obliczenia i inwersja Hesjan są drogie ...


... krótka odpowiedź

(por. aktualizacja Broydena) może być tak, że aktualizacja BFGS minimalizuje w inteligentnie wybranej ważonej normie Frobeniusa, z zastrzeżeniemH.k+1-1

H.k-1-H.-1W.
  1. H.[xk+1-xk]=fa(xk+1)-fa(xk) - po to jest jeden - i
  2. H.T.=H. , ponieważ Hesjan jest symetryczny.

Następnie wybór masy w jako odwrotność uśrednionego Heskiego , por. tutaj dla instrukcji, ale bez dowodu, podaje formułę aktualizacji BFGS (z ).W.H.W.: =W.1/2)H.W.1/2)fa sol: =01H.(xk+τp)reταk=1

Główne punkty to:

  • Próbuje się zbliżyć rozwiązanie do faktycznych kosztów przez rozwiązanie dla kwadratowego przybliżenia
  • Obliczenia Hesji i ich odwrotności są drogie. Preferuje się proste aktualizacje.
  • Aktualizacja jest wybierana optymalnie dla odwrotnego, a nie dla samego Hesji.
  • To, że jest to aktualizacja rangi 2, jest konsekwencją konkretnego wyboru wag w normie Frobeniusa.

Już odpowiedź powinna zawierać jak wybrać wagi, jak do tej pracy za problemy nonconvex (gdzie pojawia się krzywizny stan, który wymaga skalowania kierunku szukaj ), i jak czerpać rzeczywistego wzoru na aktualizację. Referencje znajdują się tutaj (w języku niemieckim).p


Dzięki bardzo, to jest świetne (i mniej więcej to, czego się spodziewałem na podstawie dyskusji w Nocedal i Wright). Pozostaje mi jedno pytanie: dlaczego wybieramy i normę tak jak my? Rozumiem, że ma to związek z jednostkami, ale istnieje duży potencjalny wybór i norm, które to robią. W.W.
Justin Solomon

Tak, prawda. Nie wiem. Jedna odpowiedź jest taka, że ​​daje prostą do obliczenia i dobrze działającą formułę aktualizacji. Historycznie takie podejście do aktualizacji - minimalizujące różnicę w aktualizacji - było takie, jak Shanno. To był sędzia (Goldfarb), który stwierdził, że określony wybór wag prowadzi do formuły Broydena i Fletchera. Zobacz tę pracę doktorską Historyczny rozwój metody siecznej BFGS ... dla intuicji twórców BFGS. Jednak wszystkie 3 podejścia są dość abstrakcyjne.
stycznia 13

1
Ciekawe, dzięki za wskazówki! Mój obecny opis (z kilkoma błędami matematycznymi, które wymagają pomocy) jest tutaj: graphics.stanford.edu/courses/cs205a-13-fall/assets/notes/… (jeśli chciałbyś podziękować za twoją pomoc, z przyjemnością ją udzielę - napisz do mnie z odpowiednimi danymi kontaktowymi)
Justin Solomon,

@jan Dlaczego twoje równanie a nie Czy nie jest to warunek sieczny podany przez , gdzie . Dzięki!
H.(xk)[xk+1-xk]=fa(xk+1)-fa(xk)
H.(xk+1)[xk+1-xk]=fa(xk+1)-fa(xk)?
H.k+1sk=yksk=xk+1-xk,yk=fak+1-fak
Jeff Faraci
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.