1 离线指标

1.1 LogLoss

1.1.1 KL散度

  logloss使用KL散度来计算。设样本的真实分布为P,预测分布为Q,则KL散度定义如下:

  

  这里可以通俗地把KL散度理解为相同事件空间里两个概率分布的相异情况。KL散度越小,预测分布越接近真实分布。

  KL散度的物理意义是:使用分布Q来对真实分布为P的事件进行编码,导致平均编码长度增加了多少。具体解释可见百度和知乎。

1.1.2 CTR中KL散度的计算

  CTR预估中,上面的概率分布为二项分布。设真实的点击率是tctr,预测的点击率是pctr。因此真实的二项分布P是(tctr,1-tctr),预测的二项分布Q是(pctr,1-pctr)。因此KL散度公式可以写成如下:

  tctr可以通过统计得出,表示为 tctr = click / impression。则KL散度可以变形如下:

因此,计算logloss的伪代码如下:

1.2 AUC

1.2.1 二分类的常用评价指标

  CTR预估是一个二分类问题。二分类问题的评价指标有FP rate,TP rate,准确率accuracy,精确率precision,召回率recall,分别定义如下:

  其中,precision表示的是预测为阳性的样本中有多少是预测对的,recall表示有多少阳性样本被预测了出来,这二者通常是此消彼长,需要根据具体场合看用哪个指标。

  accuracy表示预测准确的占所有的样本的比例。

  Roc图表示的横坐标是Fp rate, 纵坐标是Tp rate。一个分类器的Fp rate越小,Tp rate越大,这个分类器就越好,对应在ROC图中就是靠近左上角。最完美的点是(0,1),最差的点是(1,0)。

  如上所示,D是最好的,然后是A,B,然后是C,然后是F。AB之间比较就不好说了。

1.2.2 ROC曲线

  由于预测值是一个评分,还要通过选定一个阈值来将它划分成1还是0。我们按照预测值对样本降序排列,并且从上到下以预测值为阈值:

  

  可以看出如果阈值选的不同,TP rate和FP rate是不同的。每选一个阈值,就能在ROC图上确定一个点,这样就能得到一条ROC曲线:

1.2.3 AUC

  AUC是ROC曲线与横坐标轴围成的面积。数学上可以证明,AUC值等于一个概率,即在前面已经排序的样本列表中,随机选取一个正样本,再随机选取一个负样本,正样本排在负样本之前的概率。即AUC表征了正样本排在负样本前面的能力,并且与阈值选取无关,而与模型本身有关。

1.2.4 AUC的计算

CTR预估评价指标介绍的更多相关文章

  1. 【项目】搜索广告CTR预估(一)

    本文介绍CTR相关基础知识. 一.广告投放系统 广告系统包含多个子系统.除了上图所示的广告投放系统外,还包含商业系统(广告库的获得),统计系统(点击展示日志的获得)等. 广告投放系统主要是面向用户的, ...

  2. (1)搜索广告CTR预估

    https://www.cnblogs.com/futurehau/p/6181008.html 一.广告投放系统 广告系统包含多个子系统.除了上图所示的广告投放系统外,还包含商业系统(广告库的获得) ...

  3. CTR预估中的贝叶斯平滑方法(一)原理及实验介绍

    1. 背景介绍 广告形式: 互联网广告可以分为以下三种: 1)展示广告(display ad) 2)搜索广告(sponsored search ad) 3)上下文广告(contextual ad)   ...

  4. 【项目】百度搜索广告CTR预估

    -------倒叙查看本文. 6,用auc对测试的结果进行评估: auc代码如下: #!/usr/bin/env python import sys def auc(labels,predicted_ ...

  5. 【项目】搜索广告CTR预估(二)

    项目介绍 给定查询和用户信息后预测广告点击率 搜索广告是近年来互联网的主流营收来源之一.在搜索广告背后,一个关键技术就是点击率预测-----pCTR(predict the click-through ...

  6. Kaggle : Display Advertising Challenge( ctr 预估 )

    原文:http://blog.csdn.net/hero_fantao/article/details/42747281 Display Advertising Challenge --------- ...

  7. 计算广告CTR预估系列(七)--Facebook经典模型LR+GBDT理论与实践

    计算广告CTR预估系列(七)--Facebook经典模型LR+GBDT理论与实践 2018年06月13日 16:38:11 轻春 阅读数 6004更多 分类专栏: 机器学习 机器学习荐货情报局   版 ...

  8. 广告点击率 CTR预估中GBDT与LR融合方案

    http://www.cbdio.com/BigData/2015-08/27/content_3750170.htm 1.背景 CTR预估,广告点击率(Click-Through Rate Pred ...

  9. CTR预估中的贝叶斯平滑方法及其代码实现

    1. 背景介绍 广告形式: 互联网广告可以分为以下三种: 1)展示广告(display ad) 2)搜索广告(sponsored search ad) 3)上下文广告(contextual ad)   ...

随机推荐

  1. jquery的curCSS方法

    核心思想是用getComputedStyle获取样式,如果没有获取到就判断是不是动态创建的元素,如果是则用style获取行内样式.看重点(注释部分)代码吧! curCSS = function( el ...

  2. 为什么 Java 8 中不再需要 StringBuilder 拼接字符串

    为什么 Java 8 中不再需要 StringBuilder 拼接字符串 来源:codeceo 发布时间:2016-12-27 阅读次数:427 0   在Java开发者中,字符串的拼接占用资源高往往 ...

  3. 基于SuperSocket的IIS主动推送消息给android客户端

    在上一篇文章<基于mina框架的GPS设备与服务器之间的交互>中,提到之前一直使用superwebsocket框架做为IIS和APP通信的媒介,经常出现无法通信的问题,必须一天几次的手动回 ...

  4. iOS中多线程常用的知识点

        1.pThread 跨平台的多线程技术 , 是IEEE制定的POSIX 表示可移植性操作系统接口的多线程计数,UNIX内核平台 Unix,Linux,Mac(小红帽) (windows上有可移 ...

  5. 浅谈php生成静态页面

    一.引 言 在速度上,静态页面要比动态页面的比方php快很多,这是毫无疑问的,但是由于静态页面的灵活性较差,如果不借助数据库或其他的设备保存相关信息的话,整体的管理上比较繁琐,比方修改编辑.比方阅读权 ...

  6. Java链栈

    package com.lxm.customDataStructure; public class LinkStack<T>{ class Node<T>{ T data; N ...

  7. c# Newtonsoft.Json序列化和反序列 js解析

    Newtonsoft.Json下载地址:http://www.newtonsoft.com/products/json/ 参考:      http://www.cnblogs.com/yanweid ...

  8. 【Beta】第5.5次任务发布

    PM #100 日常管理&dev版宣传&设计报告管理后台. 后端 #101 完成收藏功能 完成管理员权限表的生成和接入(按位压缩权限表) 验收条件:收藏功能能够正常使用.能够区分常规用 ...

  9. Introduction - SNMP Tutorial

    30.1 Introduction In addition to protocols that provide network level services and application progr ...

  10. C# 的TCP Socket (同步方式)

    简单的c# TCP通讯(TcpListener) C# 的TCP Socket (同步方式) C# 的TCP Socket (异步方式) C# 的tcp Socket设置自定义超时时间 C# TCP ...