热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

统一知识图谱学习和建议:更好地理解用户偏好

本文介绍了一种将知识图谱纳入推荐系统的方法,以提高推荐的准确性和可解释性。与现有方法不同的是,本方法考虑了知识图谱的不完整性,并在知识图谱中传输关系信息,以更好地理解用户的偏好。通过大量实验,验证了本方法在推荐任务和知识图谱完成任务上的优势。

一、摘要

将知识图谱(KG)纳入推荐系统有望提高推荐的准确性和可解释性。然而,现有方法主要假设KG是完整的并且简单地在实体原始数据或嵌入的浅层中转移KG中的“知识”。这可能导致性能欠佳,因为实用的KG很难完成,并且KG通常缺少事实,关系和实体。因此,我们认为,当将KG纳入推荐系统时,考虑KG的不完整性是至关重要的。

 

在本文中,我们共同学习推荐模型和知识图完成。与之前基于KG的推荐方法不同,我们在KG中传输关系信息,以便了解用户喜欢某个项目的原因。例如,如果用户观看了由(关系)同一个人(实体)指导的几部电影,我们可以推断出导演关系在用户做出决定时起着关键作用,从而有助于理解用户的偏好。更细的粒度。

 

从技术上讲,我们提供了一种新的基于翻译的推荐模型,该模型专门考虑了将用户翻译成项目的各种偏好,然后通过组合几种转移方案将其与KG完成模型联合训练。对两个基准数据集的大量实验表明,我们的方法优于最先进的基于KG的推荐方法。进一步分析验证了联合培训对推荐任务和KG完成任务的积极影响,以及我们的模型在理解用户偏好方面的优势。我们在https://github.com/TaoMiner/joint-kg-recommender上发布我们的项目。

 



二、介绍

知识图谱(KG)是一种异构结构,以机器可读图形的形式存储世界知识,其中节点表示实体,边表示实体之间的关系。

 

自提出以来,KG在许多领域引起了广泛关注,从推荐[40],对话系统[18,21]到信息提取[3]。专注于推荐,结构知识在提供有关项目的丰富信息方面显示出巨大潜力,为提高推荐系统的准确性和可解释性提供了有希望的解决方案。

 

然而,现有的知识图谱(例如DBPedia [20])远未完成,这限制了转移知识的好处。如图1所示,Robert Zemeckis和Death Becomes Her之间的红色虚线表示缺少关系isDirectorOf。假设用户选择了电影回到未来 I&II和阿甘正传,通过使用KG,我们可以将用户选择的原因归因于导演Robert Zemeckis。在这种情况下,虽然我们已经准确地捕捉到用户对电影的偏好,但由于KG中缺少关系,我们仍然可能无法推荐Death Becomes Her(用户也感兴趣)(参见红色虚线)。因此,我们认为在使用KG进行推荐时考虑KG的不完整性至关重要,更有趣的是,KG的完成能否从改进的用户项交互建模中受益?

 

在本文中,我们建议将联合模型中的推荐和KG完成这两项任务统一起来,以实现相互增强。基本思想是双重的:1)利用KG中的事实作为辅助数据来增强用户 - 项目交互的建模,以及2)基于增强的用户项目建模来完成KG中的缺失事实。例如,我们能够通过相关实体和关系了解用户对导演的偏好;同时我们可以预测Robert Zemeckis是Death Becomes Her的导演,如果有一些喜欢这部电影的用户也喜欢Robert Zemeckis导演的其他电影。

 

尽管许多先前的努力已经在推荐系统中利用了KG [16,29,30,44,46,48],但是很少有工作联合模拟知识图学习和推荐的两个任务。 CoFM [31]是最相似的工作,通过规范化或共享实体和项目嵌入来协调每个任务中的两个潜在向量空间,如果它们指的是相同的东西。但是,它忽略了实体关系在用户项建模中的重要作用,并且无法提供解释能力。

 

在这项工作中,我们提出了一个基于翻译的用户偏好模型(TUP),以便与KG无缝集成。关键思想是在用户和项目之间存在多个(隐含的)关系,这揭示了用户对消费项目的偏好(即原因)。 “偏好”的一个例子是图1中的导演信息,它驱动用户观看电影回到未来I&II和阿甘正传。虽然我们可以预先定义偏好的数量并从用户 - 项目交互数据中训练TUP,但是偏好被表示为潜在的向量,这些向量对于更深入的理解是不透明的。为了赋予偏好以明确的语义,我们将它们与KG中的关系对齐,捕捉项目属性类型在用户决策过程中起关键作用的直觉。从技术上讲,我们将关系嵌入以及从KG学到的实体嵌入转移到TUP,同时训练KG完成和推荐任务。我们将该方法称为知识增强型TUP(KTUP),它共同学习用户,项目,实体和关系的表示。主要贡献归纳如下:

•我们提出了一种新的基于翻译的模型,该模型利用隐式偏好表示来捕获用户和项目之间的关系。

•我们强调联合建模项目推荐和KG完成的重要性,以将偏好表示与知识感知关系相结合,从而赋予模型可解释性。

•我们对前N个推荐和KG完成任务的两个数据集进行了大量实验,验证了联合学习的合理性。实验结果证明了我们模型的有效性和可解释性。



