淘宝 oCPC 算法笔记

背景

常见广告计费方式:

  • CPC:固定出价,标签定向,缺点是无法最优化广告主利益

  • oCPM:Facebook微信朋友圈,优化广告主利益,广告主承担点击转化风险

  • oCPC:淘宝,同时优化三方利益(广告平台收入、广告主利益、用户体验),广告平台承担点击转化风险

  • oCPA:腾讯广告,同时优化三方利益,需要学习,更多时间起量,广告平台承担注册转化风险

淘宝广告与一般 RTB 相比:有用户全生命周期的数据;大部分中小广告主,关注收入而不是品牌曝光,因此提升 GMV 可以惠及广告主;统一 CPC 结算;以 GMV 为优化指标,同时满足三者的利益,达到多赢局面

淘宝使用 oCPC 原因:CPS CPA 忽视点击价值,结算效率低;CPM 对中小广告主有更高风险,因为 CPC 使广告主可以控制点击成本,而淘宝承担曝光 - 点击转化风险。综合考虑生态和效率,淘宝使用 CPC 结算。

建模

优化目标:GMV 或 GMV + 广告收益

广告主 ROI 公式(出价约束)

roiu,a=p(cu,a)vabaroia=vaunup(cu,a)baunu=Eu[p(cu,a)]vaba\begin{aligned} roi_{u,a} &= \frac{p(c|u,a) v_a}{b_a} \\ roi_a &= \frac{v_a \sum_u n_u p(c|u,a)}{b_a \sum_u n_u} = \frac{E_u[p(c|u,a)] v_a}{b_a} \end{aligned}

其中:

p(cu,a)p(c|u,a) 是给定广告 a 用户 u 的点击率预估

vav_a 是预测用户购买付费,PPB (predicted pay-per-buy)

bab_a 是广告主出价

nun_u 是用户一段时间的总点击次数

Eu[]E_u[\cdot] 认为是常量

出价区间百分比 baba\frac{b^*_a}{b_a} 关于 roiaroi_a 的函数如下

img

其中 rar_a 是阈值避免出价区间过高带来损失,本文 40%。

可从上图推出最优出价 bab^*_a 的上界是 l(ba)l(b^*_a) 下界是 u(ba)u(b^*_a)

优化目标

maxb1,b2,...,bnf(bk)s.t.   k=argmaxipctri×bil(bi)biu(bi),i=1,...,n\begin{aligned} \max_{b^*_1,b^*_2,...,b^*_n} &f(b^*_k) \\ s.t.\ \ \ &k = \arg \max_i pctr_i \times b^*_i \\ & l(b_i^*) \le b_i^* \le u(b_i^*), i = 1,...,n \\ \end{aligned}

其中 ff 有两种定义:f1f_1 是 GMV 最大化,f2f_2 加入广告收入作为目标一部分。

f1(bk)=pctrk×pcvrk×vkf2(bk)=pctrk×pcvrk×vk+α×pctrk×bk\begin{aligned} f_1(b_k^*) &= pctr_k \times pcvr_k \times v_k \\ f_2(b_k^*) &= pctr_k \times pcvr_k \times v_k + \alpha \times pctr_k \times b_k^* \end{aligned}

排序算法

给定候选广告,每个广告出价满足出价约束,有排序算法如下。

其中每个迭代选出 top i 广告,同时确保剩余广告以最低价出价。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Input: Ad list A, corresponding boundaries of bid price
Output: Optimized bid prices b∗a for ∀a∈A
A=∅;
repeat
Sort ads in A in descending order of f(i,u(b∗i));
t← the largest l(s∗a) for ∀a∈A;
Find the first ad k from A that u(s∗k)≥t;
A=A∪{k};
A=A∖{k};
for i∈A do
u(s∗i)=min(u(s∗i),u(s∗k));
u(b∗i)=min(u(b∗i),u(s∗i)pctri);
end for
until ∥A∥==N or A==∅;
for i∈A∪A do
b∗i=u(s∗i)pctri;
end for
Return b∗a for each ad in A∪A;

参考

KDD17’ Optimized cost per click in taobao display advertising

本文有帮助?