BFGS 업데이트에 대한 직관적 동기


15

나는 수치 분석 설문 수업을 가르치고 있으며 최적화에 대한 배경 / 직관이 제한된 학생들을 위해 BFGS 방법에 대한 동기를 찾고 있습니다!

모든 것이 수렴한다는 것을 증명할 시간은 없지만 BFGS Hessian 업데이트가 나타나는 이유에 대해 합리적인 동기를 부여하려고합니다. 유사하게, Broyden의 근본 찾기 방법 (내 글은 여기에 있습니다 )은 야곱 인의 현재 근사치가 구 자코비 안과의 차이 제이케이제이케이1프로2 를 최소화하도록 요구함으로써 동기를 부여 할 수 있습니다. 최신 종을 고려합니다 : .제이케이(엑스케이엑스케이1)=에프(엑스케이)에프(엑스케이1)

BFGS 업데이트의 파생은 훨씬 더 복잡하고 어둡게 보입니다! 특히, 나는 업데이트가 순위 2이거나 특정 형태를 취해야 한다고 선험적 으로 가정하고 싶지 않습니다 . Broyden과 같은 BFGS Hessian 업데이트에 대한 짧은 변형의 동기가 있습니까?


4
임의의 업데이트를 허용한다면 Newton의 방법으로 전체 Hessian을 사용할 수 있습니다. 하위 순위 업데이트의 주요 계산 이점 중 하나는 대략적인 Hessian의 인수 분해를 매우 빠르게 업데이트 할 수 있다는 것입니다.
Brian Borchers

답변:


12

볼록한 비용 함수를 고려할 때 BFGS의 도출은보다 직관적입니다.

그러나 일부 배경 정보가 필요합니다. 볼록 기능 을 최소화하려고합니다 . 근사값 x k 가 있다고 가정하십시오 . 그리고, 하나의 최소 근사 F 버림 테일러 전개의 최소 의해 F ( X K + P ) F ( X (K) ) + F ( X (K) ) T P +를

에프(엑스)엑스아르 자형.
엑스케이에프 즉, 하나 개 보인다 P 되도록 ( * ) 최소화 및 집합 X K + 1 : = X K + P . ( * ) - " p 와 관련하여"의 기울기를 계산하고이를 0으로 설정하면 관계 H ( x k ) [ x k + 1 - x k ] = f ( x k + 1 ) -
에프(엑스케이+)에프(엑스케이)+에프(엑스케이)+12H(엑스케이).()
()엑스케이+1: =엑스케이+() 여기서, H는 또는 헤 시안 행렬 '그라디언트 코비안'이다.
H(엑스케이)[엑스케이+1엑스케이]=에프(엑스케이+1)에프(엑스케이),
H

Hessian의 계산과 반전이 비싸기 때문에 ...


... 짧은 대답

(Broyden의 업데이트 참조) BFGS 업데이트 은 스마트하게 선택된 가중치 Frobenius 규범에 따라 " H - 1 k - H - 1 " W 를 최소화 합니다.H케이+11

H케이1H1
  1. H[엑스케이+1엑스케이]=에프(엑스케이+1)에프(엑스케이)
  2. H=H

H: =1/2H1/2에프 : =01H(엑스케이+τ)τα케이=1

주요 포인트는 다음과 같습니다.

  • 이차 근사에 대한 솔루션으로 실제 비용에 대한 솔루션을 근사하려고합니다.
  • 헤 시안의 계산 및 그 역은 비싸다. 간단한 업데이트를 선호합니다.
  • 업데이트는 실제 Hessian이 아닌 역수에 대해 최적으로 선택 됩니다.
  • 그것이 순위 2 업데이트라는 것은 Frobenius 규범에서 가중치의 특정 선택의 결과입니다.



예, 맞습니다 글쎄요 한 가지 대답은 계산하기 쉽고 잘 작동하는 업데이트 공식을 제공한다는 것입니다. 역사적으로이 업데이트에 대한 접근 방식 (업데이트의 차이를 최소화)은 Shanno의 것이 었습니다. 무게의 특정 선택이 Broyden과 Fletcher의 공식으로 이어지는 것을 발견 한 것은 심판 (골드 파브)이었습니다. BFGS 개발자의 직관에 대해서는 BFGS 시컨트 방법의 역사 개발을 참조하십시오 . 그러나 세 가지 접근법 모두 매우 추상적입니다.
Jan

1
흥미 롭습니다.지도 해 주셔서 감사합니다! (일부 수학 실수 도움이 필요 그와) 나의 현재의 작성자는 여기에 있습니다 : graphics.stanford.edu/courses/cs205a-13-fall/assets/notes/... (당신이 당신의 도움에 대한 신용을 좋아하면 내가 그것을 제공하는 행복 해요 -적절한 연락처 정보를 이메일로 보내 주시기 바랍니다)
Justin Solomon

H(엑스케이)[엑스케이+1엑스케이]=에프(엑스케이+1)에프(엑스케이)
H(엑스케이+1)[엑스케이+1엑스케이]=에프(엑스케이+1)에프(엑스케이)?
H케이+1에스케이=와이케이에스케이=엑스케이+1엑스케이,와이케이=에프케이+1에프케이
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.