用于强化推荐系统的Top-K非政策修正方法 - 论文翻译

原文链接:https://arxiv.org/pdf/1812.02353.pdf

摘要:

工业推荐器系统处理非常大的数据空间–数以百万计的项目值得推荐。而且,他们需要为数十亿用户提供服务,这些用户在任何时间,状态都不一样,这使得这项任务变得复杂。幸运的是,数量巨大且已被记录的隐式反馈(例如,用户点击次数,停留时间)可供模型来学习。但是从记录反馈中学习,可能会因因为学习到之前被推荐人选择的推荐的反馈而导致偏见。在这项工作中,我们提出了解决此类偏见的一般方法YouTube生产的top-K推荐系统,该系统使用基于策略梯度的算法,即加强算法 [48]。本文的贡献是:(1)将加强算法扩展到具有数百万个产品操作的推荐系统空间;(2)应用off-policy修正来解决从多个行为策略收集的记录反馈中,学习到的数据偏见; (3)提出了一种新颖的top-K的off-policy,以说明我们一次推荐多个项目的政策; (4)展示探索的价值。我们通过在YouTube上一系列的模拟和多个实时实验证明了我们方法的有效性。

本文出自微信公众号:AI爱好者社区

ACM参考格式


Minmin Chen,Alex Beutel,Paul Covington,Sagar Jain,Francois Belletti,Ed志智 2019. 
用于强化推荐系统的Top-K非政策修正方法。 在第十二届ACM国际网站搜索和数据挖掘(WSDM’19),2019年2月11日至15日,澳大利亚维多利亚州墨尔本市。ACM,美国纽约,纽约,共9页。 https://doi.org/10.1145/3289600.3290999

1 引言


整个行业都依赖推荐系统来帮助给用户从大量内容中进行推荐,然后发现他们感兴趣的内容的一小部分。这个问题很具有挑战性,因为可能会推荐大量商品。此外,在合适的时间向正确的用户显示正确的项目,要求推荐系统不断根据用户与系统的历史交互行为来适应他们的转移兴趣(状态)[6]。不幸的是,对于如此大的状态和动作空间,我们观察到的数据相对较少,其中大多数仅是接触过少量物品的用户,并且提供更小的反馈信息。也就是说,推荐系统收到极其稀疏的数据以进行日常的训练,例如Netflix奖数据集的密度仅为0.1%[5]。我们进行的实验中,对推荐系统进行了大量研究,探索了处理这种极端稀疏性的不同机制。从隐式的用户反馈(例如点击次数和停留时间)中学习,以及填补未观察到的相互作用改进推荐程序的步骤[19],但问题仍然存在。

在大部分单独的研究领域中,强化学习(RL)最近在游戏中也取得了令人瞩目的进步[38,46],作为机器人技术[22,25]。 RL通常侧重于建立能够在环境中采取行动,以最大程度地了解长期奖励。 在这里,我们探讨构架推荐为建立RL代理商,以最大化每个用户的长期满意度。 这为我们提供了有关推荐问题的新观点,并为我们提供基于RL的最新建议的挑战。 但是,这种观点付诸实践仍然存在重大挑战。

如上所述,推荐系统处理大型状态和行为空间,尤其是在工业领域设置。 可推荐的一组项目是非固定的,并且新项目不断被带入系统,导致不断增长的item空间,新物品得到很稀疏反馈。 此外,一直以来用户对这些项目的偏好正在发生变化,导致用户状态不断发展。 存在能够通过如此大量的动作来推理复杂的环境给现有的应用带来了独特的挑战RL算法。 在这里,我们分享了将REINFORCE算法[48]应用于神经候选生成器(top-K推荐系统),其中包含非常大的操作和状态空间。

除了庞大的动作和状态空间外,推荐系统中的RL在数据可用性有限方面也很明显。经典RL应用程序,通过收集大量数据克服了数据效率低下的问题,具有自演和仿真功能的大量训练数据[38]。在相比之下,推荐系统的复杂动态使得模拟生成具有现实推荐数据的不可行性。结果,我们无法轻易地探索,状态和行动空间的未探索区域奖励需要向真实用户提供真实推荐。相反,该模型主要依赖于以前的推荐模型(策略),其中大多数我们无法控制或无法控制。最有效地利用其他政策的反馈后,我们采用off-policy方法,在该方法中,我们同时学习先前政策的模型,并将其合并到纠正数据偏差时培训我们的新政策。我们还通过实验证明了探索性数据中的值。

