基于翻译模型(Trans系列)的知识表示学习

article/2025/9/20 15:30:44

翻译模型(Trans)

解决问题:知识表示与推理
将实体向量表示(Embedding)在低维稠密向量空间中,然后进行计算和推理。

主要应用:triplet classification, link prediction


目前基于翻译模型(Trans系列)的知识表示学习的研究情况

  • TransE, NIPS2013, Translating embeddings for modeling multi-relational data
  • TransH, AAAI2014, Knowledge graph embedding by translating on hyperplanes
  • TransR, AAAI2015, Learning Entity and Relation Embeddings for Knowledge Graph Completion
  • TransD, ACL2015, Knowledge graph embedding via dynamic mapping matrix
  • TransA, arXiv2015, An adaptive approach for knowledge graph embedding
  • TranSparse, AAAI2016, Knowledge graph completion with adaptive sparse transfer matrix
  • TransG, arXiv2015, A Generative Mixture Model for Knowledge Graph Embedding
  • KG2E, CIKM2015, Learning to represent knowledge graphs with gaussian embedding

TransE: 多元关系数据嵌入(Translation embeddings for modeling multi-relation data)

问题:如何建立简单且易拓展的模型把知识库中的实体和关系映射到低维向量空间中,从而计算出隐含的关系?
方案:将实体与关系嵌入到同一低维向量空间。

这篇文章提出了一种将实体与关系嵌入到低维向量空间中的简单模型,弥补了传统方法训练复杂、不易拓展的缺点,对实体和关系的建模十分简单明了,可解释性也很强。尽管现在还不清楚是否所有的关系种类都可以被这种方法建模,但目前这种方法相对于其他方法表现不错。在后续的研究中,TransE更是作为知识库vector化的基础,衍生出来了很多变体。

TransE模型简图

受word2vec启发,利用了词向量的平移不变现象。将每个三元组实例 (head,relation,tail) 中的关系 relation 看做从实体 head 到实体 tail 的翻译,通过不断调整h、r和t (head、relation 和 tail 的向量),使 (h + r) 尽可能与 t 相等,即 h + r ≈ t。数学上表示就是通过约束 d(h+l,t)=||(h+r)t||220 d ( h + l , t ) = | | ( h + r ) − t | | 2 2 ≈ 0 来对实体和关系建模,将它们映射到相同的向量空间中。
其损失函数表示如下:

L=(h,l,t)S(h,l,t)S(h,l,t)[γ+d(h+l,t)d(h+l,t)]+ L = ∑ ( h , l , t ) ∈ S ∑ ( h ′ , l ′ , t ′ ) ∈ S ( h , l , t ) ′ [ γ + d ( h + l , t ) − d ( h ′ + l ′ , t ′ ) ] +

其中, [x]+ [ x ] + 表示 x x 的正数部分,γ表示margin, Sh,l,t={(h,l,t|hE)}{(h,l,t|tE)} S h , l , t ′ = { ( h ′ , l , t | h ′ ∈ E ) } ∪ { ( h , l , t ′ | t ′ ∈ E ) }


TransH: 将知识嵌入到超平面(Knowledge graph embedding by translating on hyperplanes)

问题:对知识库中的实体关系建模,特别是一对多,多对一,多对多的关系。设计更好的建立负类的办法用于训练。
方案:将实体和关系嵌入到同一的向量空间,但实体在不同关系中有不同的表示。

TransH与TransE对比

在数学表示上面就可以很简单的看出TransH与TransE的区别:TransE中三元组 (h,r,t) ( h , r , t ) 需要满足 d(h+r,t)=||(h+r)t||220 d ( h + r , t ) = | | ( h + r ) − t | | 2 2 ≈ 0 ,而TransH中三元组 (h,r,t) ( h , r , t ) 则需要满足 d(h+r,t)=||(hwTrhwr)+dr(twTrtwr)||220 d ( h + r , t ) = | | ( h − w r T h w r ) + d r − ( t − w r T t w r ) | | 2 2 ≈ 0 ,其中 wr,drRk w r , d r ∈ R k 表示关系。


TransR: 实体和关系分开嵌入(Learning Entity and Relation Embeddings for Knowledge Graph Completion)

问题:一个实体是多种属性的综合体,不同关系关注实体的不同属性。直觉上一些相似的实体在实体空间中应该彼此靠近,但是同样地,在一些特定的不同的方面在对应的关系空间中应该彼此远离。
方案:将实体和关系嵌入到不同的空间中,在对应的关系空间中实现翻译。

TransR模型图

