(编辑说明:在竭尽全力之后,我对其进行了重新组织。)
关于坐标下降的文献可能很难找到。这是一些原因。
对于更通用的下降方法,伞形定理中包含了坐标方法的许多已知属性。这两个例子,下面给出的,是在强凸(适用于任何快速收敛陡下降),以及这些方法的一般的收敛(通常归因于Zoutendijk)。升p
命名不是标准的。甚至“最速下降”一词也不是标准的。您可能会成功使用谷歌搜索“循环坐标下降”,“坐标下降”,“ Gauss-Seidel”,“ Gauss-Southwell”中的任何术语。用法不一致。
循环变量很少受到特别提及。相反,通常仅讨论最佳的单一坐标选择。但这几乎总是提供循环保证,尽管有一个额外的因数(变量数):这是因为大多数收敛分析都是通过下限限制单个步骤的改进来进行的,而您可以忽略额外的坐标。似乎很难说出任何关于周期性购买因素的一般信息,因此人们只做最好的协调,通常可以验证n因子。ññ
率在强凸度下。最简单的情况是您的目标函数是强凸的。在此,所有梯度下降变体的比率均为Ø(LN(1 / ϵ ))。博伊德和范登伯格的书证明了这一点。证明首先给出梯度下降的结果,然后使用范数等价给出一般l p的结果升p最速下降。
约束条件。没有强烈的凸度,您必须开始小心一点。您没有对约束发表任何评论,因此总的来说,这种局限性可能无法实现。我将简要讨论约束的主题,标准方法(使用下降方法)是将每次迭代投影到约束集上以保持可行性,或者使用障碍将约束纳入目标函数中。在前者的情况下,我不知道它在坐标下降中的作用;在后者的情况下,它在坐标下降的情况下可以很好地工作,并且这些障碍可以是强烈凸出的。
更具体地说,对于坐标方法,而不是投影,许多人只是使坐标更新保持可行性:例如,Frank-Wolfe算法及其变体(即,使用它来求解SDP)就是这种情况。
我还将简要说明一下,用于SVM的SMO算法可以看作是一种协调下降方法,您可以在此同时更新两个变量,并在此过程中保持可行性约束。在这种方法中,变量的选择是启发式的,因此保证实际上只是循环保证。我不确定这种联系是否出现在标准文献中。我从安德鲁·伍(Andrew Ng)的课程笔记中了解了SMO方法,并发现它们非常干净。
一般收敛保证。我知道在这种更通用的设置(对于坐标下降)中,要弱得多。首先,由于Zoutendijk,有一个古老的结果是,所有这些梯度变体都保证了收敛。您可以在Nocedal&Wright的书中找到它,并且它也出现在Bertsekas的一些书中(至少,“非线性编程”有它)。这些结果仍然适用于比坐标下降更为通用的东西,但是您可以将它们专用于坐标下降,然后通过乘以得到循环部分。ñ
Ø(LN(1 / ϵ ))
关于坐标下降的一些最新结果,我在arXiv上看到过一些东西。另外,罗&曾有一些较新的论文。但这是主要的东西。
∑米我= 1G(⟨ 一一世,λ ⟩ )G(一个一世)米1个λ经验值(1 / ϵ2)O(1 / ϵ)
确切更新的问题。同样,在大多数情况下,您也没有封闭形式的单坐标更新。或者确切的解决方案可能根本不存在。但是幸运的是,有很多行搜索方法可以得到与精确解决方案基本相同的保证。可以在标准非线性编程课本中找到这种材料,例如,在上面提到的Bertsekas或Nocedal&Wright书中。
对比您的第二段:什么时候工作良好。
首先,上面提到的许多针对梯度下降的坐标下降分析。那么,为什么不总是使用坐标下降呢?答案是,对于许多适用梯度下降的问题,您还可以使用牛顿法,可以证明其收敛性更好。我不知道通过协调下降来获得牛顿优势的方法。而且,可以通过Quasinewton更新来减轻Newton方法的高成本(例如,参见LBFGS)。
升0ķķķķ迭代。Shalev-Shwartz,Srebro和Zhang撰写了一篇有关此主题的出色论文,标题为“在具有稀疏性约束的优化问题中稀疏性的交易准确性”。对于您的问题的第二段,本文尤其针对F