版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
本文鏈接:/miaowei/52925.html最近在看條件隨機場中的優(yōu)化算法。其中就設計到了無約束化的最優(yōu)化方法,也就是牛頓法。在CRF(conditionalrandomfield)中,使用的是L-BFGS法。費了好大的勁把算法的原理及推導算是看明白了,可是到了具體實現(xiàn)上,又碰到問題了,比如在求搜索方向的時候,使用H屮={I- -仇丫閭.)十p収呂?=vjHg+pe應但是程序中如何實現(xiàn)呢?現(xiàn)在轉(zhuǎn)載一篇文章,看過之后,會非常受益。使用導數(shù)的最優(yōu)化算法中,擬牛頓法是目前為止最為行之有效的一種算法,具有收斂速度快、算法穩(wěn)定性強、編寫程序容易等優(yōu)點。在現(xiàn)今的大型計算程序中有著廣泛的應用。本文試圖介紹擬牛頓法的基礎(chǔ)理論和若干進展。牛頓法(NewtonMethod)牛頓法的基本思想是在極小點附近通過對目標函數(shù)做二階Taylor展開,進而找到’;的極小點的估計值[1]。一維情況下,也即令函數(shù)*打為齊(『)=+f際〕(T—跌)+訂"際)(T—It)則其導數(shù)'’滿足了?盟=廣:叫+廣(咖仗一mJ=0因此——⑴將、+作為;極小點的一個進一步的估計值。重復上述過程,可以產(chǎn)生一系列的極小點估值集合'。一定條件下,這個極小點序列:收斂于;的極值點。將上述討論擴展到,維空間,類似的,對于,維函數(shù)*有f(xj4/';XJ=fZ+WRx-和J十戲天—x^.jTV2/(x-觀j其中*和W人分別是目標函數(shù)的的一階和二階導數(shù),表現(xiàn)為匸維向量和.■■■'-.''■■■矩陣,而后者又稱為目標函數(shù)*在x處的Hesse矩陣。設設;可逆,則可得與方程⑴類似的迭代公式:人 了 V<-:s V:s ⑵這就是原始牛頓法的迭代公式。原始牛頓法雖然具有二次終止性(即用于二次凸函數(shù)時,經(jīng)有限次迭代必達極小點),但是要求初始點需要盡量靠近極小點,否則有可能不收斂。因此人們又提出了阻尼牛頓法[1]。這種方法在算法形式上等同于所有流行的優(yōu)化方法,即確定搜索方向,再沿此方向進行一維搜索,找出該方向上的極小點,然后在該點處重新確定搜索方向,重復上述過程,直至函數(shù)梯度小于預設判據(jù),。具體步驟列為算法1。算法1:(1)給定初始點H,設定收斂判據(jù)■,二⑵計算和.⑶若「’峠<-,則停止迭代,否則確定搜索方向』 \ % '、.⑷從出發(fā),沿做一維搜索,n護f兇-+人山j=f(xk+Xk-dk)令 ?⑸設?; “I,轉(zhuǎn)步驟⑵?在一定程度上,阻尼牛頓法具有更強的穩(wěn)定性。擬牛頓法(Quasi-NewtonMethod)如同上一節(jié)指出,牛頓法雖然收斂速度快,但是計算過程中需要計算目標函數(shù)的二階偏導數(shù),難度較大。更為復雜的是目標函數(shù)的Hesse矩陣無法保持正定,從而令牛頓法失效。為了解決這兩個問題,人們提出了擬牛頓法。這個方法的基本思想是不用二階偏導數(shù)而構(gòu)造出可以近似Hesse矩陣的逆的正定對稱陣,從而在"擬牛頓"的條件下優(yōu)化目標函數(shù)。構(gòu)造方法的不同決定了不同的擬牛頓法。首先分析如何構(gòu)造矩陣可以近似Hesse矩陣的逆:設第k次迭代之后得到點,將目標函數(shù) 在處展成Taylor級數(shù),取二階近似,得到gf^k+1]+ -F Xj葉]]因此v/(x)RS ,j+V2孑(強+1)(兀-XjfcHj令鼻,則人 7人 匸:S S ⑶記科=X<+|-也一Yl= i-vy(XL.j同時設Hesse矩陣'、: 可逆,則方程(3)可以表示為rVJ;:s v⑷因此,只需計算目標函數(shù)的一階導數(shù),就可以依據(jù)方程(4)估計該處的Hesse矩陣的逆。也即,為了用不包含二階導數(shù)的矩陣H 近似牛頓法中的Hesse矩陣 的逆矩陣」丨必須滿足方程(5)也稱為擬牛頓條件。不加證明的,下面給出兩個最常用的H 構(gòu)造公式DFP公式設初始的矩陣】I為單位矩陣],然后通過修正11給出H,即H忡=H,+AH,DFP算法中定義校正矩陣為\TT_軌撫氐皿,-陽4-球班-yiH1,y,因此]| ]|氏 ⑹可以驗證,這樣產(chǎn)生的H 對于二次凸函數(shù)而言可以保證正定,且滿足擬牛頓條件。BFGS公式BFGS公式有時也稱為DFP公式的對偶公式。這是因為其推導過程與方程(6)完全一樣只需要用矩陣汗取代“ ,同時將“和匸互換,最后可以得到]|H-占&十(7)這個公式要優(yōu)于DFP公式,因此目前得到了最為廣泛的應用。利用方程(6)或(7)的擬牛頓法計算步驟列為算法2。算法2:⑴給定初始點x,設定收斂判據(jù)?,二人⑵設II1,計算出目標函數(shù) 在處的梯度⑶確定搜索方向門:酥=H丄馱⑷從出發(fā),沿訂做一維搜索,滿足fQu+人心1= +Xdu令尤卜十1=總-+九血⑸若 ?-,則停止迭代,得到最優(yōu)解* X ,否則進行步驟(6).⑹若二厶 ,則令X ' ,回到步驟(2),否則進行步驟(7).⑺令' , ' ',亠{,利用方程(6)或(7)計算H ,設匸1,回到步驟(3)。限域擬牛頓法(LimitedStorageQuasi-NewtonMethod)算法2的步驟(3)中,為了確定第:次搜索方向,需要知道對稱正定矩陣]I,因此對于匸維的問題,存儲空間至少是'-,對于大型計算而言,這顯然是一個極大的缺點。作為比較,共軛梯度法只需要存儲3個」維向量。為了解決這個問題Nocedal首次提出了基于BFGS公式的限域擬牛頓法(L-BFGS)[2]。L-BFGS的基本思想是存儲有限次數(shù)(如…次)的更新矩陣3I,如果>'-,的話就舍棄…次以前的工1-,也即L-BFGS的記憶只有…次。如果…,則L-BFGS等價于標準的BFGS公式。首先將方程(7)寫為乘法形式:H屮=(I -“y閭.]十陽閭.=訐印M+吋應其中」…八是- 的矩陣。乘法形式下"舍棄"等價于置「 】,:?:。容易得出,給定…后,BFGS的矩陣更新可以寫為若? -,則Hb+1 HiVu-Vk-.Vk+vj-^:is:is.jV;…¥上(10)方程(9)和(10)稱為狹義BFGS矩陣(specialBFGSmatrices)。仔細分析這兩個方程以及-和「的定義,可以發(fā)現(xiàn)L-BFGS方法中構(gòu)造 只需要保留 個維向量:個、…個丫以及]I(對角陣)。快速計算I-L-BFGS算法中確定搜索方向H需要計算HM,下列算法可以高效地完成計算任務:算法3:IF丄■■-Then■=0;=
ELSE|■:-= …;丨:':|〔|=■■-ENDIFc]'I: .- ;DO=( -1),0,-1儲存“;qq■■v;ENDDO1'II{;DO=0,( -1)-.■:'.;':'VT;ENDDO完整的程序包可從下列網(wǎng)址下載:/~nocedal/software.html針對二次非凸函數(shù)的若干變形對于二次凸函數(shù),BFGS算法具有良好的全局收斂性。但是對于二次非凸函數(shù),也即目標函數(shù)Hesse矩陣非正定的情況,無法保證按照BFGS算法構(gòu)造的擬牛頓方向必為下降方向。為了推廣BFGS公式的應用范圍,很多工作提出了對BFGS公式稍作修改或變形的辦法。下面舉兩個例子。Li-Fukushima方法[3]Li和Fukushima提出新的構(gòu)造矩陣H的方法:日屮={I-皿旺疳冋([-皿疳胡)+日屮={I-皿旺疳冋([-皿疳胡)+伽就(11)其中的定義見算法2中步驟(7),而除此之外,算法2中步驟(3)的一維搜索采用如下方式:給定兩個參數(shù)「「〔和匚「」一,找出最小的非負整數(shù)j,滿足fg十巧業(yè))<打嚴)+G,以血:?。?;,步長' '。Xiao-Wei-Wang方法[4]Xiao、Wei和Wang提出了計入目標函數(shù)值?’久的另一種]I的構(gòu)造方法:護Y■' ,其中%= -f(粘十J+{臥十I+亂]丁昌札II的構(gòu)造方法與方程(7)和(11)形式相同:日屮=(I-心劇丁舊川-仮口話+詁刊話相應的v-而一維搜索則采用弱Wolfe-Powell準則:給定兩個參數(shù)':■-和■■'■ 1,找出步長〔,滿足-』-(14)如果,=?滿足方程(13)、(14),則取一:=一。可以看出,這兩種方法只是改變了丫的定義方式,其他則與標準的BFGS方法完全一樣。因此將二者推廣到限域形式是非常直接的,這里不再給出算法。對于二次非凸函數(shù)的擬牛頓方法還在進一步發(fā)展當中,上述的兩個例子并不一定是最佳算法。一維搜索使用導數(shù)的優(yōu)化算法都涉及到沿優(yōu)化方向」的一維搜索。事實上一維搜索算法本身就一個非常重要的課題,分為精確一維搜索以及非精確一維搜索。標準的擬牛頓法或L-BFGS均采用精確一維搜索。與前者相比,非精確一維搜索雖然犧牲了部分精度,但是效率更高,調(diào)用函數(shù)的次數(shù)更少。因此Li-Fukushima方法和Xiao-Wei-Wang方法中均采用了這類算法。不加證明的,本節(jié)分別給出兩類范疇中各自的一個應用最為廣泛的例子,分別是二點三次插值方法和Wolfe-Powell準則。二點三次插值方法在精確一維搜索各種算法中,這種方法得到的評價最高。其基本思想是選取兩個初始點:和=,滿足' <:?J>o這樣的初始條件保證了在區(qū)間^1;:'一中存在極小點。利用這兩點處的函數(shù)值、’■-(記為「、二)和導數(shù)值?’'、?‘T(記為?’、」)構(gòu)造一個三次多項^5「,使得在:和亠處與目標函數(shù);有相同的函數(shù)值和導數(shù)值,則設■■' ■' - ,‘ - ■ ■-- [那么通過4個邊界條件可以完全確定■■、、、
;4個參數(shù)。之后找出」:的零點-’,作為極小點的一個進一步的估計??梢宰C明,由:出發(fā),最佳估計值的計算公式為1 (15)為了避免每次都要求解4維線性方程組的麻煩,整個搜索過程可以采用算法4:算法4:⑴給定初始點:和,滿足< ,計算函數(shù)值’、二和導數(shù)值?’、二,并且?’<:>:,給定允許誤差:。(2)計算如下方程,得到最佳估計值-■:' 一-二,'■'.'2(16)F=F=k+h衛(wèi)—釣 芥;J(17)⑶若"一■:二,則停止計算,得到點:;否則進行步驟(4)。⑷計算’:和「:。若:’心‘,則停止計算,得到點:,若?’; <:,則令; ''■' ■'' ■' ■';,轉(zhuǎn)步驟(2);若?’ ■' >:,則令■' ■-■' ' ■',轉(zhuǎn)步驟(2)。禾I」用三次函數(shù)插值,方程(16)、(17)并不是唯一的方法,也可以利用下式計算、、三個參數(shù):._了;打;hhzzhl.a~I:!',-!'l;J—I:J.—糾-JIJ/j~/l-(18)c~然后利用(15)式尋找最佳點[5]o此外即使’-<:一般而言也可以用(15)式外推尋找-'(參見[5])。Wolfe-Powell準則不等式(13)、(14)給出了這種非精確一維搜索算法。如果我們將不等式(14)用下式替換:-'丨 二」(19)也即說心<顯+1比<—疔歸血-則不等式(13)、(19)稱為強Wolfe-Powell準則。其重要性在于當——…時,該方法過渡為精確一維搜索算法[6]。算法如下[5]算法5:(1)給定兩個參數(shù)'■ : 和■■■'■ 為初始點(相應于, 八),匚為猜想點(可設為1)。計算兩點處的函數(shù)值「、二和導數(shù)值給定最大循環(huán)次數(shù)'■■■■---,設二匸=二;⑵若二和二違反不等式(13)或者不等式(19)的右半段,則縮小搜索范圍的上限 ,否則轉(zhuǎn)步驟⑸;⑶若二>■',利用二次插值方法尋找最佳點>■:Jj-fi-fi'i-rj-.riJ設:」 ,計算二和'」;設 ,若 轉(zhuǎn)步驟(2),否則轉(zhuǎn)步驟(5);若,二-,轉(zhuǎn)步驟(4);⑷禾I」用式(16)、(17)(或者式(15)、(18))尋找最佳點I>.。令■-=■.■■■■.,計算二和二;設= ,若 ,轉(zhuǎn)步驟(2),否則轉(zhuǎn)步驟(5);⑸若滿足不等式(19)的左半段,則停止計算,得到最佳點否則轉(zhuǎn)步驟(6);⑹禾I」用式(16)、(17)(或者式(15)、(18))尋找最佳點并計算二以及二;設二-若轉(zhuǎn)步驟(2),否則轉(zhuǎn)步驟(7);(7)停止計算得到目前最佳估計值:J。需要補充說明的是步驟(4)可以有不同的估算方法,例如此外,點處的導數(shù)值-,5,因為在一維搜索中,相當于待求步長。在大多數(shù)情況下,-以及:=?可以取得很好的效果。Wolfe-Powell準則的幾何意義可以參考文獻[5][6]。參考文獻【1】陳寶林《最優(yōu)化理論與算法(第二版)》(清華大學出版社2005)第9-10章.【2】J.Nocedal,Math.Comput.35,773(1980).【3】D.H.LiandM.Fukush
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 非洲概述課件教學課件
- 青竹湖湘一外國語學校九年級上學期語文第一次月考試卷
- 創(chuàng)意妝課件教學課件
- 三年級數(shù)學計算題專項練習匯編及答案
- 考編面試協(xié)議書(2篇)
- 《數(shù)學物理方法》第7章測試題
- 南京航空航天大學《彈性力學基礎(chǔ)》2022-2023學年第一學期期末試卷
- 南京工業(yè)大學浦江學院《現(xiàn)代企業(yè)管理》2023-2024學年第一學期期末試卷
- 南京工業(yè)大學浦江學院《設計史》2021-2022學年第一學期期末試卷
- 交通配套設施(標線、標志、交通信號燈)工程施工組織設計
- 化學品管理的安全防護與個體防護
- 大學生職業(yè)生涯規(guī)劃無人機林業(yè)
- 企業(yè)風險管理中的政府政策變動管理風險及其應對措施
- 標準齒輪主要參數(shù)及其計算課件
- 大學生職業(yè)生涯規(guī)劃書軟件技術(shù)
- 2022中小學高級教師任職資格評審講課答辯題目及答案
- 針刺傷標準預防
- 團播主持人協(xié)議
- 《急救藥品》課件
- 氯酸鹽行業(yè)分析
- 國開電大 可編程控制器應用實訓 形考任務6實訓報告
評論
0/150
提交評論