无需人工!无需训练!构建知识图谱 BERT一下就行了!

文:Sherry

今天给大家带来的是一篇号称可以自动建立知识图谱的文章《Language Models are Open Knowledge Graphs》,文中提出了一个叫Match and Map(MAMA)的模型,无需人工!无需训练!只需语料和预训练好模型,就可以从头建立出知识图谱,甚至可以挖掘出人类发现不了的新关系。当Wikipedia再次邂逅BERT,知识图谱就诞生啦!

通常来说知识图谱的建立需要人工定义好的关系或者是实体类别,然后基于这些我们称之为schema的骨架进行建立整个图谱。而传统的自动识别关系及实体的方法大都基于训练。而MAMA就不一样了,它就像妈妈一样可以帮我们实现全自动图谱建立:

  • 不需要人工定义的schema,而是依靠开放实体抽取和开放关系抽取的方法去建立图谱。

  • 不需要在开放关系抽取或者实体抽取的任务上训练,而仅仅依靠预训练模型就可以完成建立知识图谱的整个过程。

  • 模型不针对一个单一的关系逐条分析,一次喂给MAMA整个段落,她就回报给你所有triple

到底是怎么做到的呢?

开放知识图谱

想要建立MAMA,我们先回顾一下知识图谱中都有哪些基本元素:(熟悉知识图谱的同学们可以跳过这部分)知识图谱,我们想要把大量的非结构化的知识(一般是大量的网页及其中的文本)转化成结构化的图结构,那我们的基本结构中既要有知识也要有图。目前,知识图谱中一共储存两类知识:一类是实体,一般是诸如人名地名这类的名词;另外一类是这些实体之间的关系,比如出生地,职业。有了知识,我们只需要把它建立成图结构,那么把实体看成图中的点,关系看成图中的边就可以了。开放知识图谱一般用三元组(起始实体,关系,结束实体)来表示边,所有边都被以这个形式储存之后图谱就建立好啦。

MAMA怎样构建图谱呢?

要构建知识图谱第一步是获取基本原料:一个清洗好的语料库和一个预训练模型。 文中直接采用了维基百科作为语料,预训练模型则直接用发布的模型就可以了。

接下来关键的一步是自动抽取三元组,也是本文的主要贡献点。 实体抽取的技术已经相对成熟,给定一个语料中的段落,我们先用开源工具抽取出它的所有实体,来构成我们可能建立的关系候选。我们按照他们在句子中出现的顺序,分为头实体和尾实体。然后重点来了!我们利用BERT这类预训练模型的注意力权重来提取实体间的关系。

对于一个(头实体,尾实体)对,我们用Beam search的方法从一个头实体出发生成一个到尾实体的序列。比如图中从Dylan出发,以songwriter结束。对于每一位置,我们看注意力权重矩阵里attend到这个实体的这一列,并且只关注在句子中当前位置之后的token的注意力权重,选择权重最大的下一个token加入当前序列。例子中从Dylan出发选择了is这个token,然后重复之前的操作,下一个我们选到了songwriter,那么搜索结束,我们就得到了一个(Dylan,is, songwriter)的序列。聪明的小伙伴们已经发现了,这样提取出来的序列不就是我们想要的三元组吗?没错!我们再加上一些修修补补,MAMA就可以为我们完成构建图谱的工作啦!

按上面这样选出来的序列虽然可以简要表示我们所需要的信息,但它还不是严格意义上的关系三元组——我们有可能提取出多个token作为关系,文中针对这个问题对关系提取加入了一些限制:

  • 首先,我们只保留注意力权重和大于阈值的序列。这是为了防止BERT这类模型单纯地提取出符合语言模型的序列,而不是那些对实体有特殊意义的关系。

一个反例:在阈值筛选之前,模型会从句子 Rolling Stone wrote: “No other pop song has so thoroughly challenged artistic conventions” 中抽取关系(Rolling Stone, wrote, pop song)

  • 提取出来的关系必须在整个语料中出现足够多的次数。这样是为了防止出现一些过于细节偏门的关系。

例如 (Dylan, signed to Sam Peckinpah’s film, Pat Garrett and Billy the Kid),这里的关系特指签约了Sam Peckinpah的电影,非常罕见且缺乏泛化性。

  • 关系序列必须是句子中出现的连续token。这样可以防止提取出没有意义的关系。

例如(Rolling Stone, wrote challenged, conventions),这里wrote 和chanllanged不表示合理的关系。

现在,我们就已经可以用MAMA从语料库中建立一个知识图谱啦!

MAMA效果如何?

