知识图谱推理研究综述9.3

news2024/11/26 8:33:51

在这里插入图片描述

综述分类

  1. 根据样本量大小的不同,将知识图谱推理方法分为多样本推理、少样本推理和零与单样本推理

KG定义:(Y)

知识图谱是以图的形式表示真实世界的实体与关系之间关系的知识库。

具体来说知识图谱是通过将应用数学、图形学、信息可视化技术、信息科学等学科的理论、方法、与计量学引文分析、共现分析等方法结合,并利用可视化的图谱形象地展示其核心结构、发展历史、前沿领域以及整体知识构架,达到多学科融合目的的现代理论。

知识图谱架构

G=(V,E)。
知识图谱的架构由数据层和模式层两部分构成。
在这里插入图片描述
数据层:数据以三元组的形式存储
模式层在数据层之上,是知识图谱的核心,存储的是经过提炼的知识。模式层是数据层的概念模型或逻辑模型,对数据层规范和约束;模式层更适用于知识图谱推理。

知识图谱的发展历史

知识图谱的研究源于2000年XML大会上Tim Berners Lee提出的语义Web的理念,最初的作用是为Web网页添加语义信息。

2005年,美国Metaweb公司成立,致力于开发共享的世界知识库。Metaweb基于维基百科等公开的数据集,提取出现实世界中人或事物(实体)以及它们之间的关系,并且以图的结构存储在计算机中。

2010年,谷歌收购了Metaweb公司,并在2012年提出了知识图谱的概念。

知识图谱

DBpedia、Freebase、NELL、Probase。

按照构建方式不同:手工构建(WordNet、HowNet。规模小,能够确保准确性与完整性,质量高但耗时长)和自动构建(NELL、WikiData。自动抽取实体与关系,规模大,存在大量不完整的关系、噪声信息等,常用在知识图谱补全、查询等研究中)。

知识图谱应用

大批知识图谱被广泛应用于知识图谱补全与去噪的学术研究领域。知识图谱在问题系统、推荐系统、机器翻译等领域发挥重要作用,并已在医学诊断、金融安全、军用等领域展示出很好的应用前景。

知识图谱推理分类(样本多少)

多样本知识图谱推理

常用基于传统规则表示的推理、基于分布式的推理、基于神经网络的推理等

基于规则表示的推理

单跳推理:

  • NELL知识图谱内部采用的是简单的一阶关系学习算法进行推理[1-11]。

  • ProPPP是一阶概率语言模型,该模型生成了有向证明图,节点对应查询的子句,边对应规则,推理过程为一个查询子句通过规则到另一个查询子句[1-12]。

  • Tensor Log方法是基于可微的过程,给每一个关系定义一个{0,1}的操作矩阵,关联一个单样本向量,(i,j)表示第i个实体与第j个实体之间是否存在关系,如果存在为1,否则为0[1-13]。该方法可以将逻辑规则的推理形式转化为操作矩阵相乘。

  • SDType和SDValidate,利用图中的属性和实体类型补全三元组和识别错误的三元组[1-14]。SDType实现了一种类似加权的投票机制,为每一个属性赋予权重。SDValidate首先计算关系-尾实体的频率,然后计算低频三元组的得分,但得分小于设定阈值的时候被判定为潜在错误的三元组。

  • 基于不同的模式评估知识图谱的三元组的质量[1-15]。

基于规则的单条推理方法 可计算性低、代价高、方法简单、使用的知识图谱较少、速度较慢

多跳推理规则更加复杂,如随机行走规则、传递性规则等。以使用规则区域的大小为标准,可以将其分为基于全局的规则和基于局部的规则推理两种。

(1)基于全局的推理

  • PRA算法将推理路径作为特征,预测实体间是否存在特定的关系,通过将正例三元组的头尾实体替换得到负例三元组,然后训练回归分类器,再基于受限和加权的随机行走策略,进一步改进该模型的路径产生过程[1—16-17]。 试图产生潜在能够有助于推理的路径,减少路径的数量,但是必须实体之间有联系,否则无效。
  • 基于内容和结构的CSRI模型,结合了内容信息和结构信息,最终的概率得分也由影响因子和结构因子两部分组成[1-18]。
  • 通过5亿网络文本语料挖掘的实体和边(关系)增广知识图谱的关系,然后增广知识图谱上推理[1-19]。
  • 知识图谱关联规则挖掘算法AMIE,挖掘传递性规则[1—20-21]。维护一个规则队列,将其初始化为空规则,并迭代地从规则队列中每次取出一个规则,如果规则是封闭规则且未被删除,则输出该规则。

