前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >KDD2019 | 强化学习优化推荐系统长期收益

KDD2019 | 强化学习优化推荐系统长期收益

作者头像
张小磊
发布2021-06-10 15:29:22
8050
发布2021-06-10 15:29:22
举报

| 作者:阳光明媚

| 单位:华东师范大学

| 研究方向:推荐系统、强化学习

强化学习在训练agent时,优化的目标是最大化决策所能带来的长期奖励。传统的基于监督学习的推荐系统往往不考虑长期奖励,而是仅考虑短期的收益(例如此刻推荐什么物品点击率最高,或者本日推荐什么转化率最高)。因此,如果可以用强化学习的训练方式来训练推荐系统模型,使得推荐系统可以更多地考虑长期收益,就会使得决策模型眼光更长远,长远来看可能会带来更高的受益。关于推荐系统与强化学习相结合的背景知识,可查阅强化学习推荐系统的模型结构与特点总结

(*^▽^*)祝大家明天六一儿童节快乐~

这次介绍的文章:Reinforcement Learning to Optimize Long-term User Engagement in Recommender Systems,就是以此为切入点,考虑用强化学习优化交互式推荐的长期用户参与度,原文链接:

https://arxiv.org/pdf/1902.05570.pdfarxiv.org

强化学习之所以可以建模决策的长期收益,奥秘在于其优化目标。监督学习优化目标一般是最小化决策值与标签值的差异,例如二范数。如果我们从“获得奖励”的角度看待监督学习,当模型决策与标签一致或者相似时获得奖励,不一致或者不相似时就得不到奖励甚至得到惩罚,监督学习希望最大化每次决策所能得到的奖励,也就是每次决策都要和标签类似。这样做显然没有从全局考虑问题:在序列化推荐场景中,可能为了得到用户的点击率,模型会重复推荐同一物品,而没有考虑到前面已经反复推荐过该物品了。

而对于强化学习来说,其希望最大化的奖励是长期奖励

是没有可以去监督学习的标签的,只能通过最小化TD error的方式去近似:

r是与环境交互时获得的及时奖励,在推荐系统中对应用户的正向行为,例如收藏,下单。

下表对比了强化学习与监督学习在建模奖励上的不同:

学习范式

建模的奖励

奖励含义

动作选择的依据

优化目标(最小化)

强化学习

Q(s,a)

s状态采取动作a所能得到的长期奖励

选择最大化Q的动作

∣∣Q(st,at)−(rt+Q(st+1,at+1))∣∣2

监督学习

R(s,a)

s状态采取动作a,环境所返回的即时奖励

选择最大化R的动作

∣∣R(st,at)−rt∣∣2

TD error的训练方式虽然理论上是可行的,但是实践中容易出现过估计(对一些决策过分的高估其

值),且训练不稳定的问题,这也是强化学习理论性质优美,但在工业界难落地的主要原因。本文所要介绍的京东这篇优化推荐系统长期收益的文章,其实按照论文中的讲解,从头到尾都没有上线测试,但是其中的一些思路还是值得借鉴。

奖励设置

奖励包括即时奖励与延迟奖励,最终的奖励为各种奖励的加权和:

其中

,被拼接起来的三项分别为:

  • 即时奖励,用户的点击或者下单行为
  • 延迟奖励,用户浏览时长:
  • 延迟奖励,用户返回时间:

其中

是超参数,

是两次访问之间的时间间隔。

值函数建模

值函数的形式和DQN相同,就是

,论文对于Q网络画了一张复杂的模型图,但其主要内容都是关于数据的embedding:

f_j代表用户的反馈,如点击,购买,停留,划过等;d_j代表行为持续时间。

整个过程可以概括如下:

得到初始item的embedding后,与用户行为的投影矩阵相乘:

然后与dwell time特征拼接喂给LSTM:

不同的用户行为对应隐特征又会被各自喂入各自的LSTM,进一步提取不同用户行为对应的特征:

拼接user embedding得到最终的状态的表示:

item embdgging作为动作的表示,将状态动作输入MLP,输出作为Q值:

用户模拟器

用户模拟器部分,是用的普通的监督学习模型,加一个多任务学习,输出用户行为类型以及持续时间,是否在线以及下次返回时间,模型结构图:

这里面的state-action embedding部分,与Q网络结构图中的embedding部分一样,可以直接拿来用。

完整算法流程

算法流程图很长,但是整个流程就是简单的四部分:

  1. 线下的日志数据提取用户行为,预训练用户模拟器
  2. 推荐策略与用户模拟器交互,收集转移元组
  3. 根据转移元组训练Q网络
  4. 根据数据训练用户模拟器

实验效果

文章先做了一些实验,证明自己的模型确实可以捕获用户的长期兴趣,然后有实验证明了本文算法相比于其他base算法在一些短期和长期度量上的优越性,但是一直回避了一个问题,就是用户模拟器的效果对最终模型的效果影响几何?因为文章和base模型对比的实验效果都是从用户模拟器中得来的,用户模拟器的性能因此就至关重要,文章回避了这一点。但是用户模拟器的思路,在虚拟淘宝中也有用到,另外,滴滴的基于深度强化学习的派单系统,据说(叶杰平在报告上说)也用到了类似思路的模拟环境。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-05-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 机器学习与推荐算法 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 奖励设置
  • 值函数建模
  • 用户模拟器
  • 完整算法流程
  • 实验效果
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档