知识图谱构建技术综述-2.3知识推理-学习笔记「建议收藏」

知识图谱构建技术综述-2.3知识推理-学习笔记「建议收藏」文章信息:文章末尾目录2.3节知识推理2.3.1基于规则的推理2.3.2基于分布式特征表示推理(1)基于翻译模型的知识推理(2)基于张量分解的知识推理(3)基于语义匹配模型的知识推理2.3.3基于深度学习的推理2.3节知识推理知识推理:根据已有的实体关系来推断出新的事实结论。知识推理研究分析分为3种:2.3.1基于规则的推理包含:谓词逻辑推理、本体推理和随机推理。【63】等提出一阶归纳学习就是谓词逻辑推理,可以自动提取高质量的事实并去噪

大家好,又见面了,我是你们的朋友全栈君。

文章信息:文章末尾,只是一个自我学习过程的积累,红色为可探索思考的地方。

目录

2.3 节 知识推理

2.3.1 基于规则的推理

2.3.2 基于分布式特征表示推理

(1)基于翻译模型的知识推理

(2)基于张量分解的知识推理

(3)基于语义匹配模型的知识推理

2.3.3 基于深度学习的推理


2.3 节 知识推理

知识推理:根据已有的实体关系来推断出新的事实结论。

知识推理研究分析分为3种:

2.3.1 基于规则的推理

包含:谓词逻辑推理、本体推理和随机推理。

【63】等提出一阶归纳学习就是谓词逻辑推理,可以自动提取高质量的事实并去噪声,但效率很低。

【64】等提出一种本体寻路算法(Ontological Pathfinding algorithm,OP)通过一系列并列优化技术实现大规模的知识图谱,在FreeBase数据库中挖掘第一个规律集。

【65】拟解决实体关系推理中准确率和召回率低的问题,提出双层随机游走算法(Two-tier Random Walk algrithm, TRWA)算法。TRWA利用无向图来表述知识图谱。除此之外,TRWA在全局模式和局部模式两种角度对路径特征进行评估,提高算法的准确率和召回率。

2.3.2 基于分布式特征表示推理

该推理方法下包括3中知识推理方法:

(1)基于翻译模型的知识推理

【66】等提出TransN模型,目的是整合三元组周围邻域的信息,采用对象嵌入和上下文嵌入表示实体和关系,提升了知识推理的性能。

但是不足:TransE和TransN都无法完全满足所有关系的建模。基于不足【67】等提出了Rotate模型,将实体关系看作是头实体向量向尾实体向量的旋转角度(图下图),可以建模和推断各种关系模式,提出自对抗负采样技术,是的模型效果提升。

知识图谱构建技术综述-2.3知识推理-学习笔记「建议收藏」

【68】等提出在TransE的基础上引入三元组邻域信息,提出聚合邻域信息的表示模型Trans-NA ,为实体选择最相关的属性作为邻域信息,有效缓解数据稀疏问题。

【69】*等针对知识推理可解释性差的问题,将知识表示与强化学习相结合,提出RLPTransE,将知识推理问题转化为马尔科夫序列决策问题,增强了知识推理的可解释性。

(2)基于张量分解的知识推理

一般是将知识图谱中的实体关系三元组通过张量分解方法进行表示学习,分解得到的向量进行重构为张量,其元素值高于一定阈值的作为候选推理结果。

2011年【70】等提出RESCAL如下图所示,将高维关系数据分解为三阶张量,降低了数据维度的同时有保持了数据原有特征,在知识推理中取得较好效果。

知识图谱构建技术综述-2.3知识推理-学习笔记「建议收藏」

 RESCAL缺陷:计算复杂,占内存很大,因此【71】提出了新的知识推理模型TRESCAL引入实体类型信息来约束并排除不满足关系的三元组,显著降低了训练时间并提高了预测性能

2017年,【72】等通过对KG进行路径张量分解,意在解决KG推理中忽略实体间的关系路径问题,可高效地挖掘实体间的关系与新事实,有助于完善KG。

(3)基于语义匹配模型的知识推理

【73】提出了DistMult模型,将RESCAL中的每一个关系向量转换为对角矩阵来对RESCAL进行简化,减少参数,在对现有的知识库的推理中表现出较好的效果。缺陷:RESCAL还是DistMult,都忽略了实体和关系的语义多样性。

