本文主要讨论在优化模型求解中用到的高级优化算法,这些算法基于常见的优化算法思想,采用一些非常巧妙的技巧,而使得算法到达更快的收敛等特点。这些高级优化算法也只限定于特定的模型求解,下面将对其进行简单总结。
1. Surrogate方法
首先我们考虑一些简单的优化问题minx12∥x−x0∥22+λ∥x∥1,事实上我们只需要对x向量中的每一个元素进行展开求解即可,它的优化解的表达式如下:
其中,sign为符号函数。
下面我们考虑ℓ2范数正则化约束,问题形式化为minx12∥x−x0∥22+λ∥x∥2,同理我们只需要对x向量中的每一个元素进行展开求解即可,它的优化解的表达式如下:
考虑ℓ∞范数正则化约束,问题形式化为minx12∥x−x0∥22+λ∥x∥∞。由于ℓ∞的共轭为ℓ1barrior函数,因此上述问题的对偶形式为
miny12∥y−x0∥22s.t.∥y∥1<λ
其中y=x0−x。通过转换的形式则通过ℓ1约束问题很好求解。下面介绍另一种求解ℓ∞范数正则化约束问题。首先判断∥x0∥1的取值,如果小于等于λ,则x=0;否则,我们对x0向量中每一个元素取绝对值,并安降序排列,记为{v1,⋯,vj,⋯,vM}。取j^=max{j:λ−∑jr=1(vr−vj)>0}。则最后x的优化解形式如下:
下面我们继续考虑矩阵ℓ∗核范数正则化约束问题,该问题可以形式化为minA12∥X−A∥2F+∥A∥∗,这类问题的求解一般采用矩阵的SVD分解,X=USVT;再使用Surrogate策略。一般优化解的形式如下:
A=U∗S^∗VT
其中S^的表达式如下:
S^=T(S)=⎧⎩⎨S−ϵS>ϵS+ϵS<−ϵ0otherwise
2. Accelerated Gradient Algorithm
我们考虑一个常见的优化问题,形式化为minWf(W)+λψ(W),函数的具体形式视情况而定。比如在机器学习领域,f(W)一般为总体训练样本的损失函数,f(W)=1N∑nℓ(χn,W),χn={xn,yn}为训练样本,而ℓ为具体的损失函数,比如平方损失,logistic 损失,hinge损失等;ψ(W)一般为待训练参数W的正则化约束,这里我们考虑混合约束
一般而言,上式问题的求解可以采用子梯度下降法优化
minWf(Wt)+<W−Wt,∇f(Wt)>+L2∥W−Wt∥2F+λψ(W)
其中<A,B>=Tr(ATB)。下面对上式进行重新整理得:
minW12∥W−(Wt−1L∇f(Wt))∥2F+λL∥W∥1,∞
其中∥W∥1,∞=∑j∥Wj∥∞,即为每一行元素绝对值的最大值累加。为了简化上式,我们令V=Wt−1L∇f(Wt)和λ^=λL,则
minW12∥W−V∥2F+λ^∥W∥1,∞
同样,上式问题可以各个维度上的子问题求解,下面我们仅考虑矩阵W,V的第i行,记着
minw12∥w−v∥22+λ^∥w∥∞
如果原始问题为ψ(W)=∥W∥1,2混合范数约束,则此时的优化子问题为:
minw12∥w−v∥22+λ^∥w∥2
因此上述问题求解。可知,该方法对优化目标函数采用泰勒近似展开达到对原问题的简化,从而加快算法的收敛速度。
1484

被折叠的 条评论
为什么被折叠?



