基于强化学习预算约束出价:Budget Constrained Bidding by Model-free ReinforcementLearning in Display Advertising

带约束的出价优化问题是近年来在互联网广告出价机制上的热点话题,本文主要介绍了基于强化学习的预算约束出价问题,主要结合论文《Budget Constrained Bidding by Model-free ReinforcementLearning in Display Advertising》提出一些自己的思考。

1 背景

所谓的带预算约束的出价策略是一类自动出价问题,是指在客户的原始出价表达外,系统还需要通过微调出价,在不超过客户约预算情况下,使得客户的目标价值最大化。可以将带问题建模为如下线性规划问题。

\begin{matrix} \max \sum_i x_i*v_i \\s.t. \sum_i x_i * c_i \le B \end{matrix}

  • $x_i$在点击计费情况下表示点击

  • $c_i$表示点击计费

  • $B$表示预算

  • $v_i$表示点击客户心理价值,在GSP拍卖场景实际为客户原始出价$b^o_i$

通过上式我们可以看出,当系统稳定且完全竞争的情况下,当预算约束恰好满足时,客户的目标价值最大的,此时可以计算系统出价的形式为,这里的$\lambda$实际上是反映了的出价计费系数,这个出价系数可以根据历史数据通过线性规划求解。

$b_i = \frac{v_i}{\lambda}$

因为$x_i,c_i,v_i$的分布会随时间发生极大变动,一种通行的可能解法是分天将划分多个时间片,给定每个时间片的预算分布,计算某个时间片的$\lambda$。但是这种方式存在两个明显的问题:

  • 虽然说时间片确认影响$\lambda$值,但是可能存在某种其他维度也会影响$\lambda$值的分布,缺乏更为精细地调整$\lambda$

  • 当系统变动很大时,通过历史数据计算的$\lambda$可能并不正确,但是实时的线性规划一方面耗时,另一方面涉及数据窗口的选择。

因此通过模型的方式来更为精细地生成调价系数是很有必要的,原论文介绍了一种基本强化学习的自动出价策略。

2 基于强化学习预算约束出价

基于强化学习的方法本质学习一个动作模型ActorModel,其会根据客户当前状态$s_i$(当前消费、预算等)确定当前调价系数$a_i$

$b_i^a=a_i*\frac{v_i}{\lambda_o}$

此时系统会根据调价系数生成上述自动出价,同时拍卖系统会给出广告是否胜出点击$x_i$、计费$c_i$等奖励信息$r_i$,同时更新了下一状态$s_{i+1}$。上述过程可以建模为一个马尔可夫决策过程:

$s_1,a_1,r_1,s_2,a_2,r_2,...,s_T,a_t,r_T$

这个决策过程可以通过典型的强化学习来解决,原论文采用是model-free Online DQN方式,该方式依赖一个拍卖系统仿真平台,通过仿真平台,决策网络可以不断进行动作探索,从而收敛到最优效果。

2.1 MDP定义

  • 状态$s_t$:包含当前时段、当前剩余预算、预算消耗速度、上一时间片的cpm、胜出率、点击数、展现数等信息

  • 动作$a_t$$\lambda_t=\lambda_{t-1}*(1+\beta_{a_t})$,为了保持参数平滑性,并不是直接生成动作$\lambda$,而是生成更新系数$\beta_a$

  • 时段$t$:将稠密的广告竞拍过程划分为固定时间片的状态。

  • 奖励$r_t$:即时奖励$r_t^o=\sum_{i\in I_t}x_iv_i$当前时段的累积目标收益。

  • 系数$\gamma$:奖励衰减系数

2.2 DQN模型

$Loss=\sum(Q_{\theta}(s_t,a_t)-Q_{tgt}(s_t,a_t))^2$

  • $Q_{\theta}(s_t,a_t)$为决策模型的输出,该模型以$s_t$为输入预估在不同动作$a_t^j$下的价值

  • $Q_{tgt}(s_t,a_t)=r_t + \gamma\max_{a_{t+1}}Q_{\theta^-}(s_{t+1},a_{t+1})$,其中$Q_{\theta^-}$为前次更新模型

  • adaptive ϵ-greedy policy:动作$a_t$的探索采用一种自适应的 ϵ-greedy策略,当$Q_{\theta}(s_t,-)$分布不置信时,采用随机动作探索。这种方式有助于在学习前期避免掉入某种局部最优。论文认为当$Q_{\theta}(s_t,-)$的分布出现多个峰值时,表明模型结果不置信,此时不应该选择$\text{argmax}_{a_{t}}Q_{\theta}(s_{t},a_{t})$,而应该采用随机的动作探索。

2.3 RewardNet

论文认为上述的即时奖励$r_t^o=\sum_{i\in I_t}x_iv_i$存在较大波动,同时考虑到探索效率,纯DQN的方式不能稳定地达到最大化未来收益。因此其重新定义了如下奖励函数,其含义为最大未来收益。

$r_t=\max_{e\in E(s,a)}\sum_t^Tr^o_t(e)$

为了计算这个值,其设计了一个RewardNet:

$Loss=(r_{\phi}(s_t,a_t)-r_{tgt}(s_t,a_t))^2$

  • $r_{\phi}(s_t,a_t)$表示RewardNet模型输出

  • $r_{tgt}(s_t,a_t)$表示$s_t,a_t$能拿到的最大未来收益,该值是通过不断进行动作探索得到的。

    • $r_{tgt}(s_t,a_t)=\max_e \sum_t^T r_t^o(e)$,其中e表示探索地动作序列。

  • RewardNet同DQN是交替迭代训练的,该网络有点类似于DDPG中的Critic模型,理论上可以通过DDPG方法达到类似效果。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值