本文是自己学习凸优化的笔记和总结。挂在这里主要是方便自己查。当然,如果能帮到手滑点进来的人也是极好的。
本节关于凸函数和与之相关的一些性质。
下一集传送: 梯度下降法(无约束 + 光滑 + 凸函数)
Convex function
定义
f is convex if
- dom f is convex and
- (Jensen's inequality) αf(x)+βf(y)≥f(αx+βy) for all x,y, for all α,β≥0 s.t. α+β=1.
一阶等价条件
For differentiable f, f is convex ⟺
- dom f is convex and
- f(y)≥f(x)+∇f(x)T(y−x) for all x,y.
一阶条件的几何意义是凸函数上任意点的切线都是凸函数的 under-estimator. 因为这个切线仿佛承接住了整个函数 f, 所以又叫 supporting hyperplane.
二阶等价条件
For twice differentiable f, f is convex ⟺
- dom f is convex and
- ∇2f(x)⪰0 for all x.
二阶条件表明凸函数任意一点“曲度”都是凸的。也可以说梯度是单调的。
单调梯度等价条件
For differentiable f, f is convex ⟺
- dom f is convex and
- (∇f(x)−∇f(y))T(x−y)≥0.
证明
⟹:
由一阶条件得
f(y)≥f(x)+∇f(x)T(y−x)
f(x)≥f(y)+∇f(y)T(x−y)
相加两式得证.
⟸:
定义 g(t)=f(x+t(y−x)), 那么 g′(t)=∇f(x+t(y−x))T(y−x).
那么对于 t≥0, 由于 (∇f(x)−∇f(y))T(x−y)≥0 所以 g′(t)−g′(0)≥0.
那么 g(1)−g(0)=∫01g′(t)dt≥∫01g′(0)dt=g′(0)
即 f(y)≥f(x)+∇f(x)T(y−x) for all x,y.
Lipschitz smooth
定义
f is L-smooth if ∣∣∇f(x)−∇f(y)∣∣2≤L∣∣x−y∣∣2 for all x,y.
L-smooth 表明一个函数的梯度的变化不会太突兀,或者说这个函数比较平滑。
等价条件
- f is convex and L-smooth.
- (∇f(x)−∇f(y))T(x−y)≤L∣∣x−y∣∣22 for all x,y.
- g(x)=2LxTx−f(x) is convex.
- (quadratic upper bound) 0≤f(y)−f(x)−∇f(x)T(y−x)≤2L∣∣x−y∣∣22
- f(y)≥f(x)+∇f(x)T(y−x)+2L1∣∣∇f(x)−∇f(y)∣∣22
- (co-coercivity) (∇f(x)−∇f(y))T(x−y)≥L1∣∣∇f(x)−∇f(y)∣∣22.
证明
1⟹2:
∣∣∇f(x)−∇f(y)∣∣2∣∣∇f(x)−∇f(y)∣∣2⋅∣∣x−y∣∣2(Cauchy-Schwartz)(∇f(x)−∇f(y))T(x−y)≤L∣∣x−y∣∣2≤L∣∣x−y∣∣22≤L∣∣x−y∣∣22
2⟺3:
(∇f(x)−∇f(y))T(x−y)≤L∣∣x−y∣∣22=L(x−y)T(x−y)
(Lx−∇f(x)−Ly+∇f(y))T(x−y)≥0
即 (∇g(x)−∇g(y))T(x−y)≥0,
由单调梯度条件, g 是 convex.
3⟺4: 利用 g 为 convex 的一阶条件。
4⟹5:
令 z=y+L1(∇f(x)−∇f(y)).
f(y)−f(x)(quadratic upper bound)(substitute z)=f(y)−f(z)+f(z)−f(x)≥−∇f(y)T(z−y)−2L∣∣y−z∣∣22+∇f(x)T(z−x)≥−L1∇f(y)T(∇f(x)−∇f(y))−2L1∣∣∇f(x)−∇f(y)∣∣22+∇f(x)T(y−x)+L1∇f(x)T(∇f(x)−∇f(y))=∇f(x)T(y−x)+2L1∣∣∇f(x)−∇f(y)∣∣22
5⟹6:
由 5,
f(y)≥f(x)+∇f(x)T(y−x)+2L1∣∣∇f(x)−∇f(y)∣∣22
f(x)≥f(y)+∇f(y)T(x−y)+2L1∣∣∇f(x)−∇f(y)∣∣22
两式相加得 6.
6⟹1:
对 6 的左边使用 Cauchy-Schwartz 不等式可得 L-smooth.
6 的右边 ≥0, 使用单调梯度可得 convex.
从几何上理解 L-smooth 函数,f 的下界为超平面,上界为二次函数。如下图所示。
L-smooth 函数
Strongly convex
定义
f is μ-strongly convex if f(x)−2μxTx is convex.
一个函数减去二次函数仍然是 convex, 说明它至少有这个二次函数这么凸。或者说这个二次函数是它的一个下界。如下图所示。
Strong convex 函数
等价条件
- f is differentiable and μ-strongly convex.
- f is differentiable and f(αx+βy)≤αf(x)+βf(y)−2μαβ∣∣x−y∣∣22 for all x,y, for all α,β≥0 s.t. α+β=1.
- (quadratic lower bound) f(y)≥f(x)+∇f(x)T(y−x)+2μ∣∣y−x∣∣22.
- (strong monotonicity or coercivity) (∇f(x)−∇f(y))T(x−y)≥μ∣∣x−y∣∣22.
证明
$1 \iff 2 $: 使用 convex 函数定义.
$1 \iff 3 $: 使用 convex 函数的一阶条件.
$1 \iff 4 $: 使用 convex 函数的单调梯度条件.
References
-
Lecture notes: Gradient method. EE236C - Optimization Methods for Large-Scale Systems (Spring 2016). Vandenberghe, UCLA.
-
Zhou, X. (2018). On the Fenchel Duality between Strong Convexity and Lipschitz Continuous Gradient. arXiv preprint arXiv:1803.06573.