为了方便和其他方法比较,我们需要把这个开放图谱和已有的数据集对应上。使用已经比较成熟的实体链接,关系映射方法就可以了。

这样造出来的MAMA无论在准确率还是召回率上都超过了之前的方法。

除了那些可以被对应到人造数据集中的关系之外,MAMA的一大亮点在于她可以发现其他没有被schema预先定义的关系:

图中蓝色的关系是在预定义schema中出现的部分,MAMA额外还生成了33%的新关系(黄色)。其中像Dylan和其他歌手曾经合作过,曾经是某个乐队的成员等,这样的信息是人工schema中所没有的,但对于歌手来说却是很重要。如果可以自动完善知识图谱和schema的构建,那就解决了KG中很难穷尽所有关系的难题了。

一些评价

个人认为,MAMA的整体思想还是很新颖且值得借鉴的。但是实验部分以及一些细节上的设置还需要更精细的设置。一大缺陷在于他没有和其他的SOTA进行比较,效果尚未可知。总体来说,为自动化的知识图谱构建提供了一个不错的思路。

论文链接:
https://arxiv.org/pdf/2010.11967.pdf

讲解视频:
https://www.youtube.com/watch?v=NAJOZTNkhlI&t=276s

萌屋作者:Sherry

本科毕业于复旦数院,转行NLP目前在加拿大滑铁卢大学读CS PhD。经历了从NOIer到学数学再重回CS的转变,却坚信AI的未来需要更多来数学和自认知科学的理论指导。主要关注问答,信息抽取,以及有关深度模型泛化及鲁棒性相关内容。

作品推荐:

  1. Google Cloud TPUs支持Pytorch框架啦!

后台回复关键词【入群

加入卖萌屋NLP/IR/Rec与求职讨论群

有顶会审稿人、大厂研究员、知乎大V和妹纸

等你来撩哦~

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

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

相关文章

LeetCode 557. 反转字符串中的单词 III(栈)

文章目录1. 题目信息2. 解题2.1 栈2.2 STL reverse()1. 题目信息 给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。 示例 1:输入: "Lets take LeetCode contest" 输出: "steL ekat edoCteeL tse…

美团OCTO万亿级数据中心计算引擎技术解析

美团点评自研的 OCTO 数据中心(简称 Watt)日均处理万亿级数据量,该系统具备较好的扩展能力及实时性,千台实例集群周运维成本低于10分钟。本文将详细阐述 Watt 计算引擎的演进历程及架构设计,同时详细介绍其全面提升计算…

中文实体命名识别工具使用汇总:Stanza、LAC、Ltp、Hanlp、foolnltk、NLTK、BosonNLP

实体命名识别相关知识Stanford CoreNLP 命名实体识别一、简介:二、java版本使用三、python版本使用NLTK 命名实体识别一、简介:二、搭建环境三、nltk使用1、英文实体命名初体验2、使用nltk来处理中文资料结巴分词使用foolnltk 命名实体识别一、简介二、p…

论文浅尝 | 基于知识图谱中图卷积神经网络的推荐系统

笔记整理:王若旭,浙江大学在读硕士,研究方向为关系抽取,零样本学习。本文发表于 www2019,参考链接:https://arxiv.org/pdf/1905.04413.pdf为了解决推荐系统中协同过滤方法面对的数据稀疏和冷启动的问题&…

NeurIPS 2020 | Glance and Focus: 通用、高效的神经网络自适应推理框架

文 | rainforest wang源 | 知乎本文主要介绍我们被NeurIPS 2020会议录用的一篇文章:Glance and Focus: a Dynamic Approach to Reducing Spatial Redundancy in Image Classification代码和预训练模型已经在Github上面放出:https://link.zhihu.com/?tar…

如何下载Android源码(非常详细,含自动恢复下载,编译,运行模拟器说明)

今天终于把代码下载完成,特此开一篇博文记录一下。上图: 为了下载这些源码,历时5天5夜,说为什么这么长时间,是因为太容易中断了,有时候下一晚上可能就一直没在下,在你入睡的时候它就自己断了&am…

NumPy快速入门-- Less 基础/线性代数

文章目录1. 广播(Broadcasting)规则2. 使用索引数组索引3. 使用布尔值作为数组索引4. ix_()函数5. 线性代数 简单数组操作6. 技巧和提示6.1 “自动”整形6.2 矢量堆叠1. 广播(Broadcasting)规则 Broadcasting允许通用函数以有意义…

Intel PAUSE指令变化影响到MySQL的性能,该如何解决?

MySQL得益于其开源属性、成熟的商业运作、良好的社区运营以及功能的不断迭代与完善,已经成为互联网关系型数据库的标配。可以说,X86服务器、Linux作为基础设施,跟MySQL一起构建了互联网数据存储服务的基石,三者相辅相成。本文将分…

