总结
按照优化目标对广告做聚合,每个agent负责1个objective,有1个agent负责全局objective,再加一个allocation net调整agent和全局net之间的权重。最终优化目标是点击量、GMV、购物车添加量、全局
细节
多目标优化,多个广告主的目标
单个广告的出价
f
(
⋅
)
f(\cdot)
f(⋅):
f
i
(
⋅
)
=
∑
j
∈
J
e
i
j
g
k
(
i
,
j
)
,
∀
i
∈
I
k
f_i(\cdot) = \sum_{j \in \mathcal{J}} e_{ij} g_k(i,j), \forall i \in \mathcal{I}^k
fi(⋅)=j∈J∑eijgk(i,j),∀i∈Ik
其中:
- 若广告
i
在拍卖j
中赢了, e i j = 1 e_{ij} = 1 eij=1,否则 e i j = 0 e_{ij}=0 eij=0 - i i i表示广告, j j j表示拍卖
- g k g_k gk是计算广告出价的函数,不同的目标有不同的计算方式
全局的出价
f
0
(
⋅
)
f_0(\cdot)
f0(⋅)
f
0
(
⋅
)
=
∑
i
∈
I
∪
I
ˉ
∑
j
∈
J
e
i
j
⋅
g
0
(
i
,
j
)
f_0(\cdot) = \sum_{i \in \mathcal{I} \cup \mathcal{\bar{I}}} \sum_{j \in \mathcal{J}} e_{ij} \cdot g_0(i, j)
f0(⋅)=i∈I∪Iˉ∑j∈J∑eij⋅g0(i,j)
其中:
- g 0 ( i , j ) g_0(i, j) g0(i,j)是GMV
- I I I是smart-bidding的广告集合, I ˉ \bar{I} Iˉ是self-bidding的广告集合
任务的目标:
max
{
b
i
j
}
F
(
e
i
j
)
=
[
f
0
(
⋅
)
,
f
1
(
⋅
)
,
…
,
f
I
(
⋅
)
]
T
\begin{aligned} \max_{\{b_{ij} \}} &\bold{F}(e_{ij}) = [f_0(\cdot), f_1(\cdot), \dots, f_{\mathcal{I}}(\cdot)]^T \end{aligned}
{bij}maxF(eij)=[f0(⋅),f1(⋅),…,fI(⋅)]T
同时有几个限制条件:
- 广告赢得拍卖的出价总和 小于 某个值
- 广告主总花费 小于 广告主设置的某个值
- smart-bidding的广告出价 大于 某个值
- 平台收益 大于 某个值
对相同objective的广告,建1个agent(selfish bid),再有一个shared net(cooperative bid)。还有一个allocation network
agent net,input是
S
i
j
S_{ij}
Sij,表示广告i
在拍卖j
中的特征,输出是广告i
在拍卖j
下的出价
b
A
D
b_{AD}
bAD
shared-net,input是
S
i
j
S_{ij}
Sij和
S
⋅
j
S_{\cdot j}
S⋅j,后者表示在拍卖j
下所有广告的特征和,输出是在全局视角下的广告i
出价
b
0
b_0
b0
allocation network,agent net和shared-net之间的权重调整,
b
i
j
=
a
j
∗
(
b
A
D
)
i
j
+
(
1
−
a
j
)
∗
(
b
0
)
i
j
b_{ij} = a_j * (b_{AD})_{ij} + (1 - a_j) * (b_0)_{ij}
bij=aj∗(bAD)ij+(1−aj)∗(b0)ij
本文考虑的4个objectives:点击量、GMV、购物车添加量,全局
实验
数据集:离线+在线,自己的数据集
baseline:mkb(手动出价)、ocpc、mamdp(单目标)、maddpg(单目标)