三、相关工作

我们提出的方法包括两个任务:项目推荐和知识图谱补全。在讨论它们之间的关系之前,我们先介绍每个任务的相关工作。

3.1项目推荐

在项目推荐的早期阶段,研究人员专注于仅使用历史交互向目标用户推荐类似的用户或项目,例如协同过滤(CF)[35],分解机[33],矩阵分解技术[19],BPRMF [34]。这里的关键挑战在于提取用户和项目的特征以计算它们的相似性,即基于相似性的方法。

随着神经网络(NN)模型的激增,许多方法将基于相似性的方法扩展到NN,并提出了一种更有效的机制来自动提取用户和项目的潜在特征以进行推荐[7,12-14]。但是,它们仍然存在数据稀疏性问题和冷启动问题。基于内容的方法通过引入各种辅助信息来处理问题,例如上下文评论[9,25],关系数据[10,36]和知识图[6]。附加内容的另一个优点是提高了可解释的能力,以便理解为什么要推荐某个项目。已经发现这对于推荐系统的有效性,效率,说服力和用户满意度很重要[8,39,47]

在辅助信息中,知识图(例如,DBPedia [20])由于其良好的结构和充足的资源而在推荐上显示出巨大的潜力。这种类型的方法主要是基于实体和项之间的给定映射将实体的结构知识从KG转移到用户项交互建模。我们粗略地将它们分为两组:使用KG三元组增加用户 - 项目对数据的方法,以及结合从不同来源学习的项目和实体嵌入的方法。在第一组中,Piao和Breslin [29]提取了从KG(即属性 - 对象,主题 - 属性)驱动的轻量级特征,用于分解机器。张等人[46]通过在用户和项目之间添加购买关系构建统一图表,然后应用transE [2]来建模关系数据。另一方面,第二组中的方法通常使用实体嵌入来提高项目嵌入的质量,如果它们引用相同的东西[16,44]。 Piao和Breslin [30]使用不同的实体嵌入(即node2vec,doc2vec和transE)对推荐结果进行了总结,发现node2vec得到了最大的改进。 CoFM [31]首先将来自用户项建模的实体嵌入的改进考虑为另一个转移任务。但是,上述方法严重依赖于项目和实体之间的对齐。周等人 [48]在KG中引入实体概念来处理对齐的sparisity问题,但仍未考虑实体关系在从KG转移知识方面的重要性。

另一项工作是基于翻译的推荐,受KG表示学习的启发。 它假设项目的选择满足潜在向量空间中的转换关系,其中关系被认为与顺序推荐[11]中的用户相关,或者通过基于记忆的注意隐式建模[37]。 因此,我们通过将用户偏好建模中的N对N问题1视为转换关系来改进这种类型的方法,这将通过从KG转移实体及其关系的知识来进一步增强。

3.2知识图谱补全

已经发现外部知识在许多自然语言处理任务中都是有效的,例如问题回答[45],这加速了知识图图谱的普及。虽然有许多方法可以用于实体[4,5]及其与文本的关系[22],但现有的知识图谱远未完成。最近对KG补全热衷于研究显示出对学习实体和关系的低维表征,同时坚持图的结构知识。我们粗略地将这种表示分类,学习方法分为两组:平移距离模型和语义匹配模型。

TransE [2]首先提出了平移距离模型的核心思想,即两个实体之间的关系对应于它们的向量空间中的平移。虽然它简单而有效,但它有时会令人困惑,因为某些关系可以将一个实体转换为各种实体,即1对N问题。类似地,还存在其他N对1和N对N问题。为了解决这些问题,许多方法通过引入额外的超平面[42],向量空间[23],文本信息[41]和关系路径[22]来扩展TransE。

第二组通过基于相似性的评分函数匹配实体和关系的语义表示来测量事实的合理性。 RESCAL [27]将每个关系表示为捕获实体之间的组合语义的矩阵,并将双线性函数用作相似性度量。为了简化关系矩阵的学习,DistMult [43]将它们限制为对角线,HolE [26]定义循环相关[32]以将关系矩阵压缩为向量,ComplEx [38]为非对称关系引入复数值。另一行方法不是对组合关系进行建模,而是直接引入NN进行匹配。 SME [1]分别学习头部实体和尾部实体的关系特定层,然后将它们馈送到最终匹配层(例如,点生成),而NAM [24]与深层体系结构进行语义匹配。

3.3两个任务之间的关系

项目通常对应于许多字体中的实体,例如书籍,电影和音乐,使得在字幕之间传递知识成为可能。涉及两个任务的这些信息是互补的,揭示了项目之间或用户与项目之间的连通性。就模型而言,这两个任务都旨在对给定查询(即,实体或用户)的候选者以及它们的暗示或明显相关性进行排名。例如,KG完成的目的是为Robert Zemeckis给出明确关系isDirectorOf的人提供正确的电影(例如,Death Becomes Her),而项目推荐旨在为满足某些隐含偏好的目标用户推荐电影。因此,我们能够通过联合模型填补项目推荐和KG完成之间的差距,系统地研究这两个任务如何相互影响。



四、预备工作

在介绍我们提出的方法前,首先正式地定义两个任务以及TransH作为我们模型的知识图谱补全的组件。

 

4.1 任务和记号

