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

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

传统的知识图谱表示方法是采用OWL、RDF等本体语言进行描述;随着深度学习的发展与应用,我们期望采用一种更为简单的方式表示,那就是【向量】,采用向量形式可以方便我们进行之后的各种工作,比如:推理,所以,我们现在的目标就是把每条简单的三元组< subject, relation, object > 编码为一个低维分布式向量。(有关【分布式表示】的概念请大家自行百度)

paper:Translating Embeddings for Modeling Multi-relational Data
 

这里介绍一个概念:
表示学习】: 表示学习旨在将研究对象的语义信息表示为稠密低维实值向量,知识表示学习主要是面向知识图谱中的实体和关系进行表示学习。使用建模方法将实体和关系表示在低维稠密向量空间中,然后进行计算和推理。简单来说,就是将三元组表示成向量的这个过程就称为表示学习,而我们今天介绍的就是【Trans系列】中的一个经典方法【TransE模型】。

知识表示的几个代表模型:翻译模型、距离模型、单层神经网络模型、能量模型、双线性模型、张量神经网络模型、矩阵分解模型等

TransE模型属于翻译模型:直观上,将每个三元组实例(head,relation,tail)中的关系relation看做从实体head到实体tail的翻译,通过不断调整h、r 和 t(head、relation和tail的向量),使(h + r) 尽可能与 t 相等,即 h + r = t

https://images2015.cnblogs.com/blog/522886/201607/522886-20160706183921999-1507157186.png

 

TransE 是基于实体和关系的分布式向量表示,由 Bordes 等人于2013年提出,受word2vec启发,利用了词向量的【平移不变现象】。

例如:C(king)−C(queen)≈C(man)−C(woman)   其中,C(w)就是word2vec学习到的词向量表示。

TransE 定义了一个距离函数 d(h + r, t),它用来衡量 h + r 和 t 之间的距离,在实际应用中可以使用 L1L2 范数。在模型的训练过程中,transE采用最大间隔方法,最小化目标函数,目标函数如下:

其中,S是知识库中的三元组即训练集,S’是负采样的三元组,通过替换 h 或 t 所得,是人为随机生成的。γ 是取值大于0的间隔距离参数,是一个超参数,[x]+表示正值函数,即 x > 0时,[x]+ = x;当 x ≤ 0 时,[x]+ = 0 。算法模型比较简单,梯度更新只需计算距离 d(h+r, t) 和 d(h’+r, t’)。这个过程和训练小狗一样,它做对了,就给骨头吃;做错了,就打两下。

 

模型训练过程

  • 首先,确定训练集,超参数γ,学习率λ
  • 初始化关系向量与实体向量,对于每个向量的每个维度在 [ -6/√k,6/√k)内随机取一个值,k为低维向量的维数,对所有的向量初始化之后要进行归一化
  • 进入循环:采用minibatch,一批一批的训练会加快训练速度,对于每批数据进行负采样(将训练集中的三元组某一实体随机替换掉),T_batch初始为一个空列表,然后向其添加由元组对(原三元组,打碎的三元组)组成的列表 :

T_batch = [ ( [h,r,t], [h',r,t'] ), ([ ], [ ]), ......]

  • 拿到T_batch后进行训练,采用梯度下降进行调参

 

 

参考:

https://blog.csdn.net/u011274209/article/details/50991385

https://www.cnblogs.com/chenbjin/p/5644457.html


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

相关文章

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

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

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

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

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

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

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

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

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

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

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

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

网络表示学习总结

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

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

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

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

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

知识图谱表示学习

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

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

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

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

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

知识表示学习模型

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

网络表示学习(network represention learning)

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

图表示学习

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

表示学习(特征学习)

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

表示学习与深度学习

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

表示学习(Representation Learning)

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

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

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

PCB设计流程步骤中的注意事项

PCB中文名称为印制电路板&#xff0c;又称印刷线路板&#xff0c;几乎所有电子设备中都会应用到PCB。这种由贵金属制成的绿色电路板连接了设备的所有电气组件&#xff0c;并使其能够正常运行。PCB原理图是一个计划&#xff0c;是一个蓝图。它说明的并不是组件将专门放置在何处&…