出价策略大体上可以分为两部分:
1)结合业务特点,将竞价优化问题建模为线性规划问题,并利用对偶优化理论,求解出最优出价的公式。这一步基本没什么难度,只要掌握一些线性规划知识,都可以求解出来
2)求解最优出价公式中的参数,以达到流量的最优分配。这一步是出价策略中最难的一部分
参数求解目前来看主要有以下三种形式:
1)利用历史请求信息求解线性规划问题,得到最优参数。这种方式适合流量比较稳定的场景,如一些站内流量。对于流量变化比较大的场景,利用历史流量求解出来的参数在未来往往无法达到很好的效果
2)利用PID控制策略进行调节。这种应该是业界应用最为广泛的方式了,逻辑及实现都较为简单,能够有效地实现调控目的。缺点是,如果需要调节的变量不止一个,单纯的PID控制策略无法达到最优,因为它无法处理多个变量之间的耦合关系
3)利用强化学习模型来求解参数。这也是目前许多paper中推崇的方式,优点是可以克服PID的缺陷,同时对多个参数进行调节,缺点是其训练起来相对困难,要想达到期望的效果,需要一定的探索成本
Optimized Cost per Click in Taobao Display Advertising(2017)
论文链接:Optimized Cost per Click in Taobao Display Advertising
论文主要贡献:
1)提出了ocpc投放模式下的出价策略框架,能够同时满足广告主的质量和数量需求
2)提出了在ecpm非
c
t
r
∗
b
i
d
ctr*bid
ctr∗bid情况下的排序策略框架
符号定义:
b
a
∗
b_{a}^{*}
ba∗:最优出价
b
a
b_{a}
ba:广告主支付的点击费用
p
(
c
∣
u
,
a
)
p(c|u,a)
p(c∣u,a):用户
u
u
u在点击广告
a
a
a后的交易转化概率
v
a
v_{a}
va:预估的单次交易额
n
u
n_{u}
nu:一个用户在一段时间内对一个广告的总点击数
广告 a a a单次点击的期望ROI:
r o i u , a = p ( c ∣ u , a ) ⋅ v a b a ( 1 ) roi_{u,a}=\frac{p(c|u,a) \cdot v_{a}}{b_{a}}{\,}{\,}{\,}{\,}{\,}{\,}(1) roiu,a=bap(c∣u,a)⋅va(1)
广告 a a a在不同用户和点击下的总体ROI:
r o i a = v a ⋅ ∑ u n u ⋅ p ( c ∣ u , a ) b a ⋅ ∑ u n u = E u [ p ( c ∣ u , a ) ] ⋅ v a b a ( 2 ) roi_{a}=\frac{v_{a} \cdot \sum_{u}n_{u}\cdot p(c|u,a)}{b_{a}\cdot \sum_{u}n_{u}}=\frac{E_{u}[p(c|u,a)]\cdot v_{a}}{b_{a}}{\,}{\,}{\,}{\,}{\,}{\,}(2) roia=ba⋅∑unuva⋅∑unu⋅p(c∣u,a)=baEu[p(c∣u,a)]⋅va(2)
由公式(2)可知,广告主的整体ROI由三个因素决定:期望转化率
E
u
[
p
(
c
∣
u
,
a
)
]
E_{u}[p(c|u,a)]
Eu[p(c∣u,a)],预估的单次交易额
v
a
v_{a}
va以及出价
b
a
b_{a}
ba。其中,
v
a
v_{a}
va是每个广告的内在属性,
E
u
[
p
(
c
∣
u
,
a
)
]
E_{u}[p(c|u,a)]
Eu[p(c∣u,a)]是每次特定拍卖的静态值
等式(2)证明了
r
o
i
a
roi_{a}
roia与
E
u
[
p
(
c
∣
u
,
a
)
]
E_{u}[p(c|u,a)]
Eu[p(c∣u,a)]之间的线性关系,为了避免ROI下降,竞价优化需要满足
b
a
∗
b
a
≤
p
(
c
∣
u
,
a
)
E
u
[
p
(
c
∣
u
,
a
)
]
\frac{b_{a}^{*}}{b_{a}} \leq \frac{p(c|u,a)}{E_{u}[p(c|u,a)]}
baba∗≤Eu[p(c∣u,a)]p(c∣u,a)。考虑到广告主获取高质量流量的需求,可以在投放时遵循以下原则:当流量质量较高,即
p
(
c
∣
u
,
a
)
E
u
[
p
(
c
∣
u
,
a
)
]
≥
1
\frac{p(c|u,a)}{E_{u}[p(c|u,a)]} \geq 1
Eu[p(c∣u,a)]p(c∣u,a)≥1时,提高出价;当流量质量偏低,即
p
(
c
∣
u
,
a
)
E
u
[
p
(
c
∣
u
,
a
)
]
<
1
\frac{p(c|u,a)}{E_{u}[p(c|u,a)]} < 1
Eu[p(c∣u,a)]p(c∣u,a)<1时,降低出价。质量和数量折中的优化范围如图(1)所示,固定阈值
r
a
r_{a}
ra如(40%)通常是为了业务安全而设置的,用于避免广告主在优化ROI时,流量下降过大
对于图(3)中的的灰色区域,我们用 l ( b a ∗ ) l(b_{a}^{*}) l(ba∗)和 u ( b a ∗ ) u(b_{a}^{*}) u(ba∗)来表示上届和下界,它的计算方法如公式(3)和公式(4)所示。竞价优化目标可以推广到广告主的其它目标,而不仅限于ROI。如果部分广告主未授权进行竞价优化,则其上下限均等于 b a b_{a} ba
l ( b a ∗ ) = { b a ⋅ ( 1 − r a ) , p ( c ∣ u , a ) E u [ p ( c ∣ u , a ) ] < 1 b a , p ( c ∣ u , a ) E u [ p ( c ∣ u , a ) ] ≥ 1 ( 3 ) l(b_{a}^{*}) = \begin{cases} b_{a} \cdot (1-r_{a}), \quad \quad \frac{p(c|u,a)}{E_{u}[p(c|u,a)]} < 1 \\ b_{a}, \quad \quad \frac{p(c|u,a)}{E_{u}[p(c|u,a)]} \geq 1 \end{cases} \quad \quad (3) l(ba∗)={ba⋅(1−ra),Eu[p(c∣u,a)]p(c∣u,a)<1ba,Eu[p(c∣u,a)]p(c∣u,a)≥1(3)
u ( b a ∗ ) = { b a , p ( c ∣ u , a ) E u [ p ( c ∣ u , a ) ] < 1 b a ⋅ m i n ( 1 + r a , p ( c ∣ u , a ) E u [ p ( c ∣ u , a ) ] ) , p ( c ∣ u , a ) E u [ p ( c ∣ u , a ) ] ≥ 1 ( 4 ) u(b_{a}^{*}) = \begin{cases} b_{a}, \quad \quad \frac{p(c|u,a)}{E_{u}[p(c|u,a)]} < 1 \\ b_{a} \cdot min(1+r_{a}, \frac{p(c|u,a)}{E_{u}[p(c|u,a)]}), \quad \quad \frac{p(c|u,a)}{E_{u}[p(c|u,a)]} \geq 1 \end{cases} \quad \quad (4) u(ba∗)={ba,Eu[p(c∣u,a)]p(c∣u,a)<1ba⋅min(1+ra,Eu[p(c∣u,a)]p(c∣u,a)),Eu[p(c∣u,a)]p(c∣u,a)≥1(4)
假设我们在eCPM排序机制下展示一个广告,希望最大化以下目标:
max b 1 ∗ , . . . , b n ∗ f ( b k ∗ ) ( 5 ) s . t . k = a r g max i p c t r i ∗ b i ∗ ( 6 ) l ( b i ∗ ) ≤ b i ∗ ≤ u ( b i ∗ ) , i = 1 , . . . , n ( 7 ) \begin{aligned} &\max_{b_{1}^{*},...,b_{n}^{*}} f(b_{k}^{*}) \quad \quad (5) \\ &s.t.\quad k = arg \max_{i} \quad pctr_{i} * b_{i}^{*} \quad \quad (6) \\ &l(b_{i}^{*}) \leq b_{i}^{*} \leq u(b_{i}^{*}),i=1,...,n \quad \quad (7) \end{aligned} b1∗,...,bn∗maxf(bk∗)(5)s.t.k=argimaxpctri∗bi∗(6)l(bi∗)≤bi∗≤u(bi∗),i=1,...,n(7)
其中, n n n是一次PV中候选广告的数量,f是一个能够表示综合指标的函数,它包含了各方面的指标需求。我们假设 f ( b i ∗ ) f(b_{i}^{*}) f(bi∗)与 b i ∗ b_{i}^{*} bi∗是单调关系,等式(6)中的条件意味着在拍卖中获得曝光机会的广告需要在eCPM排序中排在top k的位置,等式(7)意味着优化后的出价需要在指定范围内。对于等式(5)中提出的优化问题,有两层含义:一方面,我们试图找到第k个广告使得 f ( b k ∗ ) f(b_{k}^{*}) f(bk∗)的值最大;另一方面,每个广告的调整后出价应该最大化第k个广告的eCPM。对于 f f f,我们给出以下两个示例:
f 1 ( b k ∗ ) = p c t r k ∗ p c v r k ∗ v k f 2 ( b k ∗ ) = p c t r k ∗ p c v r k ∗ v k + α ∗ p c t r k ∗ b k ∗ \begin{aligned} &f_{1}(b_{k}^{*})=pctr_{k}*pcvr_{k}*v_{k} \\ &f_{2}(b_{k}^{*})=pctr_{k}*pcvr_{k}*v_{k} + \alpha *pctr_{k}*b_{k}^{*} \end{aligned} f1(bk∗)=pctrk∗pcvrk∗vkf2(bk∗)=pctrk∗pcvrk∗vk+α∗pctrk∗bk∗
其中, f 1 f_{1} f1试图最大化淘宝平台的整体GMV,即所有广告主的收入。 f 2 f_{2} f2是平台GMV和广告收入的综合, α \alpha α是二者的平衡系数,不同的 α \alpha α会导致不同的优化目标
排序任务的剩余工作是通过为每个广告 a a a找到最佳 b a ∗ b_{a}^{*} ba∗来最大化等式(5)中的目标。类推到出价边界,有:
l ( s a ∗ ) = p c t r a ∗ l ( b a ∗ ) u ( s a ∗ ) = p c t r a ∗ u ( b a ∗ ) \begin{aligned} &l(s_{a}^{*})=pctr_{a} * l(b_{a}^{*}) \\ &u(s_{a}^{*})=pctr_{a} * u(b_{a}^{*}) \end{aligned} l(sa∗)=pctra∗l(ba∗)u(sa∗)=pctra∗u(ba∗)
用于表示排序得分的上下界。为了优化目标,只需要根据 f ( u ( b i ∗ ) ) f(u(b_{i}^{*})) f(u(bi∗))对广告进行排序(需要注意的是,使用的是出价上届 u ( b i ∗ ) u(b_{i}^{*}) u(bi∗),因为我们假设 f ( b i ∗ ) f(b_{i}^{*}) f(bi∗)与 b i ∗ b_{i}^{*} bi∗是单调关系),然后从上到下选择一个广告,这个广告的 u ( s k ∗ ) u(s_{k}^{*}) u(sk∗)不小于其它任何广告的 l ( s i ∗ ) l(s_{i}^{*}) l(si∗),最终的出价 b k ∗ = u ( b k ∗ ) b_{k}^{*}=u(b_{k}^{*}) bk∗=u(bk∗)。最后,更新其它候选广告在其可行域内的竞价,以确保该广告拥有最大的eCPM
在实际场景中,每个PV可能有多个广告展示位置,我们在算法1中提出了贪心算法,并做如下简单说明。首先,按照一个广告位算法选出广告
k
k
k放到广告位1,然后调整剩余广告eCPM分数的上届,以保证广告
k
k
k的eCPM是最大的。接着,重复这个步骤,直到挑选出k个广告。最后,将最终出价设置为
u
(
b
i
∗
)
u(b_{i}^{*})
u(bi∗)
Bid Optimization by Multivariable Control in Display Advertising(2019)
论文链接:Bid Optimization by Multivariable Control in Display Advertising
论文主要贡献:
1)提出了利用最优化理论推导出价公式的方法
2)提出了利用双PID控制方法求解参数的方法
paper给出的示例是在预算约束和点击成本约束下,最大化广告主收益。但其实整体推导过程也可适用于其它的广告场景,具体问题定义如下:
max x i ∑ i = 1 , . . , N x i ∗ C T R i ∗ C V R i ( L P 1 ) s . t . ∑ i = 1 , . . . , N x i ∗ w p i ≤ B ( 1 ) ∑ i = 1 , . . . , N x i ∗ w p i ∑ i = 1 , . . . , N x i ∗ C T R i ≤ C ( 2 ) w h e r e 0 ≤ x i ≤ 1 , ∀ i \begin{aligned} &\displaystyle \max_{x_{i}}{\,}{\,}\sum_{i=1,..,N}x_{i}*CTR_{i}*CVR_{i}{\,}{\,}{\,}{\,}{\,}{\,}{\,}(LP1)\\ &s.t.{\,}{\,}{\,}{\,}{\,}{\,}{\,}\sum_{i=1,...,N}x_{i}*wp_{i} \leq B {\,}{\,}{\,}{\,}{\,}{\,}{\,}(1)\\ &{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,} \frac{\displaystyle \sum_{i=1,...,N}x_{i}*wp_{i}}{\displaystyle \sum_{i=1,...,N}x_{i}*CTR_{i}} \leq C {\,}{\,}{\,}{\,}{\,}{\,}{\,}(2) \\ &where{\,}{\,}0 \leq x_{i} \leq 1, \forall i \end{aligned} ximaxi=1,..,N∑xi∗CTRi∗CVRi(LP1)s.t.i=1,...,N∑xi∗wpi≤B(1)i=1,...,N∑xi∗CTRii=1,...,N∑xi∗wpi≤C(2)where0≤xi≤1,∀i
上述公式中各符号的定义如下:
N
N
N:广告计划可参与的总拍卖次数
x
i
x_{i}
xi:第
i
i
i次拍卖获胜的概率
w
p
i
wp_{i}
wpi:第
i
i
i次拍卖的赢价,即
b
i
d
p
r
i
c
e
bid_price
bidprice要大于这个值才能赢得拍卖机会
B
B
B:广告计划的总预算
C
C
C:广告计划设置的点击成本
由于我们研究的并不是广告分配问题,而是出价策略。因此,我们不需要直接求出上述优化问题的最优解,只需要求出取值为最优时的解形式,作为我们的出价公式即可
首先根据对偶理论将原问题转化为对偶问题,关于对偶理论,可参考前面的相关文章。对偶问题如下:
min p , q , r i B ∗ q + ∑ i = 1 , . . . , N r i ( L P 2 ) s . t . w p i ∗ p + ( w p i − C T R i ∗ C ) q + r i ≥ v i , ∀ i ( 3 ) w h e r e p ≥ 0 q ≥ 0 r i ≥ 0 , ∀ i v i = C T R i ∗ C V R i , ∀ i \begin{aligned} &\displaystyle \min_{p,q,r_{i}}{\,}{\,} B*q+\sum_{i=1,...,N}r_{i}{\,}{\,}{\,}{\,}{\,}{\,}{\,}(LP2) \\ &s.t.{\,}{\,}{\,}{\,}{\,}{\,}wp_{i}*p+(wp_{i}-CTR_{i}*C)q+r_{i} \geq v_{i}, \forall i {\,}{\,}{\,}{\,}{\,}{\,}{\,}(3)\\ &where{\,}{\,}p \geq 0\\ &{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}q \geq 0 \\ &{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}r_{i} \geq 0, \forall i\\ &{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}v_{i}=CTR_{i}*CVR_{i}, \forall i \end{aligned} p,q,riminB∗q+i=1,...,N∑ri(LP2)s.t.wpi∗p+(wpi−CTRi∗C)q+ri≥vi,∀i(3)wherep≥0q≥0ri≥0,∀ivi=CTRi∗CVRi,∀i
上式中的 p , q , r i p, q, r_{i} p,q,ri都是对偶变量,对应于原问题中的三类约束:预算、成本及对变量 x i x_{i} xi的约束。根据互补松弛定理,有下面两个公式:
x i ∗ ∗ ( v i − w p i ∗ p − ( w p i − C T R i ∗ C ) q − r i ) = 0 , ∀ i ( 4 ) ( x i ∗ − 1 ) ∗ r i ∗ = 0 , ∀ i ( 5 ) \begin{aligned} x_{i}^{*}*(v_{i}-wp_{i}*p-(wp_{i}-CTR_{i}*C)q-r_{i})&=0,\forall i {\,}{\,}{\,}{\,}{\,}{\,}{\,}(4)\\ (x_{i}^{*}-1)*r_{i}^{*}&=0,\forall i {\,}{\,}{\,}{\,}{\,}{\,}{\,}(5) \end{aligned} xi∗∗(vi−wpi∗p−(wpi−CTRi∗C)q−ri)(xi∗−1)∗ri∗=0,∀i(4)=0,∀i(5)
其中, x i ∗ x_{i}^{*} xi∗和 r i ∗ r_{i}^{*} ri∗分别是原问题和对偶问题的最优解。下面我们对出价公式进行推导,首先,写出拉格朗日函数:
L ( x , p , q ) = ∑ i = 1 , . . . , N x i C T R i C V R i + p ( ∑ i = 1 , . . . , N x i w p i − B ) + q ( ∑ i = 1 , . . . , N x i ( w p i − C T R i C ) ) ( 6 ) L(x, p, q)=\sum_{i=1,...,N}x_{i}CTR_{i}CVR_{i}+p(\sum_{i=1,...,N}x_{i}wp_{i}-B)+q(\sum_{i=1,...,N}x_{i}(wp_{i}-CTR_{i}C)){\,}{\,}{\,}{\,}{\,}{\,}{\,}(6) L(x,p,q)=i=1,...,N∑xiCTRiCVRi+p(i=1,...,N∑xiwpi−B)+q(i=1,...,N∑xi(wpi−CTRiC))(6)
这里我们忽略了自变量 x i x_{i} xi的约束条件,后面会对其进行讨论。由于我们不需要确切的解,只需要最优解的表达式,因此可令 ∂ L ( x , p , q ) ∂ x = 0 \frac{\partial L(x,p,q)}{\partial x}=0 ∂x∂L(x,p,q)=0,求解可得:
b i d i ∗ = w p i = 1 p + q × C T R i × C V R i + q p + q × C × C T R i ( 7 ) bid_{i}^{*}=wp_{i}=\frac{1}{p+q} \times CTR_{i} \times CVR_{i} + \frac{q}{p+q} \times C \times CTR_{i}{\,}{\,}{\,}{\,}{\,}{\,}{\,}(7) bidi∗=wpi=p+q1×CTRi×CVRi+p+qq×C×CTRi(7)
由式(7)可得:
v i = ( p + q ) b i d i − q × C × C T R i ( 8 ) v_{i} = (p+q)bid_{i}-q\times C \times CTR_{i}{\,}{\,}{\,}{\,}{\,}{\,}{\,}(8) vi=(p+q)bidi−q×C×CTRi(8)
将式(8)代入式(4)可得:
x i ∗ ⋅ ( ( b i d i ∗ − w p i ) ( p ∗ + q ∗ ) − r i ∗ ) = 0 ( 9 ) x_{i}^{*} \cdot((bid_{i}^{*}-wp_{i})(p^{*}+q^{*})-r_{i}^{*})=0 {\,}{\,}{\,}{\,}{\,}{\,}{\,}(9) xi∗⋅((bidi∗−wpi)(p∗+q∗)−ri∗)=0(9)
根据等式(9):
1)如果广告活动赢得了展示机会,意味着
x
i
∗
>
0
x_{i}^{*}>0
xi∗>0,同时,有
r
i
∗
≥
0
r_{i}^{*} \geq 0
ri∗≥0。因此,
b
i
d
i
∗
≥
w
p
i
bid_{i}^{*} \geq wp_{i}
bidi∗≥wpi
2)如果广告活动没有赢得展示机会,意味着
x
i
=
0
x_{i}=0
xi=0,则由公式(5)可得,
r
i
∗
=
0
r_{i}^{*}=0
ri∗=0。最后,根据不等式(3)可得
b
i
d
i
∗
≤
w
p
i
bid_{i}^{*} \leq wp_{i}
bidi∗≤wpi
从以上两个讨论中可知,无论最优解 x ∗ x^{*} x∗是赢得这次竞价,还是输掉这次竞价,按照公式(7)进行出价时,总能保证解是最优的
回到公式(7)的最优出价公式,我们将其写成 c _ b i d ∗ c t r c\_bid * ctr c_bid∗ctr的形式,如下:
c _ b i d i = 1 p + q ⋅ C V R i + q p + q ⋅ C ( 10 ) b i d i = c _ b i d i ⋅ C T R i ( 11 ) \begin{aligned} &c\_bid_{i}=\frac{1}{p+q} \cdot CVR_{i} + \frac{q}{p+q} \cdot C{\,}{\,}{\,}{\,}{\,}{\,}{\,}(10) \\ &bid_{i} = c\_bid_{i} \cdot CTR_{i}{\,}{\,}{\,}{\,}{\,}{\,}{\,}(11) \end{aligned} c_bidi=p+q1⋅CVRi+p+qq⋅C(10)bidi=c_bidi⋅CTRi(11)
可以更直观地画出如下所示的图,从图中可知,在CVR为0的情况下,bid也不一定为0,这跟常见的
e
c
p
m
=
b
i
d
×
p
c
t
r
×
p
c
v
r
ecpm=bid \times pctr \times pcvr
ecpm=bid×pctr×pcvr不太一样,这可以理解为一些cvr低但是ctr高的流量也是可以拿的
前面提到,最优出价公式中的 p p p和 q q q的最优解需要拿到参竞后的后验数据,但是 b i d bid bid是要在参竞的时候给出来,这就是一个先有鸡还是先有蛋的问题。针对这个问题,一个最直观的想法是,可不可以利用历史数据来求出最优的 p p p和 q q q,并应用到出价中?答案是no。因为这个方法假设了参竞流量的分布是基本不变的,但是竞价环境是一个受多个因素影响的动态变化环境(包括参竞流量、ctr、cvr等),即历史的最优不会是未来的最优
由于竞价环境是实时变化的,因此需要动态调价,在调价策略中,需要先明确两个点:调控的目标和调控的变量。下面首先分析控制变量
p
p
p和
q
q
q分别影响哪些控制目标
如上图所示,固定 q q q,改变p时, c _ b i d c\_bid c_bid的变化。从图中可知:
- 出价的直线始终通过(-qC, 0)这个点
- 随着 p p p的减小,出价直线的斜率逐渐增大,表示出价更高,同时消耗的budget也会更多;而随着 p p p增大导致的结果则是刚好相反
- 当
p
p
p取最小值即0时,表示没有budget的限制,出价公式退化为
C
×
C
T
R
+
1
q
C
T
R
×
C
V
R
C \times CTR + \frac{1}{q}CTR \times CVR
C×CTR+q1CTR×CVR,公式第一项可以认为是只按照点击出价来保点击成本
C
C
C,第二项则是为了达到
m
a
x
v
=
C
T
R
×
C
V
R
max{\,}{\,}v = CTR \times CVR
maxv=CTR×CVR的目标
上图是固定 p p p改变 q q q时, c _ b i d c\_bid c_bid的变化。从图中可知:
- 出价的直线始终通过(pC, C)这个点
- 随着 q q q的减少,出价直线的斜率逐渐增大,表示对于CVR比pC更高的流量出价更高,CVR比pC更低的流量出价更低,而随着 q q q增大导致的结果则刚好相反
- 当 q q q取最小值,即0时,表示没有点击成本的限制,此时的出价公式退化为 1 p C T R × C V R \frac{1}{p}CTR \times CVR p1CTR×CVR,代表出价成本的符号 C C C没有出现在出价公式中,表示总体要达到 m a x v = C T R × C V R max{\,}{\,}v = CTR \times CVR maxv=CTR×CVR的目标,同时通过 p p p来控制预算
通过上面的分析可知,参数
p
p
p可以用来控制预算的使用,参数
q
q
q可以用来控制点击成本,这与我们推导最优出价公式时对应的约束条件是一致的。因此,一种最简单的策略是两个独立的PID来分别调控变量
p
p
p和
q
q
q,调控的目标则是预算和成本,如下图所示:
但是,这两者并不是完全独立的,比如说为了保点击成本进行提价或降价也会影响到预算的使用,反之亦然。而关于这个问题的研究,paper并没有直接采用这个方法,而是通过一个线性模型去拟合。个人认为其可行的原因是,其调控往往会分为多个时间片,然后在每个时间片内进行调控,而在每个时间片内用直线去拟合,理论上只要把时间片切得足够小,最终总体上也能拟合出非线性的曲线
主要建模思想是通过线性模型直接建模变量 p p p和 q q q和目标 c o s t cost cost、 C P C CPC CPC的关系,具体做法如下:
[ c o s t C P C ] = [ X b ] [ p q 1 ] ( 16 ) [ Δ c o s t Δ C P C ] = [ X ] [ Δ p Δ q ] ( 17 ) [ Δ p Δ q ] = [ X ] − 1 [ Δ c o s t Δ C P C ] ( 18 ) [ u p ‘ ( t ) u q ‘ ( t ) ] = [ α 1 − α 1 − β β ] [ u p ( t ) u q ( t ) ] ( 19 ) \begin{aligned} \begin{bmatrix} cost \\ CPC \end{bmatrix} &= [\rm X{\,}{\,}b]\begin{bmatrix} p \\ q \\ 1 \end{bmatrix}{\,}{\,}{\,}{\,}{\,}{\,}{\,}(16) \\ \\ \begin{bmatrix} \Delta cost \\ \Delta CPC \end{bmatrix} &= [\rm X]\begin{bmatrix} \Delta p \\ \Delta q \end{bmatrix}{\,}{\,}{\,}{\,}{\,}{\,}{\,}(17) \\ \\ \begin{bmatrix} \Delta p \\ \Delta q \end{bmatrix} &= [\rm X]^{-1}\begin{bmatrix} \Delta cost \\ \Delta CPC \end{bmatrix}{\,}{\,}{\,}{\,}{\,}{\,}{\,}(18) \\ \\ \begin{bmatrix} u_{p}^{`}(t) \\ u_{q}^{`}(t) \end{bmatrix} &= \begin{bmatrix} \alpha & 1-\alpha \\ 1-\beta & \beta \end{bmatrix}\begin{bmatrix} u_{p}(t) \\ u_{q}(t) \end{bmatrix}{\,}{\,}{\,}{\,}{\,}{\,}{\,}(19) \end{aligned} [costCPC][ΔcostΔCPC][ΔpΔq][up‘(t)uq‘(t)]=[Xb]⎣⎡pq1⎦⎤(16)=[X][ΔpΔq](17)=[X]−1[ΔcostΔCPC](18)=[α1−β1−αβ][up(t)uq(t)](19)
公式(16)里的 X X X和 b b b分别表示 2 × 2 2 \times 2 2×2和 2 × 1 2 \times 1 2×1的矩阵,展开后其实就是两个线性回归模型。进一步地,公式(17)表示的是给定需要控制的 Δ c o s t \Delta cost Δcost和 Δ C P C \Delta CPC ΔCPC(调价是分时间片进行调控的,在每次调控前都可以根据当前累积消耗和成本等后验数据,进而计算当前时间片需要调控的 Δ c o s t \Delta cost Δcost和 Δ C P C \Delta CPC ΔCPC),可以对 p p p和 q q q分别进行 Δ p \Delta p Δp和 Δ q \Delta q Δq的调控达到目标
其实到了公式(17)已经可以进行调控了,只是调控的方式和paper中的不太一样:首先需要获取公式(17)中的 X X X,而 X X X中的参数其实是可以通过训练数据获取的,训练的数据集从当前时间往前的若干时间片内的 ( Δ p , Δ q , Δ p , Δ q ) (\Delta p,\Delta q,\Delta p,\Delta q) (Δp,Δq,Δp,Δq),然后 X X X就可以通过常规的训练方式获取。这样在每个时间片进行调价时,只需要计算好的 X X X和下一时间片的调控目标: Δ c o s t \Delta cost Δcost、 Δ C P C \Delta CPC ΔCPC,就能够得到最优的 Δ p \Delta p Δp和 Δ q \Delta q Δq
公式(18)是在公式(17)的基础上乘上矩阵
X
X
X的逆得到的,公式(19)则是paper提到的调控方式:首先通过PID调控方式将公式(18)中的
Δ
c
o
s
t
\Delta cost
Δcost和
Δ
C
P
C
\Delta CPC
ΔCPC变为
u
p
(
t
)
u_{p}(t)
up(t)和
u
q
(
t
)
u_{q}(t)
uq(t),同时只用两个变量
α
\alpha
α和
β
\beta
β来近似矩阵
X
X
X的逆,并认为
p
p
p和
q
q
q的控制信号
u
p
’
(
t
)
u_{p}^{’}(t)
up’(t)和
u
q
’
(
t
)
u_{q}^{’}(t)
uq’(t) 是
u
p
(
t
)
u_{p}(t)
up(t)和
u
q
(
t
)
u_{q}(t)
uq(t)的线性组合。总体的调控系统如下图所示:
Optimized Cost per Mille in Feeds Advertising(2020)
论文链接:Optimized Cost per Mille in Feeds Advertising
论文主要贡献:
1)对OCPM竞价优化问题进行了较为深入的分析
2)将OCPM竞价优化稳定抽象为一个强化学习问题,通过经典的强化学习算法来求解
拍卖中有三种传统的定价方法,CPC、CPA和CPM。更具体地说,CPM更适合品牌推广和保持品牌知名度,CPC和CPA更适合即时销售增长。最近,为了更好地满足不同的商业目标,出现了更多的定价方法,如ECPC、OCPC以及OCPM等。与传统方法相比,这些新的定价方法都在试图优化转化成本
CPC、CPA和CPM的广告主需要依据他们的目标手动地设置出价,ECPC、OCPC以及OCPM的广告主只需要设置目标成本即可。虽然他们必须按照点击或曝光付费,但平台会自动出价,以满足他们的目标成本。与传统方法相比,无论是从广告主还是从平台的角度来看,这些方法都具有很多优点:
- 对于广告主来说,这些定价方法使得竞价优化更加方便。平台必须对他们的收入、转化率负责,并实现竞价和流量质量在PV粒度的更好匹配
- 对于平台而言,这些定价方法可以将转化率的不确定性风险转移给广告主。在CPA中,广告主优化广告上下文的动机较小,因为他们只需要在发生转换时进行付费。然而,在这些新的定价方法中,平台会自动降低转化率较低的广告出价,以满足他们的平均转化成本目标。因此,如果广告主不提供具有吸引力的广告,那他们赢得的拍卖和转化就会很少
本文主要针对OCPM竞价优化进行研究。首先,进行问题定义:
m a x ∑ l = 1 ∣ τ i ∣ α i l s . t . ∑ l = 1 ∣ τ i ∣ p i l ∑ l = 1 ∣ τ i ∣ α i l ≤ v i ( 1 ) \begin{aligned} &max{\,}{\,}{\,}\sum_{l=1}^{|\tau_{i}|}\alpha_{i}^{l}\\ &s.t.{\,}{\,}{\,}\frac{\sum_{l=1}^{|\tau_{i}|}p_{i}^{l}}{\sum_{l=1}^{|\tau_{i}|}\alpha_{i}^{l}} \leq v_{i} \end{aligned}{\,}{\,}{\,}{\,}{\,}{\,}(1) maxl=1∑∣τi∣αils.t.∑l=1∣τi∣αil∑l=1∣τi∣pil≤vi(1)
其中, α i l ∈ ( 0 , 1 ) \alpha_{i}^{l} \in (0,1) αil∈(0,1)是一个二进制变量,表示广告主 i i i在拍卖 l l l中的转化数量, p i l p_{i}^{l} pil表示广告在拍卖 l l l中的消耗, v i v_{i} vi表示广告的目标转化成本。问题中唯一的约束条件是平均转化成本应不大于目标转化成本 v i v_{i} vi。ROI的表示如公式(2)所示:
r o i i l = ∑ l ’ = 1 l p i l ’ v i ∑ l ’ l α i l ’ ( 2 ) roi_{i}^{l}=\frac{\sum_{l^{’}=1}^{l}p_{i}^{l^{’}}}{v_{i}\sum_{l^{’}}^{l}\alpha_{i}^{l^{’}}}{\,}{\,}{\,}{\,}{\,}{\,}(2) roiil=vi∑l’lαil’∑l’=1lpil’(2)
竞价机制包含分配和计费两部分。以VCG拍卖机制为例,它由两个函数 M = ( σ , p ) M=(\sigma, p) M=(σ,p)构成。VCG拍卖机制目的是找到social welfare最大化的分配方案,计费则按照广告参加竞价给其它广告带来的损失进行:
- 分配函数 为 σ \sigma σ: R n → R n R^{n} \rightarrow R^{n} Rn→Rn,输入广告主的出价,输出n维向量表示slot分配结果。其中 σ i = j ≤ m \sigma_{i}=j \leq m σi=j≤m表示将slot j分配给广告主 i i i, σ i = m + 1 \sigma_{i}=m+1 σi=m+1表示广告主 i i i未竞得任何slot
- 计费函数 为 p p p: R n → R n R^{n} \rightarrow R^{n} Rn→Rn,输入广告主的出价,输出n维向量表示对每个广告主的计费,即如果广告主 i i i竞得slot σ i \sigma_{i} σi,需要支付费用 p i p_{i} pi
在auction l l l中,存在四种不同类型的广告主,分别是CPC、CPA、CPM和OCPM,分配规则由公式(3)决定:
σ l = a r g max σ ˉ l ∑ i = 1 n β i , σ ˉ i l l ⋅ b i l ( 3 ) \sigma^{l}=arg \max_{\bar \sigma^{l}} \sum_{i=1}^{n}\beta_{i, \bar \sigma_{i}^{l}}^{l} \cdot b_{i}^{l}{\,}{\,}{\,}{\,}{\,}{\,}(3) σl=argσˉlmaxi=1∑nβi,σˉill⋅bil(3)
其中, β i , σ i l l \beta_{i, \sigma_{i}^{l}}^{l} βi,σill在不同的定价方法中是不同的:
- 对于CPC广告主: β i , σ i l l = p c t r i , σ i l l \beta_{i, \sigma_{i}^{l}}^{l}=pctr_{i, \sigma_{i}^{l}}^{l} βi,σill=pctri,σill
- 针对CPM广告主: β i , σ i l l = 1 \beta_{i, \sigma_{i}^{l}}^{l}=1 βi,σill=1
- 针对CPA或OCPM广告主: β i , σ i l l = p c t r i , σ i l l ⋅ p c v r i , σ i l l \beta_{i, \sigma_{i}^{l}}^{l}=pctr_{i, \sigma_{i}^{l}}^{l} \cdot pcvr_{i, \sigma_{i}^{l}}^{l} βi,σill=pctri,σill⋅pcvri,σill
论文把竞价优化建模为一个强化学习问题,针对auction l l l,有下面的相关定义:
- State s i l s_{i}^{l} sil:对于广告主 i i i, s i l = < v i , t , r o i i l , a u c t ⃗ > s_{i}^{l}=< v_{i}, t, roi_{i}^{l}, \vec{auct} > sil=<vi,t,roiil,auct>,其中, t t t表示当前时间, a u c t ⃗ \vec{auct} auct表示我们可以从广告环境中获取的与拍卖相关的特征向量
- Action a i l a_{i}^{l} ail:出价
- Reward r i ( s i l , a i l ) r_{i}(s_{i}^{l}, a_{i}^{l}) ri(sil,ail):在状态 s i l s_{i}^{l} sil下通过动作 a i l a_{i}^{l} ail获得的收益
- Policy π ( s i l ) \pi(s_{i}^{l}) π(sil):在状态 s i l s_{i}^{l} sil下执行动作 π ( s i l ) \pi(s_{i}^{l}) π(sil)
- Episode ep:本文将一天作为一个episode
问题的目标是在状态 s i l s_{i}^{l} sil寻找 π ( . ) \pi(.) π(.)使得期望累计回报(reward)最大化:
∑ l = 1 ∣ τ i ∣ γ l − 1 r i ( s i l , a i l ) \sum_{l=1}^{|\tau_{i}|}\gamma^{l-1}r_{i}(s_{i}^{l}, a_{i}^{l}) l=1∑∣τi∣γl−1ri(sil,ail)
OCPM的目标是在平均转化成本约束下最大化转化数量,然而,直接使用转化数来设计reward函数有以下两个问题:
- 转化行为稀疏。实际中转化行为较少,不同的出价可能会导致相同的结果(例如均无转化),只能为训练提供有限的信息。文中给出的定理指出,广告主消耗越大,则期望转化数越大,因此,在reward函数采用消耗而不是实际转化数
- 转化成本限制。指在reward函数中需要对超出转化成本的情况进行惩罚
因此,奖励函数设计为:
r i ( s i l , a i l ) = p i l − m a x { λ ( p i l − β i , σ i l l ⋅ v i , 0 ) } ( 4 ) r_{i}(s_{i}^{l}, a_{i}^{l})=p_{i}^{l}-max\{\lambda (p_{i}^{l}-\beta_{i, \sigma_{i}^{l}}^{l} \cdot v_{i}, 0) \}{\,}{\,}{\,}{\,}{\,}{\,}(4) ri(sil,ail)=pil−max{λ(pil−βi,σill⋅vi,0)}(4)
λ \lambda λ是一个大于0的参数,如果挑选合适,则可以在成本约束被打破的情况下时,reward总是负的。 λ \lambda λ的挑选在后面的篇幅中会有介绍
得到 a i l a_{i}^{l} ail后,可生成出价:
b i l = v i ⋅ ( 1 + α i l ) ( 5 ) b_{i}^{l} = v_{i} \cdot (1+\alpha_{i}^{l}){\,}{\,}{\,}{\,}{\,}{\,}(5) bil=vi⋅(1+αil)(5)
其中, v i v_{i} vi为基础项, a i l a_{i}^{l} ail调整项。没有直接产生出价 b i l b_{i}^{l} bil的原因是不同行业的广告主出价范围可能相差很大,真正重要的是出价相对转化成本 v i v_{i} vi的比例
文中提到,模型预估经常会有高估&低估的问题,一方面用户真实行为受众多因素影响,如信息流中上下文item的影响;另一方面,真实行为 α i l \alpha_{i}^{l} αil可以认为服从一个二项分布(参数为 β i , σ i l l \beta_{i, \sigma_{i}^{l}}^{l} βi,σill),即使 β i , σ i l l \beta_{i, \sigma_{i}^{l}}^{l} βi,σill预估得足够准也可能存在方差。如果 β i , σ i l l \beta_{i, \sigma_{i}^{l}}^{l} βi,σill存在高估问题,则很容易出现转化成本超额的问题
因此,本文提出了一个基于IQN的ROI-sensitive算法。用 Q τ ( s , a ) Q_{\tau}(s,a) Qτ(s,a)表示变量 Q ( s , a ) Q(s,a) Q(s,a)在分布 τ ∼ U ( [ 0 , 1 ] ) \tau \sim U([0,1]) τ∼U([0,1])的分位数函数,用 p : [ 0 , 1 ] → [ 0 , 1 p: [0,1] \rightarrow [0,1 p:[0,1]→[0,1 表示distortion risk measure。基于此,在 p ( . ) p(.) p(.)下的期望 Q ( s , a ) Q(s,a) Q(s,a)可以用公式(6)表示:
Q p ( s , a ) = E τ ∼ u ( [ 0 , 1 ] ) [ Q p ( τ ) ( s , a ) ] ( 6 ) Q_{p}(s,a) = E_{\tau \sim u([0,1])}[Q_{p(\tau)}(s,a)] {\,}{\,}{\,}{\,}{\,}{\,}(6) Qp(s,a)=Eτ∼u([0,1])[Qp(τ)(s,a)](6)
对应的策略函数为:
π p ( s ) = a r g max a Q p ( s , a ) ( 7 ) \pi_{p}(s) = arg \max_{a} Q_{p}(s,a) {\,}{\,}{\,}{\,}{\,}{\,}(7) πp(s)=argamaxQp(s,a)(7)
随着 r o i i l roi_{i}^{l} roiil的改变,可以使用不同的 p ( . ) p(.) p(.)。例如,如果 r o i i l roi_{i}^{l} roiil偏高, p ( . ) p(.) p(.)可以给与 Q ( s , a ) Q(s,a) Q(s,a)的低分位数更多的权重。 p ( . ) p(.) p(.)的形式如公式(12)所示:
p ( τ ) = { τ i f r o i i l ≤ θ m i n { τ , τ ^ ∼ U ( [ 0 , 1 ] ) } o t h e r w i s e p(\tau) = \begin{cases} \tau {\,}{\,}{\,} if {\,}{\,} roi_{i}^{l} \leq \theta \\ min\{\tau, \hat \tau \sim U([0,1]) \} {\,}{\,}{\,} otherwise \end{cases} p(τ)={τifroiil≤θmin{τ,τ^∼U([0,1])}otherwise
其中, θ \theta θ是一个预选定义的常量。当 r o i i l roi_{i}^{l} roiil比 θ \theta θ高时,agent将会采取低回报的风险规避策略。根据定理3.1,此时agent会给出相对较低的出价。根据这个方法可以在RSDRL中建模ROI敏感的agent
算法的整体框架如下图所示,内层循环中,agent根据
ϵ
\epsilon
ϵ贪心策略选择并执行action,然后,为OCPM广告主生成竞价。基于VCG拍卖中的分配和付费规则,可以得到reward和下一个阶段的state。当广告被展现给用户时,可以获取
α
i
l
\alpha_{i}^{l}
αil,用于更新
r
o
i
i
l
roi_{i}^{l}
roiil。最后,网络根据IQN loss来执行梯度下降进而获得更新
r o i i l = ∑ l ^ = t k l l p i l ^ k ∗ v i ( 13 ) roi_{i}^{l} = \frac{\sum_{\hat l=t_{k}^{l}}^{l}p_{i}^{\hat l}}{k * v_{i}}{\,}{\,}{\,}{\,}{\,}{\,}(13) roiil=k∗vi∑l^=tkllpil^(13)
其中:
t k l = m i n { l ‾ ∣ ⌊ ∑ l ^ = 1 l ‾ a i l ^ k ⌋ + k > ⌊ ∑ l ^ = 1 l a i l ^ k } t_{k}^{l} = min\{\overline l| \lfloor \frac{\sum_{\hat l =1}^{\overline l}a_{i}^{\hat l}}{k} \rfloor + k > \lfloor \frac{\sum_{\hat l =1}^{l}a_{i}^{\hat l}}{k}\} tkl=min{l∣⌊k∑l^=1lail^⌋+k>⌊k∑l^=1lail^}
A Unified Solution to Constrained Bidding in Online Display Advertising(2021)
论文链接:A Unified Solution to Constrained Bidding in Online Display Advertising
论文主要贡献:
- 针对所有出价场景,提出并证明了一种统一的出价策略
- 提出了一种降低强化学习模型学习复杂度的方
在广告拍卖期间,广告活动的共同目标是最大化曝光价值,即 m a x ∑ i v i x i max \sum_{i}v_{i}x_{i} max∑ivixi,其中, v i v_{i} vi是曝光价值, x i x_{i} xi是表示广告是否赢得曝光 i i i的二元变量。预算约束可以表示为 ∑ i c i x i ≤ B \sum_{i}c_{i}x_{i} \leq B ∑icixi≤B,KPI约束比较复杂,它可以分为两类:第一类是与消耗相关的约束(CR),它主要对特定广告事件的单位成本做限制,如CPC和CPA;第二类是与消耗无关的约束(NCR),它主要对广告的平均影响力进行约束,如CTR、CPI等。KPI约束的统一表示如公式(1)所示:
∑ i C i j x i ∑ i P i j x i ≤ k j ( 1 ) \frac{\sum_{i}C_{ij}x_{i}}{\sum_{i}P_{ij}x_{i}} \leq k_{j}{\,}{\,}{\,}{\,}{\,}{\,}(1) ∑iPijxi∑iCijxi≤kj(1)
其中, k j k_{j} kj是约束 j j j的上届,它由广告主提供。 p i j p_{ij} pij可以是任何的效果指标或者常量, C i j = c i I C R j + q i j ( 1 − I C R j ) C_{ij}=c_{i}ICR_{j}+q_{ij}(1-ICR_{j}) Cij=ciICRj+qij(1−ICRj),其中, q i j q_{ij} qij可以是任何的效果指标或常量, I C R j ICR_{j} ICRj表示约束 j j j是否是CR
总之,考虑到广告主的价值需求、预算和KPI约束,可以将广告活动的优化问题定义如下:
max x i ∑ i v i x i s . t . ∑ i c i x i ≤ B ∑ i C i j x i ∑ i P i j x i ≤ k j , ∀ j x i ≤ 1 , ∀ i x i ≥ 0 , ∀ i ( L P 1 ) \begin{aligned} & \max_{x_{i}}{\,}{\,}\sum_{i}v_{i}x_{i} \\ & s.t.{\,}{\,} \sum_{i}c_{i}x_{i} \leq B \\ & {\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}\frac{\sum_{i}C_{ij}x_{i}}{\sum_{i}P_{ij}x_{i}} \leq k_{j},{\,}{\,} \forall j \\ & {\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}x_{i} \leq 1, {\,}{\,} \forall i \\ & {\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}x_{i} \geq 0, {\,}{\,} \forall i \end{aligned}{\,}{\,}{\,}{\,}{\,}{\,}(LP1) ximaxi∑vixis.t.i∑cixi≤B∑iPijxi∑iCijxi≤kj,∀jxi≤1,∀ixi≥0,∀i(LP1)
LP1的对偶问题定义如下:
min α , β j , γ j β α + ∑ i r i s . t . c i α + ∑ j ( C i j − k j P i j ) β j + r i ≥ v i , ∀ i α ≥ 0 β j ≥ 0 , ∀ i r i ≥ 0 , ∀ i ( L P 2 ) \begin{aligned} & \min_{\alpha, \beta_{j}, \gamma_{j}} \beta \alpha + \sum_{i}r_{i} \\ & s.t.{\,}{\,}c_{i}\alpha + \sum_{j}(C_{ij}-k_{j}P_{ij})\beta_{j} + r_{i} \geq v_{i},{\,}{\,} \forall i \\ & {\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}\alpha \geq 0 \\ & {\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}\beta_{j} \geq 0,{\,}{\,} \forall i\\ & {\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}{\,}r_{i} \geq 0,{\,}{\,} \forall i \end{aligned}{\,}{\,}{\,}{\,}{\,}{\,}(LP2) α,βj,γjminβα+i∑ris.t.ciα+j∑(Cij−kjPij)βj+ri≥vi,∀iα≥0βj≥0,∀iri≥0,∀i(LP2)
根据
C
i
j
C_{ij}
Cij的定义,我们可以重写LP2中的第一个等式:
其中, P N C R P_{NCR} PNCR表示消耗无关的因子, P C R P_{CR} PCR表示消耗相关的因子
用 x i ∗ x_{i}^{*} xi∗表示原问题LP1的最优解, α ∗ \alpha^{*} α∗, r i ∗ r_{i}^{*} ri∗和 β j ∗ \beta_{j}^{*} βj∗表示最优问题 L P 2 LP2 LP2的最优解。根据互补松弛定理,可以得到:
x i ∗ ( P N C R ∗ − P C R ∗ c i − r i ) = 0 , ∀ i ( 4 ) ( x i ∗ − 1 ) r i ∗ = 0 , ∀ i ( 5 ) \begin{aligned} x_{i}^{*}(P_{NCR}^{*}-P_{CR}^{*}c_{i}-r_{i}) &= 0, {\,}{\,} \forall i {\,}{\,}{\,}(4) \\ (x_{i}^{*}-1)r_{i}^{*} &= 0, {\,}{\,} \forall i {\,}{\,}{\,}(5) \end{aligned} xi∗(PNCR∗−PCR∗ci−ri)(xi∗−1)ri∗=0,∀i(4)=0,∀i(5)
可以将曝光 i i i的出价设置为 b i = P N C R ∗ / P C R ∗ b_{i}=P_{NCR}^{*} / P_{CR}^{*} bi=PNCR∗/PCR∗,然后,可以分别将公式(3)转化为公式(6),公式(4)转化为公式(7):
( b i ∗ − c i ) P C R ∗ − r i ∗ ≤ 0 , ∀ i ( 6 ) x i ∗ [ ( b i ∗ − c i ) P C R ∗ − r i ] = 0 , ∀ i ( 7 ) \begin{aligned} (b_{i}^{*}-c_{i})P_{CR}^{*} - r_{i}^{*} \leq 0, {\,}{\,} \forall i {\,}{\,}{\,}(6) \\ x_{i}^{*}[(b_{i}^{*}-c_{i})P_{CR}^{*} - r_{i}] = 0, {\,}{\,} \forall i {\,}{\,}{\,}(7) \end{aligned} (bi∗−ci)PCR∗−ri∗≤0,∀i(6)xi∗[(bi∗−ci)PCR∗−ri]=0,∀i(7)
由此可以推断:
- 如果一个广告活动赢得了曝光 i i i,这意味着 x i ∗ > 0 x_{i}^{*}>0 xi∗>0。根据公式(7), ( b i ∗ − c i ) P C R ∗ − r i ∗ = 0 (b_{i}^{*}-c_{i})P_{CR}^{*} - r_{i}^{*} = 0 (bi∗−ci)PCR∗−ri∗=0。同时,由于 r i ∗ ≥ 0 , P C R ∗ ≥ 0 r_{i}^{*} \geq 0, P_{CR}^{*} \geq 0 ri∗≥0,PCR∗≥0,因此,可以推断出 b i ∗ ≥ c i b_{i}^{*} \geq c_{i} bi∗≥ci
- 如果一个广告活动没有赢得曝光 i i i,这意味着 x i ∗ = 0 x_{i}^{*}=0 xi∗=0,从等式(5)可以推断, r i ∗ = 0 r_{i}^{*}=0 ri∗=0。由于 P C R ∗ ≥ 0 P_{CR}^{*} \geq 0 PCR∗≥0,根据公式(6)可得 b i ∗ ≤ c i b_{i}^{*} \leq c_{i} bi∗≤ci
总结来说,对于曝光
i
i
i,出价
b
i
∗
b_{i}^{*}
bi∗都会产生最优分配
x
i
∗
x_{i}^{*}
xi∗。因此,最优出价是
b
i
∗
b_{i}^{*}
bi∗,同时,为了更简洁明了,我们将
b
i
∗
b_{i}^{*}
bi∗写成了如下形式
对于一个有 M M M个约束条件且希望最大化曝光价值的广告活动来说,最优出价 b i d i ∗ bid_{i}^{*} bidi∗是由M+1个参数决定的 w k ∗ , k ∈ [ 0 , . . . , M ] w_{k}^{*}, k \in [0,...,M] wk∗,k∈[0,...,M]。使用这个最优出价函数,可以通过学习M+1个参数去解决带有约束的最优出价问题
将参数调节问题定义为马尔科夫决策过程,这个马尔科夫决策过程是由一系列描述广告状态的state S S S构成的。agent的参数调整action空间 A = A 0 × A 1 × . . . × A M ∈ R M + 1 A=A_{0} \times A_{1} \times ... \times A_{M} \in R^{M+1} A=A0×A1×...×AM∈RM+1。在每一个时间步 t t t,agent会基于当前状态 s t ∈ S s_{t} \in S st∈S,依据它的policy π : S → A \pi: S \rightarrow A π:S→A,执行一系列动作 a 0 t , a 1 t , . . . , a M t ∈ A a_{0t},a_{1t},...,a_{Mt} \in A a0t,a1t,...,aMt∈A去修改参数 w k t , k ∈ [ 0 , . . . , M ] w_{kt}, k \in [0,...,M] wkt,k∈[0,...,M];然后,根据状态转换过程: γ : S × A → Ω ( S ) \gamma: S \times A \rightarrow \Omega(S) γ:S×A→Ω(S),state将会转换到下一个state,其中, Ω ( S ) \Omega(S) Ω(S)是 S S S上的概率分布集合;环境将会基于一个当前状态state和action的函数 r t : S × A → R ⊆ R r_{t}: S \times A \rightarrow R \subseteq \rm R rt:S×A→R⊆R返回一个即时reward。agent的目标是最大化总期望回报 R = ∑ t = 1 T γ t − 1 r t R = \sum_{t=1}^{T} \gamma^{t-1}r_{t} R=∑t=1Tγt−1rt,其中 γ \gamma γ是折扣因子, T T T是时间范围。建模详细描述如下:
- S S S:state是描述广告状态的信息集合,这些信息应该主要反映时间、预算消耗以及KPI约束满足情况,如剩余时间、剩余预算、预算、预算消耗速度以及约束 j j j的当前KPI ratio
- A A A:在每个时间步 t t t,每个agent将会执行一个 M + 1 M+1 M+1维的action向量 a ⃗ = ( a 0 t , . . . , a M t ) \vec{a}=(a_{0t},...,a_{Mt}) a=(a0t,...,aMt)去修改 M + 1 M+1 M+1维的参数向量 w ⃗ t = ( w 0 t , . . . , w M t ) \vec{w}_{t}=(w_{0t},...,w_{Mt}) wt=(w0t,...,wMt),形如: w ⃗ t + 1 = t ⃗ t ( 1 + a ⃗ t ) \vec{w}_{t+1}=\vec{t}_{t}(1+\vec{a}_{t}) wt+1=tt(1+at),其中, a k t ∈ ( − 1.0 , + ∞ ) , ∀ k ∈ [ 0 , M ] a_{kt} \in (-1.0, +\infty), \forall k \in [0,M] akt∈(−1.0,+∞),∀k∈[0,M]
- r t r_{t} rt:在step t,用 O O O表示在step t和step t+1之间的曝光集合,因此, r t = ∑ i ∈ O x i v i r_{t}=\sum_{i \in O}x_{i}v_{i} rt=∑i∈Oxivi是从 O O O中赢得曝光的总价值
- Γ \Gamma Γ:我们使用model-free的方法来解决我们的问题,因此,不需要显示地对动态转换建模
- γ \gamma γ:我们设置reward的折扣率为 γ = 1 \gamma = 1 γ=1,因为每个广告活动的有效性都需要从一个日常角度来评估
文中证明了:对于在每个step t t t上的子问题,最优的action序列是将当前的 w ⃗ t \vec{w}_{t} wt修改为 w ⃗ t ∗ \vec{w}_{t}^{*} wt∗,并在接下来的step中固定不变
文章利用DDPG作为强化学习算法的实现,并基于上述证明,大大简化了强化学习模型的学习复杂度
更多资料请移步:
1)github链接
2)公众号:老刘聊广告