事件抽取(Event Extraction)
一、事件抽取分两大类
-
事件识别和抽取
从描述事件信息的文本中识别并抽取出事件信息并以结构化的形式呈现出来,包括发生的时间、地点、参与角色以及与之相关的动作或者状态的改变。
-
事件检测和追踪
事件检测与追踪旨在将文本新闻流按照其报道的事件进行组织,为传统媒体多种来源的新闻监控提供核心技术,以便让用户了解新闻及其发展。具体而言,事件发现与跟踪包括三个主要任务:分割,发现和跟踪,将新闻文本分解为事件, 发现新的(不可预见的)事件,并跟踪以前报道事件的发展。 事件发现任务又可细分为历史事件发现和在线事件发现两种形式,前者目标是从按时间排序的新闻文档中发现以前没有识别的事件,后者则是从实时新闻流中实时发现新的事件。
事件抽取任务分成两种,即元事件(meta event)抽取和主题事件(topic event)抽取。
- 元事件由Filatova[2004]等人提出,表示一个动作的发生或状态的变化,由表示动作的动词或名词来驱动,包括参与该动作行为的主要成分(如时间、地点、 人物等)。目前学界和工业界谈论事件抽取,大多还是指元事件抽取,ACE是这类事件抽取的代表
- 主题事件包括一类核心事件或活动以及所有与之直接相关的事件和活动,可以由多个元事件片段组成,与元事件抽取最大的不同在于,主题事件中所包含的多个元事件信息通常都分散于一个或多个文档当中,往往需要确定描述同一主题事件的文档集合,并将这些分散的缘事件进行组合。
二、事件识别与抽取的相关概念
- 事件描述(Event Mention)
描述事件的词组/句子/句群,包含一个 trigger 以及任意数量的 arguments - 事件触发(Event Trigger)
事件描述中最能代表事件发生的词汇,决定事件类别的重要特征,一般是动词或者名词 - 事件要素(Event Argument, 又称事件元素)
事件的重要信息,或者说是实体描述(entity mention),主要由实体、属性值等表达完整语义的细粒度单位组成 - 要素角色(Argument Role)
事件元素在事件中扮演的角色,事件元素与事件的语义关系,可以理解为 slot - 事件类型(Event Type)
三、事件定义
事件是发生在某个特定的时间点或时间段、某个特定的地域范围内,由一个或者多个角色参与的一个或者多个动作组成的事情或者状态改变。
事件由事件触发词( Trigger) 和描述事件结构的元素 (Argument, 又名要素)构成。
(1)事件触发词标识着事件的发生。
(2)事件论元为事件主体(Subject)、客体(Object)、时间(Time)、地点(Location)等,是表达事件重要信息的载体。
事件属性包括事件极性(Polarity)、时态(Tense),是衡量事件是否真实发生的重要依据。 通过极性,事件分为肯定、否定、可能事件。事件时态分为过去发生的事件、现在正 在发生的事件、将要发生的事件以及其他无法确定时态的事件。
四、事件信息抽取
事件的信息抽取有两个相关子任务:
(1)事件检测(event detection)。可以用序列元素分类的方式识别触发词并判断事件类型,或者直接使用文本分类的方式判断mention对应的事件类型。
(2)事件元素抽取(argument extraction)。用序列元素分类,或者三元组抽取的方式,吧文本中识别出事件元素,并判断元素所扮演的角色。
模型也分为两种:流水线模型(串行), 联合模型(并行)[1]
五、事件抽取模型的评价
(1)查全率(recall)、查准率(precision)、F1-score
(2)基于丢失率 (记为 L) 误报率 (记为 M) 的错误识别代价 (记为 C) 法
Cmiss为一 次 丢 失 的 代 价, Cfa为一次误报的代价,Ltar为系统作出肯定判断的先验概率, 通常根据具体应用设定为常值[5]。
六、ACE评测任务
ACE对参与评测的事件进行了定义:事件由事件触发词(Trigger)和描述事件结构的要素(argument)组成。
定义了事件触发词、事件类型、 事件要素、 要素角色来表征事件
事件抽取任务
- Event Identification (Trigger Words)
- Event Type Identification
- Argument Identification
- Argument Role Identification
ACE-2015定义了8种事件类别(life, movement,conflict,contact等)和33种子事件类别(born, marry,injury, transport,attack等),每种事件类别对应唯一的事件模板,如子事件born,事件模版(template)包括person,time-within,place等。这样,事件抽取就变成了一个事件识别和事件元素识别的任务。
七、事件抽取讲解视频
- 陈玉博的详解事件抽取与事件图谱构建, csdn视频分享https://edu.csdn.net/course/play/25560/307897
- 刘康-开放域环境下文本事件抽取,B站视频:https://www.bilibili.com/video/BV1FW411D7A4?from=search&seid=2597275688637069049
八、事件抽取比赛
- CCKS 2019 面向金融领域的事件主体抽取
比赛官网:https://www.biendata.xyz/competition/ccks_2019_4/
baseline 代码:https://github.com/lxj0276/ee-2019-baseline
-
百度 2020语言与智能技术竞赛:事件抽取任务
比赛官网:https://aistudio.baidu.com/aistudio/competition/detail/32
比赛数据集(可获取):https://aistudio.baidu.com/aistudio/datasetdetail/27641
苏神的bert4keras框架的该比赛事件抽取的baseline代码:https://github.com/bojone/lic2020_baselines
-
2020年科大讯飞的事件抽取挑战赛
比赛官网:http://challenge.xfyun.cn/topic/info?type=hotspot
知乎分享baseline代码2020 iFLYTEK A.I.开发者大赛-事件抽取-baseline - 知乎 (zhihu.com)
第一名的代码:https://github.com/WuHuRestaurant/xf_event_extraction2020Top1
第一名成绩:初赛 0.73859
-
2020 CCKS 面向金融领域的篇章级事件主体与要素抽取(一)事件主体抽取
比赛官网:https://biendata.com/competition/ccks_2020_4_1/leaderboard/
baseline分享及代码:CCKS 2020:面向金融领域的篇章级事件主体与要素抽取-baseline - 知乎 (zhihu.com)
第一名方案分享CCKS 2020竞赛三冠团队技术分享第二波:事件主体抽取赛题方案|向量|预训练|样本_网易订阅 (163.com)
九、事件抽取应用
实体抽取与关系抽取可以构建实体知识图谱,目前大部分知识图谱都是这样的。事件抽取主要是用来构建事件图谱,用于相应业务需求分析应用。有了事件,事件之间的关系,再以一种组织体系进行表示,就可以构建起一个事件知识库。
事件图谱,事件的知识图谱是应用中不可缺少的一类图谱,其中的每一个节点是一个事件,事件之间通过事件的关系(比如时序关系、因果关系等)相关联,这就叫做事件图谱。
事件抽取目前在金融领域应用较多。例如CCKS 2018-2020年的金融领域事件抽取比赛。
十、Reference
[1] 啥是事件抽取(Event Extraction)? - 知乎
[2] 事件、事件抽取与事理图谱_lhy2014的博客-CSDN博客
[3] 最新事件抽取技术进展 - 知乎 (zhihu.com)