機器學習筆記 牛頓法

2021-07-26 12:35:44 字數 782 閱讀 4216

吳恩達在機器學習中講到了牛頓法,再次做乙個通俗的解釋

1、求解方程。

並不是所有的方程都有求根公式,或者求根公式很複雜,導致求解困難。利用牛頓法,可以迭代求解。

原理是利用泰勒公式,在x0處展開,且展開到一階,即f(x) = f(x0)+(x-x0)f'(x0)

求解方程f(x)=0,即f(x0)+(x-x0)*f'(x0)=0,求解x = x1=x0-f(x0)/f'(x0),因為這是利用泰勒公式的一階展開,f(x) = f(x0)+(x-x0)f'(x0)處並不是完全相等,而是近似相等,這裡求得的x1並不能讓f(x)=0,只能說f(x1)的值比f(x0)更接近f(x)=0,於是乎,迭代求解的想法就很自然了,可以進而推出x(n+1)=x(n)-f(x(n))/f'(x(n)),通過迭代,這個式子必然在f(x*)=0的時候收斂。整個過程如下圖:

2、牛頓法用於最優化

在最優化的問題中,線性最優化至少可以使用單純行法求解,但對於非線性優化問題,牛頓法提供了一種求解的辦法。假設任務是優化乙個目標函式f,求函式f的極大極小問題,可以轉化為求解函式f的導數f'=0的問題,這樣求可以把優化問題看成方程求解問題(f'=0)。剩下的問題就和第一部分提到的牛頓法求解很相似了。

這次為了求解f'=0的根,把f(x)的泰勒展開,展開到2階形式:

這個式子是成立的,當且僅當 δx 無線趨近於0。此時上式等價與:

求解:得出迭代公式:

一般認為牛頓法可以利用到曲線本身的資訊,比梯度下降法更容易收斂(迭代更少次數),如下圖是乙個最小化乙個目標方程的例子,紅色曲線是利用牛頓法迭代求解,綠色曲線是利用梯度下降法求解。

機器學習筆記 牛頓法與擬牛頓法

提要 今天講的牛頓法與擬牛頓法是求解無約束問題最優化方法的常用方法。一 牛頓法 假設我們求下面函式的最小值 假設f x 具有連續的二階的連續偏導數,假設第k次迭代值為xk的值,那麼可將f x 在xk附近進行二階泰勒展開得到 我們對上述公式求導可得 假設其中 可逆,我們就可以得到牛頓法的迭代公式為 這...

機器學習之牛頓法

首先看泰勒公式,對於函式,如果函式平滑且某點存在各階導數,則可以用乙個多項式來描述該點鄰域的近似值。公式如下 牛頓法一般用來求解方程的根和求解極值。數值優化演算法除了梯度下降法外還有比較常用的一種方法是牛頓法。對於非線性方程,可以用牛頓迭代法進行求解,它收斂速度快。基本思想是 對於非線性函式f x ...

牛頓法與擬牛頓法學習筆記(一)牛頓法

好文!先轉在看!機器學習演算法中經常碰到非線性優化問題,如 sparse filtering 演算法,其主要工作在於求解乙個非線性極小化問題。在具體實現中,大多呼叫的是成熟的軟體包做支撐,其中最常用的乙個演算法是 l bfgs。為了解這個演算法的數學機理,這幾天做了一些調研,現把學習過程中理解的一些...