为何CTR预估使用AUC来评估模型?

 

  ctr预估简单的解释就是预测用户的点击item的几率。为何一个回归的问题须要使用分类的方法来评估,这真是一个好问题,尝试从下面几个关键问题去回答。html

  一、ctr预估是特殊的回归问题

  ctr预估的目标函数为c#

                        f(x)=P(+1|x)函数

  特殊之处在于目标函数的值域为[0,1],并且因为是条件几率,具备以下特性测试

          

  若是将ctr预估按照通常的回归问题处理(如使用Linear Regression),面临的问题是通常的linear regression的值域范围是实数域,对于整个实数域的敏感程度是相同的,因此直接使用通常的linear regression来创建ctr预估模型很容易受到noise的影响。以Andrew Ng课程中的例子图1.b所示,增长一个噪音点后,拟合的直线立刻偏移。另外,因为目标函数是条件几率,训练样本中会存在特征x彻底相同,y为+1和-1的样本都出现的问题,在linear regression看来是一个矛盾的问题,而Logistics Regression很好的解决了这个问题[1]。spa

          

 

  二、LR模型的cost function不使用平方差

  通常回归问题采用的cost function是预测值和实际值的平方差,而LR模型没法采用平方差做为cost function的缘由是因为基于LR模型公式的平方差函数是非凸函数,没法方便的得到全局最优解。3d

  LR模型采用的cost function是采用cross-entropy error function(也有叫作对数似然函数的),error measure是模型假设h产生训练样本D的可能性(likelihood)[2]。htm

  假设y1=+1, y2=-1, ......., yn=-1,对应的likelihood为:blog

  

  

  三、为何AUC也能够用于LR模型的评估

  广泛上对于AUC的认识是在分类问题中,取不一样的threshold后,在横坐标false positive rate,纵坐标为true positive rate平面上绘制ROC曲线的曲线下面积,因此很难理解是如何与这里的回归问题联系起来。实际上,一个关于AUC的颇有趣的性质是:它和Wilcoxon-Mann-Witney Test是等价的[3]。而Wilcoxon-Mann-Witney Test就是测试任意给一个正类样本和一个负类样本,正类样本的score有多大的几率大于负类样本的score。有了这个定义,咱们就获得了另一种计算AUC的方法:具体来讲就算统计一下全部M*N(M为正类样本的数目,N为负类样本的数目)个正负样本对中,有多少个组中的正样本的score大于负样本的score。get

  

  

  

  参考文献

  [1]逻辑回归模型(Logistic Regression, LR)基础。 http://www.cnblogs.com/sparkwen/p/3441197.htmlit

  [2] Machine Learning Foundation, Coursera.

  [3]AUC(Area Under roc Curve )计算及其与ROC的关系 http://www.cnblogs.com/guolei/archive/2013/05/23/3095747.html

  原文链接:

  https://www.evernote.com/shard/s66/sh/8f1d15c8-48b6-4b34-a4bc-89a60c09d724/a3bbdc80ade0c94b014910321eb4a10c#

相关文章
相关标签/搜索