目录
1 论文简介
2 文章的主要贡献
3 文章技术的简要说明
4 技术的详细说明
4.1 GAN-SD:生成客户特征
4.2 MAIL:生成交互过程
4.3 ANC:动规范约束
5 实验设定及结果
6 结论
7 参考
1 论文简介
南京大学LAMDA团队的侍竞成、俞扬等人在AAAI 2019发表了一篇论文,介绍了在淘宝这个大型在线零售平台上利用强化学习进行商品搜索的项目。论文题为“Virtual-Taobao: Virtualizing Real-World Online Retail Environment for Reinforcement Learning”,详细描述了该项目的实施过程。
在这项研究中,团队没有直接在淘宝平台上训练强化学习模型,而是提出了一种环境构建方法:首先构建虚拟淘宝(Virtual-Taobao)。这个虚拟淘宝是一个从历史客户行为数据中学习的模拟器。通过在虚拟淘宝上训练策略,可以避免实物采样的高成本。实验结果表明,纯粹在虚拟淘宝上训练的策略,通过在线A/B测试,其性能显著优于传统的监督方法,并且无需物理采样成本。
论文链接:https://arxiv.org/pdf/1805.10000.pdf。研究人员希望这项工作能够为在复杂物理环境中应用强化学习提供新的启示。
2 文章的主要贡献
为了提高仿真精度,我们提出了用于分布匹配的客户特征生成方法——GAN-SD(Generative Adversarial Network for Simulation Distribution)。此外,我们引入了MAIL(Multiagent Adversarial Imitation Learning),以生成更具一般化的客户行为。同时,为了进一步避免模拟器缺陷带来的过拟合,我们提出了ANC(Action Norm Constraint)策略来规范策略模型。
Virtual-Taobao架构专为强化学习构建,并在实验中基于数以亿计的真实淘宝客户记录进行训练。与真实淘宝相比,Virtual-Taobao忠实地还原了真实环境的重要属性。研究表明,在虚拟淘宝上纯粹训练的策略,通过在线A/B测试,其物理采样成本为零,且在现实世界中的性能显著优于传统的监督方法。
3 文章技术的简要说明
在这些场景中直接应用强化学习 (RL) 的一个主要障碍是,当前的RL算法通常需要与环境进行大量交互,这会带来很高的物理成本,如实际的金钱消耗、长时间的实验周期、糟糕的用户体验,甚至可能危及生命(如在医疗任务中)。为了避免这些物理成本,RL训练通常使用模拟器。例如,谷歌在数据中心冷却方面的应用展示了一个成功的案例:使用神经网络模拟系统动态,然后在模拟环境中通过先进的RL算法训练策略。
在淘宝商品搜索项目中,我们采用了类似的方法:构建一个模拟器,即虚拟淘宝 (Virtual-Taobao),并在模拟器中离线训练策略,以实现长期收益最大化。理想情况下,这样获得的策略在真实环境中也能表现良好,或者至少可以为更经济的在线调优提供良好的初始条件。然而,与模拟数据中心动态不同,模拟数亿客户在动态环境中的行为更具挑战性。
我们通过生成客户和交互数据来构建虚拟淘宝。现有的模仿学习方法可以从数据中推导出策略。例如,行为克隆 (Behavior Cloning, BC) 方法通过监督学习从状态-行为数据中学习策略,但需要满足独立同分布 (i.i.d.) 假设,这在RL任务中不总是适用。逆强化学习 (IRL) 方法从数据中学习奖励函数,再根据奖励函数训练策略,放松了i.i.d.假设,但假设环境是静态的,当环境变化时可能会失败。因此,这些方法在构建虚拟淘宝时不太实用。
为了更好地生成虚拟客户,我们提出了GAN-for-Simulating Distribution (GAN-SD) 方法,因为我们发现传统方法(如GMM和GAN)不适合处理这种高维数据。为了生成交互数据,我们提出了多主体对抗模仿学习 (Multi-agent Adversarial Imitation Learning, MAIL) 方法。MAIL同时学习客户策略和平台策略,采用了GAIL的思想,使用生成对抗框架训练一个鉴别器来区分模拟交互和真实交互,并将区别信号作为奖励反馈,训练客户策略和平台策略,从而产生更真实的交互。
在生成客户和交互数据后,虚拟淘宝就完成了,可以用于训练平台策略。然而,我们注意到RL算法的强大足以过拟合虚拟淘宝的不足,即在虚拟环境中表现良好但在现实中表现差。因此,我们提出了行动规范约束 (Action Norm Constraint, ANC) 来规范策略。
综上所示,整个过程用到了三种算法:
- GAN-SD:生成虚拟客户
- MAIL:生成虚拟交互
- ANC:平台策略(RL容易过拟合)
在实验中,我们从数亿条客户记录中构建了虚拟淘宝,并与真实环境进行对比。结果显示,虚拟淘宝成功地重现了接近真实环境的属性。我们利用虚拟淘宝训练平台策略,实现了收益最大化。与传统的监督学习方法相比,虚拟淘宝训练的策略在真实环境下的收益提高了2%以上,且无需物理实验成本。
4 技术的详细说明
商品搜索是淘宝的核心业务,淘宝可以被视为一个与客户交互的搜索引擎系统。淘宝的搜索引擎需要在毫秒级响应数十亿次商品搜索请求,同时客户对商品的偏好也非常多样化。从引擎的角度来看,淘宝平台的工作原理如下:
1)客户访问淘宝并发送搜索请求。
2)搜索引擎对相关商品进行排序,然后显示页面视图 (PV) 以响应搜索请求。
3)客户根据页面视图进行反馈,例如购买商品、浏览下一页或离开淘宝。
4)搜索引擎接收反馈信号,并为下一个PV请求做出新的决定。
淘宝的业务目标之一是通过优化PV显示策略来实现销售量的最大化。由于客户行为会受到之前PV的影响,在优化搜索引擎策略时,将其视为多步骤决策问题,而不是单步监督学习问题,是更为合理的选择。因此,考虑到搜索引擎作为代理,以及客户的反馈作为环境,淘宝中的商品搜索是一个连续决策问题。假设客户只记住有限数量的最新PV,这意味着反馈信号仅受搜索代理的m个历史行为的影响。
如上图所示,淘宝搜索在搜索引擎和客户的视角下具有以下特性:
1)搜索引擎视角:搜索引擎根据客户的搜索请求和之前的反馈信号,进行商品排序并显示PV。
2)客户视角:客户对搜索引擎显示的商品做出反应,其行为(即反馈信号)受到最近m个PV的影响。这些PV由搜索引擎生成,并受到客户最后反馈的影响。
从这个角度来看,搜索引擎和客户互为彼此的环境,二者的策略是耦合在一起的。如果客户只是浏览下一页而没有其他行为,那么搜索引擎记录的客户特征和搜索请求将保持不变。如果客户发送了另一个请求或离开淘宝,记录状态就会发生变化。
考虑到客户对环境更为敏感,我们对客户行为进行了特别设计。客户行为受其想要的内容 (S) 和看到的内容 (A) 的影响,其中S是引擎观察结果,即包含请求的客户特征,A是引擎动作,即向客户显示的页面视图。由于顾客的购买意图会随浏览页数的变化而变化,我们设Sc = S×A×N,其中N表示页面索引空间。
总结来说,淘宝商品搜索是一个复杂的连续决策过程,涉及搜索引擎和客户之间的动态交互。通过合理的设计和优化,我们可以提高搜索引擎的效率,从而最大化销售量。
4.1 GAN-SD:生成客户特征
为了构建虚拟淘宝,首先需要生成客户特征,即对用户 Uc进行采样,包括来自 Pc的请求,以触发交互过程。生成的客户分布应与真实分布相似。然而,在高维空间中学习分布是一个极具挑战性的任务。像高斯混合模型(GMM)这样的经典方法很难实现这种相似分布。
众所周知,GAN(生成对抗网络)框架在生成接近于原始数据的样本方面表现出色,尤其在生成图像方面取得了巨大成功。然而,传统的GAN判别器虽然能够判断某个实例是否来自真实世界,但它们缺乏捕获整体客户分布架构的能力。为了解决这一问题,并生成分布而不是单个实例,我们提出了用于模拟分布的生成对抗网络(GAN-SD),其算法如算法1所示。
GAN-SD与传统的GAN类似,由生成器G和判别器D组成。在GAN-SD中,判别器的主要目标是通过最大化特定的目标函数来有效区分生成的数据和训练数据。而更新后的生成器则通过最大化另一目标函数,利用KL散度和熵约束,从真实数据中学习更丰富的指导信息。这使得GAN-SD能够生成比传统GAN更优秀的分布。
GAN-SD(用于模拟分布的生成对抗网络)和传统的GAN在应用和设计目标上存在一些关键区别。以下是对这些差异的详细解释:
传统的生成对抗网络 (GAN) 主要包括两个部分:生成器 (Generator) 和判别器 (Discriminator)。其工作流程如下:
- 生成器 (G):从随机噪声中生成数据样本,尝试骗过判别器。
- 判别器 (D):试图区分真实数据和生成器生成的数据样本。
传统GAN的训练目标是让生成器生成的样本尽可能接近真实数据分布,而判别器尽可能准确地区分真实样本和生成样本。具体步骤如下:
GAN-SD的改进之处:
4.2 MAIL:生成交互过程
在用户策略是未知的情况下同时训练customer policy 和 engine policy,因为不知道customer reward function,所以采用IRL(模仿学习中的一种算法)去生成决策模型。
通过模拟客户策略在虚拟的淘宝平台上生成客户与平台之间的互动是本文的目标。文章采用基于GAIL思想的多智能体对抗模仿学习(MAIL)方法来实现这一目标。GAIL允许智能体在训练期间与环境进行交互,并且奖励函数在训练过程中不断优化。需要注意的是,在GAIL的训练过程中,智能体可以访问环境。然而,训练客户策略时需要将淘宝平台视为未知或动态环境。
MAIL与在静态环境中训练单一智能体策略的GAIL有所不同,它是一种面向多智能体的训练策略,适用于客户策略和平台引擎策略的训练。通过这种方法,生成的客户策略可以包含多种搜索引擎策略。
MAIL算法同时训练两种策略——代理和环境(平台),只需使用历史数据而无需访问真实环境。以下是MAIL算法的伪代码示例:
MAIL(Multi-Agent Imitation Learning)利用了模仿学习技术,并且涉及多智能体的训练方法。这种方法借鉴了GAIL(Generative Adversarial Imitation Learning)的理念,但在实现上有所不同。GAIL通过直接从专家数据中学习策略,首先学习专家数据的奖励函数(通过IRL,Inverse Reinforcement Learning),然后使用强化学习方法学习到与专家策略相近的策略。
而MAIL则需要训练两个智能体(agents)。这两个智能体可以是互相对抗的,也可以是协作的,彼此之间进行学习和优化。MAIL的目标是通过模仿学习技术,同时训练多个智能体,使它们能够在多智能体环境中学习有效的策略。通过这种方法,能够同时得到推荐策略和客户行为策略。
4.3 ANC:动规范约束
动规范约束(Action Norm Constraint, ANC),目的为了减少虚拟淘宝的过拟合。上一步使用IRL,会导致学到的策略和历史策略一样,即没有提升。提出用于控制所采取行动的范数的约束方法。
所采取行动的范数大于大多数历史行为的范数时,加上惩罚。
5 实验设定及结果
为了验证 “虚拟淘宝” 的效果,我们使用以下量度指标:
总营业额(TT):所售商品的总价值。总量(TV):销售商品的数量。购买页面的购买(R2P):产生购买行为的 PV 数量占总 PV 的比例。
图 学习后的顾客分布的对比
图 真实淘宝和虚拟淘宝之间的 R2P 对比
本文在线实验中采用了全部测量方式。在离线实验中只使用了 R2P 方法,因为我们没有对客户数量和商品价格做出预测。了便于在真实环境和虚拟环境之间比较这些指标,我们提前在真实环境(特别是淘宝网的在线 A/B 测试)中部署了随机引擎策略,并收集了相应的轨迹作为历史数据(约 4 亿条记录)。本文没有假设生成数据的引擎策略,也就是说,在构建虚拟环境时,可能采用的是任何未知的复杂模型。
表 虚拟数据和真实数据之间的 KL 分歧
表 采用行为克隆和 MAIL 算法的模拟器随时间的 R2P 性能提升
6 结论
为了解决淘宝网站中面向商品搜索的强化学习的高成本问题,本文提出了一个 “虚拟淘宝模拟器”,根据历史数据进行训练的。首先通过 GAN-SD 生成虚拟客户,并通过 MAIL 生成虚拟交互过程。研究结果表明,“虚拟淘宝” 能够忠实反映真实环境中的特征。
本文提出通过 ANC 策略训练性能更高的平台策略,让新的策略具备比传统监督学习方法更好的真实环境下的性能。“虚拟淘宝” 具备实际应用意义,也颇具挑战性。希望这项工作能够为将强化学习应用于复杂物理任务提供一些启示。
7 参考
https://blog.csdn.net/strawberry47/article/details/124558046
https://baijiahao.baidu.com/s?id=1626945450349711651&wfr=spider&for=pc