《计算广告》读书笔记
Table of Contents
计算广告#
涉及内容#
数据获取、检索、分析
统计模型、机器学习
优化
微观经济学
互联网核心资产#
流量
- 产品功能之外夹带一些付费内容
数据
- 用户属性、偏好等信息
- 数据变现附着在流量变现基础上
影响力
- 产品或内容获得了高于普通水准的关注与信任
- 现有广告体系并不能很好地进行影响力变现
大数据与广告的关系#
行为数据
- 交易数据
- 行为数据
全量加工
- 通过数据采样能显著降低数据处理的复杂度,同时解决问题的效果没有太大的下降
- 不可能通过采样达到全量数据处理的效果,即数据采样率降低导致解决问题的收益快速下降
自动化应用
广告的定义与目的#
参与方
- 需求方(demand)/出资人(sponsor)/广告主(advertiser)/广告代理商(agency)/采买方
- 供给方(supply)/媒体(medium)/变现平台
- 受众/产品用户:被动参与
目的
- 广告主通过媒体达到低成本的用户接触
- 影响按某种市场意图接触人群中的潜在用户,增大他们选择产品的概率,或降低对产品性价比的苛求程度
效果衡量
- 投入产出比(return on investment, ROI): 某次广告活动的总产出与总投入的比例
- 广告活动的总投入:容易确定
- 广告活动的总产出:不易确定
在线广告简史#
在线广告阶段 | 广告形式 | 广告售卖模式 |
---|---|---|
展示广告 | 在互联网上展示横幅广告等 | 合约广告,即采用合同方式约定某一广告位在某短时间被特定广告独占 |
定向广告1.0 | 对不同受众(受众定向)呈现不同的广告(广告投放) | 担保式投送,即广告主按照广告展示次数付费 |
定向广告2.0 | 1. 定向标签越来越精准,很难准确预估 2. 广告主数量不断膨胀,仅按在线分配策略决策,浪费了部分可以卖得更贵的流量 | 竞价广告,只向广告主保证单位流量成本,对每一次展示按照收益最高进行决策 |
定向广告3.0 | 需求方按照自己对人群定义挑选流量 | 实时竞价,由广告主预先出价,变成每次展示时实时出价( 架构参考) |
- 定向技术和交易形式是进化的一条主线
计算广告基础#
广告的有效性原理
graph LR subgraph 选择 曝光 --> 关注 end subgraph 解释 理解 --> 接受 end subgraph 态度 保持 --> 决策 end 关注 --> 理解 接受 --> 保持
- 越靠前的阶段对点击率影响越大,越靠后的阶段对转化率影响越大
互联网广告技术特点
- 技术和计算导向:精准定向受众的成本最小
- 效果的可衡量性
- 创意和投放方式的标准化
- 媒体概念多样化
- 数据驱动的投放决策
核心问题
最优化问题:
目标:最大化一组展示的总收入与总成本的差,即最大化利润
约束:预算的限制、投放量的保证等
广告收入的分解:
CTR = 广告点击量 / 广告展示量
CVR = 转化次数 / 到达次数
结算方式:与eCPM估计有关
结算模式 计算方式 点击率估计 点击价值估计 优缺点 适用场景 CPT 将某个广告位以独占的时间段收取费用 需求方 需求方 充分发挥橱窗效应
无法利用受众定向技术高曝光的品牌广告 CPM 按照千次展示结算 需求方 需求方 可利用受众定向选择目标人群
合约售卖下受众划分不能过细有受众选择需求的品牌广告
实时竞价广告交易CPC 按点击量结算 供给方 需求方 精确划分受众人群
合理的供应方和需求方分工竞价广告网络 CPS/CPA/ROI 按销售订单、转化行为或投入产出比结算 供给方 供给方 需求方无风险
供应方运维难度大效果类广告联盟
效果类DSPoCPM 基于CPM结算,根据转化率优化 供给方 供给方 向CPA的稳健过度 数据能力较强的广告平台
北美在线广告协会
- Interactive Advertising Bureau,IAB
- American Association of Advertising Agencies,4A
- Association of National Advertisers,ANA
在线广告#
- 在线广告产品阶段
- 合约广告产品:按时段售卖的CPT广告、按约定展示量售卖的CPM广告
- 竞价广告:搜索广告对搜索关键词的竞价
- 程序化交易广告:以实时竞价为核心
- 原生广告:让广告和内容以“原生”的方式共存,但在规模化和交易化方面存在问题
- 广告产品组成部分
- 面向需求方的接口
- 广告计划:对应一次投放合同,包括预算、时间范围等
- 广告组:对应一个投放策略,设定受众定向条件和出价
- 广告创意:广告素材,如文字链、图片类型等
- 面向供给方的接口
- 用户界面:以人工的方式管理投放和优化效果
- API接口:投放复杂广告或需要自动调整优化,一般只开放给大广告主或代理公司
- 程序化交易
- 投放系统及匹配策略
- 面向需求方的接口
合约广告#
- 受众定向
- 地域定向
- 人口属性定向:包括年龄、性别、受教育程度、收入水平等,可监测
- 上下文定向:根据网页或应用的具体内容来匹配相关的广告,如关键字、主题等
- 行为定向:根据用户的历史访问行为了解用户兴趣
- 精确位置定向
- 重定向:对某个广告主过去一段时间内的访客投放广告
- 新客推荐定向:根据广告主提供的种子访客信息,综合平台数据找到行为相似的潜在用户
- 动态定价:如团购可以转化价格敏感的用户
- 场景定向:使用手机的背景状态
- 受众定向的标签体系
- 按照某个分类法制定一个层次标签体系
- 上层的标签是下一层的父节点,在人群覆盖上是包含关系,结构化较强
- 面向品牌广告的受众定向采用
- 场景:标签作为广告投放的直接标的
- 一种兴趣标签的组织方式
- 根据广告主的具体需求设置标签,半结构化或非结构化
- 适用于多种目标,特别是效果目标并存的广告主的精准流量选择
- 场景:标签仅仅是投放系统的中间变量,作为CTR预测等模块的变量输入
- 设计思路
- 如何描述用户,也就是如何设计标签体系
- 分行业进行,需要深入研究该行业的用户决策过程,即用户决定买什么、不买什么的原因和逻辑
- 按照某个分类法制定一个层次标签体系
- 展示量合约(交易方式)
- 品牌广告投放方式是按照CPM结算的展示量合约
- 在某种受众条件的展示量下,按照事先约定好的单位展示量价格结算
- 也叫担保式投送(GD),“担保”就是量的约定
- 无法将多个差别很大的广告位打包成同一售卖标的
- 依赖技术手段:受众定向、流量预测、担保式投放
- 流量预测
- 售前指导:事先尽可能准确预测各个人群标签的流量
- 在线流量分配
- 出价指导:预估出价可能会获得多少流量
- 流量塑形
- 主动地影响流量
- 在线分配
- 二部图匹配问题:
- 广告库存的供给节点:所有人群标签都相同的流量集合
- 广告合约的需求节点:广告的人群标签条件
- 二部图匹配问题:
搜索与竞价广告#
- 搜索广告
- 特点:
- 广告展示机会拍卖,并根据竞争结果依次占据广告展示的若干位置
- 广告主需自行调整效果与量的平衡
- 价格的约定被打破,广告主可随时调整关键词上的出价
- 产品特点:以查询词为粒度进行受众定向,按照竞价方式售卖、按CPC结算
- 特点:
- 产品形态
- 更多表现力信息,结构化的广告内容摘要
- 弱相关广告类型,如搜索结果页面的右侧部分
- 原生化探索:广告与搜索结果的混排,且不区分
- 产品策略
- 查询扩展:精确匹配、短语匹配、广泛匹配、否定匹配
- 广告放置:平衡用户体验与商业利益,采用NFP(北区广告平均条数)考察北区广告的数量和质量
- 位置拍卖与机制设计
- 对于一组广告位有S个位置,将前S个高出价的广告依次放入广告位
- 市场保留价 (Market Reserve Price, MRP):出价高于MRP才能获得竞拍机会
- 定价问题:定价策略决定市场收益和稳定性,稳定是指整个竞争系统处于纳什均衡
- 广义第二高价 (GSP):向某个位置赢者的广告商收取下一位广告主的出价
- VCG定价:对于某个位置赢者,其所付出的成本等于他占据这个位置给其他参与者带来的价值损害(非主流)
- 价格挤压:平衡点击率与出价,根据市场情况主动影响竞价体系向着需要的方向发展
- Myerson最优拍卖
- 竞价广告网络
- 竞价模式 + 剩余流量,剩余流量是未通过合约售卖的广告流量
- 产品特点:
- 竞价方式不向广告主做量的约定,而是根据变现能力,即eCPM,来决定每次展示分配给哪个广告主
- 按人群售卖,淡化了媒体和广告位的概念
- 无须满足广告主品牌独占的要求
- 采用广告主先充值的方式,根据实际消耗来结算
- 最主流的结算方式是CPC
- 产品策略:
- 广告检索:一个用布尔表达式表达的投放条件,不可简单看成词的集合
- 广告排序:对eCPM的估计转化为对点击率的估计问题
- 竞价广告需求方产品
- 搜索引擎营销:通过竞价采买搜索引擎关键词推广
- 交易终端
合约广告 vs 竞价广告#
合约广告 | 竞价广告 | |
---|---|---|
供给方/广告市场方 | 所有量的保证和质的优化都由媒体方的广告投放机统一完成 | 市场只负责制定竞价、收费规则,各广告主采用市场竞争的方式完成量的保证 |
需求端 | 采买方式对广告主缺乏透明性,唯一能做的是在合约的层面预先约定好最关心的利益条款,但很难深入优化 对量的保证可预先约定,适合品牌性质较强的广告活动 | 不再承诺广告投放量 点击单价由广告主自行决定 非常精细的受众定向被无障碍地使用在交易中 大量的中小广告主逐渐成为参与竞价的主体 数据的价值得以彰显,整个市场开始以数据为核心来组织和运营广告产品 |
程序化交易广告#
动态出价的产品需求以及广告主预算范围内的套利,要求DSP (demand side platform,需求方平台) 具备点击率预测、点击价值估计、流量预测、站外推荐等多方面计算能力
实时竞价:
问题:在做人群选择时,需要利用广告主自有的数据,即定制化用户标签
流程:
- 用户标识映射 (cookie mapping):将ADX (ad exchange,广告交易平台) 与DSP的用户标签对应的cookie映射过程
- 广告请求 (ad call):线上广告请求时的竞价与投放过程
其他程序化交易
- 优选 (preferred deal, PD)
- 私有市场:拍卖限制在被邀请的需求方的小范围内
- 程序化直投:直接购买与实时竞价过度的交易模式
广告交易平台ADX
- 一般为CPM结算方式
- 询价优化:给多个DSP发广告请求带来的带宽和机器成本的上升
需求方平台DSP
- 特征:
- RTB (real time bidding, 实时竞价) 、优选等程序化的流量购买方式
- 支持需求方定制化用户划分的能力
- 重点:以第一方数据为核心,结合第二方或第三方数据的定制化标签
- 出价策略:基于eCPM和市价随时间变化的曲线
- 出价过程:
- DSP对各个广告候选估计eCPM并排序,以CPC的第二高价向ADX出价
- ADX会按照第二高的DSP出价向第一高DSP收取费用
- 特征:
供给方平台SSP
- SSP=supply side platform=供给方平台
- 多种广告源动态分配过程:估算被聚合ADN (AD Network, 广告网络或广告联盟) 和内部广告的eCPM,排序选出最优并以此最优价格作为底价,向DSP发出询价请求
- header bidding:
- Bidder (所有可以进行报价的服务) 和媒体建立直连绕过ADX的一种方式,Bidder有机会在实时竞价开始之前直接向媒体报价,媒体根据出价高低决定中标者
- 客户端询价模式导致比较大的广告时延,减少了实际曝光、影响了用户体验
数据加工与交易#
有价值的数据
- 用户标识:确定哪些行为来自于同一个用户
- 基础方案:以cookie为用户标识
- cookie映射
- 用户行为:
- 决策行为:转化、预转化
- 主动行为:广告点击、搜索、搜索点击
- 半主动行为:分享、网页浏览
- 被动行为:广告浏览
- 人口属性:定向标签,与用户实名身份绑定
- 地理位置
- 社交关系:“兴趣相似”
- 设备信息
- 基本规律:
- 用户主动意图越大的行为数据价值越大
- 越接近转化的行为对效果广告的精准指导作用越强
- 用户标识:确定哪些行为来自于同一个用户
数据管理平台 DMP (Data Management Platform)
用户数据来源不同:
- 第一方数据:广告主
- 第二方数据:广告平台
- 第三方数据:不直接参与广告交易的其他数据提供方
第一方DMP:
- 产品功能:提供受众用户对象功能,广告主通过DMP与广告采买渠道进行数据对接,将得到的用户标签应用于网站业务
- 商业逻辑:提供数据托管和加工服务,DSP利用标签数据以RTB方式在ADX中投放广告,并向DSP支付费用(并非以数据变现为目的)
第三方DMP:
- 产品功能:聚合各种来源的在线的用户行为数据,并加工成有价值的数据标签
- 商业逻辑:以数据变现为目的,从多个数据源 (DP, data provider) 收集原始数据,加工成用户标签并向DSP出售标签数据
现状:
中国市场:未能形成规模,可能与作弊、流量劫持等灰色低成本渠道有关
海外市场:bluekai、audiencescience、talkingdata
数据交易基本过程:
i. DMP的用户标签以批量传输方式提供给ADX,并作为ADX的一个辅助产品卖给DSP
ii. 在询价过程中,ADX按照CPM计价将DSP购买的某种用户标签传给DSP
iii. 以DSP实际成交的展示量乘以CPM价格作为购买数据的附加费用
graph LR DMP --批量数据传输--> ADX --询价请求--> DSP ADX --附带数据--> DSP
以广告交易为载体的数据交易优点:
i. 整体数据交易成本仅DMP和ADX之间一次传输
ii. 所有DSP、数据提供方只需与ADX进行cookie映射,避免由于cookie映射带来的数据损失
iii. DSP可自由限制需要的数据范围
iv. 在数据的买房和卖方之间,ADX能够进行数据量监测和计费的作用
问题:
- 数据的重复售卖会引起数据价格向流量价格的转移
- 无法按竞价的方式售卖
隐私保护
- 原则:
- 严格避免使用个人可辨识的信息
- 用户有权要求系统停止跟踪和使用自己的行为数据
- 不应长期保留和使用用户行为数据
- 工程上严格分配权限和最小数据访问
- 准标识符与K匿名
- 稀疏行为数据
- 原则:
数据安全
- 供给方的数据安全
- 需求方的数据安全
信息流与原生广告#
移动广告:
- 对用户行为模式进行全天候监测和分析
- 精确定位手段能够实现本地化广告主
信息流广告:
广告与内容联动的方式交互
被广告区隔开的各部分内容没有直接关联
关键:
如何将相同广告素材适配到不同信息流位置上
如何处理广告在信息流中出现的位置与密度
原始广告:所有将商业化与非商业化内容统一生产或混合排序的产品
- 产品表现/形式上“原生”:广告的展示风格和样式与内容一致
- 用户场景上“原生”:广告的投放决策逻辑与内容生产逻辑一致
- 程序化交易:原生广告的触发是否根据用户意图进行
个性化系统#
定义:根据用户、上下文的一些信息,动态决定返回什么内容的系统
四个主体部分:
- 在线投放引擎:用于实时响应请求,完成决策
- 离线的分布式数据处理平台
- 在线实时反馈的流计算平台
- 连接和转运以上三部分数据流的数据高速公路
计算广告系统架构#

