解决赌博机问题的通用技术框架

4 阅读5分钟

赌博机问题是指智能体在与环境交互时,试图同时最大化某种奖励并学习如何最大化该奖励的问题。其名称来源于赌徒试图发现赌场中哪台老虎机(即“独臂强盗”)能提供最佳赔付,同时尽量减少投入到中奖概率较低机器上的资金。

赌博机问题出现在广泛的背景中,但设计和部署机器学习系统来解决它们通常过于复杂,难以实用。因此,我们开发了一个简单、灵活的框架来解决赌博机问题,该框架使我们能够将强大的统计工具的优势带到那些影响力不如某中心主页内容排序高,但仍能改善客户体验质量的应用中。

在今年的信息与知识管理国际会议(CIKM)上,我们展示了该框架的两个应用,作为其灵活性和易用性的初步证明。在后续工作中,我们还将该框架应用于其他问题。

第一篇 CIKM 论文是关于学习排序问题,即确定向客户展示项目列表的顺序。经典的学习排序问题侧重于对搜索结果进行排序,但同样的方法适用于任何信息呈现方式,例如网页布局或音乐推荐排序。

第二篇论文则探讨了学习排序在自然语言理解(NLU)中的一个具体应用,类似于某语音助手在处理客户请求时所做的工作。当一个话语有多种可能的 NLU 解释时,学习排序使我们能够为特定客户选择最佳的一个。例如,如果客户对语音助手说“播放《月之暗面》”,则不清楚这是指平克·弗洛伊德乐队的专辑还是李尔·韦恩的歌曲。NLU 模型会输出按概率评分的可能解释列表,而我们的系统则根据个别客户的收听历史对这些列表进行重新排序。

我们通过使用学习排序方法来确定某音乐服务向客户呈现音乐推荐的顺序,对该方法进行了测试。与使用矩阵分解的学习排序算法相比,我们的方法使客户选择推荐歌曲进行播放的频率提高了 7.6%,所选歌曲的收听时长增加了 7.2%。

同样,我们在语音音乐请求上测试了 NLU 重新排序系统,将接受的播放作为歌曲被正确选择的隐式信号。重新排序仅限于流量中相对较小的一部分,即那些过去顶级 NLU 解释效果不佳的请求。在这些请求上,我们观察到接受的播放量显著增加,增幅在 50% 到 70% 之间。

行动在哪里?

我们的框架将赌博机环境中的每次交互建模为给定有限行动列表的排序。一个行动可以是播放一首歌曲、显示一个搜索结果,或是在屏幕特定位置显示一个布局元素。

我们将每个行动建模为一个固定长度的向量。这允许后续添加创建模型时未知的行动。该向量还可以包含上下文信息,这可以使模型在不同情况下做出不同的选择。例如,如果客户对语音代理说“播放 exile”,模型可能会将泰勒·斯威夫特的歌曲“Exile”或 Exile 乐队的音乐排得更高,具体取决于上下文信息所反映的客户收听历史。

模型呈现其行动列表后,会收到关于一个或多个行动的反馈。如果语音代理播放了一首歌,而客户在几秒钟后将其切断,这表明对歌曲选择不满意。如果一个网站向客户展示了一个歌曲选项列表,而客户点击了其中三个,这表明这些歌曲本应位于列表顶部。

在赌博机设置中,目标是既探索环境——了解哪些行动能带来最大奖励——又利用已获得的知识——最大化奖励。每次与环境交互后,智能体都会获得新的信息,以决定下一个列表的排序。其理念是选择能够最好地管理探索/利用权衡的排序序列。

在 CIKM 论文中,我们采用了两种著名的学习算法来适配我们的赌博机模型:上置信界(UCB)算法和汤普森采样。但该框架足够灵活,也允许使用其他算法。

学习排序论文中,我们扩展了模型以考虑位置偏差,即项目在列表中的位置对客户选择决策的影响:列表顶部的项目往往被更频繁地选择,即使它们不是与客户查询最匹配的。因此,我们将项目被选择的概率建模为其与查询的相关性和其在列表中的位置的组合。

NLU 解释论文中,关键的适配是确定将哪些上下文信息包含在行动向量中。待播放歌曲或专辑的受欢迎程度是其中一个因素,此外,基于收听历史反映的客户对艺术家的“亲和力”也是一个因素。

感兴趣的读者可以查阅论文以了解更多细节。但这只是我们用来改善客户体验质量的一个框架的两个示例性应用。FINISHED