次梯度与次梯度算法
对于可微函数可以定义梯度,但是对于一般的函数,梯度不一定存在。对于凸函数,类比梯度的一阶性质,我们引入次梯度的概念,其在凸优化算法设计与理论分析中扮演者重要角色。
一、次梯度定义
设 f f f为适当凸函数, x x x为 f f f定义域中的一点,若向量 g ∈ R n g\in R^n g∈Rn满足
f ( y ) ≥ f ( x ) + g T ( y − x ) , ∀ y ∈ d o m f (1) f(y)\ge f(x) + g^T(y-x), \forall y\in dom f \tag{1} f(y)≥f(x)+gT(y−x),∀y∈domf(1)
则称 g g g为函数 f f f在点 x x x处的一个次梯度。进一步地,称集合
∂ f ( x ) = { g ∣ g ∈ R n , f ( y ) ≥ f ( x ) + g T ( y − x ) } (2) \partial f(x)=\{g|g\in R^n,f(y)\ge f(x) + g^T(y-x)\}\tag{2} ∂f(x)={
g∣g∈Rn,f(y)≥f(x)+gT(y−x)}(2)
为 f f f在点 x x x处的次微分.如图1所示
对于函数 f ( x ) f(x) f(x), g 1 g_1 g1为点 x 1 x_1 x1处的唯一次梯度,而 g 2 , g 3 g_2, g_3 g2,g3为点 x 2 x_2 x2处的两个不同的次梯度。
从次梯度的定义可以看出,次梯度实际上借鉴了凸函数判定定理的一阶条件。定义次梯度的初衷之一也是希望它具有类似于梯度的一些性质。
二、次梯度的性质
性质1:设 f ( x ) f(x) f(x)在 x 0 ∈ i n t d o m f x_0 \in intdom f x0∈intdomf可微,则 ∂ f ( x 0 ) = { ∇ f ( x 0 ) } \partial f(x_0)=\{\nabla f(x_0)\} ∂f(x0)={
∇f(x0)}
性质2:次梯度的单调性
设 f : R n → R f:R^n\rightarrow R f:Rn→R为凸函数, x , y ∈ d o m f x,y\in dom f x,y∈domf,则
( u − v ) T ( x − y ) ≥ 0 (u-v)^T(x-y)\ge 0 (u−v)T(x−y)≥0
其中 u ∈ ∂ f ( x ) , v ∈ ∂ f ( y ) u\in\partial f(x), v\in\partial f(y) u∈∂f(x),v∈∂f(y)
性质3:凸函数的非负线性组合
设 f x , f 2 f_x,f_2 fx,f2为凸函数,且满足二者定义域交集非空,若 x ∈ d o m f 1 ∩ d o m f 2 x\in domf_1\cap domf_2 x∈domf1∩domf2, 且 f ( x ) = α 1 f 1 ( x ) + α 2 f 2 ( x ) f(x)=\alpha_1 f_1(x)+\alpha2 f_2(x) f(x)=α1f1(x)+α2f2(x),则 f ( x ) f(x) f(x)的次微分 ∂ f ( x ) = α 1 ∂ f 1 ( x ) + α 2 ∂