python知识推理知识图谱_知识图谱系列–知识推理

python知识推理知识图谱_知识图谱系列–知识推理摘要本文接着知识图谱系列–实体链接技术(1)[1]介绍知识推理方法。知识推理就是通过各种方法获取新的知识或者结论,这些知识和结论满足语义,其具体任务可分为可满足性(satisfiability)、分类(classification)、实例化(materialization)。[2]paper:Das,R.,Neelakantan,A.,Belanger,D.,&Mccal…

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

摘要

本文接着知识图谱系列–实体链接技术(1)[1]介绍知识推理方法。知识推理就是通过各种方法获取新的知识或者结论,这些知识和结论满足语义,其具体任务可分为可满足性(satisfiability)、分类(classification)、实例化(materialization)。[2]

paper: Das, R. , Neelakantan, A. , Belanger, D. , & Mccallum, A. . (2016). Chains of reasoning over entities, relations, and text using recurrent neural networks

实际当前介绍比较多的还是王昊奋老师的课程,介绍的OWL等规则及Jena工具。知识推理算法上实现效果尚不佳,这里介绍一篇Das, R. , Neelakantan, A. , Belanger, D. , & Mccallum, A. . (2016)的论文[3]。

本文首先介绍了基本的 Path-RNN 的架构,本文的一切改进都是基于该模型的。Path-RNN 的输入是两个实体之间的路径,输出推理出的二者之间的新关系。通过将关系之间的连接用 RNN 表示来进行推理。路径的表示是在处理完路径中所有的关系之后由 RNN 的最后的隐状态给出的。模型结构示意图如图1-2所示。图1

图2

本文提出的方法对这个模型做出的改进有:之前的方法最大的问题是要为每一个需要预测的 relation-type 单独训练模型。而本文只训练一个 RNN 来预测所有的 relation type,共享了 RNN 参数精度也显著提高了。本文共享了 relation type 的表示以及 RNN 的 composition matrices,这样同样的训练数据变量就大大减少了。训练模型的损失函数用的是negative log-likelihood如下所示:

本文使用了 neural attention 机制对多条路径进行推理。之前的工作只推理了 relation,没有推理组成路径上节点的 entities,本文对关系类型,实体和实体类型进行了联合学习和推理。

分别用 Top-k,average 和 LogSumExp 等多纬度为每一条路径的相似度评分加上权重,这样就考虑了每一条路径包含的信息,而不仅仅是评分最高的那条。

论文结果如图3-4所示:图4

参考文献debuluoyi:知识图谱系列–实体链接技术(1)​zhuanlan.zhihu.comv2-7f814de922e61f853cd4970307a61a91_180x120.jpg王昊奋知识图谱教程​www.chinahadoop.cn

[3] Das, R. , Neelakantan, A. , Belanger, D. , & Mccallum, A. . (2016). Chains of reasoning over entities, relations, and text using recurrent neural networks.

源码:https://rajarshd.github.io/ChainsofReasoning​rajarshd.github.iogithub.com/debuluoyi​github.com

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

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

(0)
上一篇 2022年6月6日 下午11:36
下一篇 2022年6月6日 下午11:36


相关推荐

  • 修改MySQL端口_windows安装mysql数据库

    修改MySQL端口_windows安装mysql数据库我的MySQL是解压免安装版的,要修改MySQL的端口,方法很简单:解压MySQL后,在MySQL根目录下有一个my-default.ini,打开它,上面的注释写的很清楚“#***DONOTEDITTHISFILE…..”将该文件复制粘贴一份,重命名为:my.ini,还是放在根目录下然后,里面有个#port=……去掉注释,并修改为你想要的端口,如port=3337…

    2022年10月3日
    5
  • Django(15)外键和表关系[通俗易懂]

    Django(15)外键和表关系[通俗易懂]外键删除操作如果一个模型使用了外键。那么在对方那个模型被删掉后,该进行什么样的操作。可以通过on_delete来指定。可以指定的类型如下:CASCADE:级联操作。如果外键对应的那条数据被删除了,

    2022年7月28日
    6
  • 什么是入门_初学板和专业板的区别

    什么是入门_初学板和专业板的区别1、Python,Pycharm,Anaconda区别与联系子曰:“工欲善其事,必先利其器”学习Python就需要有编译Python程序的软件,一般情况下,我们选择在Python官网下载对应版本的Python然后用记事本编写,再在终端进行编译运行即可。而在许多教程都推荐使用Anaconda和Pycharm,这到底是什么?对于小白来说,很懵逼。在学习Java时,正常情况选择安装JD…

    2022年8月29日
    3
  • PyTorch 中的数据类型 torch.utils.data.DataLoader

    PyTorch 中的数据类型 torch.utils.data.DataLoaderDataLoader是PyTorch中的一种数据类型。在PyTorch中训练模型经常要使用它,那么该数据结构长什么样子,如何生成这样的数据类型?下面就研究一下:先看看 dataloader.py脚本是怎么写的(VS中按F12跳转到该脚本) __init__(构造函数)中的几个重要的属性:1、dataset:(数据类型dataset)输入的数据类型。看名字感觉就像是数据库,…

    2022年5月20日
    95
  • zTree实现地市县三级级联Service接口[通俗易懂]

    zTree实现地市县三级级联Service接口

    2022年2月6日
    40
  • AdminLTE 背景色小结

    AdminLTE 背景色小结adminLTE背景色

    2022年7月27日
    15

发表回复

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

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