项目推荐:给定用户项目交互的表y={(u,i)},我们使用隐式反馈作为协议,每对(u,i)意指用户u∈U消费项目i∈I,目标是为目标用户推荐前N项。

KG补全:知识图谱是由主对象-属性-对象三元组组成的有向图。每个三元组表示存在头部实体eh到尾部尸体等的关系r,由(eh,et,r)定义,其中eh,et∈E是尸体兵器人r∈R是关系。由于知识图谱的不完整性,只是图谱补全是为三元组(eh,et,r)预测缺失的实体eh和et,这也可以被视为推荐目标的前N个实体。

TUP表示项目推荐的模型。 它将用户-项目对的列表Y作为输入,并且在给定偏好p∈P的情况下输出指示你喜欢i的可能性的相关性得分д(u,i; p),其中偏好集P的数量是预定义。 对于每个用户 - 项目对,我们引入偏好,作为两个实体的关系的类似角色。 为了处理N对N问题,我们引入了偏好超平面,并为每个偏好分配了两个向量:wp用于投影到超平面,p用于用户和项目之间的转换。

KTUP是一个多任务架构。 给定KG,Y和一组迭代对齐A = {(i,e)|i∈I,e∈E},其中每个(i,e)意味着我可以映射到给定KG中的实体e。 基于用户u,项目i,偏好p,wp,尸体e,关系r,wr,的联合学习嵌入,KTUP不仅可以输出д(u,i; p),还可以输出分数f(eh,et,r),表明事实为真的可能性。

例3.1. 如图1所示,给定用户,相互作用的电影(例如,回到未来I&II和阿甘正传)以及相关的三元组,KTUP能够(1)找出在电影上isDirectorOf关系的用户偏好。(2)根据诱导的偏好推荐电影“飞越长生”,以及(3)预测三元组中失踪的头部或尾部实体(Death Becomes Her isDirectorOf -Robert Zemeckis)。 上述三个目标不仅要考虑KG中的结构知识,还要考虑用户项目的相互作用。

接下来,我么们简要地介绍一下transH,它在我们的联合模型中作为知识图谱补全的组件。

4.2 用户知识图谱补全的TransH

在坚持结构知识的同时操纵实体的有效方法。 TransE [2]由于其简单性和显着的有效性而被广泛使用。 它的基本思想是学习实体和关系的嵌入,如果在KG中存在三元组(eh,et,r),则满足eh +r≈et。 然而,单个关系类型可以对应于多个头部实体或尾部实体,从而导致严重的1对N,N对1和N对N问题[42]。 因此,TransH [42]学习了以不同关系为条件的实体的不同表征。 它假设每个关系拥有一个超平面,并且头实体和尾实体之间的转换只有在它们投影到同一超平面时才有效。 它定义了三元组的能量分数函数,如下所示:

f (eh, et , r ) =∥ e⊥h + r − e⊥t ∥

f(eh,et,r)得分较低表示三联体可能为真,否则为否。 e⊥h和e⊥t是预测的实体向量:

e⊥h = eh − wTr ehwr (2)

e⊥t = et − wTr etwr (3)

其中wr和r是关系r的两个学习向量,wr表示相应超平面的投影向量,r是平移向量。 ∥·∥表示本文中使用的L1范数距离函数。 最后,TransH的训练鼓励使用基于差额的排名损失来区分有效三元组和不正确的三元组:

其中[·] +≜max(0,·),KG-包含通过随机替换有效三元组中的头部实体或尾部实体而构造的不正确的三元组,并且γ控制正三元组和负三元组之间的边界。



五、 用于项目推荐的TUP

受KG中两个实体之间的上述翻译假设的启发,我们建议TUP明确地模拟用户偏好并将其视为用户和项目之间的转换关系。 给定一组用户 - 项目交互Y,它自动引发对用户 - 项目对的偏好,并且学习偏好p,用户u和项目i的嵌入,满足u +p≈i。 考虑到用户偏好的不确定性和多样性,我们在TUP中设计了两个主要组件:偏好感应和基于超平面的翻译。

5.1 偏好介绍

给定用户项对(u,i),该组件用于从一组潜在因子P中引出偏好。这些因子由所有用户共享,并且每个p∈P表示不同的偏好,其旨在捕获 用户之间的共性作为全局特征,补充了本地关注单个用户的用户嵌入。 与主题模型类似,数字P = | P | 是一个超参数,我们无法提名每个偏好的确切含义。在KG的帮助下,可以自动设置首选项的数量,并为每个首选项分配说明(第5节)。

我们设计了两种偏好归纳策略:一种从P偏好中选择一种的硬方法,以及将所有偏好与注意力结合起来的柔和方式。

5.1.1 硬策略:

我们的硬策略背后的直觉是,当用户对项目做出决策时,只有一个偏好生效。 我们使用Straight-Through(ST)Gumbel SoftMax [17]对给定用户 - 项目对的偏好进行离散采样,利用反向传播的重新参数化技巧,可以在端到端计算模型参数的连续梯度训练。

ST Gumbel SoftMax大致采样来自多分类分布的单热矢量。 假设P路分类分布中属于p类的概率定义为log softmax:

其中πp是得分函数的非标准化输出。 然后,我们从上面的分布中采样一个热矢量z = [z1,...,zP]∈RP如下:

