关联信息融合的知识图补全方法

       

目前,一些基于知识表示学习的补全方法没有充分考虑多步关系路径中各关系与直接关系之间的关联信息,以及头尾实体类型与直接关系之间的关联信息。 本论文对这些关联信息进行提取和利用,并提出了知识图补全的AiTransE模型。该模型利用首尾实体之间的多步关系路径中各关系的出现频率来计算与直接关系的关联程度,并利用首尾实体类型和直接关系类型进行匹配来获得它们之间的关联程度。最后,对两个关联度进行线性加权合并后引入目标函数,使模型对不同三元组给予不同的关注,提高模型知识表示学习性能。

AiTransE模型的5个部分:

       (1)过滤KG中三元组中两个实体之间的路径。 (2)提取多步路径中各关系与直接关系之间的关联信息。(3)将头尾实体类型与直接关系进行匹配,得到头尾实体与直接关系关联度的评价。(4)对两种关联信息进行整合,得到三元组的关联得分。 (5)在TransE模型的基础上,加入关联评分,得到AiTransE模型。

(1)过滤KG中三元组中两个实体之间的路径

       参考路径约束资源分配算法PCRA的思想来衡量路径的可靠性。 给定头实体h和路径p,路径的可靠性根据最终流经p到尾实体的资源量来测量,流向路径中e1节点的资源量的计算定义为:

        对于每个直接前驱节点k属于S(e1)(即直接连接到节点e1的节点),它的资源量Rp(k)会被平均地分给它的所有后继节点SN(k)。这样做的目的是为了模拟资源在路径上的流动情况,并通过这种方式来评估路径的可靠性。

        由于路径中部分实体出度较高,其所在路径的可靠性会明显降低,因此可靠性阈值设置为0.01,从实体之间存在的众多路径中获取高质量的信息并提高处理速度。

(2)提取多步路径中各关系与直接关系之间的关联信息

       为了获得KG中多级关系路径中的每个关系与直接关系之间的关联程度,对过滤后得到的路径中的关联信息进行统计。计算对应于直接关系ri的路径中关系的关联度,就是使用每个关系在多步关系路径中的出现次数度量关联度。

       分子表示关系在与目标关系的多步路径中出现的次数,“+1”是拉普拉斯平滑项,用于避免零概率问题。这意味着即使某个关系rj从未在多步路径中出现,分子仍会有一个值1,从而确保这个关系的关联度不为零。

       分母的作用是对所有可能关系的出现次数进行归一化,确保所有关系的关联度总和为1。

(3)获取类型相关信息

       Rt(r) 表示通过关系r连接的头尾实体类型集合。Et(h,t)表示实体h和t的类型的笛卡尔积所形成的所有可能类型组合的集合。

∣Rt(r)∩Et(h,t)∣是集合Rt(r) 和Et(h,t) 的交集的大小,即两者中成功匹配的类型组合的数量。

∣Rt(r)∣是集合Rt(r) 的大小,即关系r下所有可能类型组合的数量。

       这个公式计算的是成功匹配的比例,匹配比例越高,表明实体类型组合的关联度越强。

(4)相关信息的加权融合

       采用加权融合的方法将上述两种关联信息进行融合,来表示三元组的相关程度。 融合方法定义为:

(5)模型训练

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

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

相关文章

基于华为云智慧生活生态链设计的智能鱼缸

一. 引言 1.1 项目背景 随着智能家居技术的发展和人们对高品质生活的追求日益增长,智能鱼缸作为一种结合了科技与自然美的家居装饰品,正逐渐成为智能家居领域的新宠。本项目旨在设计一款基于华为云智慧生活生态链的智能鱼缸,它不仅能够提供…

BugReport中的网络差现象

一、摘要 当出现网络不好时(日志关键字“process data stall”),会出现com.android.networkstack.process 后台进程联网访问“http://www.google.cn/generate_204”进行网络检测的行为,会额外带来功耗电流。遇到这种情况,主要是环境因素&…

Echarts图表柱状图基本用法(横向、纵向、柱宽度、圆角、图表渐变色、图表滚动条、图例样式等)