以上基于全局的图结构在整个知识图谱上进行推理,*成本较高,而知识推理一般是在局部图结构上进行;另一方面,全局的细粒度太粗,局部信息的细粒度能够提高推理的准确性。

(2)基于局部的推理

  • SFE算法使用广度优先策略对头实体的相邻实体进行遍历,然后在局部结构进行特征抽取,之后进行推理[1-22]。
  • 层次随机行走推理算法,上层对应于全局学习的视角,下层对应于知识图谱局部的学习推理[1-23]。

多样本知识图谱基于规则的推理存在效率低下、噪声信息大、规则较少等缺点,并且当前的规则较少,人工挖掘更多复杂规则的代价也很高,可解释性难以保证。但是通过关联局部的结构信息弥补单纯规则的推理值得进一步的研究。

基于分布式的推理

这一块首先要通过模型得到低维向量表示,然后用向量操作来进行对应只是图片的推理。

(1)单跳推理

  • TransE——第一个基于转移的表示模型,也是分布式的基础模型[1-24]。
  • TransH 在↑基础上为每个关系多学一个映射向量,用于将实体映射到关系指定的超平面[1-25]。
  • m-TransH直接建模多元关系,关系的损失函数不通过将多远关系分解为二元关系进行分析,而是将多元关系中的每一个看成一个角色,直接建模为角色函数的累加。
  • TransA引入Wr矩阵为不同维度的向量进行加权,并利用LDL方法对Wr进行分解,然后得到一个对角阵Dr,对角线上的元素表示不同维度上的权重。通过图像来描述不同的损失度量函数,给人直观的感觉[1-27]。
  • TransG能够解决关系的多语义问题,利用贝叶斯非参数无限混合模型对一个关系生成多个翻译部分,根据三元组的特定语义得到其中的最佳部分,并利用最大数据相似度原理进行训练,优化采用SGD[1-28]。
  • TransR在单独的实体空间和关系空间建立实体和关系的表示,每个关系对应一个空间,有一个映射矩阵,关系通过对应的映射矩阵映射到关系空间后,可以将关系向量转化成两个实体向量的转移。CTransR还将关系按照一定的类型划分为关系组,并以组为单位进行接下来的推理[1-29]。
  • TransD的实体和关系均用两个向量表示,第一个向量表示实体或关系的意义,第二个向量用来构造映射矩阵,通过对应关系和实体的第二个向量的乘积来表示实体的映射矩阵[1-30]。还考虑了实体和关系的多样性。
  • TransM直接根据关系的映射属性预先计算每个训练三元组的权重,用于加权损失函数[1-31]。
  • TranSparse解决了KG中关系链接的尸体堆数目差异很大以及关系中头尾实体的数目差异很大的问题[1-32]。
  • SSE学习知识图谱实体和关系的表示,利用实体语义类信息强制表示空间几何结构语义平滑[1-33]。
  • TransE-NMM在TransE的基础上定义基于邻居的实体表示,引入邻居实体信息进行实体和关系的表示学习[1-34]。
  • RESCAL基于三阶张量进行表示学习,如果三元组成立,三阶张量上对应的元素值为1,否则为0[1-35]。 通过最小化重构误差学习实体和关系的表示提高了推理的准确性但内存占用量大,计算速度慢。
  • TRESCAL阴雨实体类型信息这一关系域知识,在损失函数的计算中排除不满足关系特定的试题类型约束的三元组,加速了计算[1-36]。
  • ARE是新的张量分解模型,学习知识图谱三元组的隐性和观察到的模式,用一个附加页增广RESCAL模型,对应观察到的模式,并且可以通过减少不连接的部分来降低RESCAL分解需要的阶[1-37]。
  • 基于复数值向量表示的矩阵分解方法进行链接预测[1-38]。关系矩阵的分解形式化为对称矩阵和反对称矩阵的和,能够更好地处理对称和反对称关系。

