TransH模型原理

news2024/11/18 4:51:29

从TransE到TransH模型

在之前知识图谱模型中,我们介绍了TransE模型的基本原理,对于TransE模型其基本原理为:
h + r = t h + r = t h+r=t

其中 h h h是头实体向量, r r r是关系向量, t t t是尾实体向量。根据这个核心公式,我们不难发现其存在一定的局限性。比如当存在多对一关系的时候,假设 ( h 1 , r , t ) (h_1,r,t) (h1,r,t), ( h 2 , r , t ) (h_2,r,t) (h2,r,t)。根据TransE假设,可以确定的是:
h 1 + r = t , h 2 + r = t h_1 + r = t,h_2 + r = t h1+r=t,h2+r=t
这里 h 1 , h 2 h_1,h_2 h1,h2两个头实体的向量过于相近,与此同时,当存在 ( h , r , t ) (h,r,t) (h,r,t), ( t , r , h ) (t,r,h) (t,r,h)均在图谱中出现的时候,会计算出 r = 0 , h = t r = 0,h = t r=0,h=t.
总之来说,TransE模型在处理多对一, 多对多,自反关系的时候,会有很多局限性。为了解决上面我们提到的问题,衍生出TransH模型。

TransH基本思想

基本思想

针对每个关系 r r r,都给出一个超平面 w r wr wr,在 w r wr wr超平面上定义关系向量 d r dr dr,将原有的头实体 h h h和尾实体 t t t映射到超平面为 h r hr hr t r tr tr.要求正确的三元组满足下面公式:
h r + d r = t r hr + dr = tr hr+dr=tr
用一张图来表示这个过程:
在这里插入图片描述

基于TransE改进

我们之前提到了,在TransE模型中,如果 h 1 h1 h1 h 2 h2 h2向量都存在着同一关系 r r r和同一尾实体 t t t.那么在TransE中 h 1 h1 h1 h 2 h2 h2是相同的。(或者可以说是特别近似的)
而在TranH中,如果对于 h 1 , h 2 h1,h2 h1,h2向量都存在一个三元组 ( h 1 , r , t ) 和 ( h 2 , r , t ) (h1,r,t)和(h2,r,t) (h1,r,t)(h2,r,t)。通过TranH关系 r r r的超平面映射。则有:
h 1 r + d r = t r h_{1r} + dr = tr h1r+dr=tr
h 2 r + d r = t r h_{2r} + dr = tr h2r+dr=tr

也就是说 h 1 , h 2 h1,h2 h1,h2在超平面的映射是形同的或者近似的,但是对于 h 1 , h 2 h_1,h_2 h1,h2本身可以是不相近的,也就是可以区分的,如下图所示:
在这里插入图片描述

解决多对一关系的。

数学推导

首先,我们假设 w w w为关系平面 w r wr wr的单位法向量。在原始向量 h h h在法向量 w w w上的投影长度为:
∣ w ∣ ∗ ∣ h ∣ ∗ c o s ( θ ) |w|*|h|*cos(\theta) whcos(θ)
整理成向量的形式为:
在这里插入图片描述
其中,一定要注意 w w w是单位法向量。
也就是说,原始向量 h h h在关系平面 w r wr wr上的单位法向量的投影为:
h w = w T h w h_w = w^{T}hw hw=wThw
在这里插入图片描述
则,我们可以确定对于映射向量 h r hr hr有:
h r = h − h w = h r − w T h w h_r = h - h_w = h_r - w^{T}hw hr=hhw=hrwThw
同理,我们可以确定有:
t w = w T t w t_w = w^{T}tw tw=wTtw
t r = t − t w = t − w T t w t_r = t - t_w = t - w^{T}tw tr=ttw=twTtw
然后我们回一下,TransE目标函数为:
在这里插入图片描述
这里我们采用的是 L 2 L2 L2范数,(欧氏距离)。在TransH中,我们也采用这种方式,有兴趣的读者可以采用其他距离来计算。
与TransE函数目标类似,我们希望的是最小化在关系平面上的正确三元组的距离差,最小化错误三元组的距离差的相反数。也就是:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
则可以定义总的目标函数为:
损失函数,以及根据loss函数对参数进行求导,则公式定义为:
目标函数,总损失函数以及求导公式参考

论文上有关TransH知识

在这里插入图片描述

经验:

后续自己将损失函数都给其推导以下,将其全部都推导以下都行啦的样子与打算,会自己将其推导一遍,。

会自己将求导公式推导一遍。全部都整理完整都行啦的回事与打算。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/348777.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AI工衣工服智能识别检测算法 yolov7

AI工衣工服智能识别检测算法通过yolov7网络模型深度学习算法,AI工衣工服智能识别检测算法对场人员穿戴进行实时不间断监测,发现现场人员未按要求穿戴时,立即抓拍告警。YOLO 的核心思想就是把目标检测转变成一个回归问题,利用整张图…

Unity 编辑器工具之批量设置图片压缩

一个简单的工具,对Unity下的图片做批量压缩处理,主要有以下功能:自动取消 "Generte Mip Maps" 勾选;针对文件夹批量自动(或手动选择压缩格式)设置图片压缩并自动保存;单个图片文件的压缩设置;使用方法,右键单张图片(或者包含图片的文件夹)会打开一个设置窗口 如下,窗…

Vue笔记(2)——页面渲染与数据收集

一、条件渲染 v-show v-if 1. v-show 2. v-if v-else的块和v-if的块间不能有中断,否则无效 3. v-if与template配合 当同时条件渲染多个元素时,可以将v-if与template的配合使用,若条件值为false,vue模板解析时会直接去掉这一块…

AcWing语法基础课笔记 第二章 printf语句与C++中的判断结构

第二章 printf语句与C中的判断结构 学习语言最好的方式就是实践&#xff0c;每当掌握一个新功能时&#xff0c;就要立即将这个功能应用到实践中。 ——闫学灿 一、printf输出格式 注意&#xff1a;使用printf 时最好添加头文件 #include <cstdio>。 Int、float、double、…

基于共聚焦显微技术的显微镜和荧光显微镜的区别

荧光显微镜主要应用在生物领域及医学研究中&#xff0c;能得到细胞或组织内部微细结构的荧光图像&#xff0c;在亚细胞水平上观察诸如Ca2 、PH值&#xff0c;膜电位等生理信号及细胞形态的变化&#xff0c;是形态学&#xff0c;分子生物学&#xff0c;神经科学&#xff0c;药理…

GEE学习笔记 八十九:在自己的APP中使用绘制矢量(中)

这一篇先讲一下ui.Map.GeometryLayer(...)&#xff0c;也就是生成显示的绘制矢量图形图层&#xff0c;具体来讲就是地图上左上角绘制的图形后添加的图层。 1、什么是GeometryLayer&#xff1f; &#xff08;1&#xff09;直接在地图上加载定义的图层 //1. add normal layer …

基于springboot+bootstrap+mysql+redis搭建一套完整的权限架构【二】【整合springSecurity】

1、创建数据库 注意&#xff1a;mysql默认字符集为utf8&#xff0c;默认排序规则为utf8_general_ci。一般我们也会选择字符集为utf-8 MySQL在5.5.3之后增加了这个utf8mb4的编码&#xff0c;utf8mb4完全向下兼容utf8&#xff0c;为了节省空间&#xff0c;一般情况下使用utf8也就…

中国国家级地面气象站基本气象要素日值数据集(V3.0)

数据集摘要 数据集包含了中国基本气象站、基准气候站、一般气象站在内的主要2474个站点1951年1月以来本站气压、气温、降水量、蒸发量、相对湿度、风向风速、日照时数和0cm地温要素的日值数据。数据量为21.3GB。 (1)SURF_CLI_CHN_MUL_DAY-TEM-12001-201501.TXT 气温数据TEM, 包…

央行数据-一款查逆回购 LPR 货币供应量 资产负债表 Shibor 数据的专业工具

自己开发的APP, App Store搜索"央行数据" 即可下载欢迎大家下载,给修改意见逆回购、正回购、MLF、票据&#xff0c;俗称央行发钱房贷基准利率多少? M2/M1/M0, 资产负债表,Shibor 了解下这款APP是经济,投资理财,股市,房价分析参考利器适用于关注经济、货币政策的用户…

第五章.与学习相关技巧—权重初始值(随机初始值,Xavier初始值,He初始值)

