///又是一篇完全看不懂的文章,泪目了。唯叹一声,道路阻且长~~~
原文标题:“SIGIR 2020 | 知识图谱上推荐推理的模仿学习框架”
原文地址:https://www.msra.cn/zh-cn/news/features/sigir-adac
原文作者:赵康智、王希廷、谢幸
编者按:尽管知识图谱推理的发展前景广阔,但在收敛性和可解释性上仍存在一定的问题。微软亚洲研究院的研究员利用一个基于元启发式方法的示例路径抽取方法来以较低的标记代价提取示例路径集合,进而提出了一个对抗的 Actor-Critic 模型来进行示例路径指导下的路径搜索。实验结果表明,这一方法在推荐准确性和可解释性方面均优于最新的基线方法。
知识图谱推荐推理
知识图谱如今被广泛用于提高推荐算法的准确性方面。同时,知识图谱上用户-物品的多跳连接关系也赋予了系统进行推荐推理(Recommendation Reasoning)的能力,让图谱上的路径可以用来表示推荐某个物品的具体原因。例如,在向用户 Bob 推荐“Acalme Sneaker”这双鞋时,推荐的原因可以从如下连接关系中推理得到:
这条路径说明推荐“Acalme Sneaker”给 Bob,是因为 Bob 曾经购买过同品牌(Nike)的鞋 Revolution 5 Running Shoe。
与基于自然语言的解释相比,这种知识图谱推理很少得出关于物品的错误论断,例如错误地描述物品的品牌或生产商。这是因为路径上的边都是知识图谱中已经确为事实的知识。另外,知识图谱推理能够忠实地反映出推荐模型的工作机理,这样就增加了用户的信任度和满意度。
知识图谱推理尽管有很好的发展前景,但是仍然存在着巨大的研究挑战。传统的推荐方法侧重于根据用户的偏好,为给定的候选物品集合进行打分,而知识图谱推理还需要在复杂的知识图谱中识别可行的候选路径(路径查找)。现有研究主要的重心在前者,常常使用缺乏有效监督的蛮力算法来进行路径查找,导致了算法在收敛性和可解释性方面的问题。
收敛性:现有的方法缺少有效地指导和监督路径查找的机制。例如,现有的穷举搜索的方法可以枚举知识图谱上所有可能的候选路径,但这在大规模的知识图谱上是不可行的。REINFORCE 通过路径采样得到稀疏的奖励信号,来逐渐地改进策略。由于奖励信号的稀疏性和知识图谱巨大的动作空间,使得这种反复试验的方法收敛性较差。
可解释性:现有的方法仅优化推荐准确度这一个目标,无法保证生成的路径有较高的解释性。连接同一用户-物品组合可能有多条路径导致相同的推荐准确性,而某些路径作为推荐原因时的说服力并不强。为了实现良好的可解释性,将用户真正感兴趣的实体和关系类型纳入路径当中十分重要。同时,除了在路径中纳入上述的实体和关系类型,路径本身的类型对可解释性也很重要。例如,考虑以下两种路径类型:
“看过商品 A 的用户也看过”这种类型的路径在说服力上就弱于“买过商品 A 的用户也买过”的路径类型。
为了解决上面的问题,本文尝试通过引入不完善的示例路径(Imperfect Demonstration Paths)来解决这些问题。文中介绍了如何使用极少标注快速得到示例路径,还设计了一个基于模仿学习的知识图谱推理框架,从而使示例路径这样的弱监督信号可以和增强学习中的稀疏奖励信号自然结合。在这个框架的基础上,我们提出了对抗的 Actor-Critic(Adversarial Actor-Critic,ADAC)模型来进行示例路径指导下的路径搜索。实验表明,该方法比现有的方法收敛得更快,同时能够获得更好的推荐准确性和可解释性。
示例路径抽取
为了得到对知识图谱推理有用的不完善的示例路径,我们提出了一个基于元启发式方法的抽取方法。元启发式方法是“可被用来定义启发式方法的概念”,常被用来解决组合优化问题。通过指定示例路径需要的属性,来定义元启发方法。这些属性被进一步用来定义示例路径抽取的启发式规则。具体来说,考虑以下三种属性:
P1:可得性。示例路径通过较低的标记代价得到。
P2:可解释性。示例路径比随机采样得到的路径更有解释性。
P3:准确性。示例路径指向准确的推荐结果。例如,该路径能够连接用户和他/她交互过的物品。
只要满足上述三个属性,抽取的示例路径就被认为是有效的,即使它们是稀疏而且有噪声的(不完善)。基于这些属性,我们定义了三种抽取示例路径的启发式规则。
最短路径。研究表明,精炼的解释降低了用户的认知负担,同时被认为是更具解释性的。因此用户-物品组合之间更短的路径比随机采样的连接更具解释力(P2)。为了保证准确性(P3),我们仅考虑连接用户 u 和他交互过的物品 v_u 的路径作为示例路径。具体而言,给定(u, v_u),首先从知识图谱上去除 u 和 v_u 之间观察到的交互。这样就得到了一个新的知识图谱。随后将 G 视为无权重的图,并使用 Dijkstra 算法来自动生成 u 和 v_u 之间的最短路径(P1)。将生成的最短路径作为示例路径。之后对所有用户和其交互过的物品重复这个过程,来得到一组示例路径。
元路径。元路径(Meta-Path)是实体类型和关系构成的序列。在知识图谱推理中,元路径自然对应着元级别的解释策略。通过提供元路径,就可以得到理想的解释策略。我们的框架是通过极少量(1~3条)人工定义的元路径来提高模型性能(P1)。只要这些元路径被认为比随机采样的元路径更具解释力,他们就应当是有效的(P2)。与现有的基于元路径的方法相比,由于不需要上述预定义的元路径是完备的或是最优的,所以这一方法可以显著地减少人工标注的成本。之所以能够使用这些并不完善的元路径作为输入,是因为我们利用了元路径来指导路径搜索,而非限制搜索空间。为了基于这些预定义的元路径生成示例路径,我们在知识图谱上进行了有限制的随机游走,将每个用户 u 作为随机游走的起点,然后仅采样那些元路径属于预定义集合的路径。在所有采样得到的路径中,只保留那些通向用户交互过物品的路径,并将其作为示例路径(P3)。
兴趣路径。一个更具解释力的推理路径应当在实体级别符合用户的兴趣,比如路径中包含用户感兴趣的实体。在一些数据集中,得到实体级别的用户兴趣相对比较容易。例如,在包含用户评论的数据集中,可以通过查找实体是否出现在用户的评论中,来自动判断路径上的实体是否符合用户的兴趣(P1)。在这种情况下,使用随机游走得到一组路径,并查看每条路径中的实体是否多数符合用户兴趣,并仅保留那些符合用户兴趣的路径(P2),同时,去除那些没有将用户与其交互过的物品连接起来的路径,以保证准确性(P3),并将剩余路径作为示例路径。
推荐推理的模仿学习框架
我们提出了一种能够同时利用含有用户交互关系的知识图谱和提取的示例路径的方法。模型要解决的主要问题,是如何在一个统一的框架内,对不完善的示例路径、观察到的交互关系和知识图谱上的隐含事实进行高效地建模。为了实现这一目标,我们设计了对抗 Actor-Critic(ADversarial Actor-Critic,ADAC)模型,综合应用了基于 Actor-Critic 的强化学习和对抗模仿学习。
图1:对抗 Actor-Critic 模型进行示例路径指导下的路径搜索
如图1所示的模型框架。其中,知识图谱是马尔科夫决策过程环境(MDP environment)的一部分。Actor 用来学习路径搜索策略,它与 MDP 环境进行交互,从而得到知识图谱上的搜索状态(State)和可能的行为(Action)。通过环境给出的奖励(reward)反馈 𝑅_𝑒,𝑡,Actor 判断现在的策略是否是用户感兴趣的。为了进一步集成示例路径,我们设计了一个对抗模仿学习模块(蓝色部分),包含有两个鉴别器(Discriminator)。鉴别器用来区分专家路径和 Actor 生成的路径,而 Actor 通过模仿专家示例路径,来“混淆”鉴别器,使它更难作出区分。当动作路径与专家示例路径在元路径级别(Meta-path Level)相似和路径级别(Path Level)相似时,模仿学习模块就会分别给 Actor 以更高的元路径奖励 𝑅_𝑚,𝑡 及路径奖励 𝑅_𝑝,𝑡。这样就得到了三种类型的奖励,𝑅_𝑒,𝑡、𝑅_𝑚,𝑡 和 𝑅_𝑝,𝑡。它们进一步由 Critic 建模,来精确地预测每个动作的价值。通过奖励梯度的无偏估计,学得的价值信息就用来训练 Actor。
Actor 网络构建。Actor 学习一个路径搜索策略,它计算的是在状态和可能的动作空间的条件下,动作的条件概率分布。我们使用全连接层和 Softmax 函数来建模 Actor 网络。
对抗模仿学习。对抗模仿学习模块包含两个部分:路径鉴别器和元路径鉴别器。路径鉴别器 𝐷_𝑝 判断在每个时间 𝑡 时,Actor 是否能够生成一个与示例路径相似的路径段,元路径鉴别器 𝐷_𝑚 通过比较元路径,来判断 Actor 所采用的总体解释策略是否与示例路径的策略相似。路径鉴别器与元路径鉴别器的损失函数和得到的奖励有相似的形式:
Critic 网络构建。Critic 的目标是高效地建模来自强化学习(即 MDP 环境)和模仿学习(即鉴别器)的奖励信息。给定状态, Critic 网络计算每个动作 𝑎_𝑡 的价值为 Q_ϕ (s_t,a_t),并利用时间差分方法来学习 Critic 网络。首先根据贝尔曼方程计算学习目标:
其中 𝑅_𝑡 是混合奖励,它一方面激励路径搜索策略,使之搜索到与示例路径更相似的路径,另一方面让策略得到更高的推荐准确性。之后,Critic 通过最小化如下 TD 误差(TD Error)来更新参数:
给定 𝑄_𝜙(𝑠_𝑡,𝑎_𝑡),Actor 再通过最小化以下损失函数来学习参数:
性能评测
我们在亚马逊三种不同的物品类别上验证了提出的模型:Beauty(美妆产品)、Clothing Shoes and Jewelry(服饰鞋帽)和 Cell Phones and Accessories(手机及配件)。这里为了公平只用了最短路径得到示例(没有额外人工标注)。实验结果表明,与基线方法相比,Actor-Critic 方法在推荐准确性方面取得了更好的结果。
表1:推荐准确性比较
为了评估推理路径的可解释性,我们使用真实的评论文本设计了两个评价指标。设计可解释性评价指标的基本思想是,用户发表的真实评论文本揭示了用户-物品之间产生交互的原因。因此,如果一个推理路径包含很多真实评论中提到的词语,那它应当有很好的可解释性。具体而言,对每个推荐正例,过滤掉评论中出现频率大于5000或者 TF-IDF 得分小于0.1的词语,将剩下的词语作为真实词语。然后将路径中的实体集合起来,并按照它们的频率进行排序,将实体类型是 Word、Brand 或者 Category 的实体,提取其字符串作为抽取的解释词语。我们通过比较推理路径抽取的解释词语和真实词语的相似程度来评价可解释性。同时,也基于匹配词语使用精确率(Precision)和召回率(Recall)来评价可解释性。
表2:可解释性比较
比较 ADAC 在 Beauty 和 Clothing 数据集上的收敛性可以看到,ADAC 通过有效利用示例路径在路径级别和元路径级别的信息实现了高效地收敛。
图2:收敛性比较
我们还对比了使用不同种类的示例路径对模型准确性和可解释性的影响。图3展示了使用不同示例路径得到的推理路径,可以看到利用我们的模仿学习框架,模型不仅能够找到与示例路径相同类型的推理路径,还能泛化到其它种类的路径上来。
图3:使用不同示例路径生成的推理路径
总结
本文设计了一种基于模仿学习的知识图谱推理框架,来为用户进行可解释推荐,它解决了知识图谱推理时遇到的收敛性和可解释性问题。首先利用一个基于元启发式方法的示例路径抽取方法来以较低的标记代价提取示例路径集合。然后提出了一个对抗的 Actor-Critic 模型,进行示例路径指导下的路径搜索。实验结果表明,这一方法在推荐准确性和可解释性方面均优于最新的基线方法。
了解更多技术细节,请查看论文
Leveraging Demonstrations for Reinforcement Recommendation Reasoning over Knowledge Graphs