最后,RL中的大多数研究都集中在制定选择单个项目的策略上。 现实世界中的推荐业务则是另一方面,通常在以下位置向用户提供多个建议[44]。 因此,我们为top-K推荐器系统定义了一种新颖的top-K off-policy修正。 我们发现标准的off-policy更正产生了最适合top-1推荐,在模拟和真实实验中,这种top-K的off-policy修正都带来了好的优化结果。 我们共同提供以下贡献:

•REINFORCE推荐人:我们扩展了基于 REINFORCE 策略梯度的方法,在巨大行动空间中,来学习神经推荐的方案。
•Off-Policy候选集的产生:我们采用Off-Policy更正以从记录的反馈中学习,并从先前模型策略进行收集反馈。 我们结合了博学的行为政策的神经模型来纠正数据偏差。
•Top-K Off-Policy的更正:我们提供了一种新颖的top-K Off-Policy的更正,以说明我们的推荐者一次输出多个项目的事实。
•真实流量实验的好处:我们在真实流量实验中进行了演示,这在现有的RL文献中很少进行,这些方法对长期改善用户的体验很有帮助。

我们发现这种方法组合对于增加用户的使用享受感很有用,并相信在推荐系统中使用RL可以解决许多实际挑战

2 相关工作强化学习:


强化学习方法,例如Q学习策略,基于策略的策略(例如策略梯度)构成了解决RL问题的经典方法[40]。一般比较可以在[29]中找到现代RL方法的重点,异步学习是扩大大问题的关键。尽管基于价值的方法具有许多优势,例如无缝off-policy学习,它们很容易出现函数近似[41]。通常,大规模进行超参数调整,这些方法才能获得稳定的性能。尽管许多基于价值的实践取得了成功,比如深度Q学习[30],这些算法没有得到很好的研究。基于策略学习的另一方面,保持稳定函数近似给定足够小的学习率。因此,我们选择依靠基于策略梯度的方法,尤其是REINFORCE[48],并采用这种基于策略的方法来提供可靠的策略训练非政策时的梯度估计。

神经网络推荐算法:与我们紧密相关的另一项工作是,越来越多的关于应用深度学习的推荐系统文献[11、16、37]的神经网络,尤其是使用递归神经网络合并时间信息和历史事件以进行推荐[6、17、20、45、49]。我们采用了类似的网络架构来模拟不断发展的网络,通过与推荐系统交互来确定用户状态。由于神经体系结构设计不是我们工作的重点,我们请感兴趣的读者阅读这些先前的作品以获取更多详细信息讨论。

推荐系统中的难点问题:在线学习方法也很流行,随着新用户反馈的出现可以快速适应推荐系统。 这样的“强拟合”算法由于高可信度边界(UCB)[3]权衡了探索和以易于分析的方式进行开发,从而提供强大的保证。 不同的算法,比如Thomson抽样[9],已成功应用于新闻推荐和展示广告。 情境拟合办法为基本的在线学习方法和量身定制提供了情境感知的改进针对用户兴趣的建议[27]。 Agarwal等[2]旨在使内容拟合方法易于处理且易于实施。依赖矩阵分解和内容拟合的混合方法,有的开发组还用来解决推荐程序中的冷启动问题系统[28]。

推荐系统中的倾向计分和强化学习:off-policy学习中存在的问题[31、33、34]在RL中普遍存在,并普遍影响决策梯度更新。随着策略的发展,梯度期望的分布也是被计算。机器人技术的标准方法[1,36]通过限制策略更新规避了这一点,以至于没有新数据收集之前,这项策略也不发生更改信息,反过来提供单调的改进RL目标的保证。不幸的是,这种极端方法不适用于推荐设置目录和用户行为迅速变化的系统,因此需要进行实质性的策略更改。与此同时,反馈信息在大的状态和动作空间上,收集起来很慢。作为一个事实,在推荐器系统设置中,对给定策略进行离线评估已经是一个挑战。多个off-policy估算器利用逆向得分、上限逆向分数和各种方差控制措施来解决这一问题,并且已经开发出来[13、42、43、47]。Off-policy 离线评估可纠正类似的数据偏斜因为在这两个问题上都采用了策略外的RL和类似的方法。逆倾向得分也已被用来改善[39]大规模服务政策。 Joachims等。 [21]学习一个反馈数据是极度不平衡的推荐系统模型;我们采取同样考虑了远景的办法,使用DNN建模需要有离线收集到的数据来进行建模。最近一个 off-policy 方法已经被提出来能够适应这一一个复杂的系统问题[44],其中伪逆估计器假设计划中的结构先验和奖励,已经被应用在反向趋势得分的策略中。