其中д=-log( -log(u))是Gumbel噪声,u由某个噪声分布产生(例如,u~N(0,1))。 噪声项增加了arg max函数的随机性,使得该过程变得等效于绘制一个样本,该样本包含连续的概率分布y = [y1,...yp,...,yP]:其中д=-log(-log(u))是Gumbel噪声,u由某个噪声分布产生(例如,u~N(0,1))。 噪声项增加了arg max函数的随机性,使得该过程变得等同于绘制一个样本,该样本包含连续的概率分布y = [y1,...,yp,...,yP]:

这称为Gumbel-Softmax分布,其中τ是温度参数。 相关证明可以在原始论文中找到。

直通(ST)gumbel-Softmax在前向和后向传播中采用不同的路径,以便保持稀疏性,同时支持随机的下降(SGD)。 在前向传递中,它使如上所述的单热矢量的连续概率分布离散化。 并且在后向传递中,它仅跟随连续y,因此误差信号仍然能够反向传播。 在硬策略中,我们将πp的得分函数定义为用户 - 项对和偏好之间的相似度:

我们使用点积作为相似函数。

 

5.1.2 软策略

实际上,用户可能根据各种因素喜欢项目,这些因素没有明显的界限。 软策略不是选择最突出的偏好,而是通过注意机制组合多个偏好:

其中αp'是偏好p'的注意权重,并定义为与相似度得分成比例:

5.2 基于超平面的翻译

受TransH的启发,我们引入超平面来处理各种偏好。 也就是说,不同的用户可以对不同的项目共享相同的偏好(即,N对N问题),这在实践中是相当普遍的。 显然,对于类似TransE的转换而言,这是令人困惑的:只要喜欢它们的用户都是由于某种偏好(图2(a)),项目的嵌入就很接近,从而导致用户的错误结论 无论用户的偏好是什么,消费者都应该消费另一方。 通过引入如图2(b)所示的偏差超平面来减轻这种限制:i和i'具有不同的表示,并且仅当它们被投影到特定超平面时才是相似的。 因此,我们定义了基于超平面的翻译功能,如下所示:

其中u⊥和i⊥是用户和项目的投影向量,并且是通过诱导偏好p获得的,它与TransH中的关系起着类似的作用:

其中wp是与偏好的诱导过程一起获得的投影向量p:要么使用硬策略拾取相应的投影向量,要么通过在软策略中基于诱导的注意力量来注意添加所有投影向量:

我们通过BPR Loss功能鼓励每个用户的交互项目的翻译距离小于随机项目:

其中Y'包含负面交互,通过随机破坏每个用户的交互项目到非交互项目。

传统方法(例如,BPRMF [34])通过基于用户和项目嵌入来计算标量分数来为用户推荐项目,其指示用户更喜欢该项目的程度。 相反,我们将偏好建模为向量,以便(1)捕获用户之间的共性作为全局潜在特征,与仅仅关注用户的本地特征的用户嵌入相比,以及(2)反映更丰富的语义以获得可解释的能力。



六、通过KTUP联合学习两个任务

  KTUP通过结合实体的KG知识以及关系来扩展基于翻译的推荐模型TUP。直观地,辅助知识补充了项目之间的连通性,作为对用户 - 项目对建模的约束。 另一方面,对用户对项目的偏好的理解应揭示其与某些关系类型和实体相关的共性,这可能在给定的KG中缺失。

 

6.1 KTUP

图3显示了KTUP的整体框架。 左侧是输入:用户项交互,知识图以及项和实体之间的对齐。 在右上角是项目推荐的TUP,而知识图谱补全的TransH在右下角。KTUP通过增强项目和偏好与实体和关系的嵌入来共同学习这两项任务。 我们定义知识增强型TUP翻译功能如下:

其中i⊥是对应实体嵌入e的增强项嵌入i的投影向量:

并且p和wp是翻译向量,并且投影向量通过根据预定义的一对一映射R→P的对应关系嵌入的那些增强。我们获得这两个向量如下:

因此,对于实体和项目,增强项目嵌入包含与用户项目交互互补的项目之间的关系知识,并且改进项目推荐,因为实体嵌入e将结构知识保存在KG中。同时,嵌入e的实体应通过反向传播期间用户和项目的附加连接进行微调。请注意,我们不对两个任务使用组合嵌入,因为它使项目的嵌入与两个任务中的对应实体相同,这实际上降低了我们的模型以共享项目和实体之间的嵌入。对于关系和偏好,关系的使用不仅提供了对可解释性的明确解释,而且在模型层面上进一步更充分地结合了这两个任务。一方面,通过一对一映射,关系标签揭示了每个偏好的含义。例如,关系isDirectorOf显示对导演的偏好,或者主演对电影明星的偏好。另一方面,由于KG的不完整性,许多项目没有对齐的实体,这限制了仅传递实体知识的模型中实体和项目之间的对齐的相互影响。考虑到每个用户 - 项目对都有一个偏好,两个实体之间的关系也是如此,KTUP可以更彻底地优化所有用户,项目和实体。

 

KTUP的框架。 在顶部是项目推荐的TUP,包括两个组件:偏好感应和基于超平面的翻译。 KTUP联合学习TUP和TransH,通过转移实体知识和关系来增强项目和偏好建模。

