[解读]TransE: Translating Embeddings for Modeling Multi-relation Data
发表于2013年NIPS,现在称为NeurlPS。
Abstract:提出基于对多关系数据的建模,将实体和关系映射到低维空间。
Introduction:多关系数据广泛存在于社交网络,推荐系统和知识图谱,难点在于多类型的点和边。
TransE:基于embedding、最大间隔、负采样,提出transE模型。
TransH:TransH使一个实体在不同的关系中拥有不同的角色,关系超平面(hyperplane)。
TransR:与TransE/TransH相比参数较多,关系空间(space)
TransD:与TransR相比将参数映射矩阵换成了两个向量,减少了模型参数
Related work:与SE、SME、LFM等模型比较,transE模型减少了参数,而且模型更有效
Experiments:实验选取了Wordnet和Freebase作数据集,探究模型有效性:边的预测、案例分析。
Conclusion:总结提出的transE模型的优点:参数小、效果好、易扩展。

摘要核心:
1.使用低维向量表示三元组数据(知识图谱)的实体和关系
2.易于训练,模型参数少,可以扩展到大的数据
3.模型的损失函数是基于实体和向量的计算(translations)
4.通过边的预测等任务在两个数据集验证了模型的有效性
论文中提到的多关系数据的定义如下:



论文中一般的符号表示:
知识图谱三元组:(h,r/l,t),head,relation,label,tail
[x]+ = max(0,x)
margin-based loss的理解
n = |entities|,m = |relations|,用来分析算法的复杂度
TransE算法的思想:
给定三元组(h,r,t),h和t都是实体,r/l是关系,模型是将所有的实体和关系映射到k维的线性空间里。基本的思想是用h+r去逼近t:

h+r将会逼近正确的t,远离不正确的t。衡量这个逼近使用基于能量的框架,d(h+l,t),为此我们可以使用L1正则或L2正则。
对训练集使用margin-base的目标函数:

上式第一个连加符号表示对所有的正样本,第二个连加符号表示对所有的负样本,每个正样本都会对应负样本。负样本的表示如下,也就是在原来正样本的基础上,将头实体或者尾实体随机一个进行替换,替换成语料库中正确的实体除外的任意一个实体,需要注意的是,不能同时替换头实体和尾实体。

算式希望对所有的正样本,函数d计算得到的数值越小越好,对所有的负样本,函数d计算得到的数值越大越好,抛去γ理解的话,正样本计算得到值减去负样本计算得到值,前者必须小于后者,这样得到的负值,在[ x ]+函数之下,整个数值为0,也就是损失为0,这正好对应了我们的想法即正确的三元组相互能够逼近。此外这里要对γ有一个理解,γ的作用就是对你的标准增加档次,如果不加γ,只要两个d之间的差为负值损失就为0,而加上了γ,就会让你两个d之间的差值越大越好,如果两个d之间的差值为负但是小于γ,整个式子就为正,损失不为0,我们目标函数要尽量最小,就是要使得整个式子为0,那么最好就是使得两个d之间的差值为负并且大于γ,这样整个式子就是负的,在[ x ]+函数之下,整个损失就是0。模型使用SGD进行训练。
论文中将算法整体流程列举如下:

实体向量e的更新在循环里面,主要是因为每次更新实体向量之后,他不一定是个归一化的,从而每次给他更新完跑下一个循环之前将其进行归一化。对于SBatch里面每一个正确的三元组,相应的会找到一个错误的三元组,对其进行组合,两两存入TBatch集合里面。
综上,强调一下几个细节:
负样本:(h,r,t),固定h,r,替换t;固定r,t,替换h
存在的问题:1 to many,many to 1,many to many

本文详细解读了TransE、TransH、TransR和TransD四种知识图谱向量化表示方法,探讨了它们在建模多关系数据中的应用。TransE通过翻译嵌入来逼近三元组,而TransH、TransR和TransD通过引入超平面、关系空间和动态映射矩阵解决了TransE的局限性,提高了模型的表达能力。实验表明,这些模型在边预测和案例分析等任务上表现出良好的性能。
最低0.47元/天 解锁文章
1002

被折叠的 条评论
为什么被折叠?



