本文是自己学习凸优化的笔记和总结。挂在这里主要是方便自己查。当然,如果能帮到手滑点进来的人也是极好的。
本节关于无约束光滑凸优化的梯度下降法的收敛分析。
上一集传送 : 凸函数,Lipschitz smooth, strongly convex
Gradient descent
梯度下降是一类极为有效的一阶最优化算法。一个无约束的凸优化问题可以写成
minf(x)
最原始的梯度下降的迭代公式可以写作:
xt+1=xt−γ∇f(xt)
其中 α 为步长,∇f(xt) 为梯度。这个迭代公式其实可以解释为对 f(x) 的二阶近似。
f(x)≈f(xt)+∇f(xt)(x−xt)+2γ1∥x−xt∥2
对右侧求导 =0,可推出
∇f(xt)+γ1(x−xt)=0
即梯度下降迭代公式。
Convergence analysis
为方便推导,约定如下简写:
ft:=f(xt)
ft′:=∇f(xt)
rt:=∥xt−x⋆∥
Δt:=ft−f⋆
其中 x⋆:=argminf(x).
首先用下表总结一下原始梯度下降法的收敛速率。
|
L-smooth convex |
L-smooth μ-strongly convex |
Δt≤ |
t2Lr02 |
(k+1k−1)2tr02 |
Δt≤ϵ 所需步数 |
O(ϵ1), sub-linear |
O(klog(ϵ1)), linear |
其中 k:=μL 又称条件数 (condition number).
L-smooth convex function
首先证明以下几个结论成立:
- rt+12≤rt2−γ(L2−γ)∥ft′∥2
- Δt+1−Δt≤−γ(1−2Lγ)∥ft′∥2
- Δt≤rt∥ft′∥
证明
(1)
rt+12(GD iteration)(co-coercivity)=∥xt+1−x⋆∥2=∥xt−γft′−x⋆∥2=rt2−2γ⟨ft′,xt−x⋆⟩+γ2∥ft′∥2≤rt2−L2γ∥ft′∥2+γ2∥ft′∥2=rt2−γ(L2−γ)∥ft′∥2
如果 γ∈[0,L2], 则 rt+12≤rt2. 显然, 最优步长 γ=L1.
(2)
(quadratic upper bound)ft+1(GD iteration)⟹Δt+1−Δt≤ft+⟨ft′,xt+1−xt⟩+2L∥xt+1−xt∥2=ft−γ∥ft′∥2+2Lγ2∥ft′∥2=ft−γ(1−2Lγ)∥ft′∥2≤−γ(1−2Lγ)∥ft′∥2
(3)
(first-order condition)Δt=ft−f⋆(Cauchy-Schwartz)≤⟨ft′,xt−x⋆⟩≤rt∥ft′∥
令 h=γ(1−2Lγ). 如果 γ∈[0,L2],则 h≥0. 若 γ=L1 则 h 取到最大值 2L1.
以下开始分析 L-smooth convex 情况下梯度下降的收敛.
(since 2)Δt+1−Δt(since 3)(since 1)Δt1−Δt+11(since 2)≤−h∥ft′∥2≤−rt2hΔt2≤−r02hΔt2≤−r02hΔt+1Δt≤−r02h
相加以上不等式抵消中间项,得
Δt1⟹Δt(use max h=1/2L)≥Δ01+r02ht≥r02ht≤htr02=t2Lr02
即
ft−f⋆≤t2L∥x0−x⋆∥2
可知达到 ft−f⋆≤ϵ 需要 O(ϵ2L∥x0−x⋆∥2)=O(ϵ1) 次迭代。此为 sub-linear convergence.
L-smooth and μ-strongly convex function
首先证明
Proposition 1. Suppose f is L-smooth and μ-strongly convex. Then we have
⟨fx′−fy′,x−y⟩≥μ+LμL∥x−y∥2+μ+L1∥fx′−fy′∥2.
证明
(1) μ=L. 由 L-smooth 的 co-coercivity 和 \mu-strongly convex 的 coercivity 相加可得。
(2) μ<L.
首先令 ϕ(x)=f(x)−2μ∣x∣2, 易证其为 (L-μ)-smooth.
所以
⟨ϕx′−ϕy′,x−y⟩⟨fx′−μx−fy′+μy,x−y⟩⟨fx′−fy′,x−y⟩−μ∥x−y∥2⟨fx′−fy′,x−y⟩≥L−μ1∥ϕx′−ϕy′∥2≥L−μ1∥fx′−μx−fy′+μy∥2≥L−μ1∥fx′−fy′∥2−L−μ2μ⟨fx′−fy′,x−y⟩+L−μμ2∥x−y∥2≥μ+LμL∥x−y∥2+μ+L1∥fx′−fy′∥2
接下来我们分析 L-smooth and \mu-strongly convex 函数的收敛速率。
∥xt+1−x⋆∥2(Proposition 1)(let γ=μ+L2)(let k=μL)=∥xt−γft′−x⋆∥2=∥xt−x⋆∥2−2γ⟨ft′−f⋆′,xt−x⋆⟩+γ2∥ft′∥2≤∥xt−x⋆∥2−μ+L2γμL∥xt−x⋆∥2−μ+L2γ∥ft′∥2+γ∥ft′∥2=(L+μL−μ)2∥xt−x⋆∥2=(k+1k−1)2∥xt−x⋆∥2
则
∥xt−x⋆∥2≤(k+1k−1)2t∥x0−x⋆∥2
由 L-smoothness quadratic upper bound
ft−f⋆≤2L∥xt−x⋆∥2≤(k+1k−1)2t∥x0−x⋆∥2
k 又叫 condition number, 表示 f 的 hession 的最大特征值和最小特征值的比值。当 k 比较大时 k+1k−1≈1−k1. 另外有不等式 1−a≤e−a. 那么可得
ft−f⋆≤(1−k1)2t∥x0−x⋆∥2≤e−k2t∥x0−x⋆∥2
可知达到 ft−f⋆≤ϵ 需要 O(klog(ϵ1)) 次迭代,此为 linear convergence, 远快于 sub-linear 收敛. 还可以推出条件数 k 越大,收敛速率越糟糕。