Động lực trực quan để cập nhật BFGS


15

Tôi đang dạy một lớp khảo sát phân tích số và đang tìm kiếm động lực cho phương pháp BFGS cho sinh viên với nền tảng / trực giác hạn chế trong tối ưu hóa!

J k ( x k - x k - 1 ) = f ( x k ) - f ( x k - 1 )Jk-Jk-1Fro2Jk(xk-xk-1)= =f(xk)-f(xk-1)

Nguồn gốc của các bản cập nhật BFGS dường như liên quan nhiều hơn và âm u hơn! Đặc biệt, tôi muốn không để thừa nhận một tiên nghiệm rằng bản cập nhật nên rank-2 hoặc tham gia một hình thức cụ thể. Có một động lực tìm kiếm đa dạng ngắn cho bản cập nhật BFGS Hessian giống như động lực cho Broyden?


4
Nếu bạn cho phép cập nhật tùy ý, thì bạn chỉ có thể sử dụng Hessian đầy đủ trong phương pháp của Newton. Một lợi thế tính toán chính của bản cập nhật thứ hạng thấp là nó cho phép bạn cập nhật hệ số của Hessian gần đúng rất nhanh.
Brian Borchers

Câu trả lời:


12

Đạo hàm của BFGS trực quan hơn khi người ta xem xét (nghiêm túc) các hàm chi phí lồi:

Tuy nhiên, một số thông tin cơ bản là cần thiết: Giả sử, người ta muốn giảm thiểu hàm lồi

f(x)minxRn.
Nói rằng có một giải pháp gần đúng xk . Sau đó, một giá trị xấp xỉ tối thiểu của f bằng mức tối thiểu của phần mở rộng Taylor bị cắt cụt
f(xk+p)f(xk)+f(xk)Tp+12pTH(xk)p.(*)
Nghĩa là, người ta tìm p sao cho (*) là tối thiểu và đặt xk+1: =xk+p . Việc tính toán độ dốc của (*) - "tương ứng với p " - và đặt nó thành 0 sẽ tạo ra mối quan hệ
H(xk)[xk+1-xk]= =f(xk+1)-f(xk),
trong đó H là 'Jacobian của gradient' hoặc ma trận Hessian.

Vì tính toán và đảo ngược của Hessian là đắt đỏ ...


... một câu trả lời ngắn

(xem bản cập nhật của Broyden) có thể là bản cập nhật BFGS Hk+1-1 giảm thiểu

Hk-1-H-1W
trong một tiêu chuẩn Frobenius có trọng số được lựa chọn thông minh, tùy thuộc vào
  1. H[xk+1-xk]= =f(xk+1)-f(xk) - đây là những gì người ta dành cho - và
  2. HT= =H , vì Hessian đối xứng.

Sau đó, lựa chọn trọng số trong là nghịch đảo của Hessian trung bình , cf ở đây cho câu lệnh nhưng không có bằng chứng, đưa ra công thức cập nhật BFGS (với ).H W : = W 1 / 2 H W 1 / 2F G : = 1 0 H ( x k + τ p ) d τ alpha k = 1WHW: =W1/2HW1/2F G: =01H(xk+τp)dταk= =1

Những điểm chính là:

  • Người ta cố gắng tính gần đúng giải pháp cho chi phí thực tế bằng giải pháp cho xấp xỉ bậc hai
  • Tính toán của Hessian, và nghịch đảo của nó, là đắt tiền. Một người thích cập nhật đơn giản.
  • Bản cập nhật được chọn tối ưu cho nghịch đảo thay vì Hessian thực tế.
  • Đó là bản cập nhật hạng 2 là kết quả của sự lựa chọn đặc biệt về các trọng số trong định mức Frobenius.

Một câu trả lời còn , nên bao gồm làm thế nào để chọn các trọng, làm thế nào để làm cho công việc này cho các vấn đề nonconvex (nơi một độ cong điều kiện xuất hiện đòi hỏi phải có một tỉ lệ của sự chỉ đạo tìm kiếm ), và làm thế nào để lấy được thực tế công thức cho bản cập nhật. Một tài liệu tham khảo ở đây (bằng tiếng Đức).p


Cảm ơn rất nhiều, điều này thật tuyệt vời (và ít nhiều là những gì tôi mong đợi dựa trên cuộc thảo luận trong Nocedal & Wright). Câu hỏi còn lại tôi có là: tại sao chúng ta chọn và định mức như chúng ta làm? Tôi hiểu rằng nó phải làm với các đơn vị, nhưng có rất nhiều sự lựa chọn tiềm năng của và các chỉ tiêu thực hiện điều này. WWW
Justin Solomon

Vâng đúng. Chà, tôi không biết nữa. Một câu trả lời là nó cung cấp công thức cập nhật đơn giản để tính toán và hoạt động tốt. Trong lịch sử, cách tiếp cận cập nhật này - giảm thiểu sự khác biệt trong bản cập nhật - là cách tiếp cận của Shanno. Đó là một trọng tài (Goldfarb) đã nhận thấy rằng một sự lựa chọn đặc biệt về trọng lượng dẫn đến công thức của Broyden và Fletcher. Xem luận án tiến sĩ này Phát triển lịch sử của phương pháp bí mật BFGS ... để biết trực giác của các nhà phát triển BFGS. Tuy nhiên, cả 3 cách tiếp cận đều khá trừu tượng.
Jan

1
Thật thú vị, cảm ơn đã hướng dẫn! Bài viết hiện tại của tôi (với một số lỗi toán học cần trợ giúp) có ở đây: Graphics.stanford.edu/cifts/cs205a-13-fall/assets/notes/ ((nếu bạn muốn ghi nhận sự giúp đỡ của bạn, tôi rất vui lòng cung cấp nó - vui lòng gửi email cho tôi với thông tin liên hệ phù hợp)
Justin Solomon

@jan Tại sao phương trình của bạn chứ không phải Không phải là điều kiện bảo mật được đưa ra bởi , trong đó . Cảm ơn!
H(xk)[xk+1-xk]= =f(xk+1)-f(xk)
H(xk+1)[xk+1-xk]= =f(xk+1)-f(xk)?
Hk+1Sk= =ykSk= =xk+1-xk,yk= =fk+1-fk
Jeff Faraci
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.