Transfer Learning for Item Recommendations and Knowledge Graph Completion in Item Related Domains via a Co-Factorization Model
Abstract
随着知识图(KGs)近年来的普及,有许多研究利用KGs中丰富的背景知识来完成项目推荐的任务。 然而,在利用KGs的知识时,很少考虑KGs的不完整性。 此外,以往的研究主要集中在利用KG中的知识来提出项目推荐,目前尚不清楚我们是否可以以另一种方式利用这些知识,即是否使用 用户项交互历史可用于提高在项目领域的KG补全的性能。 在本文中,我们研究了两个任务之间的知识转移的影响:(1)项目推荐 和(2)KG补全,通过一个辅助分解模型(CoFM),它可以看作是一个迁移学习模型。
知识图
有关DBpedia中实体的每一条信息都是RDF三元组(subject,predicate and object)。
eg.(dbr:Bled White (2011 film), dbo:starring,dbr:Colleen Boag)
在DBpedia中:dbc:Horror films是dbr:Bled White (2011 film)的缺失信息,这是推荐电影背景下的重要信息。
创新点
我们利用辅助因式分解模型来研究这两项任务之间的迁移学习。 (1)项目推荐,(2)项目领域的KG补全。 迁移学习是指将一项任务作为“源”任务,另一项作为“目标”任务。
首先,以项目推荐为目标任务,以KG完成为源任务, 我们感兴趣的是,与使用利用现有知识的分解机器(FM)的最先进方法相比,考虑KG的不完整性是否表现得更好。
第二,我们的目标是探究知识是否可以从项目推荐转移到KG补全,并在知识图谱补全是目标任务的时候表现更好。
Knowledge graph completion
虽然KGs提供了大量关于实体/事件的事实,但它们是高度不完整的[9]。 例如,谷歌观察到,在Freebase有71%的人缺乏出生地,75%的人缺乏出生地 国籍[5]。为了解决这一问题,提出了两组基于嵌入的方法。 一种是使用张量分解等因式分解方法,另一种是使用神经网络模型。
一个典型的方法是TransE,它是一个基于翻译的模型来学习实体的嵌入和它们之间的关系。
我们的工作不同于以前关于KG补全的工作,因为我们专注于从项目推荐任务中的用户-项交互历史转移的知识是否提高了KG的补全。
Learning with a Co-Factorization Model
(1)项目推荐。给定用户-项目交互历史,即对项目的喜欢或者不喜欢(我们在本研究中考虑二进制交互(1或者0)),我们的目标是为目标用户提供top-N项推荐。
(2)知识图谱补全。 这项任务也可以,被制定成一个top-N推荐任务。 对于给定的(主语、谓词)对,任务是提供top-N对象推荐。 候选对象是DBpedia本体中定义的给定谓词范围内的所有对象。
(3)Factorization Machines for Item Recommendations。 这是一种最先进的潜在因子模型框架,已广泛用于协同过滤任务。
yˆFM(x) 表示使用FMs的预测分数。wo表示偏差项的权重。 x表示特征值,v表示每个特征的潜在因素。
m是因式分解的维数,q是特征数。 FM模型的第一部分类似于简单的线性回归。 第一部分捕获每个输入变量xi的交互。 模型的第二部分利用特征的潜在因素捕捉输入变量xixj的所有成对相互作用。
第一项任务是根据用户-项目交互的历史记录提供top-N项推荐。我们关注的是本研究中每个项目的二进制响应ydui(例如,用户喜欢或不喜欢某一项目),把推荐问题看作二分类问题。 让β0表示偏差,βi表示特征相对于i的权重,并θi表示i的潜在因素列表,这些因素可以通过FMS与训练数据集学习。 xdui表示训练示例dui中的显式特征列表。 xdui最简单的例子是,它由一个分类特征来表示用户u和另一个分类特征来表示项目i。 我们可以根据xdui、β和Θ估计I项目的偏好分数为f(sdui|xdui,β,Θ),其中,
推荐top-N项的任务可以形式化为优化贝叶斯个性化排序(BPR)的损失如下:
(4)Translating Embeddings for KG Completion
第二个任务是关于项目域的KG补全,它可以作为给出一个subject和predicate对的object推荐。 我们使用一种基于翻译的嵌入模型TransE。虽然它简单,但是因其有效性, TransE是最流行的KG补全方法之一。 这个模型是学习subjects, predicates, and objects的潜在因素,当 (s,p,o)是KG中有效三元组的时候,以满足 φs +φp ≈ φo。换句话说就是, 使o(φo)的嵌入成为φs+φp的近邻。它们之间的距离是由L2-范数这样的 dissimilarity function d(φs + φp, φo)测量。 当L2-范数作为不同函数时,给定(s,p)的候选o的预测分数可以测量如下:
其中m表示s、p和o的因式分解/嵌入的维数。 候选对象集可以根据其预测分数进行排序。 一个距离分数较高的object应该排名较低。 在TransE中要优化的损失可以在我们的设置中定义如下:
分别表示一组正训练实例和负训练实例。 正实例表示有效的三元组(s,p,o),它可以在训练集中找到。负实例由s,p和随机选择的不在训练集中的object组成。
(5)Transfer Learning via a Co-Factorization Model for the Two Tasks
我们有两个相关的表示,一个项目I在任务#1(或subject s在任务#2)的潜在因素。 i.e., θi and φs. 我们研究了两种策略,用于建模两个任务之间迁移学习的项目/对象的两种表示之间的关系。为了简单起见,我们考虑了xdui的简单情况,即xdui的两个分类特征(表示u和i)。
Shared latent space (CoFMA) 一种简单的方法来模拟两个表示之间的关系,在这两个任务中,一个item/object的潜在因素是假设它们的潜在因素完全相同。i.e., θi = φs = ρis。
上述两项任务的偏好分数函数可按如下:
这种方法基于一个强有力的假设,即来自两个不同任务的item和subject具有相同的潜在表示。
Via latent space regularization (CoFMR) 另一种处理一个item/object的两个潜在表示的方法是将这些表示正规化,使它们不会相距太远。 我们将这种方法引入到模型中,通过施加以下正则化:
λφ,θ是正则化参数。
两个任务之间迁移学习的另一个问题是两个损失函数的不同输出尺度。因此,我们修改了KG完成任务的损失函数。下面是为了使两个任务中的两个损失函数具有相同的尺度。
与多任务学习相反,多任务学习旨在同时学习两项任务。 迁移学习的目的是通过从S(原任务)迁移的知识来实现T(目标任务)的最佳表现。