多元函式的牛頓迭代和高斯牛頓法怎麼推導?

時間 2021-06-05 09:07:44

1樓:半個馮博士

其實牛頓迭代的推導說簡單也簡單。

從題主的提法來看應該是在說牛頓迭代求優化問題,優化問題主要就是考慮二階逼近。

先考慮二階展開:

這裡 注意這時二階展開式是 的函式。此時希望它的一階導為零。

那麼就可以解出:

那麼代回去就可以得到迭代式:

小結一下:

二階逼近

逼近式對增量求一階導 = 0

求出增量計算格式

代回得到迭代式

先給出二階逼近:

這裡我們回去查一查,發現符號定義應該是這樣:

注意:這裡我們只是為了本回答這樣約定, 表示外積。

它就是Hessian矩陣:

這時候再設二階導為0,就得到:

同理,解出 再帶回迭代式就有:

這裡Hessian矩陣不一定可逆,這種時候就加乙個正則項:

高斯牛頓法主要是針對非線性最小二乘問題的,那麼先回顧一下

由於這個最小平方誤差函式的定義比較特殊,因此它的二階展開裡的兩個偏導可以寫得比較簡單:

這個Jacobian矩陣就是上面的定義。這裡注意下向量的形狀,始終保證最後的結果是列向量。

二階導自然就是對一階再求一次導:

這時很有意思的就來了,向量對向量求導的乘法法則(分配律)仍然成立:

於是它的二階導又可以寫成:

那麼直接對應代回迭代式就有:

一位法國兒童發了一篇文章:Theoria motus corporum coelestium in sectionibus conicis solem ambientum (1809), pp. 179-180.

在這篇文章裡,他大概提到:中的二階項應該很小,所以直接省略,於是再對符號簡化一下,這個Hessian近似就可以寫成:

這下子就非常簡潔了:

這個式子就是著名的Gauss-Newton法的迭代公式。

Levenberg-Marquardt最簡單直接的思路就是在 的對角線上加上乙個正數:

而這個格式就是後來更常用的 Levenberg-Marquardt演算法。

剩下還有一些其它的加權方式基本都是在這個基礎上進行改進,不再多說了。

擬牛頓法和牛頓法有啥區別?

牛頓法這個式子是由將f x 在 處進行二階泰勒展開然後令 處導數為零得到的,牛頓法的iteration complexity是 但問題在於牛頓法每一步迭代所需的開銷太大,即其每一步都需要求Hessian矩陣並對其求逆,其中對矩陣求逆已經需要 的時間複雜度了。擬牛頓法 擬牛頓法就是為解決上面的執行時間...

如何通俗易懂地講解牛頓迭代法求開方?數值分析?

Mnizjc 若有所疏漏請多指正.理解的方法並不難,用中學的知識理解應該夠了,但這種方法可能有些歪門邪道了 用求根號2做例子,影象如下 Geogebra不是很熟練 原函式 求導一次 切線函式 c為常數,用不著 其中x 2和y軸都和x軸成直角,兩角相等,且 和其對頂角相等,可得 設 B的橫座標是,A的...

青年時代的牛頓,高斯,愛因斯坦水平會比現在的國際奧數,奧物冠軍級選手高很多嗎

不知道 搞學術和解體是兩回事兒,但你提牛頓和高斯,或者再加個尤拉,這幾個人隨手就能把奧數冠軍全滅了。高斯從小開始就是一邊學習一年完善教科書。解決前人提出的數學猜想就是花一晚上寫作業的時間。尤拉走過的地方,隨時用數學建模,奧數多少分支都是他隨手解決乙個問題創立的。牛頓主要精力不在數學,但他要專注數學,...