1、介绍
首先,笔者认为二者最大的区别为:GAUC实现了用户级别的AUC计算,GAUC可以用于评估多类别分类模型的性能,而AUC只能用于评估二分类模型的性能。

DIN原论文上有一个衡量模型改进程度的一个东西叫RelaImpr,这里的n是用户数量,和
分别是第i 个用户的喜好和该用户的AUC。作者说这个是通过平均用户的AUC来衡量用户内部顺序的好坏,并被证明与显示广告系统的在线性能更相关。
计算得到的RelaImpr是看测试模型基于base model提高程度的,而式(11)里面的AUC计算方式,采用式(10)的计算方法,该加权AUC的计算方法与我们所熟知的AUC计算方法并不一样,该加权AUC就是GAUC(只是原论文里是用AUC来表示),GAUC是阿里自己提出来的,并且时间证明了GAUC比AUC更加可靠。
2、AUC的含义与计算
2.1 含义
AUC本质上是一个概率值。简单来说其实就是随机抽出一对样本(一个正样本,一个负样本),然后用训练得到的分类器来对这两个样本进行预测,预测得到正样本的概率大于负样本概率的概率。用公式表示如下:
2.2 计算方式

下面将采用上图中的例子来展示如何计算AUC
2.2.1 计算方式一
1)数学表达式:

(依然是上面的例子)在该例中有4条样本。2个正样本,2个负样本,那么M*N=4。即总共有4个样本对。分别是:(D,B ),( D,A ) ,(C,B), ( C,A )。
在( D,B)样本对中,正样本D预测的概率大于负样本B预测的概率(也就是D的得分比B高),记为1;同理,对于( C,B)。正样本C预测的概率小于负样本C预测的概率,记为0。
最后可以算得,总共有3个符合正样本得分高于负样本得分,故最后的AUC为
2.2.2 计算方式二
1)数学表达式:
其中
代表第i条样本的序号。(概率得分从小到大排,排在第rank个位置)
分别是正样本的个数和负样本的个数
表示只把正样本的序号加起来
2)步骤
1、所有样本的概率得分从小到大排,得到rank值
2、把正样本筛选出来
3、代入公式计算
3)举例
依然是上面的例子,我们将其按照样本概率排序可得

然后按照上面的公式,只把正样本的序号加起来,也就是只把样本C,D的rank值加起来后减去一个常数项,即:
,这个答案和我们上面所计算的是一样的。
3、GAUC
3.1 AUC的缺点
千呼万唤始出来,接下来就该介绍我们今天的主角GAUC了,先说说AUC的缺点:【线下】AUC提升不一定能带来【线上】效果提升。原因:
1、AUC反映整体样本间的排序能力,表示正样本得分比负样本得分高的概率,对样本不区分用户地计算整体样本的AUC。
2、AUC计算的时候,不仅会涉及同一个用户的不同item,也会涉及不同用户的不同item ,而线上排序系统每次排序只针对同一个用户的不同item进行打分。
换句话说AUC更关注的是一个整体的得分,他并不太会将注意力集中在某一个用户身上,但是线上推荐的时候,往往是针对单个用户去进行推荐的,因此就会带来一定的问题。
3.2 举例
假设,有模型A和模型B两个模型,通过训练和预测,得到如下结果:


根据上述结果可以得到模型A的总体AUC和模型B的总体AUC:
然后再去计算用户甲的AUC:

对于模型A:

对于模型B:
同理可得用户乙在A,B两个模型下的AUC
,
评估:根据总体AUC的表现来看,模型A的表现优于模型B,但从用户级别的AUC实际情况来看,模型B的效果和模型A应该是一样好的。
而我们在线上做推荐的时候,我们针对的是每个个体,就是一个单独的个体,我们其实是不需要和别的用户做对比,只要这个模型推荐的东西对我自己来说是适合的,那就足够了,没必要拿我和别人进行比较。
因此用户广告之间的排序是个性化的,不同用户的排序结果不太好比较,这可能导致全局auc并不能反映真实情况。
3.3 GAUC实现了用户级别的AUC计算
其中权重w既可以是展示次数(impression)也可以是点击次数(clicks)。n是用户数量。在单个用户AUC的基础上,按照点击次数或展示次数进行加权平均,消除了用户偏差对模型的影响,更准确的描述了模型的表现效果
3.4 GAUC计算举例

模型A的GAUC值

模型B的GAUC值

模型B的GAUC值

根据计算结果可以看出两个模型的效果都是一样的
3.5 GAUC的优缺点
优点:实现了用户级别的AUC计算注意点
缺点:用户行为没有那么多的时候,GAUC会抖动,大部分公司还是用AUC比较多