如圖,對於函式f(x,y),函式的增量與pp』兩點距離之比在p』沿l趨於p時,則為函式在點p沿l方向的方向導數。記為∂f
∂l=limρ→
0f(x
+δx,
y+δy
)−f(
x,y)
ρ,其中ρ=
(δx)
2+(δ
y)2−
−−−−
−−−−
−−−√
。方向導數為函式f沿某方向的變化速率。
而且有如下定理: ∂f
∂l=∂
f∂xc
osθ+
∂f∂y
sinθ
梯度是乙個向量,它的方向與取得最大方向導數的方向一致,梯度的模為方向導數的最大值。某點的梯度記為 gr
ad−→
−f(x
,y)=
∂f∂x
i→+∂
f∂yj
→ 梯度的方向就是函式f在此點增長最快的方向,梯度的模為方向導數的最大值。h(
x)=θ
0+θ1
x那麼損失函式為 j(
θ)=1
2∑ni
=1(h
(xi)
−yi)
2要求最小損失,分別對θ0
θ1求偏導, ∂j
(θ)∂
θj=∂
∂θj1
2∑ni
=1(h
(xi)
−yi)
2=∑n
i=1(
h(xi
)−yi
)∂∂θ
j(∑n
j=0(
θjxj
)i−y
i)=∑
ni=1
(h(x
i)−y
i)xi
j那麼不斷通過下面方式更新
θ即可以逼近最低點。 θj
:=θj−
α∑ni
=1(h
(xi)
−yi)
xij
其中α為learning rate,表現為下降的步伐。它不能太大也不能太小,太大會overshoot,太小則下降慢。通常可以嘗試0.001、0.003、0.01、0.03、0.1、0.3。
這就好比站在一座山的某個位置上,往周圍各個方向跨出相同步幅的一步,能夠最快下降的方向就是梯度。這個方向是梯度的反方向。
另外,初始點的不同可能會出現區域性最優解的情況,如下圖:
樣本太大時,每次更新都需要遍歷整個樣本,效率較低,這是就引入了隨機梯度下降。
它可以每次只用乙個樣本來更新,免去了遍歷整個樣本。
偽**如下
repeat until convergence{
i=random(1,n)θj
:=θj−
α(h(
xi)−
yi)x
ijfor every j
另外與隨機梯度下降類似的還有小批量梯度下降,它是折中的方式,取了所有樣本中的一小部分。
*****===廣告時間*****===
鄙人的新書《tomcat核心設計剖析》已經在京東銷售了,有需要的朋友可以到 進行預定。感謝各位朋友。
為什麼寫《tomcat核心設計剖析》
歡迎關注:
機器學習之梯度下降法 梯度下降法分析
梯度下降法的基本思想是函式沿著其梯度方向增加最快,反之,沿著其梯度反方向減小最快。在前面的線性回歸和邏輯回歸中,都採用了梯度下降法來求解。梯度下降的迭代公式為 j j j j 在回歸演算法的實驗中,梯度下降的步長 為0.01,當時也指出了該步長是通過多次時間找到的,且換一組資料後,演算法可能不收斂。...
機器學習之梯度下降法
1 批量 梯度下降 使用整個訓練集的優化演算法被稱為批量 batch 梯度下降演算法。術語 批量梯度下降 指使用全部訓練集,而術語 批量 單獨出現時指一組樣本。2 隨機梯度下降 每次只使用單個樣本的優化演算法被稱為隨機 stochastic 梯度下降演算法。3 小批量梯度下降 大多數用於深度學習的演...
機器學習 梯度下降法
梯度下降法,一般用來求解線性回歸方程,我的理解是根據一組形如 特徵1,特徵2.結果 的資料來找到這些對應的特徵和結果之間的聯絡 例如,我們利用一組 銷量的資料判斷乙個物品的銷量和 之間的關係 我們要求的線性回歸方程可以表示為 銷量 引數 實質上其實就是找到對應的 引數 而當影響乙個結果的特徵不只有乙...