次梯度(subgradient)方法

2021-08-17 08:51:46 字數 2442 閱讀 1461

本篇部落格來自其他幾篇部落格的整合(詳見參考文獻),主要是提取了一些利於自己理解的小點。

次梯度方法是傳統梯度下降演算法的拓展,傳統梯度下降演算法是為了解決可導凸函式的問題,而次梯度方法主要是為了解決不可導梯度的問題。但是其演算法收斂速度會相對較慢。

次梯度是指對於函式

f f

上的點x' role="presentation" style="position: relative;">x

x滿足一下條件的g∈

rng ∈r

n: f(

y)≥f

(x)+

gt(y

−x) f(y

)≥f(

x)+g

t(y−

x)

即, (1)若f f

是乙個凸函式,若

f' role="presentation" style="position: relative;">f

f在x處可導,則由一階泰勒展開式: f(

y)≥f

(x)+

▽f(x

)t(y

−x) f(y

)≥f(

x)+▽

f(x)

t(y−

x)

(2)若f f

在x處不可導,則仍可得到乙個下屆: f(

y)≥f

(x)+

gt(y

−x)' role="presentation" style="position: relative;">f(y

)≥f(

x)+g

t(y−

x)f(

y)≥f

(x)+

gt(y

−x)這個

g g就是f

' role="presentation" style="position: relative;">f

f的子梯度。

注意:雖然次梯度是針對不可導函式而設計的,但是可導函式也仍然可以使用,因此f f

是非凸函式也是可以的。在點x

0' role="presentation" style="position: relative;">x0x

0的次導數的集合是乙個非空閉區間[a, b],其中a和b是單側極限 a=

limx

−>x−

0f(x

)−f(

x0)x

−x0 a

=limx−

>x0

−f(x

)−f(

x0)x

−x0,a

=limx−

>x+

0f(x

)−f(

x0)x

−x0 a

=limx−

>x0

+f(x

)−f(

x0)x

−x

0a和b一定存在,且a≤b。所有次導數的集合[a, b]稱為函式f f

在x0' role="presentation" style="position: relative;">x0x

0的次導數。f(

x)=|

x|f (x

)=|x

|在x=

0 x=0

的次梯度為[-1, 1]。 a=

limx

−>0−

|x|−

0x=−

xx=−

1 a

=limx−

>0−

|x|−

0x=−

xx=−

1, b=

limx

−>0+

|x|−

0x=x

x=1 b

=limx−

>0+

|x|−

0x=x

x=

1因此,f(

x)=|

x|f (x

)=|x

|在x=

0 x=0

的次梯度為[-1, 1]。

次梯度演算法與梯度下降類似,僅僅是使用次梯度代替梯度,即: x(

k)=x

(k−1

)−tk

⋅g(k

−1),

k=1,

2,3...

x (k

)=x(

k−1)

−tk⋅

g(k−

1),k

=1,2

,3...

其中,g(

k−1)

∈∂f(

x(k−

1)) g(k

−1)∈

∂f(x

(k−1

))

為f(x)

f (x

)在x處的次梯度。

與梯度下降演算法不同的地方在於,次梯度演算法並不是下降演算法,每次對於引數的更新並不能保證代價函式是呈單調遞減的趨勢。

stanford 梯度 梯度下降,隨機梯度下降

一 梯度gradient 在標量場f中的一點處存在乙個向量g,該向量方向為f在該點處變化率最大的方向,其模也等於這個最大變化率的數值,則向量g稱為標量場f的梯度。在向量微積分中,標量場的梯度是乙個向量場。標量場中某一點上的梯度指向標量場增長最快的方向,梯度的長度是這個最大的變化率。更嚴格的說,從歐氏...

梯度下降?梯度上公升?梯度提公升?

最近被這三個詞搞蒙了。原本沒覺得它們有多難區分,但真要向乙個人解釋清類似 為何要有梯度提公升 這類問題,似乎還是很吃力,從而發現自己其實並沒有完全理解其中的含義。也許根本就不存在什麼 梯度上公升 只有 梯度提公升 罷,但我覺得,至少在中文環境裡,大家越發的喜歡無意識地將這兩個詞分別開來,從而這兩個詞...

梯度下降 隨機梯度下降 批梯度下降

下面的h x 是要擬合的函式,j 損失函式,theta是引數,要迭代求解的值,theta求解出來了那最終要擬合的函式h 就出來了。其中m是訓練集的記錄條數,j是引數的個數。梯度下降法流程 1 先對 隨機賦值,可以是乙個全零的向量。2 改變 的值,使j 按梯度下降的方向減少。以上式為例 1 對於我們的...