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+, 负样本 x−∼P−;
- h(x;θ), score function given x;
- [s]+=max(s,0);
- n+=|S+|,n−=|S−|;
- S↓[k1,k2]⊂S:
- 根据 h(x;θ) 进行(下降)排序;
- S↓[k1,k2] 表示位于第 k1 到 k2 间的样本;
- 类似地可以定义 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(FPR−1(u))du=P{h(x+)>h(x−),h(x−)∈[FPR−1(β),FPR−1(α)]}.
- two-way pAUC (TPAUC): 限定 FPR 在 ≤β, TPR 在 ≥α 内阴影部分的面积.
TPAUC(h,α,β):=∫βαTPR(FPR−1(u))du=P{h(x+)>h(x−),h(x+)∈[TPR−1(1),TPR−1(α)]h(x−)∈[FPR−1(β),FPR−1(0)]}.
-
我们可以通过如下方式估计二者:
ˆOPAUC(h,α,β)=1n+n−∑xi∈S+∑xj∈S↓−[k1+1,k2]I(h(xi)>h(xj)),
其中 k1=⌈n−α⌉,k2=⌊n−β⌋.
ˆTPAUC(h,α,β)=1n+n−∑xi∈S↑+[1,k1]∑xj∈S↓−[1,k2]I(h(xi)>h(xj)),
其中 k1=⌊n+α⌋,k2=⌊n−β⌋.
-
但是上面估计式仍然存在两个问题:
- non-smooth;
- 排序需要耗费大量时间.
近似策略
-
首先, 为了解决 non-smooth 的问题, 用如下损失替代 I(h(xi)>h(xj)):
L(xi,xj;θ)=ℓ(h(xi;θ)−h(xk;θ)),(1)
要求 ℓ 是单调递减的可微凸函数, 比如常用的:
1. ℓ(s)=(c−s)2+;
2. ℓ(s)=log(1+exp(−s/c)).
-
接下来, 我们需要解决排序的问题, 首先定义:
^Lϕ(xi;θ)=maxp∈Δ∑xj∈S−pjL(xi,xj;θ)−λDϕ(p,1/n−),(2)
此为正样本 xi 的一个不确定度 Δ 内的鲁棒损失. 直观上, 它反映了当前参数 θ 下, xi 与其负样本 xj 间的最小差异, Dϕ 反映的时候权重 p 和平均权重间的一个差异 Dϕ(p,1/n)=1n∑iϕ(npi) (后者是最一般的一种权重选择方式). 本文考虑两种差异度量方式:
- KL 散度: ϕkl(t)=tlogt−t+1;
- CVaR divergence: ϕc(t)=I(0<t≤1/γ)
-
对于 CVaR divergence, 关于 θ 最小化 (2) 等价于:
minθmins∈Rn+F(θ,s)=1n+∑xi∈S+(si+1βψi(w,si)),(3)
其中 ψi(w,si)=1n−∑xj∈S−(L(xi,xj;θ)−si)+. **作者证明, 当 ℓ 满足所要求的那些性质的时候, (3) 是严格等价于优化 OPAUC 的.
-
对于 KL divergence, 关于 θ 最小化 (2) 等价于
minθ1n+∑xi∼S+λlogExj∈S−exp(L(xi,xj;θ)λ).(4)
注意到, 当 λ=0 的时候, 等价于 ˆOPAUC(h,0,1n−), 当 λ=+∞ 的时候, 等价于 ˆOPAUC(h,0,1), 故调节 λ 相当于在两个极端的 OPAUC 间调节.
-
关于 (3) (4) 的实际优化, 作者提出了如下的 SOPA 和 SOPA-s 分别进行优化 (注意, 下面的 w 为上面的 θ):


代码
libauc
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix