计算广告是互联网最重要的商业模式之一,广告投放效果通常通过曝光、点击和转化各环节来衡量,大多数广告系统受广告效果数据回流的限制只能通过曝光或点击作为投放效果的衡量标准开展优化.
下面的指标体系来源于一个比赛:第一届腾讯社交广告高校算法大赛。其中的赛题非常好,有比较完整的预估指标体系,于是在这罗列。相关的比赛信息可见:http://algo.tpai.qq.com/home/information/index.html
从腾讯社交广告系统中某一连续两周的日志中按照推广中的App和用户维度随机采样。 每一条训练样本即为一条广告点击日志(点击时间用clickTime表示),样本label取值0或1,其中0表示点击后没有发生转化,1表示点击后有发生转化,如果label为1,还会提供转化回流时间(conversionTime,定义详见“补充说明”)。给定特征集如下,分为三类:
- 广告特征
- 用户特征
- 上下文特征
通过Logarithmic Loss评估(越小越好),公式如下:
其中,N是测试样本总数,yi是二值变量,取值0或1,表示第i个样本的label,pi为模型预测第i个样本 label为1的概率。 示例代码如下(Python语言):
代码语言:javascript复制import scipy as sp
def logloss(act, pred):
epsilon = 1e-15
pred = sp.maximum(epsilon, pred)
pred = sp.minimum(1-epsilon, pred)
ll = sum(act*sp.log(pred) sp.subtract(1,act)*sp.log(sp.subtract(1,pred)))
ll = ll * -1.0/len(act)
return ll
.
延伸一:什么是转化回流时间?
App 的激活定义为用户下载后启动了该App,即发生激活行为。从用户点击广告到广告系统得知用户激活了App(如果有),通常会有较长的时间间隔,主要由以下两方面原因导致: 1) 用户可能在下载之后过了很久才启动App; 2) 用户启动App的行为需要广告主上报回传给广告系统,通常会有一定的延时。 这里回流时间表示了广告主把App激活数据上报给广告系统的时间,回流时间超过5天的数据会被系统忽略。 值得注意的是,本次竞赛的训练数据提供的截止第31天0点的广告日志,因此,对于最后几天的训练数据,某些label=0并不够准确,可能广告系统会在第31天之后得知label实际上为1。