該筆記初衷為期末復習所用,參考出處均已注明,涉及個人理解部分如果有不對之處,還請批評指正,俺會虛心接受滴!
1.應用范圍
目標函式的無約束績效問題,
2.相關定義
定義1 設Q為n階實對稱正定矩陣,若n維方向x和y滿足,則稱方向x和y是Q-共軛的,
3.原理
將函式改寫成如下形式:

如果每個子函式都能取得最小值,那么f(x)也能取得最小值,假設梯度下降一共需要n階(也就是迭代次數啦),每個
對應一個階梯,每階的方向和步長都使
取得最小值,
我們當然希望階梯數n越少越好,那么如何找到所需最少的階梯數呢?當階梯數最少時,每階的方向和步長都不同,且每階都無法由其他的階梯組合而成,也就是說,每次梯度下降的方向必須是線性無關的,梯度下降的次數才會最少,迭代次數才會最少,
我們是有辦法找到一組線性無關的方向向量(即Rn中的一組基{p1,p2,…,pn})的哦!首先在初始點(記為x1)選取負梯度方向為p1(就是x1點的方向啦),然后尋找與p1共軛的方向為p2,再尋找與p1和p2共軛的方向為p3,…,由此經過n次尋找到f(x)的最小值,
也就是說,我們需要找到合適的基{p1,p2,…,pn},從而確定方向、步長的迭代式,滿足 ,i∈{1,2,…,n},
好巧不巧,當?時,選擇方向
,其中
(常數),步長為
(常數),可以滿足上述條件,
當時,就可以使
,i∈{1,2,…,n}成立了,
已知 ,那么
總是成立,i∈{1,2,…,n},j∈{1,2,…,i}(簡單來說,i表示當前迭代次數,j表示i次之前的每個迭代次數,顯然i≠j),(正是這個獨特的導數和梯度條件,使得共軛梯度法的使用范圍有限制!)整理一下就是
,這非常容易湊成共軛關系:

這里僅僅得到了基需要滿足的條件(即它們必須具有關于Q共軛的性質),然而,在迭代程序中,程式需要的是pi+1與pi的關系式,以及λi+1與λi的關系式,所以要根據基的共軛特性,找出方向和步長的迭代式,
根據恒成立等式,嘗試構造出一類方向迭代式:
,顯然當
時,
=0總是成立,這樣就確定下方向迭代式了,
通過恒成立等式可以確定步長迭代式,顯然當
時,下式成立:

其中可由
推出,
本來這里就結束了,但是大聰明們發現方向中的
是可以簡化的,于是將其簡化為

這樣方向就可以簡單寫為
了,嘻嘻,
4.步驟
首先,找到初始點 ,當
梯度不為零時,根據步長和方向的規則

逐次迭代出下一個點 ,(若某點梯度為零,那找到極小點咯,就不需要繼續迭代咯!)
2021.09.25
注:文中的“顯然”只是我猜想大聰明們在構造它們的時候覺得“顯然”,我個人覺得一點都不“顯然”!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/302956.html
標籤:AI
上一篇:HCNP Routing&Switching之路由控制-策略路由
下一篇:【Halcon影像】形狀模板匹配