TransR在TranE的基础上的改进,在数学上的描述看起来会更加直观:对于每一类关系,不光有一个向量 r r 来描述它自身,还有一个映射矩阵Mr来描述这个关系所处的关系空间,即对于一个三元组 (h,r,t) ( h , r , t ) ,需要满足 d(h,r,t)=||hr+rtr||22=||hMr+rtMr||220 d ( h , r , t ) = | | h r + r − t r | | 2 2 = | | h M r + r − t M r | | 2 2 ≈ 0


TransD: 通过动态映射矩阵嵌入(Knowledge graph embedding via dynamic mapping matrix)

问题:TransR过于复杂,在TransR的基础上减少参数。。。
方案:实体和关系映射到不同的空间中,用两个向量表示实体或关系,一个 (h,r,t) ( h , r , t ) 表征实体或关系,另一个 (hp,rp,tp) ( h p , r p , t p ) 用来构造动态映射矩阵。

TransD模型图

TransD在TransR的基础上,将关系的映射矩阵简化为两个向量的积,图中 Mrh=rphp+Imn M r h = r p h p + I m ∗ n Mrt=rptp+Imn M r t = r p t p + I m ∗ n 表示实体 h h 与实体r映射到关系空间的矩阵,那么对于三元组 (h,r,t) ( h , r , t ) ,需要满足 d(h,r,t)=||Mrhh+rMrtt||220 d ( h , r , t ) = | | M r h h + r − M r t t | | 2 2 ≈ 0


TransA: 自适应的度量函数(An adaptive approach for knowledge graph embedding)

问题:如何解决了translation-based 知识表示方法存在的过于简化损失度量,没有足够能力去度量/表示知识库中实体/关系的多样性和复杂性的问题。
方案:更换度量函数,区别对待向量表示中的各个维度,增加模型表示能力。

TransA模型图

光看这张图可能会意义不明,其实模型在TransE的基础上的改进也非常小,简单地说就是给实体/关系的每一个维度都加上了一个权重,增加模型的表示能力。
TransE模型的一般形式为: d(h+l,t)=||(h+r)t||22 =(h+rt)T(h+rt) d ( h + l , t ) = | | ( h + r ) − t | | 2 2 = ( h + r − t ) T ( h + r − t )
TransA对于每一类关系,给实体/向量空间加上了一个权重矩阵 Wr W r ,然后可以对权重向量做矩阵分解 Wr=LTrDrLr W r = L r T D r L r ,最后TransA的数学形式为: d(h+l,t)=(h+rt)TWr(h+rt)=(Lr|h+rt|)TDr(Lr|h+rt|)) d ( h + l , t ) = ( h + r − t ) T W r ( h + r − t ) = ( L r | h + r − t | ) T D r ( L r | h + r − t | ) )


TranSpare: 自适应稀疏转换矩阵(Knowledge graph completion with adaptive sparse transfer matrix)

问题: heterogeneous(异质性:有的实体关系十分复杂,连接许多不同的实体,而有些关系又非常简单)和unbalanced(不均衡性:很多关系连接的head和tail数目很不对等)。
关键:针对不同难度的实体间关系,使用不同稀疏程度的矩阵(不同数量的参数)来进行表征,从而防止对复杂关系欠拟合或者对简单关系过拟合;对头尾两种实体采用不同的投影矩阵,解决头尾实体数目不对等的问题。

针对异质性(heterogeneous)

在TransR的基础上,使用可变的稀疏矩阵代替TransR的稠密矩阵:关系连接的实体数量越多,关系越复杂,矩阵约稠密;关系链接的实体数量越少,关系越简单,矩阵约稀疏。
使用参数 θr θ r 描述关系 r r 的复杂程度,使用一个稀疏矩阵Mr(θr)和一个关系向量 r r 表示一类关系,其中θr=1(1θmin)Nr/Nr r r ∗ 表示连接实体数量最多的关系, Nr N r ∗ 为其连接的实体的数量, θmin θ m i n 为设置的超参,表示关系 r r ∗ 的稀疏程度。
以此为基础,对于一个关系三元组 (h,r,t) ( h , r , t ) ,需要满足的约束为 d(h,r,t)=||hp+rtp||22=||Mr(θr)h+rMr(θr)t||220 d ( h , r , t ) = | | h p + r − t p | | 2 2 = | | M r ( θ r ) h + r − M r ( θ r ) t | | 2 2 ≈ 0

针对不平衡性(unbalanced)

