Unified Conversational Recommendation Policy Learning via Graph-based Reinforcement Learning

以下内容纯属个人见解,欢迎大家交流。
发布于2021 SIGIR

1 motivation

1.1 问题

CRS中三个决策问题:询问哪些属性、推荐哪些项目以及何时询问或推荐。现有的方法主要针对分离会话和推荐组件的CRS中这三个决策问题中的一个或两个,这限制了CRS的可扩展性和通用性,缺乏一个稳定的训练过程。

在MCR场景中,CRS通常被定义为一个多步骤的决策过程,并通过政策学习的强化学习(RL)方法来解决。如图1(a)所示,基于rl的IRS只需要学习策略来决定推荐哪些项目。然而,在CRS中情况更加复杂,因为有两个组件需要被一致地考虑,即会话和推荐组件。现有方法CRM和EAR采用策略梯度来改进何时询问和询问哪些属性的策略,而推荐决策是由外部推荐模型做出的。为了减少策略学习中的行动空间,另一种最先进的方法SCPR只考虑学习何时询问或推荐的策略,而两个孤立的组件负责决定询问什么和推荐什么。这两种CRS的策略学习框架如图1(b)和1(c)所示:


图1

尽管这些方法很有效,但在实际应用中仍有一些问题需要解决:(i)现有的CRS方法训练的模型缺乏对不同领域或应用的普遍性,因为CRS需要考虑三种不同的决策过程,包括询问哪些属性,推荐哪些项目,以及何时询问或推荐。训练离线推荐模型或使用综合对话历史对政策网络进行预训练需要额外的努力。(ii)政策学习难以集中,因为对话和推荐组成部分是孤立的,在培训过程中缺乏相互影响。

1.2 解决方法

为了解决这些问题,在本研究中,我们将上述三个独立的CRS决策过程作为一个统一的策略学习问题来利用CRS的最终目标,并在训练过程中填补推荐和会话组件之间的空白。这种统一会话推荐策略学习(UCRPL)旨在学习统一策略来决定行动,在每个会话回合询问属性或推荐项目,以最大化整个MCR过程的累积效用。本文提出的CRS统一策略学习概述如图2所示。


图2

然而,UCRPL问题带来了两个挑战:(i)如何系统地结合会话和推荐组件来实现统一的策略学习?(ii)如何处理样本效率问题?随着UCRPL中的行动空间变得非常大,包括所有可用的属性和项目,它需要大量的交互数据来学习最优策略。幸运的是,图结构捕获了不同类型节点(即用户、项目和属性)之间丰富的相关信息,使我们能够发现用户对属性和项目的协作偏好。因此,我们可以利用图结构将推荐和会话组件集成为一个有机整体,其中会话会话可以被视为图中维护的节点序列,以动态地利用会话历史来预测下一个回合的行动。另一方面,虽然图的连通性也可以通过路径推理来消除无效动作,但仍有大量候选动作有待搜索。由于用户可能不会对所有项和属性都感兴趣,所以我们可以关注潜在的重要内容提高UCRPL的样本效率。

为此,我们提出了一个新的自适应的基于图的强化学习框架,即统一会话推荐(UNICORN)。具体来说,由于CRS的进化特性,我们利用动态加权图模型用户之间不断变化的相互关系,在交谈中项目和属性,考虑基于马尔可夫决策过程(MDP)同时处理环境决策的推荐和谈话。然后,我们集成了图增强表示学习和序列对话建模来捕获用户对物品和属性的动态偏好。此外,还设计了两种简单而有效的动作选择策略来处理样本效率问题。我们采用基于偏好的项目选择和基于加权熵的属性选择策略来只考虑潜在的重要行为,而不是枚举整个候选项目和属性集。

2 模型

2.1 graph-based MDP environment

MDP环境负责通知代理当前状态和可能采取的操作,然后根据当前策略与观察到的用户交互的匹配程度奖励代理。形式上,MDP环境可以用元组



分别表示state space, action space, state transition function, reward function

2.1.1 state

对于用户𝑢,我们考虑两个主要因素:



分别是t时刻都对话历史和动态的子图,其中:



分别表示用户u喜欢的属性,拒绝的属性和物品

2.1.2 action

根据当前的状态s_t,agent会采取一个行为a_t,推荐候选物品中的 一个,或者是询问候选属性中的一个

2.1.3 Transition

根据s_t状态采用的行动a_t,根据用户的反馈,获取到下一时刻的状态s_{t+1}.

2.1.4 reward

(1)𝑟_{rec\_suc},当用户接受推荐项目时,会得到强烈的积极奖励;
(2)𝑟_{rec\_fail},当用户拒绝被推荐的物品时,给予消极奖励;
(3)𝑟_{ask\_suc},当用户接受询问属性时的轻微正面奖励,
(4)𝑟_{ask\_fail},当用户拒绝询问的属性时,一个消极的奖励
(5)𝑟_{quit},当玩家到达最大回合数时将获得强烈的负奖励。

2.2 Graph-enhanced State Representation

2.2.1 Dynamic Weighted Graph Construction


2.2.2 Graph-based Representation Learning


2.2.3 Sequential Representation Learning

