目前,知识图谱在学术界如火如荼地进行,但受限于知识图谱各个环节中的性能问题,还尚未能够在工业界大规模运用。而与知识图谱中以实体为知识节点,实体关系为实体关系边对知识进行组织不同,以事件作为节点,事件关系作为节点关联的三元组信息的抽取和应用,当前也是大家在探索的一个方向(即事理图谱,先撇开其建模和应用现状不讲)。
笔者之前围绕事件关系三元组抽取,结合语言学背景,尝试了一些朴素方式下的事件关系三元组、事件主谓宾三元组抽取的工作。如:
顺承事件关系三元组抽取,地址:
https://github.com/liuhuanyong/SequentialEventExtration
因果事件关系三元组抽取,地址:
https://github.com/liuhuanyong/CausalityEventExtraction
复合事件关系三元组抽取,地址:
https://github.com/liuhuanyong/ComplexEventExtraction
事件主谓宾三元组抽取,地址:
https://github.com/liuhuanyong/EventTriplesExtraction
本文选择复合事件关系三元组抽取和事件主谓宾三元组抽取两个实践项目进行介绍。前者的输出可以作为后者的输入,通过识别出事件关系的两头事件实体,再通过主谓宾关系抽取,可以进一步得到事件的主体和客体,主体和客体可以进一步成为事件实体链接的桥梁,以实现与实体知识的联合建模。

一、ComplexEventExtraction复合事件关系三元组抽取

chinese compound event extraction,中文复合事件抽取,包括条件事件、因果事件、顺承事件、反转事件等事件抽取,并形成事件关系三元组。

1、复合事件关系中事件的界定
如果要做事件关系三元组抽取,那么就务必要回答其中的事件形态是什么,其边界在哪儿。基于框架体系FrameNet那套的ACE将事件表示成为一个个论元集合,CEC事件数据集、SemEval等数据集中将事件界定为一个动词。不同的事件界定方式,直接决定了后续技术的选择以及对应的技术难度下图总结了当前遇到的几种工业界事件表示方式:
以因果事件为例, 已知句子:这几天非洲闹猪瘟,导致国内猪肉涨价。

图1-复合事件关系的界定

2、事件关系的几种类型
坦白的说,对于事件关系的界定,当下有不同的标准。下表列举了当下的几个典型的事件关系类型。而通过结合语言学规则,利用显式的关系词和模式词进行触发、统计,可以发现,因果事件关系是最为明显的,最有规律可循的。

图2-复合事件关系的类型

3、事件关系抽取的实施
当前朴素的事件关系抽取,还是以显式的关系触发词展开,可以针对因果关系【导致、造成、所以】、条件关系【如果、前提、要是】、反转关系【虽然、但是、尽管】、顺承关系【紧接着、然后、接下来】,构造对应的句法模式,将以该触发词为核心的主语和宾语部分抽取出来,即可以得到事件关系三元组。
例如:
1)转折关系三元组模板

2)因果关系三元组模版

4、事件关系抽取的效果
通过对已有的非结构化文本如新闻报道等进行模板抽取,我们可以得到相应的关系三元组抽取效果,如下所示:
1)因果事件三元组图谱可视化效果

图2-美国攻打伊拉克因果事件关系三元组效果

图3-寿光发生洪水因果事件关系三元组效果

2)反转与条件事件关系三元组抽取数据表结果

3)反转事件关系三元组抽取结果图谱可视化结果

图4-反转事件关系可视化效果

4)条件事件关系三元组抽取结果图谱可视化结果

图5-条件事件关系可视化效果

二、EventTriplesExtraction事件主谓宾三元组抽取

基于依存句法与语义角色标注的事件三元组抽取,文本表示一直是个重要问题,如何以清晰,简介的方式对一个文本信息进行有效表示是个长远的任务,我尝试过使用关键词,实体之间的关联关系,并使用textgrapher的方式进行展示,但以词作为文本信息单元表示这种效果不是特别好,所以,本项目想尝试从事件三元组的方式出发,对文本进行表示。
项目地址:
https://github.com/liuhuanyong/EventTriplesExtraction

