文献知识图谱可视化_[论文解读]知识图谱向量化表示Trans系列EHRD四篇文献

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

[解读]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模型的优点:参数小、效果好、易扩展。

39597b1e5c97065637beb584bcfdb32f.png

摘要核心:

1.使用低维向量表示三元组数据(知识图谱)的实体和关系

2.易于训练,模型参数少,可以扩展到大的数据

3.模型的损失函数是基于实体和向量的计算(translations)

4.通过边的预测等任务在两个数据集验证了模型的有效性

论文中提到的多关系数据的定义如下:

c85526d4489fcabb924e3ab319a8d2b4.png

f9943633255f72ad1f2e30b4b4802413.png

a6fb55c67207f8a59f0d463a50ab033a.png

论文中一般的符号表示:

知识图谱三元组:(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:

08f2b82ad776d0197c039009d22d28a4.png

h+r将会逼近正确的t,远离不正确的t。衡量这个逼近使用基于能量的框架,d(h+l,t),为此我们可以使用L1正则或L2正则。

对训练集使用margin-base的目标函数:

044de6564164c2993489544b31a73a5f.png

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

7dc2f6f27e40b161aec9d8f19726871e.png

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

论文中将算法整体流程列举如下:

ca9a18d9d9b9920645bcd50e771b5a16.png

实体向量e的更新在循环里面,主要是因为每次更新实体向量之后,他不一定是个归一化的,从而每次给他更新完跑下一个循环之前将其进行归一化。对于SBatch里面每一个正确的三元组,相应的会找到一个错误的三元组,对其进行组合,两两存入TBatch集合里面。

综上,强调一下几个细节:

负样本:(h,r,t),固定h,r,替换t;固定r,t,替换h

存在的问题:1 to many,many to 1,many to many

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值
>