梯度方向指向數值增長最快的方向,大小為變化率。通過這個性質也說明梯度是有方向和大小的向量。通過梯度的定義我們發現,梯度的求解其實就是求函式偏導的問題,而我們高中所學的導數在非嚴格意義上來說也就是一元的「偏導」。通過這一點我們自然而然地想到梯度應該是導數向更高維數的推廣。換句話說,梯度是向量,而某點的導數是個常量。
如果函式 f(θ
)f(\theta )
f(θ)
是凸函式,那麼就可以使用梯度下降演算法進行優化。梯度下降演算法的公式:
θ =θ
0−η⋅
▽f(θ
)\theta = \theta_0 - \eta \cdot \big********down f(\theta )
θ=θ0−
η⋅▽f
(θ)θ
0\theta_0
θ0是更新前的θ
\theta
θ;η\eta
η是學習因子,即步進長度;▽f(
θ)\big********down f(\theta )
▽f(θ
)是方向。
這個示例函式是f(x
)=(x
−2)2
+2f(x)=(x-2)^2+2
f(x)=(
x−2)
2+2在(1,3)位置的梯度為-2<0,梯度方向為x軸的負方向,上公升
在(3,3)位置的梯度為2>0,梯度方向為x軸正方向,上公升
定**釋:
設f(x)有一階導:f(x
+δx)
−f(x
)δx≈
f′(x
)δxf(x+
δx)−
f(x)
≈f′
(x)。
如果f′(x)>0,在δx鄰域半徑內單調上公升,梯度方向取x的正方向,函式梯度上公升。
如果f′(x)<0,在δx鄰域半徑內單調下降,梯度方向取x的負方向,函式梯度上公升。
梯度方向是上公升方向,目標函式大多是loss函式,基本都是求最小值,那麼就是就1取梯度的負方向。
梯度下降演算法的推導如下:
其中, θ−θ
0\theta-\theta_0
θ−θ0
是微小向量,它的大小就是我們之前講的步進長度η
\eta
η,η\eta
η為標量,而θ−θ
0\theta-\theta_0
θ−θ0
的單位向量用v表示。則θ−θ
0\theta-\theta_0
θ−θ0
可表示為:θ−θ
0=ηv
\theta-\theta_0=\eta v
θ−θ0=
ηv。特別需要注意的是, θ−θ
0\theta-\theta_0
θ−θ0
不能太大,因為太大的話,線性近似就不夠準確,一階泰勒近似也不成立了。替換之後, f(θ
)f(\theta )
f(θ)
的表示式為:
f (θ
)≈f(
θ0)+
ηv⋅▽
f(θ)
f(θ)≈f
(θ0
)+ηv
⋅▽f(
θ)區域性下降的目的是希望每次θ
\theta
θ更新,都能讓函式值 f(θ
)f(\theta )
f(θ)
變小。也就是說,上式中,我們希望f(θ)θ0
)f(\theta )f(
θ)θ0)
。則有:
f (θ
)−f(
θ0)≈
ηv⋅▽
f(θ)
<0f(
θ)−f
(θ0
)≈ηv
⋅▽f(
θ)<
0因為η
\eta
η為標量,且一般設定為正值,所以可以忽略,不等式變成了:ηv⋅
▽f(θ
)<
0\eta v \cdot \big********down f(\theta )<0
ηv⋅▽f(
θ)<0v
vv和▽f(
θ)\big********down f(\theta )
▽f(θ
)都是向量,▽f(
θ)\big********down f(\theta )
▽f(θ
)是當前位置的梯度方向,v
vv表示下一步前進的單位向量。
假設ab均為向量, α
\alpha
α為兩個向量之間的夾角。a和b的乘積為:
a ⋅b
=∥a∥
⋅∥b∥
⋅cos
(α)a\cdot b=\left \| a \right \| \cdot \left \| b \right \|\cdot cos(\alpha )
a⋅b=∥a
∥⋅∥b
∥⋅co
s(α)
∥ a∥
\left \| a \right \|
∥a∥和∥b∥
\left \| b \right \|
∥b∥ 均為標量,在∥a∥
\left \| a \right \|
∥a∥和∥b∥
\left \| b \right \|
∥b∥確定的情況下,只要cos
(α)=
−1cos(\alpha )=-1
cos(α)
=−1,即a和b完全反向,就能讓a和b的向量乘積最小(負最大值)。即,當v
vv與▽f(
θ)\big********down f(\theta )
▽f(θ
)互為反向,即v
vv為當前梯度方向的負方向的時候,能讓v⋅▽
f(θ)
v \cdot \big********down f(\theta )
v⋅▽f(θ
)最大程度地小,也就保證了v
vv的方向是區域性下降最快的方向。
什麼是梯度下降
1 在求解機器學習演算法的模型引數,即無約束優化問題時,梯度下降 gradient descent 是最常採用的方法之一,另一種常用的方法是最小二乘法。梯度的方向是函式f增長最快的方向,梯度的反方向是梯度下降最快的方向 對於梯度下降的解釋是 比如說下山的過程中,我們不知道從 下山可以最快到達山腳下,...
為什麼梯度方向與等高線垂直
有些結論用起來習以為常,卻不知道背後的原理,比如為什麼梯度方向與等高線垂直,弄明白後心裡才舒暢 要解決這個問題首先得有等高線的數學表示式 以三維空間為例,設某曲面的表示式為z f x,y z f x,y z f x,y 對於任意高度且平行於xoy的平面z c z cz c來說,等高線為z f x,y...
為什麼沿著梯度方向函式值上公升的最快
一元函式的變化快慢可以用導數來判斷,其定義為 lim x 0f x x f x x f x f x x f x f x x x 可以看出來,f x 越大,則函式變化越快。對於多元函式其實也是類似的 lim x 0 y 0f x x,y y f x,y x 2 y 2 lim x 0 y 0f x x...