与上述方法类似,不同点在于对于每个关系三元组 (h,r,t) ( h , r , t ) ,头尾实体的映射矩阵为两个不同的稀疏矩阵,其稀疏程度与该关系的头尾实体的数目有关,即头/尾涉及到的实体越多,矩阵约稠密;反之涉及到的实体越少,矩阵越稀疏。
使用参数 θhr θ r h θtr θ r t 分别描述头尾实体映射矩阵的稠密程度,则 θlr=1(1θmin)Nlr/Nlr θ r l = 1 − ( 1 − θ m i n ) N r l / N r ∗ l ∗ ,其中 Nlr N r l 表示关系 r r 在位置l(即头或者尾)上关联的实体数量, Nlr N r ∗ l ∗ 则表示关系 r r ∗ 在位置 l l ∗ (即头或者尾)上关联的实体数量最多的关系的数量,对应的设置超参 θmin θ m i n 表示其稀疏程度。
对于一个关系三元组 (h,r,t) ( h , r , t ) ,TransSparse需要满足的约束为 d(h,r,t)=||hp+rtp||22=||Mhr(θhr)h+rMtr(θtr)t||220 d ( h , r , t ) = | | h p + r − t p | | 2 2 = | | M r h ( θ r h ) h + r − M r t ( θ r t ) t | | 2 2 ≈ 0


TransG: 高斯混合模型(A Generative Mixture Model for Knowledge Graph Embedding)

问题:解决多关系语义的问题,同一种关系在语义上是不同的,eg, (Atlantics, HasPart, NewYorkBay)与(Table, HasPart, Leg)。
方案:利用贝叶斯非参数高斯混合模型对一个关系生成多个翻译部分,根据三元组的特定语义得到当中的最佳部分。

TransG模型图

考虑到一种关系存在的多语义问题,相当于对关系进行了细化,就是找到关系的隐形含义,最终从细化的结果中选出一个最佳的关系语义。


KG2E: 高斯分步表示实体和关系(Learning to represent knowledge graphs with gaussian embedding)

关键:使用Gaussian Distribution 来表示实体和关系,提出了用Gaussian Distribution的协方差来表示实体和关系的不确定度的新思想,提升了已有模型在link prediction和triplet classification问题上的准确率。

KG2E模型图

ps. 最后两种方法设计到使用高斯混合分步表示实体,后面有时间了再更新。


http://chatgpt.dhexx.cn/article/MIOIbgBG.shtml

相关文章

TransE模型:知识图谱的经典表示学习方法

传统的知识图谱表示方法是采用OWL、RDF等本体语言进行描述;随着深度学习的发展与应用,我们期望采用一种更为简单的方式表示,那就是【向量】,采用向量形式可以方便我们进行之后的各种工作,比如:推理&#xf…

【论文导读】Time-Series Representation Learning via Temporal and Contextual Contrasting(时间和上下文对比的时间序列表示学习)

Time-Series Representation Learning via Temporal and Contextual Contrasting(通过时间和上下文对比的时间序列表示学习) 论文信息摘要主要贡献论文结构1. Introduction2. Related Works3. MethodsArchitecture of proposed TS-TCC model 4. Experime…

表示学习(Representation Learning)之局部表示(Local Representation)与分布式表示(Distributed Representation)

一个良好的表示是内容充分高效表达的基础,作为沟通计算机与现实世界的桥梁,计算机行业人员每时每刻都在研究事物的表示。比如:编程语言,早期的机器语言和现在的高级程序语言可以看作是指令的两种不同表示方式,从可读性…

深度学习是表示学习的经典代表(浅谈什么是深度学习)

目录 先来看机器学习: 什么是特征? 深度学习是表示学习的经典代表: 深度学习的过程: 深度学习与传统机器学习差别: 深度学习代表算法: 先来看机器学习: 机器学习是利用经验experience来改…

深度学习中的表示学习_Representation Learning

一、深度学习网络的表达方式汇总及模型分类方法 人的大脑会对眼睛捕捉到的外界事物进行逐级抽象,逐渐提取出抽象的语义信息,以便为人脑所理解。深度学习从这一科学发现得到启发,通过网络的权值来捕捉外界输入模式的特征,并且通过…

基于GNN的图表示学习及其应用

文章内容概述 本文内容分两部分,第一部分为基于 GNN 的图表示学习,共包含两节,第1节主要从三种建模方法上对图表示学习进行对比阐述;第2节分别从两类无监督学习目标——重构损失与对比损失,对基于 GNN 的无监督表示学习…

知识表示学习(KG Embedding)—— TransX系列