第五章.与学习相关技巧 5.2 权重初始值 本节将介绍权重初始值的推荐值&#xff0c;并通过实验确认神经网络的学习是否会快速进行。 1.权值衰减 权值衰减就是一种以减少权重参数的值为目的进行学习的方法&#xff0c;通过减少权重参数值来抑制过拟合的情况发生。 2.权重初始值不…

表现良好的最长时段[前缀和思想子数组]

前缀和与最长子数组前言一、表现良好的最长时间段二、前缀和思想&子数组1、前缀和&map2、前缀和&单调栈总结参考文献前言 对于子数组/子串问题&#xff0c;紧密连续前缀和/滑动窗口/单调栈&#xff1b;挖掘内在规律&#xff0c;可以简化代码&#xff0c;降低时空复…

Python多进程同步——文件锁

多个进程共享同一份资源&#xff08;共享内存、文件等&#xff09;时&#xff0c;会涉及到资源竞争问题。为了解决这种问题&#xff0c;一般采取的措施是进程在访问资源前加锁保护&#xff0c;避免多个进程同时读写。本文介绍的Python文件锁可以用来解决多进程的同步问题。 目录…

天荒地老修仙功-第六部第二篇:Spring Cloud Eureka自我保护机制

Eureka Server 在运行期间会去统计心跳失败比例在 15 分钟之内是否低于 85%&#xff0c;如果低于 85%&#xff0c;Eureka Server 会将这些实例保护起来&#xff0c;让这些实例不会过期&#xff0c;但是在保护期内如果服务刚好这个服务提供者非正常下线了&#xff0c;此时服务消…

[SCTF2019]babyre 题解

对未来的真正慷慨&#xff0c;是把一切献给现在。 ——加缪 目录 1.查壳 2.处理花指令&#xff0c;找到main函数 这一操作过程可以参考下面的视频&#xff1a; 3.静态分析第一部分,psword1 4.静态分析第二部分,psword2 5.静态分析第五部分&#xff0c;psword3 6.根据ps…

国产Linux操作系统读写RFID、NFC、IC卡示例源码

Windows系统应该是我们接触最多、最为熟悉的电脑端操作系统。Windows操作系统只能安装在x86指令集的CPU电脑中&#xff0c;x64是x86的升级版&#xff0c;Intel、Amd是x86指令集CPU最大的2个生产商。Windows系统下&#xff0c;外设接口驱动一般都封装成DLL动态库内&#xff0c;通…

基于springboot开发众筹平台前后台管理系统【完整源码+数据库+运行指导】

一、项目简介 本项目是一套基于springboot开发众筹平台前后台管理系统&#xff0c;主要针对计算机相关专业的正在做bishe的学生和需要项目实战练习的Java学习者。 包含&#xff1a;项目源码、数据库脚本等&#xff0c;该项目可以直接作为bishe使用。 项目都经过严格调试&#…

2023csoj寒假训练10

csoj寒假训练10 A 并查集 两个黑球之间距离不够这个白球通过的话&#xff0c;视为一个集合 考虑怎样维护这样两两之间的关系&#xff0c;我们使用并查集 同时黑球与直线的关系也要做一次维护 最后可以直接判断是否上下两条直线是否在一个集合里面 如果在一个集合里面说明…

Spring容器演示——采用Spring配置文件管理Bean

一、创建Maven项目 创建Maven项目 - SpringDemo&#xff0c;设置项目位置以及组ID 修改项目的Maven配置 二、添加Spring依赖 在Maven仓库里查找Spring框架&#xff08;https://mvnrepository.com&#xff09; 查看Spring Core 选择版本 - 5.3.25 添加到pom.xml文件的元…

盘点程序员都不一定知道的小众网站!建议收藏,java编程必备!

俗话说的好&#xff0c;有一个趁手的工具解决了80%的疑虑。作为智慧物种的新新人类&#xff0c;手上掌握一两个不为人知的好用网站已经是件稀疏平常的事情。 今天我们就一起来看看&#xff0c;有哪些小众网站是程序员必备的&#xff01; 业内人士都知道&#xff0c;一直劈里啪…

windows下面安装Python和pip终极教程

Python的语言风格很nice&#xff0c;但是这门语言对于windows并不算很友好&#xff0c;因为如果是初学者在windows环境下安装&#xff0c;简直是折磨人&#xff0c;会遇到各种蛋疼的情况。本文希望提供傻瓜式的教程&#xff0c;能够令读者成功安装Python和pip。 第一步&#xf…