广告投放引擎
类搜索架构:检索 + 排序
主要模块:
广告投放机:接受广告前端web服务器发送的请求,完成广告投放决策并返回最后页面片段的主逻辑
广告检索:根据用户标签与页面标签从广告索引中查找符合条件的广告候选
广告排序:高效计算广告的eCPM(点击率估计 = 离线计算的CTR模型和特征 + 流计算的实时点击率特征,点击价值估计),并进行排序的模块
收益管理:以全局收益最优为目的
广告请求接口:提供用户唯一身份标识ID和其他一些上下文信息
定制化用户划分:从广告主处收集用户信息
数据高速公路:将在线投放的数据准实时传输到离线分布式计算平台和流式计算平台
离线数据处理:
- 输出目标:
- 统计日志得到报表、仪表盘等,供决策时参考
- 利用数据挖掘、ML等进行受众定向、点击率预估、分配策略规划等,供在线机器决策使用
- 主要模块:
- 用户会话日志生成
- 行为定向:对用户打标签
- 上下文定向:对上下文页面打标签
- 点击率建模
- 分配规划:利用离线日志数据,得到适合线上执行的分配方案
- 商业智能系统:ETL、仪表盘和Cube
- 广告管理系统:客户执行与广告系统的接口,面向广告主的产品
- 输出目标:
在线数据处理
- 在线反作弊:流量来源是否有作弊流量
- 计费:广告费用
- 在线行为反馈:实时受众定向、实时点击反馈等
- 实时索引:实时接受广告投放数据,建立倒排索引
技术问题:
- 实时索引技术:根据广告主预算、定向条件等用于广告候选的检索
- NoSQL数据库:用户、上下文标签和其他特征
- Hadoop等:离线数据挖掘等
- 流计算平台:用户行为和点击反馈
- 实时竞价接口:高并发、快速响应
开源工具搭建
计算广告技术#
信息检索
倒排索引:从大量文档中查找包含某些词的文档合集
向索引中加入一个新文档
给定一个由多个关键字的组成查询时,返回对应文档集合
向量空间模型 (vector space model, VSM)
- 文档的表示方法:BoW,词频和倒数文档频率的乘积
- 词频:term frequency,TF,某文档中某个词出现的次数
- 倒数文档频率:inverse frequency,IDF,某个词在所有文档中出现频繁程度的倒数
- 相似度度量方法
- 采用BoW方法,计算对应矢量的余弦距离
- 文档的表示方法:BoW,词频和倒数文档频率的乘积
最优化方法
- 拉格朗日法与凸优化
- 下降单纯形法
- 梯度下降法
- 拟牛顿法
统计机器学习
- 最大熵与指数族分布
- 混合模型和EM算法
- 贝叶斯学习
- 深度学习
合约广告核心技术
ADX询价优化:
在未来流量分布未知的情况下,如何估计在线分配算法的极限性能
根据历史数据进行相对合理的流量预测,如何利用预测搭建一个在线分配系统
CPM售卖的合约广告:流量预测、频次控制
广告排期系统:排期与动态广告混合系统
担保式投送系统:
- 流量预测:给定一组受众标签组合和一个eCPM阈值,估算在将来某个时间段内符合这些受众标签组合的条件并且市场价在该eCPM阈值以下的广告展示量
- 频次控制:某个用户在一段时间内看到某个或某组广告的曝光次数
- 在线分配:对每一次广告展示进行实时在线决策,在满足某些量约束前提下,优化广告整体收益
- 供给与需求二部图
- 需求约束与供给约束
受众定向核心技术
- 关注指标:效果 & 规模
- 用户:
- 用户标签:以用户历史行为数据为依据
- 行为定向:
- 目标:找出在某个类型的广告上eCPM相对较高的人群
- 特征选择函数:搜索、广告点击、网页浏览等行为映射到一个或多个定向标签上
- 人口属性预测:以用户行为为基础预测其人口属性
- 上下文:
- 上下文标签:根据用户当前访问行为得到的即时标签
- 文本主题挖掘:
- 预先定义好主题的集合,用监督学习将文档映射到这一集合元素上
- 不预先定义主题集合,用非监督学习自动学习出主题集合
- 模型:LSA模型、PLSI模型、LDA模型、词嵌入word2vec
- 定制化标签:根据广告主某些属性或数据加工
竞价广告核心技术
- 计价算法:eCPM = 点击率 * 点击价值
- 点击率:广告3个行为主体的函数
- 点击价值:用户和广告商的函数;CPC计算体系中由广告主出价,不需要估计
- 搜素广告系统:
- 没有上下文和用户标签的缓存
- 最关键:点击率预测
- 查询扩展(重点):查询词的扩展,即如何扩展简短的上下文信息
- 基于推荐的方法:根据群体用户的选择关联性协同过滤
- 基于主题模型的方法
- 基于历史效果的方法
- 广告放置:搜索引擎广告中确定北区和东区广告条数的问题
- 广告网络:
- 决策流程:服务器接受前端用户访问触发的广告请求 —> 根据上下文信息和用户身份标识从页面标签库和用户标签库查出相应的上下文标签和用户标签 —> 根据标签等从广告索引中找出符合要求的广告候选集合 —> 利用CTR预估模型计算所有广告候选的eCPM —> 根据eCPM排序选出赢得竞选的广告并投放
- 短时行为反馈与流计算:实时反作弊、实时计费、短时用户标签、短时动态特征
- 广告检索:布尔表达式的检索,主要依靠于析取范式(DNF,disjunctive normal form)
- 相关性检索:
- 以查询和文档间的相似程度为目标的检索问题
- 思路:引入评价函数,并以此函数的评价结果决定返回哪些候选
- 方法:WAND算法、基于DNN的语义建模、最近邻语义检索、基于图的算法
- 计价算法:eCPM = 点击率 * 点击价值
点击率预测
- 回归问题:(a,u,c) 组合与点击的概率之间的函数关系
- LR模型优化算法:L-BFGS、置信域法等
- 点击率模型校正:解决正例和负例样本严重不均衡问题
- 点击率模型特征:
- 特征的非线性化/离散化
- 组合特征与静态特征
- 动态特征:当某个组合特征被触发,则采用该组合历史上一段时期的点击率作为特征取值
- 位置偏差与CoEC(click on expected click):用偏差因素作为特征而训练点击率模型
- 偏差特征:广告位位置、尺寸、投放延迟,日期时间,浏览器
- 点击反馈的平滑:在统计不足的维度组合上稳健地统计CTR或CoEC
- 点击率模型评测
- PR = 准确率(precision) / 召回率(recall)
- ROC 曲线
- 频次控制:与其他点击率特征是平等的
- 效果广告:将EC计数或频次的计数作为特征加入训练
- 品牌广告:通过EC计数上的直接控制达到一定用户接触程度的目的,由广告主直接设定
- 其他点击率模型:因子分解机、GBDT、深度学习,强化学习等
程序化交易核心技术
- cookie映射:由谁发起?在哪里发起?谁保存映射表?
- 询价优化:
- ADX如何在带宽和服务成本的约束下获得更高的eCPM,则需要精简每次展示中询价的DSP数目
- 思路:
- 工程规则:ADX先验地知道某一用户群,DSP只在cookie映射过的用户群上出价
- 带约束优化问题
- DSP优化
- 目标:以利润为主,尽量提高广告的eCPM、降低每次广告展示的费用 (广告网络中该项无须优化)
- 定制化用户标签:DSP需要支持定制化的用户划分能力
- DSP是完全面向广告主的产品,需要在量的约束下投放
- 按CPC结算的DSP进行eCPM估计时,需要估计CTR;按CPS等效果结算的DSP还需估计点击价值
- DSP中的点击率预测:预测准确性要求更高
- 点击价值 = 到达率(reach)h * 转化率 c * 转化单价 t
- 到达率:实际打开广告落地页次数与点击次数的比例,与广告主网站页面打开延迟、媒体属性(如误点)有关
- 转化率:到达落地页后有多少比例产生了广告主定义的转化行为,与用户对广告主产品的兴趣有关
- 转化单价:CPA/CPS类中是广告主指定的转化费用,ROI类中是广告主客单价与分成比例的乘积
- 出价策略:在有预算约束时,希望每次展示的利润率尽可能高,则需要知道eCPM、估计当前展示的市场价格,并在全局上尽可能将出价集中在利润率高的展示上
- 供给方平台:网络优化是指SSP接入多个广告网络,在线动态决定将广告请求发给哪个广告网络,优化整体收入
其他广告相关技术
创意优化
- 程序化创意:地域性创意、搜索重定向创意、个性化重定向创意
- 点击热力图
实验框架:利用系统模块间的相对独立性,用分层的结构来扩展实验容量
流量保护:在流量中去除恶意的和非主动的流量,反作弊
广告监测:将客户端信息拼凑成参数URL,并HTTP请求的方式传给第三方,告知“谁,在什么时候,看到了来自哪个媒体展示的,哪个广告主的广告”
广告安全:
- 广告投放验证:确认品牌的安全性,并保证展示的质量
- 可视性验证:判断浏览器是否对广告创意进行了渲染,如没有则该次展示不可视
广告效果归因
- 直接访问归因
- 用户ID碰撞归因:可自由设置归因周期
作弊与反作弊:
- 媒体作弊、广告平台作弊、广告主竞争对手作弊
- 虚假流量作弊、归因作弊
- 机器作弊、人工作弊