1、基于依存句法分析和语义角色标注的事件三元组抽取
当前开源的句法分析组件,包括LTP、hannlp、百度DDParse等为我们进行特定句子的依存分析和语义角色标注提供了快速调用的接口。通过对一个句子进行依存句法分析,可以得到一个句子的核心动词、与该动词直接依存的词,如SBV主语关系、VOB动宾关系、OBJ谓语关系集合。因此,我们可以在此基础上,以句子的动词为核心,先后找出其主语和谓语,并通过ATT修饰关系、COO并列关系等进行主语和宾语的扩展,形成三元组。

1)抽取实施
本项目分别使用LTP、百度DDParse作为句法分析器针对输入的文本进行抽取,先进行长句切分,然后进行依存句法分析,并设定扩展规则,可以快速得到三元组集合。

2)抽取结果
本项目的抽取结果如下,选取了“以色列对加沙地带进行轰炸”这一新闻快讯进行处理,得到svos等主谓宾集合。

2、基于词性模板规则的事件三元组抽取
基于依存句法的方式进行事件三元组抽取,其性能受限于依存句法性能的精度,但坦白的说,当前的依存句法分析器的性能并不是特别高,中文的精度在80%-85%之间。因此,我们可以有另一种方式来实现三元组抽取,即基于词性模板的方式,其思想在于,通过构造事件三元组的成词词性模板,如一个典型的IP短语、NP短语、VP短语等,就可以得到三元组结果:

1)抽取实施
本项目分别使用开源jieba分词器作为分词和词性标注组件,针对输入的文本进行抽取,先进行长句切分,然后进行处理,并设定三元组词性模板,快速得到三元组集合。

2)抽取结果
同样的,本项目选取了“以色列对加沙地带进行轰炸”这一新闻快讯进行处理,得到svos等主谓宾集合。

三、项目总结

