平滑技术(Smoothing Techniques)
考虑一个凸且非光滑的目标函数:
x∈Xminf(x)
为了解决这个问题,一个比较直接的想法是使用一个凸且光滑的函数 fu(x)来近似这个函数。
x∈Xminfu(x)
其中fu是 Lu Lipschitz连续的。
考虑一个简单的例子,函数 f(x)=∣x∣,该函数是凸的,但是是非光滑的。其近似的光滑且凸的函数,为:
fu(x)=⎩⎪⎨⎪⎧2ux2,∣x∣−2u,∣x∣≤u,∣x∣>u
该函数被称为 Huber function。

Nesterov平滑方法使用如下的函数近似f(x):
fu(x)=y∈domf∗max{xTy−f∗(y)−ud(y)},其中f∗(y)=x∈domfmax{xTy−f(x)}。d(y)是一个近似函数,并且是强凸且非负的。
针对Nesterov 平滑方法的分析:
设f∗=x∈Xmin,fu,∗=x∈Xminfu(x),有 fu,∗≤f∗。此外,对于任意的 xt,有:
f(xt)−f∗≤f(xt)−fu,∗⇔f(xt)−f∗≤f(xt)−fu(xt)+fu(xt)−fu,∗。其中最后一个不等式中,f(xt)−fu(xt)是近似误差,fu(xt)−fu,∗是优化误差。
如果应用投影(projected)梯度下降方法,有:
f(xt)−f∗≤O(ut∥A∥22DX2+uDY2)。因此,如果想要误差低于一个阈值ϵ,则需要设置 u=O(DY2ϵ),并且迭代的次数最多为 Tϵ=O(ϵu∥A∥22DX2)=O(ϵ2∥A∥22DX2DY2)
如果使用加速的梯度下降的方法,有:
f(xt)−f∗≤O(ut2∥A∥22DX2+uDY2)。因此,如果想要使得误差低于某个阈值 ϵ,则需要设置 u=O(DY2ϵ),并且迭代次数不会超过 Tϵ=O(ϵu∥A∥2DX)=O(ϵ∥A∥2DXDY)
Moreau-Yosida平滑方法使用如下函数近似 f(x):
fu(x)=y∈domfmin{f(y)−2u1∥x−y∥M2},其中u>0是参数,M−norm定义为 ∥x∥M2=xTMx。
定理:对于任意的 u>0,设 DY2=y∈Ymaxd(y),我们有 f(x)−uDY2≤fu(x)≤f(x)
证明:因为 fu(x)≤f0(x)=f(x),
f(x)−uDY2≤f(x)−ud(y∗)≤fu(x),定理得证。