效果图: JS: function chart(){var chartDom document.getElementById(这里写div的id名称);var myChart echarts.init(chartDom);var option;myChart.clear();//图表清除,用于更新数据重新加载图表option {//编辑图表整体布局宽、高等等grid:{top:20…

Android基于gradle task检查各个module之间资源文件冲突情况

做组件化开发的时候,我们经常会遇到各个不同的module之间资源文件冲突的问题,运行也不报错,但是会出现覆盖的问题,导致运行之后发送错误的效果。 所以我们需要利用一个gradlke 脚本task,来自动化检查资源文件冲突。 …

腾讯云-云直播

云直播(Cloud Streaming Services)为您提供极速、稳定、专业的直播云端处理服务,根据业务中不同直播场景的需求,云直播提供标准直播、快直播、慢直播和云导播台服务,分别针对大规模实时观看、高并发推流录制及超低延时…

Jenkins配置流水线任务-实践操作(Pipeline-script)

Jenkins配置流水线任务-实践操作(Pipeline-script) 1、新增jenkins 任务,选择流水线 2、参数化 3、流水线配置 pipeline {agent anystages {stage(aoePlugin_mysql) {steps {echo "xxx,数据库:Mysql"echo "${HOST},${USER_NAME}"b…

AGI|如何构建一个RAG应用?入门新手攻略!

目录 一、概述 二、过程概述 三、如何优化提问? 四、路由和高级查询 五、丰富索引结构 六、重排序上下文 七、总结 一、概述 Retrieval Augmented Generation RAG 检索增强的内容生成。 从字面上来看检索只是一种手段途径,在人工智能领域中存在多种…

leetcode计数排序

计数排序(counting sort)通过统计元素数量来实现排序,通常应用于整数数组。 给定一个长度为 的数组 nums ,其中的元素都是“非负整数” def counting_sort(nums: list[int]):"""计数排序"""# 完整实…

从调用NCCL到深入NCCL源码

本小白目前研究GPU多卡互连的方案,主要参考NCCL和RCCL进行学习,如有错误,请及时指正! 内容还在整理中,近期不断更新!! 背景介绍 在大模型高性能计算时会需要用到多卡(GPU&#xf…

三勾点餐|后台页面更新

项目介绍 三勾点餐系统基于thinkphp8element-plusuniapp打造的面向开发的小程序商城,方便二次开发或直接使用,可发布到多端,包括微信小程序、微信公众号、QQ小程序、支付宝小程序、字节跳动小程序、百度小程序、android端、ios端。 功能说明…

从头开始的可视化数据 matplotlib:初学者努力绘制数据图

从头开始学习使用 matplotlib 可视化数据,对于初学者来说,可能会有些挑战,但 matplotlib 的核心理念非常清晰:绘制图表需要了解如何设置图形、坐标轴以及如何用数据填充它们。我们可以通过一些简单的例子来逐步介绍基本步骤。 1. …

解析 MySQL 查询优化:提升性能的十个关键策略

1. 避免全表扫描 当查询的数据量非常大时,全表扫描的效率会很低。应尽量通过在WHERE和ORDER BY涉及的列上创建索引,避免全表扫描。索引就像一本书的目录,可以快速定位到需要的数据,而不用从头开始逐页查找。 示例: 如…

代码审计笔记-PHP

PHP 1.php的弱类型 PHP 的“弱类型”是指在这门编程语言中,变量的类型在赋值时会被自动推断,而不是在变量声明时显式地指定类型。这意味着在 PHP 中,您可以将不同类型的值赋给同一个变量,而不需要进行类型转换或重新声明变量。 举…

基于Opencv中的DNN模块实现图像/视频的风格迁移

一、DNN模块的介绍 1、简介 OpenCV中的DNN(Deep Neural Network)模块是一个功能强大的组件,它支持深度学习网络模型的加载和推理。虽然DNN模块不提供模型的训练功能,但它可以与主流的深度学习框架(如TensorFlow、Caf…

【python】极简教程3-函数

函数是将代码组织到可重用块中的一种方法。 函数调用 Python提供了许多内置函数,例如print: print(Hello, World!)函数调用通常包含函数名,后跟圆括号,括号内是参数列表。参数是传递给函数的数据,函数会基于这些数据执行操作。 数学函数 使用math函数前需要先导入mat…

并行 parallel broadcast partition pruning 分区裁剪 optimizer_dynamic_sampling=7

insert into abc 没有PDML所以不是全部并行 只有select 的情况 全部并行,没有 px send broadcast ,所以rows没从103M变成103*8M select *from A,B where A.Pkey B.Pkey and A.Pkey XX A B表都会进行分区裁剪 ----并行为什么更…

Linux操作系统——外存的管理(实验报告)

实验 Linux系统外存管理 一、实验目的 熟练Linux系统外存管理的方法与命令。 二、实验环境 硬件:PC电脑一台,网络正常。 配置:win10系统,内存大于8G 硬盘500G及以上。 软件:VMware、Ubuntu16.04。 三、实验内容 …

pymobiledevice3 xonsh-afc shell使用介绍

1、进入xonsh-afc shell: pymobiledevice3 apps afc bundle_id 2、进入shell后默认的目录是:[com.apple.mobile.house_arrest:/]$,这个目录是指定bundle_id的沙盒目录。 3、沙盒目录中如果包含带有空格的文件夹,直接使用cd App…

Python爬虫高效数据爬取方法

大家好!今天我们来聊聊Python爬虫中那些既简洁又高效的数据爬取方法。作为一名爬虫工程师,我们总是希望用最少的代码完成最多的工作。下面我ll分享一些在使用requests库进行网络爬虫时常用且高效的函数和方法。 1. requests.get() - 简单而强大 requests.get()是我们最常用的…

《CUDA编程》8.共享内存的合理使用

共享内存是 一种可被程序员直接操控的缓存,主要作用有两个: ①减少核函数中对全局内存的访 问次数,实现高效的线程块内部的通信 ②提高全局内存访问的合并度 将通过两个具体的例子阐明共享内存的合理使用,一个数组归约的例子和讨矩…