内容来自于
文章里面有几幅插图会因为广告拦截插件而无法显示
update@201509: 近期刘鹏老师出了一本书叫做 计算广告. 我当时看的计算广告学讲义应该就是这本书的原型, 讲义里面有许多小节里面内容是空缺的, 在这本书里面都补上了. 推荐此书.
目的 | 效果 | 对象 | |
---|---|---|---|
广告 | 通过媒介传播某种企业形象或产品信息 | 某特定人群的有效到达(reach), 多渠道综合ROI | 潜在用户 |
销售 | 提升产品销量, 从而提高企业收益 | 收入和利润 | 较明确需求者 |
基本上可以说,这一图谱是从两端向中间逐渐发展和形成的:首先是合约阶段,广告主通过代理公司(Agency)从媒体方采买广告,而媒体方的Ad Server则负责完成和优化各个广告主的合约; 然后,市场进化出了竞价售卖方式,从而在靠近供给方产生了广告网络(Ad Network)这样的产品形态,而需求方的代理公司为了适应这一市场变化,孵化除了对应的广告采买平台(Media Buying Platform);最后,当市场产生了实时竞价方式交易时,供给方进化出了广告交易平台(Ad Exchange),而需求方则需要用需求方平台(DSP)与其对接来出价和投送广告。
广告效果生成过程
根据上图,这以有效性模型把广告活动的整个信息接收过程分为三个大阶段:选择(Selection)、解释(Interpretation)与态度(Attitude);或者进一步分解为六个小阶段:曝光、关注、理解、接受、保持与决策,其中每两个小阶段对应一个大阶段。
定性地说,越靠前的阶段,其效果的改善对点击率的贡献越大;而越靠后的阶段,其效果的改善对转化率的贡献越大。
算法优化:
系统架构:
综合起来看,可以认为对于效果广告,CPC计费方式最有利于发挥供给方和需求方的长处, 因而在市场上被广泛接受。而对于品牌广告,由于效果和目的有时不便于直接衡量,可以考虑按照CPM的方式计费。而CPS的计费方式,只在一些特定的环境下才比较合理。
广告系统由三个主体部分构成:一个是在线的高并发投放引擎(Ad server),一个是离线的分布式数据处理平台(Grid),另一个是用于在线实时反馈的流式处理平台(Stream computing)。
Ad Serving 基本功能:
将广告决策的请求和物料请求分开:
互联网广告业务开始阶段,拥有流量的媒体与需要广告资源的代理商是市场的主要参与者。线下广告的商业逻辑也被照搬到了线上,由广告代理公司和媒体签订协议,确保某些广告位在某时间段为制定的广告商所占有,同时广告商一次性支付广告费用。这种方式与技术的关系并不大,唯一需要用到的系统就是广告排期系统.
我们讨论的合约式广告的重点,是按CPM计费、担保式投送的受众定向广告。这种售卖方式切合了在线广告的关键优势,又兼顾了线下品牌广告商的传统习惯,因此比较早地产生且被市场接受。面向合约式CPM广告的投放系统,需要解决受众定向、流量预测、点击率预测这三个基本问题,并采用在线分配的方式完成实时决策。
担保式投送的决策逻辑比较复杂,而且在目前竞价广告越来越重要的市场环境中显得有些古怪,因此有时会被技术人员和产品忽视。然而,此问题的研究却对广告中广泛存在的“量的约束下优化质”这一根本诉求给出了重要的框架,并在各种市场形态中都有变形后的具体表现形式. 因此,我们希望能从两个方面对此问题的一般性思路做清晰的介绍:
按CPM售卖的合约广告,除了上述的核心算法,还有两项广泛应用的支持技术,即流量预测和频次控制。频次控制则是广告主为了展示的有效性提出的控制性要求。
最早产生的广告售卖方式,是媒体和广告主约定在某一时间段内,用某些广告位的流量为该广告主投送广告,相应的结算方式为CPT方式。
CPT售卖还有一种变形的形式,即按照轮播售卖。
在CPT售卖的情形下,供给方和需求方的计算需求和技术成分都不太高。需求方的参与者, 往往是4A或其他代理公司,对于广告主质和量两方面的需求,都是代理公司的人员通过对媒体广告位的历史经验,以及对广告主业务的了解,通过人工优化的方式来满足。对于供给方即媒体而言,则需要一个与代理公司沟通需求,并在合同确定以后自动地执行合同的广告管理工具,或者我们称为广告排期系统。
广告排期系统的代表性产品,有Doubleclick的DFP,以及中国市场上好耶(Allyes)的类似产品。当然,这些都是这些产品早期的形态,随着按受众售卖广告的方式越来越普及,这些产品的功能也都逐渐演进, 从广告排期管理逐渐拓展出其他售卖方式下媒体需要的功能,如果结合了Dynamic Allocation和RTB等功能,也就接近于供应方平台产品(SSP)了.
担保式投送(guaranteed delivery, GD)是另一种常见的合约广告形式。一般来说,GD采用的是CPM结算方式,在合约中明确保证分配给广告主的流量下限。我们从供给方和需求方两方面来看这种售卖方式出现的合理性。
这里仍然要再次强调我们的观点,那就是广告主对量的要求是切实存在的,而且在某种意义上并不比对质的要求低。对大多数广告主,特别是有一定品牌诉求的广告主,一定有某一个市场环节会向其提供保证量的服务。这一点贯穿于在线广告的 发展逻辑,也是广告业务的重要特点。
当然,这里的担保并不一定是展示量上的担保,也可以是点击数或者到达数等指标上的担保。只要是在某个量上有下界式的约束,就可以认为是GD一类的问题。
二部图匹配算法 (see 拉格朗日方法, KKT, SVM)
GD的分配方式在实际的品牌广告市场上存在一定的问题,其原因可以这样来说明:假设广告主甲在合约中要求地域为北京的人群,其实有一层潜在的含义,那就是得到的流量尽可能符合北京人群的自然分布。假设在另一个合约中,广告主乙要的是北京的男性人群,那么为了同时满足两个合约,那么Ad Server会倾向于将北京的男性人群分配给乙。这样一来,甲得到的流量中,女性的比例就会显著高于自然分布,这并不是广告主想要的。为了尽可能缓解上述问题,我们可以对在线分配的目标函数做一些加工,使得系统在完成合约的同时,尽可能给每个广告主以代表性的流量分布。这样的分配目标,我们称为最大代表性分配(Maximally Representative Allocation, MRA)问题。
基于流量预测的方案: 虽然即时决策的限制给分配问题带来了很大的麻烦,好在历史数据对于投放决策可以起到非常强的指导作用。因此,实用的在线分配算法,都需要在根据历史数据的流量预测基础上展开。如果广告流量的分布在各个循环周期内是近似一致的,那么在线分配的问题就可以转变为离线计算的问题:只需要把根据现有合约生成Demand constraints,在上一个流量周期内离线完成带约束优化,再将优化的结果作为下一个周期内的分配策略在线执行即可。(see HWM算法)
实际的Ad server中,还需要考虑的一个问题是这一分配策略不能过于庞大以至于给server带来内存和计算上的很大负担,因此,我们往往需要一个紧凑分配方案(Compact allocation plan)。除了紧凑性的要求,如果分配策略能做到一定程度上无状态,也对于Ad Server的实现非常有利:因为这样的话,多台Ad Server的物理机器之间就不需要频繁进行同步以完成状态更新,而是根据预先计算好的策略进行投放即可。这对与系统的稳健性和扩展性,有着非常大的好处。
流量预测的问题可以这样描述,给定某广告的一组受众标签和其他条件,以及一个eCPM的阈值,估算在将来某个时间段内能够得到的在该eCPM阈值以下的流量。其中eCPM阈值主要是用于竞价广告系统中,目的是了解在一个某一个出价水平下能够得到的流量。对于合约式广告来说,这个阈值是不需要的,或者为了工程上一致起见,将该阈值设为一个很大的数。
对于流量预测问题,基本的思路,是尽可能找到相对可比较的历史流量,根据历史数据来预测未来的流量。
一般来说,随着某个用户看到同一个创意频次的逐渐上升,点击率呈逐渐下降的趋势这一点是可以被验证的。因此,在按照CPM采买流量时,广告主有时会要求根据频次控制某个用户接触到某创意的次数,以达到提高性价比的目的。
从供给方或广告市场方来看,合约广告和竞价广告的对比,可以类比于计划经济和市场经济的区别。在合约广告的情况下,所有的量的保证和质的优化,都是由媒体方的Ad Server 来统一完成,这也直观地反应在GD合约广告比较复杂的planning和allocation过程。而在竞价广告的情况下,市场只负责制定竞价和收费的规则,而各广告主量的保证完全采用市场竞争的方式来完成。在这种情况下,市场方需要仔细设计宏观竞争机制,但是不一定需要实现象合约广告那样的allocation功能。
从需求端来看,合约广告的采买方式对广告主来说缺乏透明性,唯一能做的就是在合约的层面预先约定好一些最关心的利益条款,但是很难做深入的优化。不过,合约的采买方式也有一定的好处,特别是可以对量的保证可以有预先的约定,这对于品牌性质较强的广告活动来说比较有意义的。
受众定向技术即是对广告(a)、 用户(u)、上下文(c) 这三个维度提取有意义的特征(这些特征也称为标签)的过程。受众定向虽然不见得是计算广告中最困难的技术,但是确实是在线广告、特别是显示广告最核心的驱动力。
一般来说, 对于某一种定向技术,我们需要同时关注其效果和量两方面的指标,同时提供覆盖率较高但精准程度有限的标签,和那些非常精准但量相对较小的标签,有利于市场形成竞争的环境。从技术框架的角度看,受众定向标签可以分成用户标签、上下文标签和广告主定制标签三种类型:
可以注意到,无论是上下文定向,以及在此基础上的行为定向,都广泛使用到文本分类和主题挖掘的技术。而在广告业务中,我们往往要选择那些有监督的主题挖掘方法,将页面内容映射到预先定义好的标签体系上,而不是无监督地自动聚类产生标签。这是由于广告中的标签体系要向广告主售卖,因此必须是可解释的。
熟悉了前面的受众定向技术,我们会发现,受众定向的的本质,是将用户在网络上的一些行为可以售卖的人群属性。这同时也揭示了精准广告业务的本质:将原材料,即用户行为数据,加工成标签,再将标签售卖给需要的广告主。而广告投放过程已经变成了交付这些标签的载体而已。既然数据加工本身如此重要,这足以成为互联网广告中相对独立的一项业务。于是,数据加工与交易的产品化和规模化,成为在线广告区别于传统广告的一项重要市场特点。在这样的环境下,数据管理平台(DMP)这样面向数据收集、加工和交易的产品也应运而生.
在考察某种定向方法时,主要有两个方面的性能需要关注:一是定向的效果,即符合该定向方式的流量上高出平均eCPM的水平;二是定向的规模,即这部分流量占整体广告库存流量的比例。
我们先来看一些市场上比较流行的定向方式。按照其有效性和在广告信息接受过程中起作用的阶段,对照第一章中的广告有效性模型,我们把这些定向方式按照非常粗略的定性评估:
水平方向表示的是定向技术在广告信息接收过程中大致起作用的阶段,而垂直方向为大致的效果评价(越往下效果越好)。对受众定向的一些典型方法,我们举例说明如下:
地域定向、频道定向和上下文定向属于t(c)的定向方式;人口属性定向、行为定向属于t(u)的定向方式;而重定向和Look-alike则是 (a, u)的定向方式。t(c)和t(u)两种定向方式,一个根据的是当前页面信息,一个根据的是历史日志数据,因而在系统框架上有比较大的区别。下面我们将对这两种方式的典型代表,即上下文定向和行为定向的实现进行讨论。
从打标签的方法上来看,上下文定向主要可以有如下的几种思路:
确定了对上下文页面打标签的方法以后,在在线广告投放时,页面标签系统需要对Ad Server查询的某一个URL快速返回其对应的标签。复杂的打标签计算是不可能马上完成的,不过在广告的问题中,某一次展示时标签的缺失并不是致命性的。根据广告的这一特点,我们可以用一种半在线的方式来实现页面抓取和打标签的逻辑。(触发式抓取+离线分析+缓存)这样的方案,有以下的两点好处:首先是在线cache的使用效率非常高,仅仅那些最近有广告请求的发生的URL才会被抓取,这样我们不需要耗费大量的爬虫资源去抓取可能根本用不到的页面。其次,因为我们只抓取需要的页面,并且可以在该页面第一次广告请求后很快得到页面标签,页面的信息覆盖率也很高。
行为定向是精准广告业务中对数据利用和变现最重要的问题,这一问题可以描述为,根据某用户一段时期内的各种网络行为,将该用户映射到某个定向标签上。
行为定向的标签体系有两种组织方式:
一般来说,有九种行为是确定对行为定向的建模有意义的。在评价某种行为的作用时,主要关注两个因素,一是质,就是上面所说的信息强度,二是量,就是该行为的频繁程度。我们按照这些行为的信息强度和性质,将这些行为分为四组排列如下:
关于以上各类行为数据对广告效果的意义,有两条基本的规律:
不过需要提醒读者的是,不要忘记广告的根本 目的是“低成本地接触潜在用户”。从这一点上判断行为数据的作用,会发现更靠近转化的行为更精准,实际上是因为这部分人群已经更加接近于决策的最终阶段,也就是说越发不是“潜在用户”。因此,在行为定向这个问题上,不能单纯追求ROI或者转化效果,而是要根据广告主的具体的人群接触目标来平衡效果和覆盖率。
总体上看,主题模型有两大类别:一种是预先定义好主题的集合,用监督学习的方法将文档映射到这一集合的元素上;一种是不预先定义主题集合,而是仅仅控制主题的总个数或聚类程度,用非监督学习的方法自动学习出主题集合,以及文档到这些主体的映射函数。
广告中的主题挖掘有两种用途:如果仅仅用于广告效果优化的特征提取,那么监督或非监督的方法都可以;如果是用于建设对广告主售卖的标签体系,那么应该优先考虑采用监督学习的方法,因为这样可以预先定义好对广告主有意义且可解释的标签体系,对后续售卖会有很大帮助。
要提高定向的精准程度与人群覆盖率,技术并不是最重要的因素。那么什么才是决定性的呢?其实是数据的来源与质量。这是正确认识精准广告业务非常重要的观念。
有哪些数据是对精准广告业务有直接贡献的呢? 我们可以按照下面的分类来总结:
精准广告业务若干错误观念
数据管理平台(Data Management Platform, DMP)
除了需要用到上面讨论的受众定向技术,DMP还有一个技术问题,就是如何将加工好的用户标签传送给其他标签的购买方,比如DSP。虽然在图中我们的示意是直接通过在线cache的形式访问,实际上由于DMP与DSP之间跨域且物理上分开的原因,这样的方案并不实际。因此,在DMP中,往往需要提供数据交换(Data Exchange) 的产品功能,来进行在线或离线的数据对接。
Bluekai的主要业务模式,是聚合大量中小媒体的有价值行为数据,使用受众定向技术为用户打上标签,并对外售卖标签以获取收入。Bluekai同时提供面向媒体、数据提供商和广告主的一系列产品:包括一个DMP、一个数据交换平台(Bluekai Exchange)、以及一个数据分析系统。这几项产品都围绕一个商业目标展开:那就是帮助有数据变现需求的参与者能够自由、灵活地通过技术对接的方式与广告主进行交易。
通过这种数据交换方式,广告市场上最有价值的数据资源被盘活利用了:数据拥有者不需要直接涉足复杂的广告业务,也可以对数据进行变现;而数据需求者也可以方便地找到数据购买来源,以快速提高自己广告投放的效果。
竞价顺应了定向广告向精细化发展的趋势要求,也为大量无法用合约形式售卖的剩余流量找到了可能的变现渠道,使得大量中小广告主的参与在线广告的可能性和积极性大大增强,也是的在线广告的商业环境与线下广告产生了本质的区别。
竞价广告中,计算的作用更加突出,这一方面是因为竞价本身需要对eCPM做尽可能准确的估计,也是因为中小广告主的规模使得计算的效率要求很高。具体而言,有两项技术非常关键:
对应于广告网络的产生,需求方的产品和技术也在发生变化。关键的变化有两点:
在广告这样的参与者可以针对同一个标的物不断调整出价的拍卖环境中,通过聪明的定价策略,完全可能为整个市场创造更高的收益以及其他好处。
拍卖方式 | 分配规则 | 支付方式 | 是否知道别人的出价 | 应用场景 | |
---|---|---|---|---|---|
英式拍卖(Open) | 竞买者逐步加价, 直到最后只剩下一个投标人为止 | 出价最高者得 | 最高的报价 | 是 | 古董和艺术品的拍卖 |
荷兰式拍卖(Open) | 出售者从一个很高的价格开始逐步降价,直到有人愿意购买 | 出价最高者得 | 最高的报价 | 是 | 农产品的交易 |
第一价格密封拍卖 | 在某一个约定的时间同时公开所有投标人的报价 | 最高(竞买时)最低(竞卖时) | 最高或最低的报价 | 不 | 政府公共工程的建设招标 |
第二价格密封拍卖 | 在某一个约定的时间同时公开所有投标人的报价 | 最高(竞买时)最低(竞卖时) | 次高或次低的报价 | 不 | 改进后的广义二阶价格(GSP)拍买机制被各大互联网公司采用 |
广义第一高价(GFP, Generalized First Price):价高者得, 按照报价支付. 报价具有连续性和公开性,但是极不稳定,拍卖效率低. 假设这里有两个广告位和三个竞价者(收益分别为A: 10, B: 4, C: 2). 那么出现这样竞价变化序列: B->2.01, A->2.02, B->2.03…最终B到3.99之后不在竞价. 价格很难在一轮确定下来. 更糟糕的是, 如果A使用程序化交易而B是人工调价的话, 那么A可以迅速作出价格调整这样对BC非常不利.
在线广告竞价市场最常见的定价策略,是广义第二高价(Generalized Second Pricing, GSP)策略; 另外有一种VCG(Vickrey-Clarke-Groves)定价策略,虽然理论上比GSP更好,但是由于原理较复杂,向广告主解释起来有难度,因此在实用系统中采用的并不多。GSP简单理解是在位置拍卖中,向赢得某个位置的广告商收取其下一位广告主的出价。VCG定价是Vickrey, Clarke和Groves在研究竞价系统均衡状态时得到的一种理论上较为优越的定价策略。其基本思想是:对于赢得了某个位置的广告主,其所付出的成本应该等于他占据这个位置给其他市场参与者带来的价值损害。
VCG vs. GSP
为了控制广告的质量和保持一定的出售单价,竞价广告市场往往要设置一个能够赢得某个拍卖位置的最低价格,这一价格我们称之为市场保留价(Market Reserve Price, MRP)。市场保留价有两种设置方法,一是对整个竞价市场采用同样的保留价格;二是根据不同标的物(例如搜索广告里的关键词)的特性设置不同的保留价格。
在CPC广告网络中,eCPM可以表示成点击率和出价的乘积。即r = μ · ν。但是在有的情况下,我们有动机对此公式做一些微调,把它变成下面的形式: r = μ^κ ·ν. 其中的κ为一个大于0的实数。我们可以考虑两种极端情况来理解κ的作用:当κ → ∞时,相当于只根据点击率来排序,而不考虑出价的作用;反之,当κ → 0时,则相当于只根据出价来排序。因此,随着κ的增大,相当于我们在挤压出价在整个竞价体系中的作用,因此我们把这个因子叫做价格积压(Squashing)因子。
价格积压因子的作用,主要是为了能够根据市场情况,更主动地影响竞价体系向着需要的方向发展。比如说,如果发现市场上存在大量的出价较高但品质不高的广告主,则可以通过调高κ来强调质量和用户反馈的影响;如果发现市场的竞价激烈程度不够,则可以通过降低κ来鼓励竞争;如果存在短期的财务压力,则需要将κ调整到接近于1的范围,往往就可以使得整体营收有所上升。
广告网络的基本业务,是批量聚合各媒体的剩余流量,按照人群或上下文标签的流量切割方式售卖给广告主。由于是按人群售卖,广告网络会极力淡化广告位的概念。另外,广告网络一般不会向广告主约定或保证能够买到的量,而只是根据变现能力来决定每次展示分配给哪个广告主。
与合约式的广告系统不同,广告网络使得为了保证合约而设计的复杂的在线分配算法必要性大大降低,使得其中的计算技术可以把精力集中在对eCPM的估计上。从商业角度来看, 广告网络的销售模式与合约的方式相比,也有两点优势:
广告网络的存在CPM、CPC和CPS等不同的结算方式,不过最主流的方式是CPC。
广告网络的典型系统架构如图5.2.1所示,其中广告投放的决策流程为:
对于一些有特殊业务需求,或者特殊数据来源的媒体或媒体组合来说,有时候希望能够直接从广告网络的广告库中挑选广告,并能够创造比广告网络自动挑选更多的价值。因此,某些广告网络也会对一部分合作供给方开放广告库供其自行挑选,广告网络的这种运营模式,我们可以称为联盟(Affiliate)模式。
实际的广告网络有两种不同的业务方向,一中是广泛承接各种广告库存,并面向所有品类的广告主进行服务,我们称之为水平广告网络;另一种则专门服务于某一种类型的广告主,例如电商、游戏等,并寻找相关的媒体资源来搭建网络,我们称之为垂直广告网络。
媒体广告与搜索的检索技术,还有一点不太一样的地方,即在处理很多个term组成的query时的处理办法。我们考虑上下文定向的情形,当通过网页内容的关键词来匹配广告候选时,往往需要用十多个甚至几十个关键词去查询广告,再进行后续精细的排序。在这一情形下,如果仍然采用一般搜索引擎对query的处理办法,则会陷入两难的境地:如果假设各个term之间是与的关系,基本上不可能得到任何匹配的结果;如果假设各个term之间是或的关系,那么在检索阶段就会返回大量相关性很差的候选,为后续排序制造极大的麻烦。
解决这一问题的基本思路,是在检索阶段就引入某种评价函数,并按这一函数的评价结果来 决定返回哪些候选。这一评价函数的设计有两个要求:一是合理性,即对最终排序的评价函数有直觉上合理的近似;二是高效性,即需要存在与倒排索引数据结构相契合的快速评价算法,否则就与在排序阶段展开计算没有差别了。 see WAND算法.
在品牌广告中,可以通过EC(expected click)计数上的直接控制来达到一定用户接触程度的目的,由广告主来直接设定;在效果广告中,则可以将EC的计数,或者频次的计数,作为点击率预测模型的特征直接加入训练,靠点击率模型的作用降低出现频次过高的创意的竞争力。
换句话说,在精细的效果要求下,我们实际上更加认清了频次的本质:它与其他影响点击率的特征是平等的,并且应该放在统一的、数据驱动的计算框架下加以利用。而究竟对某个创意应该将频次控制在几,也不应该是根据经验设定,而是应该放在竞价的环境中自行决定。
即按照广告主预算跨媒体和广告网络一站式采买某种人群的广告投放机会。另外,还可以具备一项高级功能,即机器驱动的自动ROI优化功能。这样的产品形态,我们称为媒体采买平台(Media Buying Platform, MBP),与之类似的概念,还有所谓交易终端(Trading Desk),可以认为是同一类的产品。从市场发展来看,许多媒体采买平台都是4A或其他代理公司为了适应市场技术形态的变化, 收购或者孵化出来的子公司.
按照转化过程的自然划分,eCPM可以分解成点击率和点击价值的乘积。一般来说,相对于点击价值的预测,点击率的预测由于训练数据充分一些,而且主要描述的是媒体上发生的行为,其建模的难度要小一些。点击价值的估计虽然要困难得多,在很多广告产品中却是不可缺少的,比如按照CPS结算的广告网络,或者后面介绍参与实时竞价的DSP。对这个问题,由于行业的区别和数据完整性的不同,并不存在象点击率预测那样相对成熟的一致方法。
点击率预测核心的挑战是动态信息的捕捉,一般可以从模型和特征两个方面来研究这一问题,我们将在本章中对工业界使用的典型方法做剖析。另外,由于点击数据的稀疏性,在实用中还需要考虑模型的校准以及动态特征的平滑。由于点击率的预估严重依赖历史数据的反馈, 所以如何更全面的探索建模的整个空间以获得充分的统计数据,同时又不损失短期的收益, 值得探索和研究。
点击价值的估计虽然要困难得多,在很多广告产品中却是不可缺少的,比如按照CPS结算的广告网络,或者后面介绍参与实时竞价的DSP。对这个问题,由于行业的区别和数据完整性的不同,并不存在象点击率预测那样相对成熟的一致方法。
按照点击和转化两个发生在不同阶段的行为,eCPM可以分解 成点击率和点击价值的乘积: (a,u,c) = μ(a,u,c)·ν(a,u). 我们认为点击率μ是广告三个行为主体的函数,而点击价值则是用户u和广告商a的函数。后一点的假设有近似之处,因为实际上媒体的来源会影响用户对广告信息的信任程度,但我们为了概念清楚起见忽略这一影响。
在不同的市场环境下,具体的广告产品可能不需要对这两个量决都进行估计,而且估计要求的准确程度也有所区别:对于按CPC结算的广告网络,需要尽可能准确地估计μ,和粗略地估计ν;对于在广告网络中采买的交易终端,主要需要估计ν;而对于DSP,则需要对两个都有较强的估计能力。
LR模型, L-BFGS/ADMM优化, 点击率模型的校正, 点击率模型特征, 点击率预测评测
对于一些常用且重要的的偏差特征,我们简单地介绍如下:
影响点击率的因素
Explore & Exploit
从商业逻辑和产品形态上看,搜索广告可以认为是广告网络的一个特例。它是以上下文查询词为粒度进行受众定向,并按照竞价方式售卖和CPC结算的广告网络。从商业逻辑和产品形态上看,搜索广告可以认为是广告网络的一个特例。它是以上下文查询词为粒度进行受众定向,并按照竞价方式售卖和CPC结算的广告网络。
搜索广告与一般广告网络最主要的区别,是上下文信息非常强,因此用户标签的作用受到很大的限制。因此,关于搜索广告的研究,有两个技术上的重点:
对搜索广告这个产品,不同搜索引擎提供商有不同的称呼,比如Paid Search, Search Ad, Sponsored Search等。这些词汇概念上非常相似,但也略有差别,个人比较倾向于采用“Sponsored Search”这样的说法,而“Paid Search”有时会让读者对是谁付费产生误解。至于“Search Ad”,实际上还应包括搜索引擎中的其他广告形式,比如百度品牌专区,因而并不是本章讨论的狭义的完全竞价的搜索广告网络。
Hint: Google Adwords 排名前10000的关键字. 百分比: 前一万关键字中使用人数的占比. 所示价格:CPC中的最高价格
前 20 位关键字产生的收入占 Adwords 总收入的 70%,剩下的 30% 的收入产生于 1000 左右的分类中的各种关键字.
搜索广告的展示区域,一般来说分为北(North)、东(East)、南(South)三个部分。搜索广告是一个非常典型的位置竞价问题,就期望点击率而言,北显著高于东区,而同区当中位置越靠上也越高。
搜索广告的受众定向标签,即是上下文的搜索词。由于搜索词非常强地表征着用户的兴趣, 搜索广告可以进行非常精准的定向。相对这样的上下文信息,根据用户历史行为得到的兴趣标签重要性大打折扣,这一方面是因为其信号远不如上下文搜索词强烈,另一方面是因为用户这样强烈兴趣的任务是绝不能被打断的(参见第二章中广告有效性原理部分)。这是搜索广告区别于显示广告网络的最大特点。
既然搜索词的重要性极高,粒度又非常细,如何根据广告主的需求对其关键词进行合理的拓展,找到那些相关而又效果不错的关键词,这对于需求方和供给方来说都有很大意义:需求方需要通过扩展关键词以拿到跟多流量;供给方则需要借助此来变现更多流量和提高竞价的激烈程度。因此,查询扩展(Query Expansion)是搜索广告的重要技术。搜索广告的查询扩展,与搜索中的这个问题,有相通之处,又有一些显著的区别。
虽然按照用户历史行为做定向不适用于搜索广告,用户在一个session内的一系列查询,还是会对准确理解用户意图大有帮助。另外,前一章介绍的点击反馈特征,也存在着快速更新的需求。要达到这两个目的,系统上的挑战要大一些,原先那样基于Hadoop的离线挖掘模式就不适用了。正是这一需求的存在,催生了流式计算(Stream Computing) 的技术平台,目的是利用用户短时的行为快速、连续地得到一些统计信息,并反馈给线上决策系统。
搜索广告的内容本身虽然不宜进行特别深入的个性化,但是在搜索页面中插入的广告条数则存在很大的个性化空间。这样做的基础,是不同用户对于广告,或者相关程度差一些的内容,接受和容忍的程度有着很大的不同。实际上,即使在北美市场这样的用户受教育程度较高的市场上,也至少有三四成的用户不能完全分辨搜索结果和广告。因此,对不同的用户动态调整广告的条目数,可以使得在平均广告数目相同的约束下,整体系统的营收有显著的提高。
对于搜索广告,尽管深度的个性化结果并不一定有效,但同一个session内的一系列查询对于准确理解用户当前的任务时有帮助的。因此,如果将用户短时的行为数据及时地反馈到线上决策系统,对广告效果的提高大有帮助。
对搜索广告而言,上下文信息即Query的核心作用是不能被弱化的,否则会对相关性和用户反馈有较大负面影响。因此,我们提倡在广告检索阶段,不采用短时行为反馈的到的标签信息来影响Query的检索结果,不过在排序阶段,可以利用短时动态特征来提高那些用户更倾向于选择的结果。
搜索广告对应的需求方问题,即通过竞价采买搜索引擎关键词来做广告的问题,我们称之为搜索引擎营销(Search Engine Marketing, SEM)。从本质上看,SEM与前文提到的媒体采买平台面临的挑战类似,即流量选择(此处为关键词选择)和出价。
由于搜索广告的定向粒度很细,可以看出关键词选择和出价都是规模很大的优化问题,而且由于广告网络半封闭的竞价机制,数据的反馈和调整都不够及时,因此这一优化问题技术挑战是比较大的。这种面向广告网络中非RTB流量的ROI优化,也成为广告技术产品的一个重要方向.
提供广告主自行选择流量和在每次展示上独立定价的功能。这样的功能,必然要求竞价这一过程在每次展示时实时进行,也就是实时竞价(Real Time Bidding, RTB)。RTB的产生,使得广告市场向着透明的比价平台的方向发展,这样的平台就是广告交易平台(Ad Exchange),其主要特征即是用RTB的方式实时得到广告候选,并按照其出价简单完成投放决策。与广告交易平台对应的采买方,我们称为需求方平台(Demand Side Platform, DSP)。由于实时竞价的功能需求,广告交易市场解决供给方和需求方用户身份对应的问题,这需要用到cookie-mapping的技术。
虽然供给方在广告交易中遇到的算法问题不多,但还是要解决好带宽资源的限制下,用更少的询价请求完成尽可能高效的变现这一问题。从优化角度来看,这很像前面的在线分配问题,同样的带约束优化思路也仍然可以适用。
从需求方来看,定制化的用户划分能力使得广告主可以象优化自己的推荐系统那样优化广告购买,唯一的区别是这个推荐系统是放在站外的。出价需求的存在和广告主预算范围内的套利,要求DSP具备点击率预测、点击价值估计、流量预测、站外推荐等多方面的运算能力。除了站外推荐,广告市场新的发展趋势是根据广告主提供的种子用户,利用海量的媒体数据为广告主找到行为相似的潜在用户。
在需求方的利益得到了充分的保证以后,媒体的变现手段也发生了相应的变化。到现在为止,媒体至少有四中常用的广告变现选择:
当在线广告市场进入到这个阶段以后,程序交易(Programmatic Trade)的方式已经成为举足轻重的力量,它使得整个在线广告市场越来越向着数据驱动、计算导向的方式前进。
Ad Exchange的骨干架构:
从核心概念上看,Ad Exchange既不需要自己的广告索引,也不需要eCPM估计,因而可以用非常简单清晰的架构实现。但是这仅仅是概念,实际产品中,为了支持广告主在不需要定制化用户划分时更方便的图形界面采买,也需要广告索引;而为了实现询价优化(后文有具体介绍),一定的的eCPM估计也是不可少的。
基本功能:
实时竞价的的整个接口可以分成两部分:线下进行的将供给方与需求方用户ID对应起来的cookie-mapping过程,和线上广告请求到来时的竞价和投放过程,如下图所示。
身份对应(Cookie Mapping): 在RTB应用中,Cookie Mapping一般是由DSP在广告主网站上发起,这样做的原因是一般情况下DSP负责的是加工广告主定制受众标签,因而不需要对所有用户都建立对应关系。这一过程又可以细分为:
广告请求(Ad Call): RTB的广告请求部分可以分为三个步骤。
其中3,4两步可以合并为一步,即DSP同时返回出价和广告创意地址,由Ad Exchange返回给媒体。这样做的好处是减少了一次服务器往返,用户看到的广告延迟也会减少,缺点是Ad Exchange可以获得DSP某个广告商的相关受众,因而存在信息泄露风险,不太符合Ad Exchange中立市场的地位。
实际竞价的交易方式,虽然给予了广告主最大的流量选择空间,也对系统提出了更高的要求,并且带来了下面的一些实际的问题:
RTB的接口有两个对接方:在Ad Exchange方实现的部分,我们称为RTBD(RTB for Demand);在DSP方实现的部分,我们称为RTBS(RTB for Supply)。在各个Ad Exchange 中,RTB接口的细节和具体参数有很大的不同。显然这对于广告主从不同的Ad Exchange 中统一采买流量是不利的。为了解决这一问题,IAB经过充分市场调研与企业合作,制定了OpenRTB 的接口标准,这一标准涵盖了视频、无线、文字、条幅等多种广告形式下的RTB 问题,并已经为一些Ad Exchange所采用。
Cookie mapping的情况虽然比较复杂,我们可以重点关注三个问题:由谁发起?在哪里发起?谁保存映射表?最典型的情景有两种:一是涉及到两个域名,即在一个域名的服务上向另一个域名发动的cookie mapping;二是涉及到三个域名,即在一个第三方域名页面上发动的其他两个域名间的cookie mapping。
涉及到两个域名的cookie mapping,典型的例子是媒体与DMP之间的身份对应问题。如上图所示,这一过程有5个步骤:
涉及到三个域名的cookie mapping,典型的例子是DSP与Ad Exchange之间的身份对应问题。如上图所示,这一过程有6个步骤:
Ad Echange需要解决的一个关键问题,就是如何在带宽或服务成本的约束下,优化整体市场的eCPM水平。要考虑带宽或服务成本的约束,显然就需要对每次展示中询价的DSP数目做精简,因此,这个问题也称为询价优化(Call Out Optimization)。
考虑到DSP方有相当一部分是按照广告主定制标签来采买流量,因此,这种DSP一般来说只会在自己感兴趣的人群,也就是cookie-mapping映射过的用户群上出价。显然,Ad Exchange是可以先验地知道这一用户群的,因此,对这类DSP中的某个,如果当前Ad Call到达的用户cookie如果没有与其映射过,那么就不需要向该DSP询价。一般来说,这样的规则可以显著降低带宽需求。不过,也有很多的DSP并不是仅仅在广告主用户集合上出价,或者当这样做仍然不能满足带宽成本的要求时,就需要进一步的优化了。
DSP的系统广告投放的决策流程为:DSP服务器通过RTBS接口拿到广告请求,然后经过与广告网络类似的决策步骤,包括检索和eCPM排序,找到价值最高的广告,并将报价返回给Ad Exchange。与广告网络相比,DSP的广告决策过程有一些难点:一是在eCPM估计时,除了估计CTR,还要估计点击价值,并且由于出价的要求,这一估计要尽可能准确;二是由于DSP是完全面向广告主的产品,广告主量的需求也需要满足,因此还要考虑在线分配的策略。
上面讨论的这个决策流程,适用于以套利为目标的DSP,即通过优化算法提升广告主的ROI来赚取更多的利润。也有的DSP产品更接近于透明采买的方式,即广告主按照自己的用户划分和策略完成RTB购买,而DSP收取固定的手续费,这种情况下,对优化的需求就没有那么高。
DSP与其它广告产品的相比,多了定制化用户划分功能,即图中的Customized Audience Segmentation部分。这部分通常的方式是在广告主网站上布DSP域名的代码,收集到用户行为并进行离线加工分析,再将加工出的标签用于广告投放。
重定向(Retargeting)是广告中最早产生,也最广泛使用的一种定制化标签。重定向的概念很简单,即把那些曾经对广告主服务发生明确兴趣的用户找出来,再次向他们投放该广告主的广告。在不同的广告类型上,重定向主要有两种的目的:用于品牌广告。当用户已经选择过某品牌的服务或产品后,如果在比较高质量的媒体上看到该品牌的广告,他会进一步肯定自己决策的正确性,从而对该品牌的认知度也大大加强。这种用途下,应当以宣传品牌而不是具体产品为主要诉求。用于效果广告。当用户曾经考虑过某种产品,但没有完成最终转化,通过在线广告将他找回,点击率和转化率都会明显高于平均水平。如果用户已经选择了该产品,那么可以利用推荐技术为他推送相关的产品广告。
重定向可以从信息来源和使用信息的精细程度上区分为下面三种类型:
个性化重定向其核心支持技术,主要有以下几个关键:
对于媒体而言,无需把全部流量的变现都押在一种交易方式上:既可以通过直接销售来高溢价地售卖品牌广告,也可以灵活地综合使用各种程序交易方式以追求更高的eCPM。媒体的统一变现平台需要这样的逻辑:
可以看出,在这样的逻辑中,广告请求最后是被分配到自运营广告库,还是其他Network,或者是DSP,是根据他们的收益在线动态决定的,这样的方案称为动态分配(Dynamic Allocation)。这样的统一接入各种广告需求以优化媒体广告变现能力的技术,我们称为收益管理(Yield Management),对应的产品形态,就叫做供给方平台(Supply Side Platform, SSP)。
爬虫流量的去除比较简单,比较规范的搜索引擎会在抓取页面时做声明,而其他一些不做声明的爬虫,也比较容易线下收集其IP,于是用一个黑名单来去除这部分流量即可。对爬虫流量的过滤,最好在广告服务前端的http服务中直接配置实现,即对于已知的爬虫带来的页面请求,服务器直接返回空,而不做任何广告检索和排序的逻辑,这样对服务器压力的减轻有一定帮助。
我们知道,广告活动是广告主、媒体与用户之间三方交互的行为,因此广告中的作弊行为主要有两种情况:
针对不同的作弊方式,也有不同的反作弊思路。单一IP或cookie在大量展示或点击的作弊方式是最容易去除的,只需要一定时间段内的展示或点击设定合理的上限,并进而发现那些显著超过上限的IP或cookie加入黑名单即可。对于更复杂的,通过控制多台电脑来产生假点击的作弊方式,点击热点图是一项很有用的反作弊技术:正常的用户点击,在创意上的位置分布往往呈现与创意关键区域相关的比较自然的分布;而及其产生的用户点击,其分布要么过于均匀,要么过于集中,很容易与自然点击分布相区别。
委托某家第三方监测公司对实际发生的展示或点击数目进行核对,以确保自己的利益。
为了服务于广告主,将流量监测、作弊监测和品牌保护等一系列任务都一站式地完成,从而保证广告投放过程对于广告主的安全性,市场上产生了广告安全相关的技术公司。
cookie,account,imei etc…
我们先来看看供给方的数据安全性问题。由于在RTB过程中,Adx需要向参与竞价的DSP广播每次展示的URL和cookie,使得DSP理论上存在规模化监听媒体用户行为的可能。假设有某个恶意的DSP,对于能够参与竞价的所有广告请求,都以很低的价格参与竞价,目的不在于赢得流量,而在于收集媒体上的用户行为,这就产生了媒体数据的安全问题,我们将其称为供给方数据安全(Supply Data Security)。供给方的数据安全问题尽管在RTB中确实存在,但是并不是想象中那样严重。我们可以回顾一下询价优化技术:由于带宽的限制,实际上在每次询价时,Adx应该尽可能只向那些最可能赢得竞价的DSP发送询价请求,而那些以恶意收集数据为目的的DSP,在理想情况下应该被挡在大部分的询价以外。
再来看看需求方的数据安全性问题。为了表达更加清楚,假设有两个化妆品电商广告主A和B,两者都通过DSP进行个性化重定向广告采买,那么他们分别利用RTB的方式接触到了自己的顾客集合。需要注意的是,这里的顾客集合实际上是广告主的私有数据,也是特别具有商业价值的数据,然而,DSP、Adx 和媒体都可能在RTB过程中得到这些顾客集合。如果Adx希望制造更加激烈的竞价环境,获得更高的利润,那么它实际上可以将这两个广告主的顾客集合合并在一起,并生产一个相应的用户标签吸引双方来对此标签竞价。这种做法的实质,是在竞争对手之间倒卖顾客集合,并且可以通过比较模糊的标签名字(比如为上面两个化妆品广告主的顾客集合打上“年轻女性”的标签)非常隐蔽地操作。