猜你喜欢

1、如何搭建一套个性化推荐系统?

2、某视频APP推荐详解(万字长文)

3、微博推荐算法实践与机器学习平台演进

4、腾讯PCG推荐系统应用实践

5、强化学习算法在京东广告序列推荐场景的应用

6飞猪信息流内容推荐探索

7、华为项目管理培训教材

8、美团大脑系列之商品知识图谱的构建和应用

本文介绍Youtube在2019年放出的两篇强化学习推荐系统中基于value-based的一篇,论文标题:SLATEQ: A Tractable Decomposition for Reinforcement Learning with Recommendation Sets (IJCAI 2019)

原文地址:

https://arxiv.org/pdf/1905.12767.pdf

https://www.ijcai.org/Proceedings/2019/0360.pdf

强化学习推荐系统快速入门

强化学习算法可以大体分为value-based和policy-based,value-based方法在训练阶段的学习目标是学到一个函数,知道当前状态和动作之后,这个函数可以输出状态下这个动作所能带来的期望的长期价值,记为Q值,或者状态动作值函数;在决策阶段,在一个新的状态下,我们可以根据训练好的函数,尝试可选动作集合中的每一个动作,最终采取Q值最大的动作,这样就可以带来最大的长期收益。本文主要讨论value-based的强化学习推荐系统。

在每次采取动作之后,会受到来自环境的一个反馈的奖励,然后状态会从变化到,value-based的强化学习的优化目标一般为:

直观来说,上式的目的是希望学到一个尽可能准确的Q函数。训练阶段,训练集可以看做是一个个的元祖,而上式的是根据当前的Q函数,输入状态以及所有待选动作,最后选出来的Q值最大的动作。

上面的介绍中涉及到的强化学习中的主要元素及其在推荐系统中的对应部分:

  • 动作(action):推荐内容,如抖音中的一条视频,或淘宝中的一个商品页(包含多个物品)

  • 奖励(reward):用户的即时反馈,如用户是否点击,或者浏览时间

  • 状态(state):强化学习推荐系统的agent的状态是对环境以及自身所处情况的刻画,可以简单理解为用户历史行为日志

论文要点

强化学习的推荐系统主要优势在于可以考虑长期收益,如用户的长期参与度。但是在一些需要推荐多个物品的场景下,例如youtube的网站首页,会一次放出几十个视频,此时模型需要考虑不同视频的组合,而一个物品的排列组合就是一个动作,这时待选动作的数目就会十分巨大。而Youtube的这篇论文主要考虑如何对原始的value-based方法的Q函数进行分解,来更好的处理这种一个动作就是一个物品组合的推荐场景。在实验阶段,youtube考虑使用离线的模拟实验(训练用户模拟器)和youtube的在线实验,发现用户参与度相对于传统的短期推荐系统有明显增益。

问题分析

在动作空间中,包含k个物品的推荐列表就有种可能,这个运算符在youtube这种k值一般在几十(刚才去数了一下,首页50+)的网站就很离谱,更不要提前面的了。

动作空间这么大,就会带来一些问题:

  • 很难进行充分的探索;另外,如果想要在大量的推荐列表之间进行泛化,就需要有这些推荐列表的稠密表示,但是很多列表并不会在现实中出现,我们并不知道这些没出现过的列表会得到怎样的奖励,也就是说,我们没有关于这些列表的转移元组。

  • 如何找到Q最大的物品组合,这是一个组合优化问题。如果不另加结构性的假设或近似,这个问题会难以求解,无法满足线上服务时延要求。

解决方案

为此,文中提出了两个关键假设,基于这两个假设,就可以把Q值分解为两部分:item-wise的Q值部分,和关于所有item的整体Q值部分,从而降低求解最优推荐列表的时间复杂度。两个假设分别是:

  • Single choice(SC): 即假设用户每次只选择一个物品,或者不选择。

  • Reward/transition dependence on selection (RTDS): 奖励和状态的转移只依赖于用户选择的物品。

直观上两个假设看起来都比较符合直觉,没有对现实场景做太大的简化。

基于RTDS假设,奖励的分布和状态的转移分布就可表示为:

进一步就可以定义出item-wise的Q函数:

如果用item-wise的Q函数来表示,就得到了:

推导过程用到了SC与RTDS假设,主要是从11式到12式的推导需要用这两个假设:

看了这个推导,给人的感觉就是作者在思考问题并写这些11式的公式时发现时间复杂度太大,然后顺其自然的想到了这两条假设。

最终的结果只依赖于,其中的只是一个物品而已,而非一个组合,用传统的TD error就可以训练出;最终结果还包括,也就是预测状态下,给定列表用户选择各个物品的概率,这就是一个pctr预测问题了,有很多成熟的解决方案。

在训练时,为了得到最优的策略,我们也要训练最优策略对应的Q函数,而这只需要在训练过程中,依据Q最大的就是最好的的准则,来贪心的选择即可。

最终的长期收益优化目标:

最终这样一个优化目标可以被看做一个分数线性规划问题,并且可以在多项式时间内解决:

这里代表用户对一个物品的未正则化的点击概率。

虽然这里物品的集合数目巨大,但是现实中这里的物品集合应该是粗排并且被一些产品策略过滤之后的结果,因此数目会比总物品数少很多。关于优化问题的简化过程,细节请参考原文。

在线上服务时,为了避免每次请求都有接一个多项式时间复杂度的线性规划问题,文章还提出了两种近似的方法:

  • Top-K: 计算每个物品的期望奖励,选择倒序排序最大的k个作为最终的推荐列表。在选择物品列表的第L个物品并需要计算物品奖励时,不会考虑前L-1个物品。

  • Greedy: 考虑物品列表的第L个时,考虑其边际收益,边际收益会考虑前L-1个物品计算得到:

实验效果

实验包括两部分,离线部分与在线部分:离线部分构建了一个用户模拟器来模拟用户行为,在线部分是在youtube网站上线来取得效果的。用户模拟器是根据用户的历史行为数据通过简单训练的方式训练方式得到的,此前也介绍过一篇类似的文章,这里不再过多介绍。

离线实验

这里对比了随机模型,近视模型(MYOP,把奖励的折扣因子设置为0,这样模型就不会考虑长期奖励),SARSA以及Q-Learning在训练阶段就使用不同的决策方式,和使用不同的线上服务方式(第一个字母,T: top-K; G: greedy; O: Optimal; 第二个字母,T: traing; S: serving)的对比实验:

可以看到,greedy的线上服务方式相比于优化的方式,性能损失不大;而top-k的方式损失很大。

在线实验

对比的指标是用户参与度,baseline是youtube当前的监督模型,可以看到性能提升还是十分显著的,也证明了强化学习在推荐系统上落地是可以带来收益的:

「 更多干货,更多收获 」

推荐系统工程师技能树

【免费下载】2021年9月份热门报告盘点

美团大脑系列之:商品知识图谱的构建及应用

【干货】2021社群运营策划方案.pptx

大数据驱动的因果建模在滴滴的应用实践

联邦学习在腾讯微视广告投放中的实践如何搭建一个好的指标体系?如何打造标准化的数据治理评估体系?

【干货】小米用户画像实践.pdf(附下载链接)

推荐系统解构.pdf(附下载链接)

短视频爆粉表现指南手册.pdf(附下载链接)

推荐系统架构与算法流程详解如何搭建一套个性化推荐系统?某视频APP推荐策略详细拆解(万字长文)

2020年轻人性和爱调查报告.pdf(附下载链接)

关注我们

智能推荐

个性化推荐技术与产品社区

长按并识别关注

您的「在看」,我的动力												