上述方法准确率高,计算速度相对较快,但都不能处理动态变化的知识图谱。

  • RSTE模型采用分治策略,从知识图谱中采样多个更小规模的子图,通过RESCAL进行连接预测,大大降低了内存的占用,减少了运行时间,可以快速对动态变化的知识图谱进行增删操作[1-39]。
  • KG2E模型直接建模实体和关系的确定性,在多维高斯分布空间中学习知识图谱的表示[1-40]。每个实体或关系用一个高斯分布表示,并使用均值指示实体位置,用协方差传递实体或关系的不确定度。
  • 基于流行的表示模型ManifoldE将三元组在向量空间的一个点扩展到了一个流行结果,取得了很好的链接预测效果[1-41]。

基于张量分解的方法具有可解释性强、实验的准确性高等优点,但是时间复杂度较其他方法高,所以推广使用的代价较高。
基于空间表示的方法在空间上模拟三元组结构的分布,推理能力较强,但对该方法的研究不多。

(2)多跳推理

  • PTransE区别对待实体间不同的路径。在TransE的基础上多建模了关系路径约束,通过关系的组合操作建模路径,然后对实体间的多条路径进行加权,提高了推理的准确性[1-42]。
  • RPE——关系路径表示的组合学习模型,推理效果较好[1-43]。
  • 图感知的知识表示方法GAKE,利用图上下文信息的同时设计了attention机制,提高了样本信息的利用率与推理结果[1-44]。
  • 使用邻居信息和内存网络发掘样本数据的潜在关系信息,并把门控机制、结构和邻居的表示集成到联合表示中,丰富实体的特征信息。
  • 基于组合的方法首先通过随机行走找到实体之间的多条路径,并根据其与查询的语义相似性计算每条路径的注意力,然后根据它们的注意力聚合这些路径的表示,最终结果基于该聚合表示和查询的相似性形成[1-45]。
  • 一种新的RL框架用于学习更准确的链路预测模型,该模型将KG中的链路预测问题构建为概率图形模型(PGM)中的推理问题,并使用最大熵RL来最大化预期回报。

基于神经网络的推理

(1)单跳推理

  • NTN用双线性张量层代替传统的神经网络层,将头实体和尾实体联系起来,能够在不同的维度下表示出实体间复杂的语义联系[1-47]。
  • 通过类似的神经张量网络模型预测知识图谱中的新关系,通过从文本无监督学习到的词向量初始化实体表示,可以实现类似零样本的效果,甚至可以预测知识图谱中未出现实体的关系[1-48]。
  • 共享变量神经网络模型ProjE,通过学习知识图谱的实体和边的联合嵌入,并通过对标准损失函数的更改,来填补知识图谱中缺失的信息[1-49]。
  • ConvKB通过使用卷积神经网络,能够捕捉实体和关系之间的全局关系和过渡特性[1-50]。

基于神经网络的单跳推理的优点是能够通过利用神经网络强大的学习、推理能力来建模知识图谱三元组,但是神经网络的可解释性一直是一个很严重的问题。

(2)多跳推理

在神经网络的多跳推理中,主要有两种方法:通过神经网络建模多跳路径 和 模拟人脑的过程进行推理。前者充分学习多跳路径的表示,然后根据路径的表示和直接关系表示的相似度来得到得分;后者主要利用一个外部存储结构模拟人脑的存储,利用人脑的强大推理能力得到推理结果。

  • [1-51]为每个关系类型训练一个RNN得到任意长度的组合表示,通过输入路径上的关系向量和当前的路径向量产生下一步的组合向量,最后一步的输出作为路径向量的表示。但其只考虑一条路径,没有考虑其他路径以及不同路径的权重问题,也没有考虑实体的建模。
  • [1-52]通过训练一个RNN模型预测所有的关系类型,然后利用注意力机制在多条路径上进行推理,并联合学习与推理关系类型、实体以及实体关系,提高了在多样本知识图谱上推理的准确性和实用性。
  • DNC包含了一个LSTM神经网络控制器和可以读写的外部存储矩阵。知识图谱三元组向量作为输入,通过神经网络对外部存储进行读写,模拟人脑利用先验知识学习推理新知识,并更新已有的知识[1-53]。
  • TravNM引入单个网络层,然后将其用作TravNM的多层神经网络的构建块,并开发灵活的内存更新方法,以便于在多跳推理期间将中间实体信息写入存储器[1-54]。

上述基于神经网络的多跳推理方法可解释性更强。

混合推理方法

