Mirror Descent

文章整理了Mirror Descent相关的概念、基本定理,主要参考资料为[1]

Mirror Descent

Mirror Descent可以看做Proximal的推广,其迭代流程如下

xt+1=argminxC{f(xt)+f(xt),xxt+1ηtDφ(x,xt)}=argminxC{\boldg,xxt+1ηtDφ(x,xt)}

如果f(xt)不存在的话可以用次梯度f(xt)=\boldg,如果对于proximal gradient descent不熟悉,可以查看部分[6](也可以看一下我之前的博文优化整理)。

式子中Dφ(x,xt)表示的是一种距离度量,称为Bregman divergence。相对于Proximal中的近端算子,Mirror Descent中也会用到投影的方法,Bregman Projection。我们希望我们选择的距离度量具有以下三个特点

  • 拟合f函数的局部曲率
  • 在几何上与约束集合C想匹配
  • Bregman projection操作尽量简单

Bregman Divergence

要先说清楚Mirror Descent就先得说清楚bregman divergenceBregman divergence是一种广义的距离度量,定义如下

对于一个在定义域C上强凸且可微的函数φ,定义Bregman divergence如下

Dφ(x,y)=φ(x)φ(y)φ(y)T(xy)

Bregman divergence的详细含义和图示化的理解可以参看[2],简单来说,其表示的是xf函数上在其y切线上插值,如图中蓝色的线段

sKDtXR.png

关于为什么说Bregman divergence是一种广义的度量以及详细的例子,可以参看[5]

sKymXd.png

Bregman divergence有如下几条简单的性质

  • Dφ(x,y)0,根据φ的强凸性
  • Dφ(x,y)对于x来说也是凸函数
  • Dφ(x,y)Dφ(y,x)
  • Dφ1+λφ2(x,y)=Dφ1(x,y)+λDφ2(x,y)
  • xDφ(x,y)=φ(x)φ(y)
  • 如果φλ-strongly convex,那么Dφ(x,y)λ2xy2

Three-point lemma

对于x,y,zC,有下式成立

Dφ(x,z)=Dφ(x,y)+Dφ(y,z)φ(z)φ(y),xy

这个定理证明将Bregman Divergence展开就可以得到,详细过程[1]

sKy7ge.png

Bregman Projection

Bregman Projection的定义如下

给定点x,其在约束集合C上的Bregman projection为

PC,φ(x)=argminzCDφ(z,x)

Generalized Pythagorean Theorem

xC,φ=PC,φ(x),则

Dφ(z,x)Dφ(z,xC,φ)+Dφ(xC,φ,x)

上面的定理说的就是在bregman divergence上定义的勾股定理,证明需要用到xC,φ的性质,即

0Dφ(z,x)|z=xC,φ=φ(x)φ(xC,φ)=\boldg

再利用凸函数的性质,可以得到

\boldg,zxC,φ0

再利用上面的Three-point lemma,即可得到上面的广义勾股定理,详细证明过程可以参看[1]

Alternative form of Mirror Descent

回到最开始的mirror descent更新公式,

xt+1=argminxC{f(xt)+f(xt),xxt+1ηtDφ(x,xt)}=argminxC{\boldg,xxt+1ηtDφ(x,xt)}

现在我们gt,xxt+1ηtDφ(x,xt)=0,可以得到:

φ(yt+1)=φ(xt)ηt\boldgt

因为这是我们没用在约束集C上进行投影,就先用yt+1来表示未投影的xt+1yt+1可以看作为未进行bregman projection之前的解,那么

xt+1PC,φ(yt+1)=argminzCDφ(z,yt+1)

第一个式子可以通过,假设我们没有假设C的假设,求原始问题的极小值,令其导数为\bold0得到。第二个式子是我们实际上是由约束的,所以我们要进行一步bregman projection。

上述方法求解原始问题的证明如下(5.3a那一行少了一个):

sKxS0A.png

进一步的,如果C=Rn,可以都得到

xt+1=φ(φ(xt)η\boldgt)=(φ)1(φ(xt)η\boldgt)

φ=(φ)1φ表示共轭。

证明需要一些次梯度的理论,可以参看[3]的前几页内容。

详细证明过程推荐看原资料[1]xt+1=(φ)1(φ(xt)η\boldgt)只需要对argminzCDφ(z,yt+1)z求导即可。

Convergence Analysis

凸且连续的问题

对于f是凸且Lipschitz连续的函数,次梯度对偶范数满足gLf,如果φ对于特定的范数空间是ρ强凸函数,则有

fbest,tfoptsupxCDφ(x,x0)+Lf2k=0tηk22ρk=0tηk

如果ηt=2ρRLf1t,其中R:=supxCDφ(x,x0),则

fbest,tfoptO(LfRρlogtt)

在上面的式子中,除去f本身的Lfρ以外,它的upper bound只跟如何选择φ,即度量Dφ有关。在[1]中,也拿一个distribution的simplex例子对比了bregman divergence作为欧氏距离和KL divergence时收敛上届的差别。

在看收敛速度,虽然这里写的是logtt但是如果假定ηt是恒定恒定的话,结果应该是O(1t)的收敛速度

要证明上面的收敛性,需要先证明下面式子

ηt(f(xt)fopt)Dφ(x,xt)Dφ(x,xt+1)+ηt2Lf22ρ

f(xt)f(x)\boldg,xtx=1ηtφ(xt)φ(yt+1),xtx=1ηtφ(yt+1)φ(xt),xxt=1ηt(Dφ(x,yt+1)+Dφ(x,xt)+Dφ(xt,yt+1))1ηt(Dφ(x,xt)+Dφ(xt,yt+1)Dφ(x,xt+1)Dφ(xt+1,yt+1))=1ηt(Dφ(x,xt)Dφ(x,xt+1))+1ηt(Dφ(xt,yt+1)Dφ(xt+1,yt+1))

现在只需要证明Dφ(xt,yt+1)Dφ(xt+1,yt+1)ηt2Lf22ρ即可

Dφ(xt,yt+1)Dφ(xt+1,yt+1)=φ(xt)φ(yt+1)φ(yt+1),xtyt+1φ(xt+1)+φ(yt+1)+φ(yt+1),xt+1yt+1=φ(xt)φ(xt+1)φ(yt+1),xtxt+1φ(xt),xtxt+1ρ2xtxt+12φ(yt+1),xtxt+1=ηt\boldgt,xtxt+1ρ2xtxt+12ηtLfxtxt+1ρ2xtxt+12ηt2Lf22ρ

现在我们有Dφ(x,xt)Dφ(x,xt+1)的递推关系,只需要累加起来就可以得到最开始的证明了。

除了上述的证明外,还可以参考一下[7],在阅读之前请先阅读Fenchel dual内容

这里,将θt=φ(xt)表示对偶空间的向量,那么

Dφ(θt+1,θ)=Dφ(θt+1,θt)+Dφ(θt,θ)+φ(θt)φ(θ),θt+1θt=Dφ(θt+1,θt)+Dφ(θt,θ)xtx,ηtgt≤=Dφ(θt+1,θt)+Dφ(θt,θ)+ηt(f(x)f(xt))

Gradient Descent & Fenchel dual

要讲清楚Gradient Descent和Mirror Descent区别到底在哪里,首先要讲一讲Fenchel dual。

首先f的共轭函数(即Fenchel dual),f定义如下

f(y)=supx{yTxf(x)}

接下来我们讲一讲这个共轭函数的性质

  • f=f, 当f是凸且闭的函数
  • y,xf(y)+f(x)
  • f是convex and closed,xf(y)yf(x)x,y=f(x)+f(y)

我们可以看到,f(x)的导数(次梯度)是其对偶空间的一个向量,在进行梯度下降时,我们实际上是将两个空间的向量进行运算[8]。这里强烈建议阅读一下原文,在P7。因此实际上,Mirror Descent做的就是将在对偶空间的梯度再次通过f这样的操作,映射会原本的参数空间。

参考资料

  1. Priceton ELE522
  1. Meet the Bregman Divergences
  1. MIT 253
  1. Mirror descent: 统一框架下的first order methods
  1. 覃含章: 如何理解Bregman divergence
  1. Xinyu Chen: 近端梯度下降法
  1. EE364b, Convex optimizatio, stanford
  1. CPSC 531H, Machine learning theory, ubc
posted @   Neo_DH  阅读(1555)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
点击右上角即可分享
微信分享提示