会议 | CCKS 2019 全国知识图谱与语义计算大会在杭州隆重召开

本文转载自公众号:中国中文信息学会。2019 年全国知识图谱与语义计算大会(CCKS 2019)于 8 月 24 日至 27 日在杭州召开,由中国中文信息学会语言与知识计算专业委员会主办,浙江大学承办。本次会议主题是“知识智能”。大会吸引了来自海内外的八…

Hystrix 简介和使用

Hystrix一、概念二、使用1. 环境搭建2. 服务降级3. 异常熔断4. 自定义异常熔断器5.Hystrix仪表盘监控三、测试1. 异常熔断2. 超时熔断3. 熔断器获得异常4. 异常忽略5. 自定义异常熔断器一、概念 故障蔓延:由于一个服务变慢或没有响应导致大量请求堆积,进…

android中如何使用一张图片适配不同尺寸的APP引导页

在我们平常开发的过程中在做引导页适配的时候,有时候会犯难,怎么样作图可以将各种不同尺寸分辨率的手机都适配好也就是不变形不拉伸,官方给的说法也只是做多套图去适配不同的分辨率,遇到全屏展示引导这种问题的时候就有些力不从心…

还在用Tensorboard?机器学习实验管理平台大盘点

文 | SisyphusBJ源 | Pytorch Lightningwandb.aicomet.mlneptune.aiallegro trainsmlflowguild.aisacredtest-tubetensorboard相信很多同学看到上面这个列表的第一印象是懵的。我们先看下机器学习实验管理平台 到底是做神马滴:一句话概括就是:&#xff0…

论文浅尝 | 利用图 Transformer 实现基于知识图谱的文本生成

论文笔记整理:谭亦鸣,东南大学博士生,研究方向为跨语言知识图谱问答。来源:NAACL2019链接:https://arxiv.org/pdf/1904.02342.pdf本文关注如何从信息抽取结果(特别是知识图谱)出发,生…

LeetCode 230. 二叉搜索树中第K小的元素(中序遍历)

文章目录1. 题目信息2. 解题2.1 中序递归2.2 中序循环写法1. 题目信息 给定一个二叉搜索树,编写一个函数 kthSmallest 来查找其中第 k 个最小的元素。 说明: 你可以假设 k 总是有效的,1 ≤ k ≤ 二叉搜索树元素个数。 示例 1:输入: root …

Apache Doris在美团外卖数仓中的应用实践

序言 美团外卖数据仓库技术团队负责支撑日常业务运营及分析师的日常分析,由于外卖业务特点带来的数据生产成本较高和查询效率偏低的问题,他们通过引入Apache Doris引擎优化生产方案,实现了低成本生产与高效查询的平衡。并以此分析不同业务场景…

Feign 简介和使用

声明式服务消费Feign一、简介二、使用Feign实现服务消费者三、实现普通的服务提供者四、Feign服务调用测试五、Feign消费者测试负载均衡服务熔断一、简介 Feign是Netflix公司开发的一个声明式的REST调用客户端; Ribbon负载均衡、Hystrix服务熔断是我们Spring Cloud…

论文浅尝 | 面向自动问题生成的跨语言训练

论文笔记整理:谭亦鸣,东南大学博士生,研究方向为跨语言知识图谱问答。来源:ACL 2019链接:https://128.84.21.199/pdf/1906.02525.pdf动机现有问题生成方法需要大量的“文本-问题”有标注数据对作为训练数据集&#xff…

再见,Spark!Flink已成气候!

身为大数据工程师,你还在苦学Spark、Hadoop、Storm,却还没搞过Flink?醒醒吧!刚过去的2020双11,阿里在Flink实时计算技术的驱动下全程保持了“如丝般顺滑”,基于Flink的阿里巴巴实时计算平台简直强无敌。最恐…

Java线程池实现原理及其在美团业务中的实践

随着计算机行业的飞速发展,摩尔定律逐渐失效,多核CPU成为主流。使用多线程并行计算逐渐成为开发人员提升服务器性能的基本武器。J.U.C提供的线程池:ThreadPoolExecutor类,帮助开发人员管理线程并方便地执行并行任务。了解并合理使…

Zuul 简介和使用

Zuul背景Zuul的作用Zuul API网关Zuul请求过滤Zuul路由规则Zuul异常处理背景 通过之前的学习,我们知道注册中心Eureka,可以讲服务注册到该注册中心,Ribbon和Feign可以实现服务负载均衡地调用,Hystrix可以实现服务熔断,…