普通Frank–Wolfe每次向一个有利原子靠近,其他旧权重同比缩小。若某个旧原子已经不合适,反复缩小它可能很慢。远离步允许直接沿“离开这个原子”的方向移动;真正需要记录的状态于是除了当前位置,还有产生它的那份凸组合。
形式陈述
输入、方向与权重更新
设为非空有限原子集,,可行域是它的凸包理路凸包Convex hull包含给定点集的最小凸集,是凸几何中的基本包络对象,并可进一步研究其算法构造。。在的邻域可微、在上凸,梯度在上为-Lipschitz,取正的有效上界。输入一份已知可行表示
以及精确线性最小化oracle、容差与预算。原子集不要求每个成员都是极点,但同一原子只记一次。
在当前状态,沿用Frank–Wolfe的线性oracle与gap理路Frank–Wolfe 条件梯度法Frank-Wolfe method · Conditional gradient method以线性最小化代替投影,在紧凸集内做凸组合,并用线性化间隙认证目标误差。,并在当前支持内寻找最不利原子:
,因为是所比较原子的凸组合。若,返回可行点及误差证书。否则按较大下降量选方向,并在并列时选FW:
当支持只有一个原子时,,不会选到第二分支,因此不会除以零。本页固定使用可直接计算的短步长
未停止时,故。FW分支将旧权重乘,再给加;away分支将所有旧权重乘,再从的权重减。删去恰为零的权重,得到新支持。
在away分支若,称本页的一次drop步:所选原子被删去。其余更新称good步,包括可能一步到达的FW步。这个计数约定用于后文证明,不把FW重置支持与away截短步混为同一类。
直觉
可行性为什么依赖当前表示
FW分支的权重显然非负且和为1。away分支中,除外的权重都增加;唯一可能变负的是
所以恰好保持这份表示非负。全部新权重之和是,因而仍得到。这证明了每轮执行不变量。
在线性oracle值最低的原子之外,算法还查当前支持里值最高的。向靠近和离开都可能降低当前线性模型,比较决定采用哪种。away并不只是把质量从直接交给,而是按原比例增加所有其他当前权重;直接在两个原子之间换质量属于另一种pairwise更新。
下降量怎样支付
对可行线段,下降引理理路下降引理Descent lemma · Quadratic upper-bound lemma以 Lipschitz 梯度常数给出函数相对一阶模型的全局二次上界。给
式(3)在该二次上模型的最小点与权重允许上限之间取较小值。因此每轮目标不增。不过away允许上限可能非常小:即使方向很好,本轮也只能删掉一点剩余权重。这解释了为什么drop不能统一当成具有固定进展量的一轮。
例子与边界
两轮到达一个边界最小点
在概率单纯形上,令
原子为,初始权重各,。梯度为,与内积为零。因此,,应选away。
方向有,未截短步长为;权重只允许。执行后,权重归零,另外两个变为:
第二轮梯度,。按并列规则选FW,,故,得到
此时梯度为,最小原子价格与当前加权价格同为,所以。最优值为。三轮检查中的目标与gap分别是
远离步的几何与权重账 图中第一步是drop,第二步是good。目标下降与支持缩小分别有各自的计算依据,不能只凭某个坐标显示为零就宣布全局最优。
表示上限可能早于几何边界
取正方形原子,权重为,得到。对线性目标,away原子是,,大于FW gap。
当前表示允许,所以drop后位置为,仍在正方形内部。沿同一几何射线其实能走到才碰到,但超过会使原来的权重为负。若想继续走,必须先找另一份非负表示;本算法没有假定拥有这样的额外子程序。
不能只看away gap停止
当只有一个原子时,恒成立,原问题却未必最优。例如在式(5)从出发,away gap为零,但FW方向仍能大幅降低目标。停止量必须是全域线性oracle给的,不是只在当前支持内搜索得到的。
若oracle近似,需像普通FW一样给可信误差预算,不能把一个随意候选的线性差当成精确gap。若目标非凸,一般只是一阶可行性信息,失去全局目标差证书;本页的收敛预算也随之失效。
推论与应用
good步的完整函数值界
令。取正数作为直径的有效上界,并令
如果初始gap已经为零,直接结束。否则,因为每步目标不增。两种方向都有,且所选下降量。
对于未触上限的步,式(4)给
对FW分支若截到,则,式(4)给下降至少。因此每个good步都满足
若尚未达到零误差,取倒数并用可得
drop期间不增,所以倒数也不减。若前次更新共有个good步,求和得到
中途误差为零时后续结论自动成立。式(7)控制目标差,不是给每个末点的同样大小的上界;实际停止仍重算gap。
drop次数为什么受控
记初始支持大小为,前步的away-drop数为。每次这样的drop恰删一个原子;只有FW步能加入新原子,且一次至多加一个,所以加入次数不超过。FW一步到顶点可能再删去其他原子,这只会减少可供未来删除的库存。由于支持始终非空,
从单个顶点启动才可直接说good至少占一半。若初始支持很大,前面可以连续删原子,必须保留这一项。
成本与更强结论的范围
每轮除梯度和线性oracle外,扫描个显式维原子需时间,更新点需、权重需;保存原子和权重需。若全部都显式扫描,线性oracle本身为。稀疏或结构化原子可降低成本,但应按其实际接口重计。
凸性与光滑性已足以给式(7)–(8)。在强凸目标和有限多面体上,还可以用金字塔宽度等几何常数证明更强的线性率;这需要额外的方向—误差比较,不从本页的自动得到。把“这次成功删掉原子”解释为“以后每轮都会几何加速”也没有依据。
参考资料