针对 AUC 进行优化

机器算法验证 奥克
2022-03-12 07:28:25

AUC 是一种流行的分类评估指标。

  1. 这是衡量总体性能的指标——是否有任何标准损失函数(单个示例的标签和预测的函数)对此进行了优化?

  2. 是否有任何其他旨在优化 AUC 的 ML 方法(不一定是基于损失函数的优化算法)?

1个回答

实际上有多种方法可以做到这一点。

请记住,AUC 是 Mann-Whitney-U 统计量的归一化形式,即任一类中的秩和。这意味着找到最优 AUC 是对所有分数进行排序的问题s1,,sN从而使一个班级的分数高于另一个班级。

例如,这可以被视为一个高度不可行的线性规划问题,可以通过适当的松弛启发式地解决,但我更感兴趣的一种方法是找到 AUC 的近似梯度,以便我们可以使用随机梯度下降进行优化.

很多关于这个的阅读,这是一个天真的方法:

使用 '[]' 作为 Iverson-Bracket,另一种看待分数排序的方式可能是

[sisj]=1对所有人i,j在哪里响应yi=0yj=1

因此,如果分数是输入和参数的函数si=f(xi,θ)

我们想要最大化

M=maxθi,j[sisj]

考虑放松tanh(α(sjsi))[sisj]

所以

Mi,jtanh(α(sjsi))

然后我们可以采样ij从每个班级获得贡献θtanh(α(sjsi))到全梯度。