3 强化学习


我们首先介绍推荐系统的设置,以及我们基于RL推荐的方法。

对于每个用户,我们考虑一系列用户与系统的历史互动,记录推荐者采取的操作(即推荐的视频)以及用户反馈,例如点击并观看时间。 给定这样的交互序列,我们可以预测下一个用户可能采取行动的item,即推荐视频,以使用户满意指标(例如由点击次数或观看时间表示)会有所改善。

我们将此设置转换为马尔可夫决策过程(MDP)

(S, A, P, R, ρ0,γ ) where

•S:描述用户状态的连续状态空间;
•A:离散的动作空间,包含可用于推荐的所有item;
•P:S×A×S→R是状态转移概率;
•R:S×A→R是奖励函数,其中r(s,a)是通过对用户执行操作a获得的立即奖励状态;
•ρ0是初始状态分布;
•γ是未来奖励的折扣因子。

我们寻求一个方法π(a | s)即在用户操作状态s下,给出最好的推荐集合a的一个权衡方案,该方法将商品的分布转化为推荐一个以用户状态s∈S为条件的a∈A,以使推荐者获得的预期累积奖励最大化系统,

在这里,期望值是轨迹 τ = (s0, a0,s1, · · · ),这个轨迹由我们设置的策略得到的一系列行为获得 s0 ∼ ρ0, at ∼ π(·|st ),st+1 ∼ P(·|st , at )

有多种方法可用于解决此类RL问题:Q学习[38],策略梯度[26、36、48]和黑箱优化[15]。 在这里,我们关注基于策略梯度的方法,即REINFORCE [48]。

我们假设策略为πθ的函数形式,由θ∈R(d)。 预期累积奖励的梯度为可以通过分析得出对策略参数应用到“对数技巧”,产生以下REINFORCE梯度

在线RL中,策略梯度是根据轨迹计算的,由所考虑的策略产生的策略梯度是无偏见的,可分解为:

用于强化推荐系统的Top-K非政策修正方法 - 论文翻译_第1张图片

近似值是用折后的R(τ)代替未来的奖励。

在时间t采取行动减少梯度估计中的方差。

 

4 OFF-POLICY修正

与经典强化学习不同,我们的学习方法没有通过对推荐者进行实时交互控制和基础设施限制。 换句话说,我们不能执行在线更新政策并立即更新策略。 相反,我们会收到历史策略的反馈(或策略的混合),在动作空间上的分布可能与我们正在更新的政策有所不同。

我们专注于解决此设置下的策略梯度方法,出现的数据偏差问题。 特别是我们以几个小时为周期,收集数据并进行计算部署新版本之前,许多策略参数更新生产中的政策隐含意味着我们用来更新策略梯度的一组轨迹是由不同的策略导致出来的。 而且,我们从其他人收集的批处理反馈中学习推荐者也遵循完全不同的策略。朴素的策略梯度估算器不再无偏公式(2)中的梯度,需要从在绘制我们收集的轨迹时更新了策略πθ结合历史政策β。

我们用重要性加权[31,33,34]解决分布不匹配的问题。 考虑轨迹τ=(s0,a0,s1,····)是根据根据行为政策β进行采样的,策略外修正的梯度则估算器为:

用于强化推荐系统的Top-K非政策修正方法 - 论文翻译_第2张图片

上面公式是重要性权重。 这种校正会产生无偏见的估计量,不管轨迹是否根据β进行采样然后手机。 但是,由于一条链路上的产品很多,导致估计量的方差很大,很快导致非常低或很高重要权重的值。

为了减少轨迹上时刻t,在每一次迭代项上的方差,我们可以忽略时间t之后的轨迹上的所有产品,然后估算出重要权重,并且进一步采取一阶近似:

得出策略梯度的偏向估计值,具有较低方差:

用于强化推荐系统的Top-K非政策修正方法 - 论文翻译_第3张图片

Achiam等人证明这种一阶近似对学习策略的总奖励的影响是有限的幅度。其中DTV是π(·| s)与β(·| s)之间的总变化,d(β)是未来的折价状态β下的分布。 该估计量折衷了精确的 off-policy 修正,同时仍在修正非校正的策略梯度,更适合于基于策略学习

4.1 策略参数π

我们将在每个时间t的用户状态下建立我们的模型,都使用n维向量来作为用户兴趣的转变,也就是说,s(t)∈Rñ。 沿着轨迹在每个时间t采取的动作是使用m维向量 u(at)∈ R(m)。我们定义状态转换P:具有递归神经网络的S×A×S [6,49]