1、ComplexEventExtraction复合事件关系三元组抽取总结
本项目对事件图谱的类型、表现形式进行了归纳,并结合复合事件模式与语料进行了实验。实验表明,反转事件,其实在某种程度上可以用来构造反义词词典,例如"不是A而是B"这种模式,可以得到很多反义的词或短语,这让我想到了我的一个反义词项目接口:(https://github.com/liuhuanyong/ChineseAntiword) ,我们可以用wordvector找相近词,可以靠这种方式收集反义词,对了,还可以加上情绪。
实验表明,汉语显示标记其实在中文文本当中还是用的很普遍的,统计了以下,跑了1000W文本,有超过半数的文本中包含以上模式。因此,如果能够把显式的事件关系三元组做好,感觉用处还是很多的。本项目还有很多不足,比如模式上,比如对事件类型和事件表示的z总结上,而且,事件关系三元组还是限定在句子级别,这是一种讨巧的方式,因为放在篇章级上,实施的难度会更大。

2、EventTriplesExtraction事件主谓宾三元组抽取总结
本项目公开了基于ltp句法分析和语义角色标注、基于百度DDParser以及基于词法模式的事件三元组抽取方法,并给了实验示例。通过实验,我们发现
LTP在DDParser之外,还提供了语义角色标注的功能,这个可以用于事件三元组抽取的有效补充,LTP速度比DDParser要快,但语义角色标注模块存在明显的内存泄漏问题。此外,基于词法模式的事件三元组抽取速度最快,但效果取决于分词、词性标注性能,基于词法模式,可以得到语义更长的三元组元素信息。

关于作者

刘焕勇,liuhuanyong,现任360人工智能研究院算法专家,前中科院软件所工程师,主要研究方向为知识图谱、事件图谱在实际业务中的落地应用。
得语言者得天下,得语言资源者,分得天下,得语言逻辑者,争得天下。
1、个人主页:https://liuhuanyong.github.io。
2、个人博客:https://blog.csdn.net/lhy2014/。
欢迎对自然语言处理、知识图谱、事件图谱理论技术、技术实践等落地应用的朋友一同交流。

工程实践:基于规则句法的事件关系与主谓宾三元组抽取项目实现相关推荐

  1. 批量Excel操作——paddlenlp进行ner和主谓宾关系抽取二次处理详解-Taskflow模型基础上使用

    参考这篇讲的很清楚详细, 下面记录一些自己的二次处理. 批量读取Excel列数据进行ner并写入 import pandas as pd import read_excel df=read_excel ...

  2. 提取中文句子主谓宾的Java实现

    在自然语境中,一个意思可以有多种表现.比如"我喜欢你""我喜欢隔壁班的你""你被我偷偷的喜欢着"都表达了"我喜欢你".搜 ...

  3. 主谓宾定状补......

    [size=medium]近期做搜索方面的项目需要用到语义分析... 悲剧啊,工作了还要被这些该死的"主谓宾定状补"烦 :x 例子理解 [color=darkred] 聪明的 小明 ...

  4. 区分主谓宾补和主谓宾宾

    主谓宾补 检验 主谓宾补 的方法 – 在宾语和补语之间加上一个be动词进去,看看能否变成 主系表 的结构.补语 一般为 形容词或者不定式. 例: I find the dress pretty. 在宾 ...

  5. 浅析英语五大成分-主谓宾定状

    浅析英语五大成分-主谓宾定状 以下就我个人对英语的理解阐述英语中五大成分的基本概念,仅代表我个人看法. 主谓宾 在说主谓宾之前,我先来阐述一下我所认为的世界: 我认为世界由事物及其相互作用组成.&qu ...

  6. 英语语法(2)----点破主谓宾系表三大句型

    主谓宾 主谓 主系表 I love you. I enjoy teaching. He said he would come. It is interesting. The dish smells g ...

  7. 简单句 - 主谓/主谓宾/主系表的分析

    1.主谓 Last week I went to the theatre 谓语动词went. to the theatre是一个介词短语,表示"地点.方位".所以词句并不是主谓宾结 ...

  8. 三大句型:主谓宾句型

    一.什么句子是主谓宾句型(判断方式) 判断方式 主语后面是(动词) (身体)看,跑,吃,喝 (心理)想,爱,思念,决定 二.用主谓宾句型翻译句子 1.我 爱 你 I + love + you. 2.他 ...

  9. 主谓宾定状补口诀及练习题

    学语文,有口诀 主谓宾.定状补,主干枝叶分清楚. 定语必居主宾前,谓前为状谓后补. 状语有时位主前,逗号分开心有数. 基本成分主谓宾,连带成分定状补.定语必居主宾前,谓前为状谓后补. 六者关系难分辨, ...

最新文章

  1. 安卓高手之路之图形系统(6)ListView继续
  2. uvm 形式验证_一种基于UVM的总线验证方法与流程
  3. Redis Cluster Gossip 协议详解
  4. 域用户频繁被锁定怎么解决_Oracle11g用户频繁锁定并且解锁后不允许登录
  5. 购物网站php模版,运动服装购物网站模板
  6. oracle 设置输出显示,oracle输出语句
  7. 导弹气动估算matlab,基于Fluent的导弹气动特性计算
  8. 玉米社:SEM竞价推广预算设置方法
  9. 计算机主机的声音线是哪个好,电脑显示器连接线哪种接口好|VGA、HDMI视频接口选哪个好...
  10. Android java.lang.IllegalStateException: Underflow in restore - more restores than saves
  11. 美国B1/B2签证免面试续签流程 2016年5月份更新
  12. win10系统 纯净版 安装
  13. 笔记本固态硬盘温度测试软件,固态硬盘散热测试
  14. 微信小程序扫二维码带参数问题
  15. 温度测量基于c语言,基于PN结的温度测量系统设计论文(C语言)--189876772.doc
  16. openlayers实现wfs属性查询和空间查询
  17. Flink前世今生和原理
  18. 支持向量机_1: Maximum Margin Classifier
  19. Linux fsck命令:检测和修复文件系统
  20. 极域2015,学生连不上教机,广播黑屏

热门文章

  1. 在朋友圈求助的NTP问题~
  2. 嵌入式软件面试(基础题)总结,不断更新
  3. STM32F7xx —— FatFS(W25QXX)
  4. 宝塔+wordpress搭建/迁移网站
  5. fastapi 用户指南(路径参数、查询参数、请求体)
  6. LeetCode 1824. 最少侧跳次数(DP)
  7. LeetCode 1694. 重新格式化电话号码(模拟)
  8. LeetCode MySQL 578. 查询回答率最高的问题
  9. LeetCode 1056. 易混淆数(哈希)
  10. LeetCode 1497. 检查数组对是否可以被 k 整除(余数配对)