文章目录 前言TransETransHTransRTransD总结参考资料 前言 知识表示学习是针对于知识图谱三元组所做的word embedding,平常所做的都是基于完整的文本表述比如一句话去产生word2vec这种副产物,但是KG中的embedding是更为直接的构建实体与关系之间的语义联…

网络表示学习总结

我的GitHub博客:咖啡成瘾患者 网络的邻接矩阵表示网络的分布式表示网络表示学习的经典工作 DeepwalkLINEnode2vec 网络表示学习的相关论文 最近看了paperweekly的两次关于网络表示学习的直播,涂存超博士与杨成博士讲解了网络表示学习的相关知识。本文将网…

Deep Multimodal Representation Learning(深度多模态表示学习)

多模态表示学习旨在缩小不同模态之间的异质性差距,在利用普遍存在的多模态数据中发挥着不可或缺的作用。基于深度学习的多模态表示学习由于具有强大的多层次抽象表示能力,近年来引起了人们的广泛关注。 多模态融合的核心问题是异质性间隙,而为…

干货!Labeling Trick: 一个图神经网络多节点表示学习理论

点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! GNN 旨在学习单节点表示。当我们想要学习一个涉及多个节点的节点集表示(如链路表示)时,以往工作中的一个常见做法是将 GNN 学习到的多个单节点表示直接聚合成节点集的联合表示…

知识图谱表示学习

知识图谱是一种精细化的异构网络, 所以对其节点与边的表示学习也是一个热门的问题. 这里的学习依旧是得到它们的低维稠密向量. 这样做的好处: 降低知识图谱的高维性和异构性;增强知识图谱应用的灵活性;减轻特征工程的工作量;减少由于引入知识…

深度聚类:将深度表示学习和聚类联合优化

参考文献: 简介 经典聚类即数据通过各种表示学习技术以矢量化形式表示为特征。随着数据变得越来越复杂和复杂,浅层(传统)聚类方法已经无法处理高维数据类型。结合深度学习优势的一种直接方法是首先学习深度表示,然后再…

什么是表示学习(representation learning)表征学习 表达学习

机器学习算法的成功与否不仅仅取决于算法本身,也取决于数据的表示。数据的不同表示可能会导致有效信息的隐藏或是曝露,这也决定了算法是不是能直截了当地解决问题。表征学习的目的是对复杂的原始数据化繁为简,把原始数据的无效信息剔除&#…

知识表示学习模型

最近清华的THUNLP整理了Pre-trained Languge Model (PLM)相关的工作:PLMpapers,非常全面,想要了解最新NLP发展的同学不要错过。本来这篇是打算写一写Knowledge Graph BERT系列工作的,但是最近有在做知识图谱的一些东西所以就先整…

网络表示学习(network represention learning)

https://www.toutiao.com/a6679280803920216589/ 2019-04-13 15:40:48 1.传统:基于图的表示(又称为基于符号的表示) 如左图G (V,E),用不同的符号命名不同的节点,用二维数组&#x…

图表示学习

文章目录 1.导言1.1 为什么要研究图(graph)1.2 针对图结构的机器学习任务1.3 特征表示的难点1.4 特征表示的解决思路1.5 线性化思路1.6 图神经网络1.7 讨论:何谓Embedding1.8 总结 2.图结构表示学习2.1 deepwalk(深度游走算法)2.2 node2vec 3…

表示学习(特征学习)

文章目录 表示学习特征工程与表示学习深度学习的表示学习注:深度学习不等于多层神经网络什么时候用「手工提取」什么时候用「表示学习」? 关于特征表示学习的算法 参考资料 表示学习 表示学习的基本思路,是找到对于原始数据更好的表达&#…

表示学习与深度学习

1、表示学习 首先给出表示学习的定义: 为了提高机器学习系统的准确率,我们就需要将输入信息转换为有效的特征,或者更一般性称为表示(Representation)。如果有一种算法可以自动地学习出有效的特征,并提高最…

表示学习(Representation Learning)

一、前言 2013年,Bengio等人发表了关于表示学习的综述。最近拜读了一下,要读懂这篇论文还有很多文献需要阅读。组会上正好报了这篇,所以在此做一个总结。 鉴于大家都想要我的汇报PPT,那我就分享给大家,希望能对大家有所…

使用 Altium Designer 绘制PCB完整设计流程记录(2021.05.04更新)

前言 做了大半年的毕业设计,陆陆续续也是画了几个板子,有些东西感觉要趁现在记录下来,方便以后某天还想再画板子时查看。 修改日志 时间修改内容2021.05.04初稿完成 文章目录 前言修改日志一、关于AD版本二、原理图库和封装库三、绘制原理…