梯度下降法和牛頓法的比較

2021-09-29 15:53:50 字數 1434 閱讀 4335

牛頓法牛頓法和梯度下降法的比較

是乙個用來求函式最小值的演算法

在單變數函式中,梯度其實就是函式的微分,代表著函式在某個定點的斜率

運用梯度下降法,關鍵在於求出代價函式的導數。

引數更新公式(多變數線性回歸)

2.1 批量梯度下降(batch gradient descent)

是指載梯度下降的每一步中,我們都用到了所有的訓練樣本,在梯度下降中,在計算微分時,我們需要進行求和運算,因此得名。

2.2 隨機梯度下降(stochastic gradient descent)

隨機梯度下降每次用乙個樣本來梯度下降

2.3 小批量梯度下降(minibatch gradient descent)

mbgd稱為小批量梯度下降,每次迭代使用乙個以上又不是全部樣本。

首先牛頓法是求解函式值為0時的自變數取值的方法。具體地,當要求解 f(θ)=0時,如果 f可導,那麼可以通過迭代公式:

來迭代求得最小值。

利用牛頓法求解目標函式的最小值其實是轉化成求使目標函式的一階導為0的引數值。這一轉換的理論依據是,函式的極值點處的一階導數為0.

其迭代過程是在當前位置x0求該函式的切線,該切線和x軸的交點x1,作為新的x0,重複這個過程,直到交點和函式的零點重合。此時的引數值就是使得目標函式取得極值的引數值。

其迭代過程如下:

當應用於求解最大似然估計的值時,變成ℓ′(

θ)=0

ℓ′(θ)=0

ℓ′(θ)=

0的問題。這個與梯度下降不同,梯度下降的目的是直接求解目標函式極小值,而牛頓法則變相地通過求解目標函式一階導為零的引數值,進而求得目標函式最小值。那麼迭代公式寫作:

當θ

θθ是向量時,牛頓法可以使用下面式子表示:

其中h叫做海森矩陣,其實就是目標函式對引數θ的二階導數。

通過比較牛頓法和梯度下降法的迭代公式,可以發現兩者及其相似。海森矩陣的逆就好比梯度下降法的學習率引數alpha。牛頓法收斂速度相比梯度下降法很快,而且由於海森矩陣的的逆在迭代中不斷減小,起到逐漸縮小步長的效果。

1). 牛頓法:

2). 梯度下降法:

梯度下降法和牛頓下降法

泰勒公式可以表示為 f boldsymbol boldsymbol f boldsymbol boldsymbol boldsymbol frac boldsymbol boldsymbol boldsymbol o boldsymbol tag 在 2 中 boldsymbol x 1,x n b...

梯度下降法與牛頓法

梯度下降法,是迭代演算法。在求最值時,常常用到。bp網路中,最小化 誤差cost function,求解對應網路中的weights,即可用梯度下降法來更新weights.梯度下降法基本思想 給定乙個函式 f 假設求 f 最大值 最小值 初始化函式上的乙個點,對該點求導,該點往導數的方向 反方向 移動...

梯度下降法與牛頓法

梯度 f 在 0 處的梯度表示f 在點 0 處函式值變化最快的方向。對於凸函式f 來說,沿著負梯度方向尋找可以找到函式的極小值 k 1 k f k k 表示第 k步迭代,表示修正因子 步長 因為梯度方向變化最快,只在區域性有效 如果對於多維情形,表示為 k 1 k f k 其中 k k1,k2,kn...