6.2 训练

我们使用总体目标函数训练KTUP,如下所示:

其中λ是一个超参数来平衡这两个任务。

6.3 SOTA模型的关系

在本节中,我们将讨论KTUP与其他最先进的基于KG的推荐方法之间的关系,以便在第6节中促进对两个任务之间的深入理解。我们选择三个传递实体知识的典型模型在数据层面(CFKG [46]),嵌入层面(CKE [44])和两个方向(CoFM [31])。我们从以下几个方面总结了主要的差异和相似之处:用户偏好的暗示CKE和CoFM可以被视为协同过滤的扩展。这种类型的方法隐含地考虑从用户到项目的偏好并且依赖于它们的嵌入来计算分数(即点积),该分数指示用户喜欢该项目的程度。 CFKG和KTUP明确地对首选项进行建模,并学习行业表示而不是标量来捕获更全面的语义。各种用户偏好CFKG定义了用户和项目之间唯一的购买偏好,这明显受到严重的N对N问题的影响,并且无法通过类似TransE的评分功能来处理它。 TKUP区分不同的用户参数并为每个偏好引入超平面以及每个关系以学习项目和实体的各种表示来自KG CKE和CoFM的转移知识仅侧重于转移实体的知识。 CFKG还通过统一图表以数据集成的方式传递关系。除了实体和项目之外,KTUP根据预定义的一对一映射结合了关系和首选项的嵌入,这带来了推荐机制的可解释能力的另一副产品。



七、 数据集

电影和书籍领域:MovieLens-1m [28]和DBbook2014 2.两个数据集都包含用户及其对电影或书籍的评级,然后通过将项目映射到DBPedia实体(如果有)来对LODRecSys [15,28,29]进行细化。可用的映射。在模拟隐式反馈[40]的大多数项目推荐工作之后,我们将现有评级视为积极的互动,并通过随机破坏项目来产生负面评价。为了从DBPedia收集相关事实,我们只考虑那些与具有映射项的实体直接相关的三元组,无论实体用作哪个角色(即主体或对象)。然后我们通过以下方式预处理这两个数据集:过滤掉低频率用户和项目(即,在MovieLens中低于10,在DBbook中低于5),过滤掉不常见的实体(即两个数据集中低于10),切断不相关的关系并手动合并类似的关系。表1显示了MovieLens-1m和DBbook2014数据集的统计数据3。预处理后,Movielens-1m中有6,040个用户和3,230个项目,998,539个评级,每个用户的平均评分数为165,空间率为94.9%。 DBbook2014中的数据sparisity问题更严重。它由5,576个用户和2,680个项目组成,共有65,961个评级,其中每个用户的平均评分数为12,并且sparisity率达到99.6%。两个数据集中使用的三元组具有相同的比例,其中MovieLens 1m的子图由434,189个三元组组成,具有14,708个实体和20个关系,而DBbook的子图具有334,511个三元组,具有13,882个实体和13个关系。请注意,MovieLens-1m中用于传输的项目和实体之间的对齐比DBbook2014中的对齐要少。

7.2 基线

对于项目推荐,我们将我们提出的模型与以下最先进的基线进行比较,这些基线涉及典型的基于相似性的方法和基于KG的方法。

•典型的基于相似性的方法:我们选择广泛使用的协同过滤模型FM [33]和BPRMF [34],因为它们是其他基线的基础,并且还在许多基准数据集上实现了最先进的性能。

•CFKG [46]整合了两个来源的数据,并在一个统一的图表上应用TransE,包括用户,项目,实体和关系;

•CKE [44]结合了来自不同来源的各种项目嵌入,包括KG上的TransR;

•CoFM [31]通过共享对齐项目和实体的参数或正规化来联合培训FM和TransE。我们将这两个方案分别标记为CoFM(份额)和CoFM(reg)。

对于KG完成,我们选择在该领域广泛使用的典型方法TransE [2],TransH [42]和TransR [23]。此外,我们评估上述基于KG的方法,即使它们在原始论文中没有这样做,以调查不同转移方案的影响。为了公平比较,我们在发布的代码中仔细重新实现它们,因为它们没有在相同的数据集上报告结果,我们找不到它们发布的代码。请注意,我们删除了辅助信息建模的组件,如评论和可视信息,因为它们在数据集中不可用,并且超出了本文的范围。

 

7.3 训练细节

我们通过以7:1:2的比例随机分割数据集来构建训练集,验证集和测试集。对于项目推荐,我们为每个用户分割项目并确保测试集中至少存在一个项目。