除了所涉及的用户、项目和属性之间的相互关系外,还期望CRS在当前状态下建模会话历史记录。与以往采用启发式特征进行会话历史建模的研究[12,14]不同,我们采用Transformer编码器[29]捕获会话历史的顺序信息,并关注决定下一步行动的重要信息。如[29]所述,每一层变压器由三个组件组成:(i)层的规格化定义为LayerNorm(·)。(ii)多头关注被定义为MultiHead(𝑸,𝑲,𝑽),其中𝑸,𝑲,𝑽分别是查询,键,值。(iii)定义ReLU激活的前馈网络为FFN(·)。以𝑙-th层为例


在我们的例子中,输入序列𝑿_{(0)}是在学习到的基于图的表示的当前会话历史中接受的属性。
最终,经过L_s个transformer层后,s_t的表示为:

2.3 Action Selection Strategy

一个较大的动作搜索空间会在很大程度上损害策略学习的性能。为此,我们提出了两种简单的策略来提高候选动作选择的样本效率。

2.3.1 Preference-based Item Selection

一般来说,对于要推荐的候选项,我们可以只考虑从最适合用户首选项的少数候选项中做出推荐,因为用户可能不会对所有项都感兴趣。为了实现这一点,我们根据w_v^{(t)}选择top-𝐾𝑣候选项目。

2.3.2 Weighted Entropy-based Attribute Selection.

而对于要询问的候选属性,期望的属性应该不仅能够更好地消除候选项的不确定性,而且能够编码用户偏好。我们采用加权熵作为对候选属性进行裁剪的准则:



我们也选择了top-𝐾𝑝候选属性

2.4 Deep Q-Learning Network

在获得图增强状态表示和候选动作空间后,我们引入深度q -学习网络(DQN)[21]进行统一会话推荐策略学习。我们进一步实施了一些技术来增强和稳定DQN的训练。算法1给出了统一会话推荐器的训练过程


算法1

2.4.1 Dueling Q-Network

按照标准假设,延迟奖励被每个时间步𝛾的一个因子贴现,我们将q值𝑄(𝑠_𝑡𝑎_𝑡)定义为基于状态𝑠_𝑡和行为𝑎_𝑡的预期奖励。如图3最右部分所示,dueling Q-network使用两个深度神经网络分别计算值函数𝑓𝜃𝑉(·)和优势函数𝑓𝜃𝐴(·)。那么q函数的计算方法为:



具有最优策略𝜋∗预期reward的最优q函数𝑄∗(𝑠𝑡,𝑎𝑡)遵循Bellman方程如下

2.4.2 Double Q-Learning with Prioritized Experience Replay

在MCR过程的每个片段中,在每个时间步𝑡,CRS agent通过描述的图增强状态表征学习获得当前状态表示𝑓𝜃𝑆(𝑠𝑡)。然后agent从候选行动空间A𝑡中选择一个行动𝑎𝑡,该行动空间是通过描述的行动选择策略获得的。这里我们结合𝜖-greedy方法来平衡动作采样中的探索和开发(即根据最大q值(概率1−𝜖)选择一个贪婪动作,随机动作(概率𝜖))。
然后,代理将从用户的反馈中获得奖励𝑟𝑡。根据反馈,当前状态𝑠𝑡转换为下一个状态𝑠𝑡+1,并相应地更新候选动作空间A𝑡+1。然后将体验(𝑠𝑡,𝑎𝑡,𝑟𝑡,𝑠𝑡+1,A𝑡+1)存储到重放缓冲区D中。为了训练DQN,我们从D中采样小批量的体验,并将以下损失函数最小化:



为了解决传统DQN中的高估偏差问题,我们采用了double q-learning方法,该方法将目标网络𝑄’作为在线网络的周期副本。将在线网络的目标值修改为:



其中𝜃𝑄’为目标网络的参数,通过软分配更新为

此外,传统的DQN从重放缓冲区均匀采样。为了更频繁地对那些有很多东西需要学习的重要转换进行采样,我们采用了学习潜力的优先重放代理,它以相对于绝对TD错误的𝛿的概率对转换进行采样

2.4.3 Model Inference

在学习到的UNICORN模型中,给定一个用户和他/她的会话历史,按照同样的过程得到候选行动空间和当前状态表示,然后根据最大q值决定下一步行动。如果所选操作指向某个属性,系统将询问用户对该属性的偏好。否则,系统将向用户推荐q值最高的top-𝐾项

3 实验


其中,hDCG(T,K)定义为:



其中𝑇和𝐾表示每个回合的会话回合数和推荐项目,𝑟(𝑡,𝑘)表示结果在回合𝑡的相关性和位置𝑘。然后可以从hDCG@(𝑇,𝐾)中提取hNDCG@(𝑇,𝐾),方法与原始NDCG@𝐾相同。由于MCR中每个会话只有一个目标项目,所以我们只需使用hDCG@(𝑇,𝐾)进行评估。hNDCG@(𝑇,𝐾)背后的直觉是,成功回合的回合数越少,对CRS越有利,而目标物品在成功回合的推荐列表中排名越高。



©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,732评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,496评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,264评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,807评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,806评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,675评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,029评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,683评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,704评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,666评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,773评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,413评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,016评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,978评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,204评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,083评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,503评论 2 343

推荐阅读更多精彩内容