Skip to content

原则Principle

Lasso 的间隙安全筛除

Gap Safe screening for Lasso · Lasso safe sphere screening

把可行原对偶间隙转成最优对偶点的安全球,再以严格列判据证明某坐标在所有 Lasso 最优解中为零。

形式陈述 ​

采用Lasso的同一定标:P(x)=‖b−Ax‖2/2+λ‖x‖1,λ>0;对偶可行集 C={θ:‖ATθ‖∞≤λ},D(θ)=bTθ−‖θ‖2/2。给定任意系数候选 x和经过核验的 θ∈C,令

G=P(x)−D(θ),R=2G.

最优对偶点 θ∗唯一且位于闭球 B(θ,R)中。对第 j列,若

(1)|AjTθ|+‖Aj‖2R<λ,

那么每一个原问题最优解 x∗都满足 xj∗=0。这是安全筛除:在当前数据、当前损失定标和当前 λ下,可以把这些坐标固定为零,保留全部最优解。

算法输入为候选、合法对偶点、各列范数和数值误差上界。输出已证明可删的索引及逐列余量 λ−|AjTθ|−‖Aj‖R。未通过的列保留;“没有证明可删”不表示它在最优解中一定非零。

直觉

一个近似原始解的零模式会变,不能直接据此删除变量。gap却同时提供原始上界和对偶下界,把未知的最优对偶点限制在一个可计算的球内。若这个球里的每一点都不可能让某列达到KKT阈值,该列就不可能有非零最优系数。

这是先认证区域,再做全区域测试。随着gap变小,半径缩小,可能证明更多坐标为零。它可与坐标下降或FISTA产生的任意候选配合,不要求候选来自某个专用算法。

例子与边界

在第二轮ISTA就得到安全删列证书 ​

仍取

A=(111001),b=(3/2,3/2,0)T,λ=1.

第二轮ISTA候选为 x=(5/6,0)。用残差缩放得到 θ=(1/2,1/2,0),P=23/18、D=5/4,所以 G=1/36、R=1/18。两列范数都是 2,因此

|A1Tθ|+‖A1‖R=1+1/3=4/3,|A2Tθ|+‖A2‖R=1/2+1/3=5/6.

第二列严格小于1,可以安全删除;第一列不能删。注意此时第一系数仍未最优:当前 5/6而最优值为1。筛除证明可以先于整个优化任务完成。

第一轮ISTA虽然已有较小目标,其 G=19/108、A2Tθ=1/3,第二列上界为 1/3+19/27>1,尚不能删。这个对比说明,筛除要实际计算安全余量,不能只看某一列的当前相关性小于阈值。

等号、重复列与改变参数 ​

式(1)必须严格。取 A=(1 1)、b=2、λ=1。任意 x1,x2≥0且 x1+x2=1都是最优解,θ∗=1。即使gap为零,两列的测试值都等于 λ;其中既有 (1,0)也有 (0,1),没有哪列可被证明在所有解里为零。把严格小于改成小于等于会删掉必要的最优解。

反过来,等号不证明系数一定非零。单变量 A=1,b=1,λ=1的唯一最优解为零,但最优对偶相关性也恰等于阈值。筛除是充分条件,不是零坐标的充要识别器。

改变数据或 λ后,原来的可行集、gap或阈值可能改变,必须重新构造证书。尤其减小 λ时,旧安全集合不能直接沿用。安全筛除只认证给定正则化优化解;未知生成模型的真实支持需要噪声、设计和信号条件,统计结论留给对应学习理论。

推论与应用

安全球从何而来 ​

D(θ)=‖b‖2/2−‖θ−b‖2/2,所以最大化 D等价于把 b投影到非空闭凸集 C。这保证唯一 θ∗。由受约束凸问题的一阶最优性,任意 θ∈C满足

⟨b−θ∗,θ−θ∗⟩≤0.

直接展开二次式,

D(θ∗)−D(θ)=−⟨b−θ∗,θ−θ∗⟩+12‖θ−θ∗‖2≥12‖θ−θ∗‖2.

Lasso的强对偶给 D(θ∗)=P∗≤P(x),故 ‖θ−θ∗‖2≤2G。这一步依靠的是对偶二次目标的曲率,并不要求 A满列秩,也不要求原始解唯一。

由Cauchy–Schwarz不等式,球内任意 u满足

|AjTu|≤|AjTθ|+‖Aj‖‖u−θ‖≤|AjTθ|+‖Aj‖R.

因此式(1)推出 |AjTθ∗|<λ。Lasso的KKT规定任何非零最优系数必须达到相关性绝对值 λ,于是 xj∗=0。全部最优原始解共享同一个最优对偶点,所以结论覆盖所有解而非某个被选中的解。

安全执行与费用 ​

若当前候选在已认证可删列上仍非零,把它们置零可能让当前目标暂时上升,但约束后的问题仍保留全部最优解。应更新残差、重新评价目标与证书,不能在旧缓存上继续计算。筛除余量可作为审计记录,解释为何某列被永久固定。

浮点中不能用一个未经界定的负gap开平方,也不能把近似可行的 θ直接视作可行。若有严格数值上界 P―≥P(x)和严格下界 D―≤D(θ),应使用 G―=P―−D―;列相关性和范数也用可靠上界。没有误差界时,在阈值附近保留坐标并报告数值容差,比冒称严格安全更诚实。

一次筛除需所有活跃列的相关性和预计算范数,费用通常为 O(nnz(A)+m+n);与gap检查共享即可。若只用剩余活跃列计算 maxj|AjTr|,缩放所得 θ未必满足原问题已筛列的对偶约束;要报原问题gap,仍需全列可行性检查,或另有覆盖已筛列的严格界。筛除后每次坐标扫掠可少访问一些列,但完整数据的读入、早期扫描和证书费用仍要计入。若所有测试都失败,算法只是没有缩减维数,原始优化仍可继续。

两道短自测 ​

  1. λ=2,G=1/8,‖Aj‖=1,|AjTθ|=1且 θ可行,能删吗?答案:R=1/2,测试值 3/2<2,所以可以。
  2. 同样条件但相关性为 3/2,能删吗?答案:测试值等于2,不能;等号既可能对应零,也可能对应非零最优系数。
参考资料
  • Olivier Fercoq, Alexandre Gramfort and Joseph Salmon, Mind the duality gap: safer rules for the Lasso,ICML 2015,§2.1 的球测试、§3.2 Proposition 1 和 GAP SAFE sphere。原文对偶变量除以 λ,球半径为 2G/λ;本文使用未除以 λ的对偶变量,故半径为 2G、阈值为 λ。
关系图谱9 个相邻概念 · 2 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组
类型化关系