计算广告 (6)-- 广告交易市场 (Ad Exchange)

本文是刘鹏老师的计算广告学中的一些笔记。本文是第六章: 广告交易市场 (Ad Exchange)。主要介绍目前最常见的实时竞价的广告交易模式,分别介绍了这一模式下的供给方平台 (SSP) 和 需求方平台 (DSP), 并且重点介绍了 DSP, 因为在这一交易模式下,DSP 负责了绝大多数的关键任务。

广告交易平台 (Adx)

广告交易平台的关键特征是用实时竞价 (RTB) 方式连接广告和 (上下文,用户),按照展示上的竞价收取广告主费用

实时竞价指的是事先不对广告做 retrieval,而是在需要展示的时候向下游的 DSP 展示目前的 context,让各个 DSP 通过竞价的方式获取这次展示的机会。其流程如下

RTB 过程

从上图可知,RTB 是一个多方参与的过程,而从实现上可以分为两个阶段

1)cookie mapping:目的是将 supply 网站和 demand 端的用户对应起来;实际中通过 Adx(代表 supply) 与 DSP(代表 demand) 来进行直接的 mapping,后面会提到这方面的具体技术 2)ad call:指有广告展示机会到来,这时 Adx 通知各个 DSP 进行竞价,DSP 根据自身需求出价,出价最高者获得投放机会。

这种模式的出现是由于广告主需要的定制化受众定向在原来的广告网络上无法得到满足,举例来说:京东商城需要对其用户进行重定向投放广告,但是在广告网络上是采买不到这种流量的,因为哪些用户是京东的只有京东自己知道,因此需要让 demand 端对流量进行选择才能达到深度定制化的要求。

这种主要技术难点在于 1) Adx 与 DSP 之间的用户身份同步,一般通过 cookie mapping 实现 2) DSP 数量较多时的服务和带宽成本优化

但是存在着的潜在问题是: 1) 存在浏览数据的泄露风险。指的是某些 DSP 目的并不是获取广告,而是获取 Adx 展示的用户浏览数据;即每次出价都很低,保证自己不会赢得广告的展示机会,但是却能获得了 Adx 提供的用户 cookie 及其访问的 url,为其日后进行受众定向积累数据基础。

2) 多一次 round trip,对 latency 有较大影响。在之前的广告体系(合约广告,竞价广告)中,supply 端只需要先广告网络进行请求,广告网络根据其 retrieval 以及相关广告主的出价返回相关的广告即可,但是在实时竞价中,Adx 还需要等待 DSP 的出价以及通知获得展示机会的 DSP 进行广告的投放,这样无疑会增加投放的 latency 。

除了实时竞价,广告交易平台另外一个重要的特点是按展示计费而不是按照点击收费,其商业逻辑在于将点击率和点击价值的预估全放到 demand 端

Adx 的系统架构图

Ad Exchange 的系统架构很简单,原因是其不需要存储广告之类的信息,只需要将广告展示机会告诉给每个 DSP ,然后进行竞价拍卖选出出价最高的那个 DSP。其难点在于系统的吞吐量大且对 latency 的要求严格。其系统架构图如下

Ad Exchange 系统架构

其流程如下 1)某个 User 访问某个网站,网站通知 Adx 目前有一次展示机会 2)Adx 通过 RTBD 接口向各个 DSP 询价,从而获取 DSP 提供的各个广告(相当于图中的 Ad retrieval) 3)Adx 通过出价进行排序,并选择出价最高的广告展示给用户(相当于图中的 Ad ranking) 4)Adx 在日志中记录该广告的展示记录

cookie mapping 需要弄清楚三个问题:谁发起 cookie mapping 的请求?在哪里发起的请求?谁存 mapping 表?

下面以两个例子说明,第一个例子是 DSP 与 Adx 间的 cookie mapping,第二个例子是 DMP 与媒体的 cookie mapping。

下面是 DSP 与 Adx 的 cookie mapping 的过程

DSP与Adx

这个例子中 cookie mapping 由 DSP 发起,在有 DSP 代码的广告主网站发起,mapping 表存在 DSP。其具体流程为

1)DSP 在广告主网站中嵌入 JS 代码,有用户访问时,选择性加载一个 DSP 域名下的 iframe 2)DSP 根据其记录判断该用户是否需要 cookie mapping,返回包含多个 beacon 的动态 HTML,这里的多个 beacon 目的是为了与多个 Adx 交换 cookie。 3)通过某个 beacon 向对应的 Adx 发送 cookie 映射请求,并带有 Adx 标识(xid),DSP 标识(did)和 DAP cookie(dck) 三个参数。 4)Adx 通过 302 重定向向 DSP 返回 Adx 标识(xid)及其域名下的 cookie(xck) 5) DSP 返回一个 1x1 的 beacon 并记录下 Adx 方的 cookie(xcd) 与己方的 cookie(dck) 的对应关系。

下面是媒体与 DMP 的 cookie mapping 的过程

DMP与媒体

这个例子中 cookie mapping 由媒体方发起,在媒体的页面上发起,并且 cookie mapping 的表由 DMP 保存。其过程如下

  1. 用户访问媒体网站时,媒体网站向媒体的 cookie 映射服务请求一段负责此功能的 JS 代码 2)媒体的 cookie 映射服务返回该段 JS 代码 3)该 JS 代码判断是否需要映射,如果需要,则先 DMP 发送映射请求,并传送两个参数:媒体的标识(mid)以及媒体方的 cookie(mck) 4)DMP 返回一个 1x1 的 beacon,并记录下媒体方 cookie (mck) 和己方的 cookie (dck) 对应关系。

供应方平台(supply side platform)

