Reinforced RecSys

2022年是强化学习引荐体系的迸发年,强化学习引荐体系总述“RLRS[1]”在ACM的总述类顶刊发表,从原理到办法解释清楚引荐体系中“为什么用”强化学习算法,同年网易宓羲开源了“雷火游戏”中引荐体系与强化学习算法的“RL4RS工程”[2],从数据到采样到强化学习代码解释清楚引荐体系中“怎么用”强化学习算法。不同于2018年周志华团队虚拟淘宝发表出来时的冷艳,2022年给强化学习引荐体系打足了基础。

如下图咱们能够看到,自从2015年nature的DQN发表后,强化学习(RL)步入深度强化学习(DRL)年代,曾经的大规模计算问题被处理,强化学习引荐算法的热度逐年上升,SIGIR、KDD等顶会承受目的愈强。

强化学习推荐系统综述:Reinforcement Learning based Recommender Systems: A Survey

今天咱们就来浅聊一下”Reinforcement Learning based Recommender Systems: A Survey“这篇文章。

这篇文章是发表在 ACM Computing Surveys 上的总述文章,是计算机范畴的权威总述类期刊。作者来自卡尔加里大学 (University of Calgary)。

1. 引荐体系为什么要和强化学习算法沾边?

咱们先抛开技能,聊一聊引荐体系为什么需要强化学习。众所周知,跟着电子商务平台的产品数量迸发式增加和顾客消费才能提升,引荐体系的效果从对用户引荐一个其最喜欢的产品走向为顾客序列化的引荐一系列产品。

顾客的天分便是在不断的与平台商家互动中完结订单,大数据的技能使得顾客在电子商务的行为具有可记载性并以数据的形式存储下来,深度学习的快速开展使得顾客行为数据具有可分析性以预测顾客未来的消费偏好。这也就使得当时引荐体系的方针不仅是一个预测任务,更是一个序列化决策任务,引荐体系在不断的做“引荐那个产品”这个决策。

因而,传统的深度学习引荐办法就存在局限性,如DIN等单任务引荐模型,MMOE等多任务引荐模型仅能告知咱们“what is good immediately”,但是不能告知咱们“what is good in the long run”。

2. 强化引荐体系的四个核心组件

2.1 强化算法的五个组件

在讲强化引荐体系的四个组件之前,咱们先讲强化学习算法的五个组件,强化学习算法能够表明为<S,A,R,P,><S,A,R,P,\gamma>

  • SS: 状况st∈Ss_t\in S被界说为在tt时间用户偏好及其在体系中的曩昔历史。
  • AA: 行为at∈Aa_t \in A是在tt时间向用户引荐的产品。
  • RR: 奖赏r(st,at)∈Ar(s_t,a_t) \in A是RL智能体收到的用户sts_t对所收到引荐产品ata_t的反应。
  • PP: 状况搬运概率矩阵p(st+1∣st,at)∈Pp(s_{t+1}|s_t,a_t) \in P表明在状况sts_t时,RL智能体做出行为ata_t后整个环境状况搬运到st+1s_{t+1}的概率。
  • \gamma: 折现因子∈[0,1]\gamma \in [0,1],表明未来奖赏在当时的折现。

有了如上的模型<S,A,R,P,><S,A,R,P,\gamma>,强化学习算法的方针便是找到最优的战略(Policy \pi)最大化未来奖赏的期望: maxE[t=0Ttr(st,at)]max_{\pi}\mathbb{E}[\Sigma_{t=0}^T\gamma^tr(s_t,a_t)]

2.2 强化引荐体系的四个组件

如下图(a)所示,整体的强化学习引荐体系首要含有四个组件,其核心组件是状况表征(State representation)。

强化学习推荐系统综述:Reinforcement Learning based Recommender Systems: A Survey

  • State representation: 如上图(b,c,d)所示,状况表征的办法首要有三种,用用户和产品直接表征,用用户、产品和上下文的特征表征,用用户和上下文经过编码器表征。跟着步入深度年代,(d)图的编码器表征技能走向干流,能够更好的表征强化学习智能体所处的状况。
  • Policy optimization: 当状况被表征之后,智能体的行动如何影响状况改变能够被建模。那么引荐智能体挑选行为的最优战略(policy)能够经过学习得到。强化学习的战略优化办法能够表明为表格办法(tabular method)和估量办法(approximate method),表格办法便是传统强化学习的办法,比方一种战略是“从Q表格中挑选当时状况下Q值最大的行为”,估量办法是深度强化学习的办法,比方一种战略是“学习一种函数联系Q=f(s,a)Q=f(s,a)在当时状况下挑选Q最大的行为”这个函数能够被梯度优化,也便是经典的fitted Q办法。跟着强化学习的深度化,深度强化学习的战略从估量办法动身分为三类:1)value-based办法,典型的为DQN,2)policy-gradient办法,典型的为REINFORCE办法,3)avtor-critic办法,典型的为PPO办法。
  • Reward formulation: 智能体做出行为后,环境会对智能体的行为做出反应,评价智能体的行为是好是坏,比方最简单的奖赏便是“用户点击了引荐产品为1,没点为0”。这个评价便是咱们常说的奖赏(reward),以数值的形式表现在整个强化学习体系中。然而,大部分引荐体系是不存在直接反应的,不像游戏场景打死了怪便是有积分,顾客的行为往往是非理性的,点击了产品看了详情页其或许满意或许不满意。因而,界说合适的奖赏是一个杂乱且困难的作业,在工程中往往经过试错法来实现最优的奖赏拟定。当时的RLRS办法有两个通用思路,1)给予规则拟定简单稀疏的数字奖赏值,如“用户点击了引荐产品为1,没点为0”,2)学习一个奖赏函数,如r=r(s,a)r=r(s,a)
  • Environment building: 大体来说,评价一个引荐算法便是困难的作业,现有的如准确率、新颖度、多样性等指标常常相互影响相互限制,学界与业界至今没有一致的评价规范。更别提在强化学习的场景,建立一个练习与评价强化学习智能体的一致环境是一项杂乱的作业。现有的办法能够分为三类,offline、simulation、online。1)offline办法从离线数据集动身,80%的数据练习一个智能体,20%的数据评价,比方ICML发表的“Generative Adversarial User Model for Reinforcement Learning Based Recommendation System”论文就用的此办法。2)simulation办法从离线数据集练习出一个仿真环境,智能体做出a=f(s)a=f(s)行为后,仿真环境模拟用户做出y=g(s,a)y=g(s,a)的行为,比方点击行为、下单行为等,比方VirtualTB、RL4RS、RecSim等论文皆是构建离线的仿真环境。3)online办法,强化学习智能体便是与实在用户实时互动,是最实在也是最昂贵的评价办法,你的RL智能体不可,会直接损害平台用户活性。

未完待续,接下来持续完善。


[1]Afsar M M, Crump T, Far B. Reinforcement learning based recommender systems: A survey[J]. ACM Computing Surveys, 2022, 55(7): 1-38. [2]Wang K, Zou Z, Shang Y, et al. Rl4rs: A real-world benchmark for reinforcement learning based recommender system. code