Youtube的value-based强化学习推荐系统相关推荐

  1. 从这篇YouTube论文,剖析强化学习在工业级场景推荐系统中的应用

    作者 | 吴海波 转载自知乎用户吴海波 [导读]本文作者根据两篇工业界背景的论文解答了 RL 在推荐场景需要解决的问题与困难,以及入门需要学习得相关知识点. 2 个月前,业界开始流传 youtube ...

  2. 知识图谱 图 强化学习 推荐系统

    知识图谱或图为强化学习的状态和动作选择提供语义信息得到更好的表示来优化强化学习的过程.(将知识图谱作为外部信息引入强化学习框架中,用来引导强化学习探索过程) Unified Conversationa ...

  3. DRN——强化学习与推荐系统结合

    强化学习是近年来机器学习领域非常热门的研究话题,它的研究起源于机器人领域,针对智能体在不断变化的环境 中决策和学习的过程进行建模.在智能体的学习过程中,会完成收集外部反馈,改变自身状态,再根据自身状态 ...

  4. 推荐系统强化学习DRN

    文章目录 强化学习的基本概念 强化学习推荐系统框架 强化学习推荐模型的特点 深度强化学习推荐模型中的DQN DRN的学习过程 DRN竞争梯度下降算法 强化学习的基本概念 强化学习的基本概念就是一个智能 ...

  5. 赠书 | 从阿里到Facebook,一线大厂这样做深度学习推荐系统

    本文内容节选自<深度学习推荐系统>一书. 由美国Roku推荐系统架构负责人.前Hulu高级研究员王喆精心编著,书中包含了这场革命中一系列的主流技术要点:深度学习推荐模型.Embedding ...

  6. 一文读懂AlphaGo背后的强化学习:它的背景知识与贝尔曼方程的原理

    作者 | Joshua Greaves 译者 | 刘畅,林椿眄 本文是强化学习名作--"Reinforcement Learning: an Introduction"一书中最为重 ...

  7. 【更新】深度学习推荐系统

    其他博客:笔记1.博客2 文章目录 第一章.互联网的增长引擎--推荐系统 第二章.前深度学习时代--推荐系统的进化之路 第三章.浪潮之巅--深度学习在推荐系统中的应用 3.1 深度学习推荐模型的演化关 ...

  8. 强化学习在推荐混排中的应用

    上篇文章主要和大家聊的是广告智能定向技术之lookalike,今天想和大家谈谈强化学习在推荐混排中的应用. 0.什么是强化学习 强化学习是机器学习中的一个领域,强调如何基于环境而行动,以取得最大化的预 ...

  9. 深度学习推荐系统实战总结

    https://time.geekbang.org/column/article/294382 推荐系统要处理的问题可以被形式化地定义为:在特定场景C(Context)下,针对海量的"物品& ...

最新文章

  1. ThreeJS获取快照
  2. MybatisPlus代码生成器配置
  3. vector删除第i个元素_LeetCode每日一题 Q215数组中的第K个最大元素
  4. 木马入侵查杀 linux
  5. git或gitlab修改密码之后,报错remote: HTTP Basic: Access denied,fatal: Authentication failed for ‘git或gitlab地址’
  6. 金融科技监管何时才能完善?
  7. 人口预测和阻尼-增长模型_使用分类模型预测利率-第1部分
  8. oracle创建简单包,Oracle创建程序包是什么?
  9. 潜在狄利克雷分配(Latent Dirichlet Allocation,LDA)
  10. 制作首页的显示列表。
  11. 通过流程构建组织的【个人能力】和【团队能力】
  12. sshpass简介及安装
  13. 如何给pdf文件自动添加目录和书签?
  14. java表白代码,神操作!
  15. 3D机器学习(4):pytorch入门3:张量的拼接与拆分、张量的运算、张量的统计
  16. java五子棋技术路线,一位老码农的编程简史
  17. VueI18n国际化vm._watchers[0].constructor未定义的解决办法:修改源代码吧
  18. 《最优化方法及其Matlab程序设计》马昌凤 部分习题答案
  19. switch怎么切换服务器账号,任天堂eshop如何换区 switch账号如何切换其他服地区
  20. SQL注入:SQL注入类型(手动)SQL注入的检测

热门文章

  1. APP自动化测试系列之Appium环境安装
  2. 反向传播和梯度下降的区分
  3. *08TensorFlow2.0基础--8.3维度变换
  4. TokenInsight:反映区块链行业整体表现的TI指数较昨日同期上涨0.41%
  5. SAP License:整理的SAP参数文件
  6. SAP License:SAP FI/CO—Questions and Answers
  7. 远离复杂公式推导,直接解决共线性
  8. easyUI之Messager(消息窗口)
  9. Linux常用命令(补充)--其他
  10. angularjs之UI Grid 的刷新 本地数据源及HTTP数据源