我们尝试了多种流行的RNN单元,例如长短期记忆(LSTM)[18]和门控循环单元(GRU)[10],最后使用了称为Chaos Fre的简化单元RNN(CFN)[24]由于其稳定性和计算效率。状态以递归方式更新为

用于强化推荐系统的Top-K非政策修正方法 - 论文翻译_第4张图片

z(t), i(t)∈Rñ分别是更新和输入门。

以用户状态s为条件,策略πθ(a | s)用一个简单的softmax进行建模,

其中va∈Rñ是嵌入空间A的每个动作中的的embedding向量,T是通常设置为1的常量度。T的值越高,在操作空间上的策略越平滑。softmax中的标准化项操作需要遍历所有可能的item,在我们的设置中大约为数百万。为了加快计算速度,我们执行了采样的softmax [4]培训期间。 在投放时,我们使用了一种有效的最近邻搜索算法来检索顶部动作并近似估算如第5节中所述,仅使用这些item的softmax概率。

用于强化推荐系统的Top-K非政策修正方法 - 论文翻译_第5张图片

总的来说,参数 θ 和 策略 πθ 包含两个动作向量 U/V,U(z)用来表示权重指标,还有一些其他参数都在上面的截图中,都是RNN的参数,下面的图1

图1显示了描述主策略πθ的神经结构。 给定一个从行为策略β采样的轨迹τ=(s0,a0,s1,...)。新策略通过初始状态为(s0〜ρ0),然后启动来生成用户状态st + 1,并利用等式(4)进行循环。 给定用户状态st + 1,策略负责人通过softmax在动作空间上分配分布概率,如等式(5)。 有πθ(at + 1 | st + 1),然后我们可以制定等式(3)中的策略中的梯度来更新策略。

用于强化推荐系统的Top-K非政策修正方法 - 论文翻译_第6张图片

图1:该图显示了该策略的参数化πθ以及行为策略βθ'。

4.2 估计行为策略β

提出偏离政策的修正估算器的一个困难是:(3)中的式子得到行为策略β。 理想情况下,对于每个记录了我们收到的选定操作的反馈,我们希望还要记录行为策略选择的概率行动。 但是直接记录行为策略是不可行的在我们的例子中,(1)系统中有多个代理,很多其中我们无法控制,(2)一些代理商拥有确定性策略,将β设置为0或1并非最有效利用这些记录的反馈的方法

取而代之的是,我们采用[39]中首次引入的方法,并估计行为策略β,在我们的案例中,该行为策略β是使用记录的操作混合了系统中多个代理策略的行为。给定一组记录的反馈D = {(si,ai),i = 1,···,N}, [39]通过聚合与用户状态无关整个语料库中的动作频率,来估算estimates β(a)。相反,我们采用上下文相关的神经估计器。对于每个状态动作对(s,a)收集,我们估计概率ˆβθ'(a | s)表示混合物行为策略使用另一个softmax选择该行为,由θ参数化′。如图1所示,我们重用了用户状态是从RNN模型主要策略和模型生成的与另一个softmax层的混合行为策略。阻止行为主从干扰主用户的状态政策,我们阻止其梯度流回RNN。我们还尝试分离πθ和βθ′估计量产生用于计算另一种状态表示的计算开销,但不会导致离线状态下的任何度量改进和现场实验。

尽管两者之间大量共享参数政策 πθ和βθ′ ,他们之间有两个明显的区别:
(1)主要政策πθ使用了有效的训练考虑到长期回报的加权softmax,行为政策负责人βθ'仅使用状态-动作对进行训练;
(2)主政策头πθ仅使用以下项目进行训练具有非零奖励的轨迹3,行为策略βθ``是使用轨迹上的所有项目进行训练以避免引入β估计中的偏差。

在[39]中,有人提出一种行为策略,该策略在时间t1确定地选择给定状态为s的行为,而在时间t2的行为b可以视为在动作a和b之间随机分配在记录的时间范围内。 在这里我们可以争论相同点,这说明了为什么行为策略可能不同于给定确定性策略的0或1。此外,由于我们有多个同时执行的政策,因此如果一项政策是确定的选择给定用户状态s的动作,而另一个确定性地选择动作b,然后估算ˆβθ以这种方式估计在以下情况下选择的预期动作频率给定用户状态,这些行为策略的混合

你可能感兴趣的:(强化学习,推荐系统,AI爱好者社区)