强凸性多用在优化中(Optimization),特别是保证很多基于梯度下降方法的算法的线形收敛速率的条件之一。
一个可微函数强凸的定义是:
f
(
y
)
≥
f
(
x
)
+
∇
f
(
x
)
T
(
y
−
x
)
+
u
2
∥
y
−
x
∥
2
f(y) \ge f(x) +\nabla f(x)^T(y-x)+\frac{u}{2} \Vert y-x \Vert ^2
f(y)≥f(x)+∇f(x)T(y−x)+2u∥y−x∥2
值得注意的是,强凸性并不要求函数处处可微(differentiable),当函数不光滑的时候,梯度即用次梯度(sub-gradient)代替。从表达式来看,强凸比一般的凸函数更严格在于其中的的二次项 u 2 ∥ y − x ∥ 2 \frac{u}{2}\Vert y-x \Vert ^2 2u∥y−x∥2.因此可以将其表述为u-strong convex。
这个强凸的性质是很重要的。直观从一维函数来说,一般凸函数只要求函数曲线在其切线之上,至于“上”多少没有要求,也就意味着曲线可以无限“贴着”切线,只要保持在其上就行了。毫无疑问,在优化特别是梯度优化中,这种微弱的梯度变化很难实现快速优化,有可能在有限次数还达不到收敛。如果我们取一个接近最小值的解,这也很难。“非常”接近只是一个定性理解,在这种情况下会出现最优解很近似但是决策变量相差巨大的糟糕情况。这时候,多加一个二次项的,保证有一个二次下界,那么不会出现“贴着”切线的情况,优化也变得更加简单。
有的情况下,没有强凸的条件,可以人为加上一个二次项,以获得强凸特性。
性质
除了定义的性质外,强凸函数还有以下的性质。
- ( ∇ f ( x ) − ∇ f ( y ) ) T ( x − y ) ≥ u ∥ x − y ∥ 2 (\nabla f(x)-\nabla f(y))^T(x-y)\ge u \Vert x-y \Vert^2 (∇f(x)−∇f(y))T(x−y)≥u∥x−y∥2
- f ( a x + ( 1 − a ) y ) ≤ a f ( x ) + ( 1 − a ) f ( y ) − α ( 1 − α ) u 2 ∥ x − y ∥ 2 , α ∈ [ 0 , 1 ] f(ax+(1-a)y)\le af(x)+(1-a)f(y)-\frac{\alpha(1-\alpha)u}{2}\Vert x-y\Vert^2,\alpha\in [0,1] f(ax+(1−a)y)≤af(x)+(1−a)f(y)−2α(1−α)u∥x−y∥2,α∈[0,1]
其余情况
某些情况也会表示函数是强凸性质的,其中第一条被称为 Polyak-Lojasiewicz(PL)不等式。
- 1 2 ∥ ∇ f ( x ) ∥ 2 ≥ u ( f ( x ) − f ∗ ) \frac{1}{2}\Vert \nabla f(x)\Vert^2\ge u(f(x)-f^*) 21∥∇f(x)∥2≥u(f(x)−f∗)
- ∥ ∇ f ( x ) − ∇ f ( y ) ∥ ≥ u ∥ x − y ∥ \Vert \nabla f(x)- \nabla f(y)\Vert \ge u \Vert x-y \Vert ∥∇f(x)−∇f(y)∥≥u∥x−y∥
- f ( y ) ≤ f ( x ) + ∇ f ( x ) T ( y − x ) + 1 2 u ∥ ∇ f ( y ) − ∇ f ( x ) ∥ 2 f(y)\le f(x)+\nabla f(x)^T(y-x)+\frac{1}{2u}\Vert \nabla f(y)-\nabla f(x)\Vert^2 f(y)≤f(x)+∇f(x)T(y−x)+2u1∥∇f(y)−∇f(x)∥2
- ( ∇ f ( x ) − ∇ f ( y ) ) T ( x − y ) ≤ 1 u ∥ ∇ f ( x ) − ∇ f ( y ) ∥ 2 (\nabla f(x)-\nabla f(y))^T(x-y)\le \frac{1}{u}\Vert \nabla f(x)-\nabla f(y)\Vert^2 (∇f(x)−∇f(y))T(x−y)≤u1∥∇f(x)−∇f(y)∥2