牛頓法和擬牛頓法是求解無約束最優化問題的常用方法,收斂速度快。牛頓法是迭代演算法,每一步需要求解目標函式的海塞矩陣(hesse matrix)的逆矩陣,計算複雜。擬牛頓法通過正定矩陣近似海塞矩陣的逆矩陣或海塞矩陣,計算速度快。
牛頓法
考慮無約束優化問題
min f(x)
其中x* 為目標函式的極小值點
假設f(x)具有二階連續偏導數,若第k次迭代值為x^(k), 則可將f(x)在x^(k)附近進行二階泰勒展開:
(其實就是在x^(k)附近的二階曲面近似代替 f(x), 而梯度下降法是用 x^(k)附近的平面近似代替 f(x), 然後求出x^(k)附近的二階曲面的極值點近似代替f(x)的極值點)
f(x) = f(x^(k)) + g_k ^t(x-x^(k)) + 1/2 (x -x^(k))^t h(x(k))(x - x^(k))
這裡 g_k = g(x^(k)) = \delta f(x^(k)) 是f(x) 的梯度向量在點x^(k) 的值, h(x^(k)) 是f(x) 的海塞矩陣(hesse matrix)
在點x^(k) 的值,函式f(x) 有極值的必要條件是在極值點出一階導數為0,即梯度向量為藕特別當h(x^()k) 是正定矩陣時,函式f(x) 的極值為極小值。
g_k + h_k (x^(k_1) - x^(k)) = 0
(x^(k_1) - x^(k)) = - h_k ^ (-1) g_k
牛頓法和擬牛頓法
正在學習牛頓法,找到一篇非常詳細的部落格,特將目錄整理下來,方便今後回想和查詢。一 牛頓法 主要內容 1 泰勒展開式。比較基礎。2 牛頓法。從其應用的兩個方面來介紹 2.1 求方程的根 一階泰勒展開。2.2 解決最優化問題 二階泰勒展開。此部分又分為兩種情況 二維情況和高維情況。其中,二維情況比較常...
牛頓法與擬牛頓法
看了幾篇關於牛頓法的相關介紹,感覺非常好,尤其是擬牛頓條件的推導以及dfp等演算法的推導過程十分詳細明了。這裡記錄一下,方便之後查閱 牛頓法 擬牛頓條件 dfp演算法 bfgs演算法 f bfgs演算法 1 牛頓法 newton s method 牛頓法是一種在實數域和複數域上近似求解方程的方法。方...
A 03 牛頓法和擬牛頓法
目錄 二 牛頓法流程 三 擬牛頓法簡介 人工智慧從入門到放棄完整教程目錄 牛頓法 newton method 和擬牛頓法 quasi newton method 和梯度下降法一樣也是求解最優化問題的常用方法,但是他們的收斂速度比梯度下降法快。牛頓法是迭代演算法,每一步都需要求目標函式的海森矩陣的逆矩...