(1)混合规则和分布式表示的推理

  • 使用分布式辅助规则,并加入了上下文关系,提出了上下文敏感的方法[1-55]。

  • 通过矩阵分解直接学习一阶逻辑表示,首先从三元组训练集产生推理规则集合,然后将证明图转为一个矩阵,进行映射推理[1-56]。

  • KALE模型在一个统一框架中通过三元组和规则联合建模,将三元组和规则都形式化为对应的公式[1-57]。
    (2)混合神经网络与分布式表示的推理

  • 使用R-GCN建模知识图谱,并且通过邻居实体节点产生隐性特征向量表示,通过头实体向量的转置变量、关系对角矩阵与尾实体向量的乘积表示得分函数,通过模型的较差熵损失进行训练学习[1-58]。
    (3)混合神经网络和规则的推理

  • Neural在TensorLog的基础上引入了注意力机制和外部存储的神经网络系统[1—59,13]。

少样本的知识图谱推理

基于元学习的推理

基于相邻实体信息的推理

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

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

相关文章

培训机构如何利用小程序提升服务质量

近年来,小程序成为了许多企业和机构进行线上业务拓展的新方式。对于培训机构来说,构建一个具有吸引力的小程序可以帮助他们更好地与学员进行互动和沟通,并提供更便捷的学习服务。那么,如何使用第三方制作平台来构建一个具有吸引力…

线性代数的学习和整理18:什么是维度,什么是秩?关于秩的各种定理 (未完成)

目录 1 矩阵的秩 矩阵的秩 2 求秩的方法 矩阵的维度秩 矩阵的维度 向量的模,矩阵的模-没有把,难道是面积? 矩阵的平直概念 5 矩阵的初等变换(矩阵等价概念的引出) 0 问题引出:什么是秩?…

UG\NX CAM二次开发 查询工序所在的几何组TAG UF_OPER_ask_geom_group