对于超参数,我们在BPRMF和TransE上应用网格搜索以找到每个任务的最佳设置,并将它们用于所有其他模型,因为它们共享基本的学习思路4。在{0.0005,0.005,0.001,0.05,0.01}中搜索学习速率,L2正则化的系数在{10-5,10-4,10-3,10-2,10-1,0}中,并且优化方法包括自适应矩估计(Adam),Adagrad和SGD。最后,我们将项目推荐和KG完成的学习率分别设置为0.005和0.001,将L2系数设置为10-5和0,并将优化方法设置为Adagrad和Adam。特别是,对于涉及两个任务的模型,我们尝试了两组参数,并且由于其优越的性能而选择后一组参数。其他超极表根据经验设置如下:批量大小为256,嵌入大小为100,我们在验证集上执行早期停止策略。我们预先确定TUP中的首选项数量分别为20和13,分别为MovieLens-1m和DBbook2014,它们是根据收集的三元组的关系设置的。对于涉及两个任务的模型(即CFKG,CKE,CoFM和KTUP),我们在{0.7,0.5,0.3}搜索后,在两个数据集上将联合超参数λ设置为0.5和0.7,以平衡它们的影响,并使用基本模型的预训练嵌入(即BPRMF和TransE)。

本文的主要目标是在联合培训期间调查每项任务的相互影响,而不是通过调整参数来实现最佳性能。因此,我们提出的模型以及基线方法针对每个数据集进行一次训练,并评估项目推荐和KG完成的任务。

 

7.4 项目推荐

在本节中,我们评估我们的模型以及项目推荐任务的基线方法。 给定用户,我们将测试集中的所有项目作为候选者,并根据基于用户和项目的嵌入计算的分数对它们进行排名。 因此,排在最前面的N个项目是推荐项目。

7.4.1度量标准。 我们使用了以前工作中广泛使用的五个评估指标:

•Precision @ N:这是与用户相关的推荐项目的一部分。 我们将所有用户的平均值计算为最终精度。

•召回@ N:成功推荐的与用户相关的项目比例。 我们计算所有用户的平均值作为最终召回。

•F1得分@N:它是等级N的精度的调和平均值,并且是等级N的回忆。

•命中率@N:如果在前N项中推荐任何金项,则为1,否则为0.我们计算所有用户的平均值作为最终命中率得分。

•nDCG @ N:标准化折扣累积增益(nDCG)是排名质量的标准度量,考虑排名列表前N中正面和负面项目之间的分级相关性。

7.4.2总体结果。表2显示了我们提出的模型的总体性能以及基线方法,其中硬和软表示4.1节中的两种偏好诱导策略。

我们可以观察到:

•与两个数据集上的基线方法相比,我们提出的方法表现最佳。特别是,TUP与其他基于KG的模型相比具有竞争力,同时它不需要任何其他信息。这是因为TUP会自动从用户 - 项目交互中推断出偏好的知识,并且在交互数据量足够时(例如MovieLens-1m)表现得更好。通过整合KG,KTUP在DBbook上进一步呈现出比MovieLens更有希望的改进(即,在F1中增加11.06%,增加4.43%),这意味着知识对稀疏数据更有帮助。

•仅当硬策略用于MovieLens-1m上的TUP时,硬策略的性能优于软策略,这意味着诱导确定性用户权限需要足够的数据,并且软策略更加健壮。

•CFKG和CoFM的性能略好于MovieLens-1m上的典型模型(即FM和BPRMF),但在DBbook2014的稀疏数据集上表现更差。一个可能的原因是它们都通过强制它们的嵌入与对齐的项目相似来转移实体,导致嵌入中已经存在的知识的丢失,并且当训练数据不足时损失变得更加严重。

•CKE主要在两个数据集上实现了相当好的性能,因为它结合了来自两个源的信息的项目和实体的嵌入,而不是将它们与潜在空间中的类似位置对齐。

•由于相对充足的训练数据和更简单的测试(甚至使用随机初始化,更高的值),所有模型在MovieLens-1m上的预制形成要比在DBbook2014上好得多。有趣的是,使用KG的改进在MovieLens的密集数据集上比在DBbook的稀疏数据集上更大。这违背了我们的直觉,即数据集越稀疏,它在吸收更丰富知识方面的潜力就越大。因此,我们根据训练数据的不同sparisity水平进一步划分测试集,并在下一节中研究KG对每个子集的影响。

图4:不同稀疏度对MovieLens-1m的影响。 x轴显示根据交互数划分的10个用户组,左y轴对应于指示每个用户组中的交互数的条,右y轴表示曲线的F1-得分。

7.4.3培训数据稀疏性的影响

为了研究数据稀疏性对知识转移的影响,我们根据每个用户的评级数将MovieLens-1m的测试集分成10个子集进行训练; 同时我们也尝试平衡每个子集中的用户数量和评级。 F1评分的详细结果如图4所示。绿条表示每位用户的平均评分数,范围从17到5635.我们将没有KG知识的模型表示为虚线,其他模型表示为实线。

我们可以看到&#xff08;1&#xff09;当每个用户的平均评级数在100到200之间时&#xff0c;基于KG的方法&#xff08;即CKE和KTUP&#xff09;比其他模型的表现最佳。&#xff08;2&#xff09;两种模型之间的差距是 随着训练数据量的减少越来越近&#xff0c;当他们的训练数据处于类似的精神程度时&#xff0c;改进与DBbook上的改进相似。 &#xff08;3&#xff09;同时&#xff0c;当平均评级为563&#xff08;最左边的条&#xff09;时&#xff0c;差距几乎消失&#xff0c;这意味着如果有足够的训练数据&#xff0c;KG的影响可以忽略不计。 请注意&#xff0c;当平均评分大于89时&#xff0c;所有模型的性能都会变差。可能的原因是用户喜欢这么多项目&#xff0c;这些项目的偏好太普遍而无法捕获。 &#xff08;4&#xff09;当用户偏好相对简单模型&#xff08;即#rating <50&#xff09;时&#xff0c;TUP优于KTUP&#xff0c;显示了充分利用用户项交互进行偏好建模的有效性和必要性。

