When AUC meets DRO: Optimizing Partial AUC for Deep Learning with Non-Convex Convergence Guarantee

Zhu D., Li G., Wang B., Wu X. and Yang T. When AUC meets DRO: Optimizing partial auc for deep learning with non-convex convergence guarantee. In International Conference on Machine Learning (ICML), 2022.

本文如何准确快速的优化 Partial AUC.

符号说明

  • S={(x1,y1),,(xn,yn)},y{1,1}, a set of training data;
  • S+={(x,y)S|y=1};
  • S={(x,y)S|y=1};
  • 假设正样本 x+P+, 负样本 xP;
  • h(x;θ), score function given x;
  • [s]+=max(s,0);
  • n+=|S+|,n=|S|;
  • S[k1,k2]S:
    1. 根据 h(x;θ) 进行(下降)排序;
    2. S[k1,k2] 表示位于第 k1k2 间的样本;
  • 类似地可以定义 S[k1,k2].

pAUC

  • 我们知道, FPR 实际上衡量的是:

    FPR(t):=P(h(x)>t);

    相应的, TPR 衡量的是:

    TPR(t):=P+(h(x+)>t),

    而 AUC 衡量的是:

    P(h(x+)>h(x)).

  • 故 AUC 时常作为训练指标来帮助训练模型, 传统地 (maximize) AUC 实际上就是最大化上图最左的阴影部分的面积, 但是在实际中, 我们可能更希望优化右边的两种情况.

  • 它们分别是 one-way pAUC 和 two-way pAUC:

    • one-way pAUC (OPAUC): 限定 FPR 在 [α,β] 内阴影部分的面积:

      OPAUC(h,α,β):=αβTPR(FPR1(u))du=P{h(x+)>h(x),h(x)[FPR1(β),FPR1(α)]}.

    • two-way pAUC (TPAUC): 限定 FPR 在 β, TPR 在 α 内阴影部分的面积.

      TPAUC(h,α,β):=αβTPR(FPR1(u))du=P{h(x+)>h(x),h(x+)[TPR1(1),TPR1(α)]h(x)[FPR1(β),FPR1(0)]}.

  • 我们可以通过如下方式估计二者:

    OPAUC^(h,α,β)=1n+nxiS+xjS[k1+1,k2]I(h(xi)>h(xj)),

    其中 k1=nα,k2=nβ.

    TPAUC^(h,α,β)=1n+nxiS+[1,k1]xjS[1,k2]I(h(xi)>h(xj)),

    其中 k1=n+α,k2=nβ.

  • 但是上面估计式仍然存在两个问题:

    1. non-smooth;
    2. 排序需要耗费大量时间.

近似策略

  • 首先, 为了解决 non-smooth 的问题, 用如下损失替代 I(h(xi)>h(xj)):

    (1)L(xi,xj;θ)=(h(xi;θ)h(xk;θ)),

    要求 是单调递减的可微凸函数, 比如常用的:
    1. (s)=(cs)+2;
    2. (s)=log(1+exp(s/c)).

  • 接下来, 我们需要解决排序的问题, 首先定义:

    (2)L^ϕ(xi;θ)=maxpΔxjSpjL(xi,xj;θ)λDϕ(p,1/n),

    此为正样本 xi 的一个不确定度 Δ 内的鲁棒损失. 直观上, 它反映了当前参数 θ 下, xi 与其负样本 xj 间的最小差异, Dϕ 反映的时候权重 p 和平均权重间的一个差异 Dϕ(p,1/n)=1niϕ(npi) (后者是最一般的一种权重选择方式). 本文考虑两种差异度量方式:

    1. KL 散度: ϕkl(t)=tlogtt+1;
    2. CVaR divergence: ϕc(t)=I(0<t1/γ)
  • 对于 CVaR divergence, 关于 θ 最小化 (2) 等价于:

    (3)minθminsRn+F(θ,s)=1n+xiS+(si+1βψi(w,si)),

    其中 ψi(w,si)=1nxjS(L(xi,xj;θ)si)+. **作者证明, 当 满足所要求的那些性质的时候, (3) 是严格等价于优化 OPAUC 的.

  • 对于 KL divergence, 关于 θ 最小化 (2) 等价于

    (4)minθ1n+xiS+λlogExjSexp(L(xi,xj;θ)λ).

    注意到, 当 λ=0 的时候, 等价于 OPAUC^(h,0,1n), 当 λ=+ 的时候, 等价于 OPAUC^(h,0,1), 故调节 λ 相当于在两个极端的 OPAUC 间调节.

  • 关于 (3) (4) 的实际优化, 作者提出了如下的 SOPA 和 SOPA-s 分别进行优化 (注意, 下面的 w 为上面的 θ):

  • 关于 TPAUC 的讨论, 请回看原文.

代码

libauc

posted @   馒头and花卷  阅读(229)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示