文章作者:代工 来源网站:NX CAM二次开发专栏 简介: UG\NX CAM二次开发 查询工序所在的几何组TAG UF_OPER_ask_geom_group 效果: 代码: void MyClass::do_it() { int count=0;tag_t * objects;UF_UI_ONT_ask_selected_nodes(&count, &objects);for (in…

第二章 USB应用笔记之USB通讯基础

第二章 USB应用笔记之USB主设备和从设备 文章目录 第二章 USB应用笔记之USB主设备和从设备1.连接 > 2.主机枚举USB设备 > 3.有效数据传输,功能控制1.连接检测USB系统主要包括USB主机和USB设备两种设备。USB拓扑结构USB连接检测全速D上拉1.5K电阻(高…

Kafka核心原理第二弹——更新中

架构原理 一、高吞吐机制:Batch打包、缓冲区、acks 1. Kafka Producer怎么把消息发送给Broker集群的? 需要指定把消息发送到哪个topic去 首先需要选择一个topic的分区,默认是轮询来负载均衡,但是如果指定了一个分区key&#x…

第五章 树与二叉树 六、树的存储结构

一、双亲表示法(顺序存储) 结点的指针指向父节点的位置 #define MAX_Tree_Size 100 //双亲表示法 typedef struct {int data;//数据域int parent;//双亲位置域 }PTNode;typedef struct { //树的定义PTNode nodes[MAX_Tree_Size]; //双亲表示int …

【Java实战项目】【超详细过程】—大饼的图片服务器2

代码操作数据库 pom.xml1.juit2.gson3.mysql依赖4.servlet DBUtil类Image类ImageDao类 本文主要讲述了用代码对数据库的操作,maven项目创建后进行如下操作: maven项目创建可以看这里:Servlet-day01 这里面有详细介绍 pom.xml pom.xml中放置了…

Vulnhub: Inferno: 1.1靶机

kali:192.168.111.111 靶机:192.168.111.233 信息收集 端口扫描 nmap -A -sC -v -sV -T5 -p- --scripthttp-enum 192.168.111.23380端口目录爆破 gobuster dir -u http://192.168.111.233 -w /usr/share/wordlists/dirbuster/directory-list-2.3-me…

使用Docker配置深度学习的运行环境

文章目录 推荐实验环境前言docker安装docker操作docker配置常见方法(安装包、联网、程序管理器)安装驱动的前提要求传统方法安装驱动程序程序管理器安装联网安装deb包安装 安装完成后的设置非传统方法安装-通过容器安装驱动的前提要求安装NVIDIA-Contain…

UG\NX CAM二次开发 获取工序类型 UF_OPER_ask_oper_type

文章作者:代工 来源网站:NX CAM二次开发专栏 简介: UG\NX CAM二次开发 获取工序类型 UF_OPER_ask_oper_type 效果: 代码: void MyClass::do_it() { int count=0;tag_t * objects;UF_UI_ONT_ask_selected_nodes(&count, &objects);for (int i=0; i<co…

Kotlin语言基础(一)Kotlin语言特性

Kotlin语言概述&#xff08;一&#xff09;- 语言特性 Kotlin是一种高级强类型语言&#xff0c;可以在Java VM上运行。 它具有如下特性&#xff1a; 1.代码简洁&#xff0c;代码量少&#xff0c;易学易懂。 例如&#xff1a; /*** 定义数据类Student* property id String 学…

14. Loadrunner 详细介绍以及使用

目录 1. Loadrunner 环境搭建 2. Loadrunner 介绍 3. Loadrunner 三大组件之间的关系 4. Loadrunner 脚本录制 4.1 WebTours 项目 4.1.1 如何启动项目 4.1.2 如何访问项目 4.1.3 相关配置 4.2 脚本录制 4.3 脚本加强 4.3.1 插入事务 4.3.2 插入集合点 4.3.3 插入检…

Marin说PCB之TDK和Murata电容哪家强?

不是各位朋友是否听说华为新款手机MATE60Pro已经开始发布销售了&#xff0c;小编我听到这个消息后很是震惊啊&#xff0c;这两年老美一直打压我们中国芯片行业的发展&#xff0c;而且拿华为开刀&#xff0c;搞了一些很恶心的手段来限制和打压华为的发展。所以当我听到新款的MAT…

JavaScript基础代码

以下是一些 JavaScript 基础代码示例&#xff1a; 变量定义 // 定义字符串变量 var name "John";// 定义数字变量 var age 30;// 定义布尔变量 var isMarried false;控制语句 // if 语句 if (age > 18) {console.log("成年人"); } else {console.…

点云处理库Open3D基础操作1

文章目录 基础介绍Open3D读取文件Voxel降采样裁剪点云Open3D点云和numpy数组的转换点云的bounding box 欢迎访问个人网络日志&#x1f339;&#x1f339;知行空间&#x1f339;&#x1f339; 基础介绍 Open3D是英特尔公司于2015年发布的开源3D视觉算法库&#xff0c;截至2023年…

QT(9.3)定时器,绘制事件

作业&#xff1a; 自定义一个闹钟 pro文件&#xff1a; QT core gui texttospeechgreaterThan(QT_MAJOR_VERSION, 4): QT widgetsCONFIG c11# The following define makes your compiler emit warnings if you use # any Qt feature that has been marked deprecat…

C#,《小白学程序》第八课:列表(List)其二,编制《高铁列车时刻表》与时间DateTime

1 文本格式 /// <summary> /// 车站信息类 class /// </summary> public class Station { /// <summary> /// 编号 /// </summary> public int Id { get; set; } 0; /// <summary> /// 车站名 /// </summary&g…

2023年项目进度管理平台排行榜

项目进度管理是项目管理学科中的一门重要课程&#xff0c;通过合理的项目计划&#xff0c;有效控制项目进度&#xff0c;保障项目能够按时交付。 不过&#xff0c;项目进度管理并不是一件简单的工作&#xff0c;不仅需要面对项目过程中各种突发情况&#xff0c;还需要做好团队协…

函数指针与std::function<>对回调函数的实现与性能分析

函数指针与std::function<>都可以作为函数形参&#xff0c;通过接受另一个函数的地址来实现回调函数的功能&#xff0c;但是它们之间的性能差异非常明显。下面分别介绍对回调函数的实现与各自的性能分析。 函数指针与std::function<>对回调函数的实现 先在类中分…

植物大战僵尸植物僵尸表(一)

前言 此文章为“植物大战僵尸”专栏中的第005刊&#xff08;2023年9月第一刊&#xff09;。 警告&#xff1a; 1.仅适用于无名版&#xff1b; 2.可能存在遗漏&#xff0c;如发现请联系作者。 植物表 植物名称植物图片豌豆射手寒冰射手双发豌豆射手机枪射手裂荚射手三线射手…