梯度下降法的數學原理

2022-08-19 03:45:13 字數 1444 閱讀 1768

梯度下降法又稱最速下降法,是求解無約束最優化問題的一種最常用的方法,在對損失函式最小化時經常使用。梯度下降法是一種迭代演算法。選取適當的初值x(0),不斷迭代,更新x的值,進行目標函式的極小化,直到收斂。由於負梯度方向時使函式值下降最快的方向,在迭代的每一步,以負梯度方向更新x的值,從而達到減少函式值的目的。提到梯度下降法,就不得不提到方向導數與梯度了。

1.方向導數

設函式z=f(x,y)在點p(x,y)的某一鄰域u(p)內有定義,自點p引射線l。設x軸正向到射線l的轉角為φ,並設p

'(x+δx, y+δy)為l上的另乙個點且p'也在鄰域u(p)內。

考慮若,若此極限存在,則稱此極限為函式f(x,y)在點p沿方向l的方向導數,記作

,即2.方向導數與偏導數的關係

定理:如果函式z=f(x,y)在點p(x,y)是可微分的,那麼函式在該點沿任一方向l的方向導數都存在,且有

,其中φ為x軸到方向l的轉角。

簡要證明:

由此可將該定理推向更高維的函式,例如對於三元函式u=f(x,y,z),定義它在空間一點p(x,y,z)向某方向(設方向的方向角為α,β,γ)的方向導數如下,故有

3.梯度

梯度是乙個向量,表示某一函式在該點處的方向導數沿著該方向取得最大值,即函式在該點處沿著該方向(此梯度的方向)變化最快,變化率最大(為該梯度的模)。

設函式z=f(x,y)在平面區域d內有一階連續偏導數,則對於區域d內的任一點p(x,y)及任一方向l,有

其中向量

稱為函式f(x,y)在點p的梯度,記作gradf(x,y)。

4.梯度與方向導數

設是與l方向相同的單位向量,則

5.為什麼梯度方向是使函式值增加最快的方向?(負梯度方向是使函式值下降最快的方向?)

方向導數何時取得最大值呢?即為

等於1時,即單位向量

與梯度向量同向時,方向導數最大,也就是單位步伐,函式值朝這個方向變化最快。同理可知與梯度方向反向時,函式值下降最快。

結論:函式在某點的梯度是這樣乙個向量,它的方向與取得最大方向導數的方向一致,而它的模為方向導數的最大值。所以可以說,沿著梯度方向,方向導數為正,函式沿著這個方向變化是增加最快的方向 

梯度下降法原理

該博文為一所寫,非常詳細易懂,故搬運過來以後方便回憶學習 一 為什麼需要梯度下降法 每個演算法模型都有自己的損失函式,而損失函式包含了各個位置上的引數,我們的最終目標都是要找到使模型損失函式盡可能小的引數。在學習簡單線性回歸時,我們使用最小二乘法來求損失函式的最小值,但是這只是乙個特例。在絕大多數的...

梯度下降法原理

求解機器學習演算法的模型引數,常用兩種方法 梯度下降,最小二乘法。此外還有牛頓法和擬牛頓法。1.梯度 對多元函式引數求偏導,把求得的偏導寫成向量形式。比如 f x,y 對x,y求偏導,梯度就是 f x,f y t。2.梯度下降法詳解 梯度下降法有代數法和矩陣法兩種表示形式。2.1 代數法 1.先決條...

梯度下降法和隨機梯度下降法

批量梯度下降法 batch gradient descent 在更新引數時使用所有的樣本來進行更新 隨機梯度下降法 stochastic gradient descent 求梯度時沒有用所有的m個樣本的資料,而是僅僅選取乙個樣本j來求梯度。小批量梯度下降法 mini batch gradient d...