2017年【74】等认为每个关系都反映了相应实体的某些语义关系,可以通过选择性的加权对这些关系进行表示和区分,提出了统一加权模型(Unified Weighted Model,UWM)和独立加权模型(Independent Weighted Model, IWM)关系推理算法,计算效率较高。

2019年【75】等引入超复数来建模实体和关系,同样将关系看作超平面内头实体到尾实体的旋转,相对于Rotate只有一个旋转平面,QuatE存在两个旋转平面,其自由度泛化能力更好

2.3.3 基于深度学习的推理

2013年【76】提出一种新的神经张量网络模型(Neural Tensor NetWork,NTN)来建模关系信息。如下图所示。

知识图谱构建技术综述-2.3知识推理-学习笔记「建议收藏」

NTN采用双线性张量层直接将两个实体向量跨多个维度联系起来,刻画实体之间复杂的语义联系,显著提高推理性能。

【77】提出了一种具有单一性和高容量性的RNN模型,该模型的所有目标关系共享RNN的关系类型表示和组合矩阵,减小了训练参数数量,(准确性高,实用性强)

2018年【78】设计KG的深度序列模型(Deep Sequential model for KG, DSKG),分别用独立的RNN单元处理实体层和关系层,取得较好效果。

2020年【79】针对实体句中的次序特征,提出了基于LSTM的知识图谱嵌入方法(Learning Knowledge Graph Embedding with Entity Descriptions based on LSTM Networks , KGDL),采用LSTM实体描述的句子进行编码,然后联合TransE与LSTM模型将实体描述的句子嵌入与三元组编码为实体描述,实现知识推理。

2018年【80】提出了用于知识推理的一种卷积神经网络模型ConvE,该模型采用二维卷积的嵌入来对KG中的新链接进行推理。由于ConvE的交互数量有限,【81】提出了InteractE,通过特征置换,特征重塑以及圆形卷积来捕捉额外的异构特征,增加实体关系间的交互次数。

【82】等认为ConvE丢失了三元组的整体的结构信息,提出了基于CNN的知识表示模型(Convolutional knowledge embeddings, ConvKE),将三元组的各个元素整合到一起提取整体的结构信息,通过维度变化策略增加卷积滑动窗口步数,增强知识之间的信息交互。

KG用于深度学习推理。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/138884.html原文链接:https://javaforall.net

(0)
上一篇 2022年5月30日 下午5:46
下一篇 2022年5月30日 下午6:00


相关推荐

  • golang 2021最新激活码_通用破解码[通俗易懂]

    golang 2021最新激活码_通用破解码,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月17日
    66
  • 解决Eclipse中文乱码

    解决Eclipse中文乱码使用Eclipse编辑文件经常出现中文乱码或者文件中有中文不能保存的问题,Eclipse提供了灵活的设置文件编码格式的选项,我们可以通过设置编码格式解决乱码问题。在Eclipse可以从几个层面设置编码格式:Workspace、Project、ContentType、File 本文以Eclipse3.3(英文)为例加以说明: 1.设置Workspace的编码格式: Windows

    2022年5月13日
    41
  • vi的常用命令

    vi的常用命令

    2021年10月8日
    47
  • C语言之随机数函数( rand() )的使用方法

    C语言之随机数函数( rand() )的使用方法文章出自个人博客 https knightyun github io 2018 04 25 c rand number 转载请申明 在程序设计中 难免会使用到随机值函数 其原理与语法大多类似 接下来以 C 语言为例介绍其随机值函数 rand 用法 原理引用百度百科 首先 需要包含头文件 include stdlib h rand 函数是按指定的顺序 stdlib h

    2026年3月20日
    2
  • 计算机组成原理核心知识点总结&面试笔试要点[通俗易懂]

    作为一名计算机专业的学生,计算机组成原理、计算机网络、操作系统这三门课程可以说是专业核心基础课,是至关重要的,其内容是一名合格的coder所必备的知识集;非科班出身的程序员要是想要有所提升,也需要认真学习这三门课程,可以快速形成计算机知识的结构体系,理解计算机底层原理,在工作实践中可以借鉴优秀的设计;而且很多互联网公司在笔试和面试中都会涉及到这三门课程的知识点,因此我通过视频学习对这三门课程就行…

    2022年4月12日
    69
  • R语言|for循环————R语言入门到入土系列(八)

    R语言|for循环————R语言入门到入土系列(八)本文将对 R 语言 for 循环进行详细解读 以 1 到 100 连加求和与 1 到 10 的阶乘为例简单讲解 for 循环的使用

    2026年3月20日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号