7.5知识图谱补全

在本节中&#xff0c;我们评估KG完成的任务。它是预测给定三元组的缺失实体eh或et&#xff08;eh&#xff0c;et&#xff0c;r&#xff09;。对于每个缺失的实体&#xff0c;我们将所有实体作为候选者&#xff0c;并根据基于实体和关系嵌入计算的分数对它们进行排名。

7.5.1度量标准

我们使用了两个在以前的工作中广泛使用的评估指标[42]&#xff1a;

•命中率&#64;N&#xff1a;如果未命中实体在前N个候选者中排名&#xff0c;则为1&#xff0c;否则为0.我们计算所有人的平均值

三胞胎作为最终命中率得分。

•平均等级&#xff1a;它是缺失实体的平均等级&#xff0c;越小越好。

 

7.5.2总体结果

表4显示了整体性能。我们可以看到&#xff0c;除了MovieLens-1m上的平均等级值之外&#xff0c;KTUP几乎优于两个数据集上的所有其他模型。我们认为这个指标不那么重要&#xff0c;因为它很容易被一个具有低等级的顽固三重[41]所减少。与TransH相比&#xff0c;MovieLens-1m的命中率与DBbook2014&#xff08;2.67&#xff05;vs。1.15&#xff05;&#xff09;的命中率相比有更大的提升&#xff0c;因为Movielens-1m包含更多用户和项之间的连接&#xff0c;有助于在实体之间建模结构知识。我们还观察到CFKG&#xff0c;CKE和CoFM与基本KG组件相比表现出性能下降&#xff1a;TransE和TransR。

 

一个原因可能是这些方法迫使对齐实体的嵌入满足项目推荐的其他任务&#xff0c;而对齐的实体只是一小部分&#xff08;即两个数据集上的19.95&#xff05;和18.25&#xff05;&#xff09;&#xff0c;这实际上降低了学习的学习KG完成。另一个原因是用户偏好的N对N问题对实体和关系的表征学习产生负面影响&#xff0c;特别是对于CFKG中的购买关系。 CKE考虑了这个问题&#xff0c;但TransR包含许多可训练的参数&#xff0c;并且在这么小的训练集上不能很好地工作。

 

7.5.3处理N对N关系的能力

表3显示了每个关系类别的单独评估结果。在[2]之后&#xff0c;我们将关系分为四种类型&#xff1a;1对1&#xff0c;1对N&#xff0c;N对1和N对N.我们可以看到&#xff08;1&#xff09;TransR及其相关模型&#xff08;即CKE&#xff09;表现最差&#xff0c;这与上述整体性能一致。 &#xff08;2&#xff09;KTUP在N对N问题上实现了最佳性能&#xff0c;并且还与TransE和CoFM在1对1&#xff0c;1对N和N对1问题上具有竞争力&#xff0c;这表明了我们的能力。处理复杂关系并改进这两项任务的方法。 &#xff08;3&#xff09;CFKG在N-N关系上的值比TransE低&#xff0c;这意味着统一图可能引入了更加混乱的关系语义。 &#xff08;4&#xff09;CoFM在KG完成任务中具有竞争性&#xff0c;而在项目推荐中则较差&#xff0c;因为他们的知识转移方案导致联合训练不稳定。也就是说&#xff0c;难以控制知识转移对哪个任务的积极影响&#xff0c;以及需要在每个任务上单独训练CoFM的不同参数&#xff0c;这也在原始论文[31]中得出结论。

图5&#xff1a;DBbook2014上两个任务之间训练曲线的相关性&#xff0c;用Pearson相关系数ρ表示。 x轴是训练时期&#xff0c;左侧y轴对应于通过命中率的KG完成&#xff0c;右侧y轴是通过F1的项目推荐。 &#xff08;请注意&#xff0c;我们将F1和命中率的值都缩放到相同的大小。&#xff09;

7.6两项任务的相互利益虽然已经对单独的任务进行了评估&#xff0c;但仍不清楚不同的转移方案如何生效。因此&#xff0c;我们研究了两个任务的训练曲线之间的相关性。直觉上&#xff0c;强相关意味着更完整的转移学习&#xff0c;以及更好地利用彼此的补充信息。由于KG完成没有F1测量&#xff0c;因此我们将其命中率对应于左侧y轴&#xff0c;并且通过F1的项目推荐显示在右侧y轴上。

如图5所示&#xff0c;我们可以看到KTUP和CFKG呈现出曲线之间最强的相关性&#xff0c;即一条曲线的增加和减少应同时反映在另一条曲线上。这意味着关系的转移在共同训练这两项任务方面发挥着重要作用。然而&#xff0c;CFKG在机器人任务上表现不佳&#xff08;如表2和表4所示&#xff09;主要是因为2个原因。首先&#xff0c;它不能处理复杂的关系;第二&#xff0c;它只通过关系和偏好的整合来增加统一图中的连通性&#xff0c;这实际上不是过渡性的。相反&#xff0c;KTUP结合了两种结构知识的关系和偏好的嵌入&#xff0c;同时引入了N对N问题的超平面。由于转移实体的一小部分&#xff0c;CoFM和CKE的曲线显然不是强相关的。具体而言&#xff0c;CoFM强制对齐的实体和项目的嵌入相似&#xff0c;这可能导致不稳定的训练。 CKE通过组合嵌入来关注单向增强&#xff0c;因此在项目推荐中表现良好&#xff0c;但在KG完成方面表现更差。

