前言
机器学习与控制领域的结合研究最近得到很多研究者的关注,但是文献中的数学推导与讨论往往省略了很多细节与背景知识,本系列的文章主要基于最新文献,尝试复现并详化其中的数学推导与讨论,希望刚刚入门的同学也可以很容易地理解。也欢迎各位同学的批评指正,共同学习!
本文是机器学习与控制系列的第一篇文章,主要深入介绍交替方向乘子法 Alternating Direction Method of Multipliers(ADMM)算法的常微分方程 Ordinary Differential Equation(ODE)模型以及基于Lyapunov函数的收敛分析。优化算法的收敛速度分析往往比较复杂,而且没有统一的数学工具来分析。将优化算法转换为ODE方程,然后结合控制理论中简单的稳定性分析,我们可以很容易地得到算法的收敛速度。本文中我们将使用Lyapunov函数的方法来分析得到的ODE方程的稳定性,进而得出收敛速度。
本文主要分为一下几个部分,第一部分为ADMM背景介绍,简单介绍ADMM优化算法以及ODE建模优化算法的背景;第二部分主要介绍Lyapunov函数的背景知识;第三部分详细推导如何用ODE建模ADMM算法;最后通过Lypunov函数分析ADMM算法的收敛速度。有基础的同学可以跳着阅读。
注:本文基于以下文献:[ADMM and accelerated ADMM as continuous dynamical systems](ADMM and Accelerated ADMM as Continuous Dynamical Systems).
ADMM算法
假设我们考虑如下的优化问题:
其中:
-
- 矩阵
-
-
ADMM的迭代更新如下:
其中
Lyapunov函数
Lyapunov函数为控制理论中很重要的用来分析系统平衡点稳定性的工具。简单来说,我们针对某个系统构建Lyapunov函数
我们考虑以下的一阶ODE系统模型:
首先定义系统的平衡点为
定理: 假设
2.
3.
那么
ADMM算法的ODE模型
我们将通过上式
将 (2b) 左乘
假设
下面我们研究向量
所以,对 (3) 式求极限 (
下面我们考虑式 (2c) 的第
对上式求极限 (
上式对向量中的每一项都满足,可得
基于假设,矩阵
基于Lypunov函数的算法稳定性与收敛分析
本节我们将讨论通过选择合适的Lyapunov函数,我们可以证明ADMM算法的稳定性以及得到ADMM算法的收敛速度。上节中我们得到了ADMM算法的ODE形式:
下面的定理给出了ADMM算法稳定性的结果:
定理: 假设
所以
证明: 由于
我们可以得到此函数满足对 Lyapunov 函数条件
对
因为我们假设
从而我们证明了
通过对动态系统 (5) 构造不同的 Lyapunov 函数,我们还可以研究 ADMM 算法的收敛速度,即目标函数需要多久可以收敛到最优值。比如,如果我们考虑下面的 Lyapunov 函数:
很容易我们可以得到此函数满足对 Lyapunov 函数条件
对
上式中,我们有:
所以
所以,当我们假设目标函数为凸函数时,通过对 ADMM 算法的ODE形式构造合适的 Lyapunov 函数得到目标函数的收敛速度为
在 França, Robinson 和 Vidal 2018年的 ADMM 文章中,还对加速 ADMM (Accelerated ADMM) 进行了ODE建模,并通过构造 Lyapunov 函数了分析了该算法的稳定性和收敛速度。感兴趣的同学可以看看原始论文。
通过结合控制理论中已经发展很成熟理论 (Lyapunov 函数) 来研究优化算法的收敛性质最近收到越来越多人的关注,一方面是因为成熟的控制理论一定程度上简化了传统繁琐的证明过程。另一方面,通过对系统的深入分析,我们可以得到一系列优化算法的变种。由理论指导实践,我相信这将会是以后的一个重要的研究方向。
参考文献
[1]: França, G., Robinson, D.P. and Vidal, R., 2018. ADMM and accelerated ADMM as continuous dynamical systems. arXiv preprint arXiv:1805.06579.