梯度下降法又稱最速下降法,是求解無約束最優化問題的一種最常用的方法,在對損失函數最小化時經常使用。梯度下降法是一種迭代算法。選取適當的初值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時,即單位向量
與梯度向量同向時,方向導數最大,也就是單位步伐,函數值朝這個方向變化最快。同理可知與梯度方向反向時,函數值下降最快。
結論:函數在某點的梯度是這樣一個向量,它的方向與取得最大方向導數的方向一致,而它的模為方向導數的最大值。所以可以說,沿着梯度方向,方向導數為正,函數沿着這個方向變化是增加最快的方向