7.7案例研究

在本节中&#xff0c;我们将介绍Movielens-1m的一个示例&#xff0c;以直观地展示我们的可解释性。左边是与7部电影互动的用户。 KTUP首先引导用户对这些电影的偏好&#xff0c;并发现用户关心的是isDirectorOf和starring的关系&#xff08;4.1节中最受关注的偏好&#xff09;。因此&#xff0c;它基于诱导的偏好根据等式16搜索最近的项目。我们在右侧展示推荐的四部电影。特别推荐Batman Forever和Batman&#xff06;Robin&#xff08;电影&#xff09;&#xff0c;因为用户会向导演Joel Schumacher表示偏好。同样&#xff0c;对导演的偏爱也有助于诱导由Cameron Crowe执导的电影Say Anything ......此外&#xff0c;用户还喜欢主演&#xff0c;如伊甸园东部的詹姆斯迪恩&#xff08;电影&#xff09;和吉普赛的娜塔莉伍德&#xff08;1962年的电影&#xff09;;在一起&#xff0c;系统建议另一部电影Rebel Without a Cause。



八、结论

在本文中&#xff0c;我们提出了一种新的基于翻译的推荐模型TUP&#xff0c;并将其扩展为无缝集成KG完成&#xff0c;即KTUP。 TUP能够对用户和项目之间的各种隐式关系建模&#xff0c;这揭示了用户对消费项目的偏好。 KTUP通过对齐的关系和权限进一步增强了模型的可解释性&#xff0c;并通过联合学习提高了两个任务的性能。将来&#xff0c;我们感兴趣的是在多跳实体关系上引入更复杂的用户偏好&#xff0c;并引入KG推理&#xff08;例如&#xff0c;规则挖掘&#xff09;技术&#xff0c;用于看不见的用户偏好以处理冷启动问题。

九、参考文献

Unifying Knowledge Graph Learning and Recommendation: Towards a Better Understanding of User Preferences

文献获取地址&#xff1a;https://arxiv.org/abs/1902.06236


推荐阅读
  • 程度|也就是_论文精读:Neural Architecture Search without Training
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了论文精读:NeuralArchitectureSearchwithoutTraining相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 【论文】ICLR 2020 九篇满分论文!!!
    点击上方,选择星标或置顶,每天给你送干货!阅读大概需要11分钟跟随小博主,每天进步一丢丢来自:深度学习技术前沿 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • EPICS Archiver Appliance存储waveform记录的尝试及资源需求分析
    本文介绍了EPICS Archiver Appliance存储waveform记录的尝试过程,并分析了其所需的资源容量。通过解决错误提示和调整内存大小,成功存储了波形数据。然后,讨论了储存环逐束团信号的意义,以及通过记录多圈的束团信号进行参数分析的可能性。波形数据的存储需求巨大,每天需要近250G,一年需要90T。然而,储存环逐束团信号具有重要意义,可以揭示出每个束团的纵向振荡频率和模式。 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • 使用Ubuntu中的Python获取浏览器历史记录原文: ... [详细]
  • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
    原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • 闭包一直是Java社区中争论不断的话题,很多语言都支持闭包这个语言特性,闭包定义了一个依赖于外部环境的自由变量的函数,这个函数能够访问外部环境的变量。本文以JavaScript的一个闭包为例,介绍了闭包的定义和特性。 ... [详细]
  • 浏览器中的异常检测算法及其在深度学习中的应用
    本文介绍了在浏览器中进行异常检测的算法,包括统计学方法和机器学习方法,并探讨了异常检测在深度学习中的应用。异常检测在金融领域的信用卡欺诈、企业安全领域的非法入侵、IT运维中的设备维护时间点预测等方面具有广泛的应用。通过使用TensorFlow.js进行异常检测,可以实现对单变量和多变量异常的检测。统计学方法通过估计数据的分布概率来计算数据点的异常概率,而机器学习方法则通过训练数据来建立异常检测模型。 ... [详细]
  • 本博文基于《Amalgamationofproteinsequence,structureandtextualinformationforimprovingprote ... [详细]
  • ICRA2019最佳论文  Making Sense of Vision and Touch: SelfSupervised Learning of Multimodal Representatio
    文章目录摘要模型架构模态编码器自监督预测控制器设计策略学习控制器设计实验结论和展望会议:ICRA2019标题:《MakingSenseofVision ... [详细]
  • 安装Tensorflow-GPU文档第一步:通过Anaconda安装python从这个链接https:www.anaconda.comdownload#window ... [详细]
  • 本文介绍了在Python张量流中使用make_merged_spec()方法合并设备规格对象的方法和语法,以及参数和返回值的说明,并提供了一个示例代码。 ... [详细]
author-avatar
廖赞胜
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有