SSP 完全代表着媒体方的利益

广告市场中,媒体变现流量方式一般有三种

  1. 合约广告,与广告主签订合约进行投放(CPM 结算)
  2. 竞价广告,将广告位托管给广告网络,广告网络根据人群售卖给广告主(CPC 结算)
  3. 实时竞价(按展示结算)

而 SSP 应该能够为媒体提供上面的所有变现方式,通过组合以上方式达到收益最大化 (称为收益管理,Yield Optimizer)

综合以上可知,SSP 的关键特征是

  • 提供媒体端的用户划分和售卖能力
  • 可以灵活接入多种变现方式
  • 收益管理

整个行业有代表性的公式有: AdMeld,Rubicon,Pubmatic

需求方平台(Demand Side Platform)

将决策交到 demand 端,

维基上对 DSP 的定义如下

A demand-side platform (DSP) is a system that allows buyers of digital advertising inventory to manage multiple ad exchange and data exchange accounts through one interface.

DSP 为广告主提供的便利之处在于,广告主主需要通过 DSP 的一个接口就可以获取各式各样的流量,从而进行定制化广告投放。

DSP 的关键特征如下

  1. 定制化用户划分
  2. 跨媒体流量采购
  3. 通过 ROI 估计来支持 RTB

DSP 的代表公司有 InviteMedia 和 MediaMath

DSP 的架构

DSP 的架构示意图如下

DSP

复杂部分在于计算部分,就是要估计 eCPM = CTR * clickValue,CTR 表示点击率, clickValue 表示点击价值,后面会详细介绍,在这里 DSP 需要同时计算 CTR 和 clickValue,复杂度自然大大提升。

DSP 流量预测

流量预测指的是给定一组受众定向标签组合以及一个 eCPM 的阈值,估算在将来某个时间段内符合这些受众标签组合的条件、且市场价在该 eCPM 阈值以下的广告展示量。

DSP 也需要预测流量以决定采买策略,因为 DSP 与广告主是 CPM 结算的,DSP 只要将市场中符合广告主的那部分低价的流量买下来才能获取更大的利润。

但是由于 DSP 无法拿到所有的流量情况,因此无法像攻击方那样通过历史流量那样进行流量预测,这个问题目前没有一个公认的较好的解决方法

DSP 点击价值预估

点击价值指的是上面提到 eCPM = CTR * clickValue 中的 clickValue。一般衡量该点击的价值的指标是点击后的转化率

这个问题的挑战有

1)训练数据非常稀疏(最终得到的训练数据的比例是 点击率*转化率) 2)价值的预估与广告主类型强烈相关的行为模式(比如说游戏领域与电商领域不能相同的方法预估)

这个问题目前也没有很好的解决方法,但是有以下两点原则供参考

1)模型估计的时候,用较大的 bias 换较小的 variance,以达到稳定估计的目的 2)充分利用广告商类型的层级结构以及转化流程上的特征

DSP 重定向(retargeting)

什么是重定向呢?假如有一个电商网站,每天有几千人访问。当然,这几千人里面大部分当时并没有买东西就离开了。而重定向就是说这些人到了别的网站,就在该网站的广告位上投放该电商的广告,这样一来,用户点击广告和进而下单购买的比例都会相当高。

如下是一个重定向的例子

retargeting

重定向的分类

1. 网站重定向。就是上面提到的方法 2. 搜索重定向。根据用户在搜索引擎上与广告主相关的搜索行为 3. 个性化重定向。对用户购买流程的追踪和推荐,即根据用户在广告主网站上关注的具体产品和购买阶段,推送商品粒度的广告。对于广告主而言,可以视为一个站外推荐引擎。

上面提到了推荐算法,这里对推荐算法做一个简单的介绍,推荐算法可以分为两大类:基于协同过滤的算法和基于内容算法

基于协同过滤的算法又可分为两种 1)内存方法(非参数方法):neighbor-based methods,User-based/Item-based top-N 2)模型方法(参数方法):matrix factorization, bayesian belief nets

基于内容的推荐算法指的是从 user 和 item 提取出相同的特征向量,或者说将两者映射到相同的向量空间中再比较两者的相似性。

推荐算法的本质是对 user-item 这一系数矩阵的参数化或非参数化的描述,而推荐算法选择的关键也是探索合适的 bias 与 variance 的平衡,以适应问题的数据的稀疏性。

重定向的典型代表公司是: Magnetic 和 Criteo

新客推荐(look-alike)

上面的重定向针对的是广告主已经有的客户,但是对于中小电商,仅仅对老用户定向营销远远不够;而对于某些类型的广告商如银行,大多数用户无法通过重定向渠道捕获。这时候就产生了新客推荐(look-alike)的需求。

新客推荐指的是由广告商提供一部分种子用户,DSP 通过网络行为的相似性为其找到潜在用户。需要注意的是尽量利用非 demand 端的数据,避免在广告主之间倒卖用户。

广告流量交易方式

目前为止介绍了多种广告流量的交易形式,可以说交易的方式发展趋势为:合约广告 -> 竞价广告 -> 实时竞价广告,对应着下图从右到左的顺序。而发展到竞价广告之后,更加强调了 supply 端和 demand 端的分工的专业化。

广告流量交易方式

优先销售有两种模式 1)CPT 结算,即传统广告的销售方式,技术要求低 2)GD:CPM 结算 + 人群定向

程序交易包括竞价广告(Ad network)和实时竞价广告(Adx),其对应的 supply 端和 demand 端负责的任务也不同,但是其目的均是如何将自身的资源或需求分发到多个点(网络)上从而获取最大的利益。

1)demad:network optimization + RTBS 2)supply:portfolio selection + RTBS