深圳市航顺芯片技术研发有限公司
直播中

恐龙之家

8年用户 818经验值
私信 关注
[问答]

什么是文本事件抽取?

什么是文本事件抽取?

回帖(1)

李蒙

2021-9-22 15:13:04
  每天在各地有无数重大事件发生,不同的媒体以不同的叙事风格进行报道[1]。如何检测文章和帖子中是否报告了真实世界的事件是事件抽取的主要任务之一。其他任务包括抽取事件论元并确定它们的角色,以及从不同文本中对相似事件进行聚类和跟踪。事件抽取作为自然语言处理和理解领域的重要研究课题之一,在不同领域有着广泛的应用,并已进行了几十年的深入研究。
本文对文本事件抽取做了一个全面而又最新的综述
  


  • 总结了用于事件抽取的任务定义、数据源和性能评估;
  • 为其解决方案方法提供了分类。在每个解决方案组,提供了最具代表性的方法的详细分析,特别是它们的起源、基础、优缺点;
  • 对未来的研究方向提出了展望。

  Ⅰ. 介绍

  事件是在特定时间、特定地点发生的涉及一个或多个参与者的特定事件,通常可以被描述为状态的改变。事件抽取的目标是检测文本中的事件实例,如果存在,则识别事件类型及其所有参与者和属性。可以用不同的自变量定义不同的事件类型,事件提取的简单总结是从非结构化自然语言获得事件的结构化表示,以回答“5W1H”问题,“who, when, where, what, why” and “how”。
  事件抽取作为自然语言处理(NLP)中信息检索的一项重要任务,在各个领域有着广泛的应用。
  


  • 结构化事件可以直接用于扩展知识库,在此基础上可以进行进一步的逻辑推理和推理[2]、[3]。
  • 事件检测与监控长期以来一直是***公共事务管理的重点,及时了解社会热点事件的爆发与演变,有助于***部门及时响应[4]、[5]、[6]、[7]、[8]。
  • 在商业和金融领域,事件抽取还可以帮助企业快速发现其产品的市场反应,推断风险分析信号和交易建议[9],[10],[11]。
  • 在生物医学领域,事件抽取可以用来识别生物分子(如基因和蛋白质)的状态变化或两个或多个生物分子之间的相互作用,这在科学文献中用自然语言描述,以了解生理和发病机制[12]。

  简而言之,许多领域都可以从事件抽取技术和系统的进步中受益。
尽管有很好的应用前景,但事件提取仍然是一项相当具有挑战性的任务,因为事件具有不同的结构和组件;而自然语言往往存在语义歧义和语篇风格。此外,事件抽取也与其他NLP任务密切相关,如命名实体识别(NER)、词性标注(POS)、语法解析等,这些任务的执行方式和输出结果可能会促进事件抽取,也可能会对其性能产生负面影响。为了促进事件抽取的发展和应用,人们开展了许多公开评估计划,提供任务定义、标注语料库和公开竞赛,以促进事件抽取等信息抽取研究,这些研究也吸引了许多人才贡献新的算法、技术和系统。下面我们简单介绍一下这些知名的节目。
  A. 公开评估项目

  
  

  

  


  • 信息理解会议(MUC)[13]、[14]被公认为第一个信息提取的公开评估项目,它是由国防高级研究计划局(DARPA)组织和赞助的。从1987年到1997年,它已经举办了七次。MUC的目标是从非结构化文本中提取信息,并将其填充到预定义模式中的槽值结构中。一些公共槽包括实体、属性、实体关系、事件等。
  • 1997年,美国国防部高级研究计划局(DARPA)、卡内基梅隆大学(Carnegie Mellon University)、龙系统(Dragon Systems)和马萨诸塞大学阿默斯特分校(University Of Massachusetts At Amherst)共同创立了另一个公共评估项目,名为主题检测和跟踪(TDT),以促进在一系列广播新闻文章中发现和跟踪新事件。后来,美国国家标准与技术研究所(NIST)为TDT项目建立了一套完整的评估体系。
  • 自动内容抽取(ACE)是迄今为止最具影响力的公共评价方案,由NIST于1999年提出,并于2009年被纳入新的公共评价方案文本分析会议(TAC)。从2000年到2004年,ACE一直致力于实体和关系的检测和跟踪,并从2005年开始将事件提取任务添加到ACE中。
  • 继ACE之后,DARPA的深度探索和文本过滤(DEFT)计划提出了文本标注和信息提取的实体、关系、事件(ERE)标准。Light ERE被定义为ACE注释的简化版本,以便快速生成一致标签的数据。随后,Light ERE被扩展到更复杂的Rich ERE规范。
  • 此外,事件抽取一直是知识库人群(KBP)公众评估项目的主流任务,该项目自2014年以来已举办了四届,截至目前。现在,KBP已经与TAC集成,目的是从大型文本语料库中提取信息,以补充知识库中不足的元素。此外,还有其他一些用于特定领域的事件提取的事件公共评估程序,如生物医学领域的BioNLP、用于提取事件时间信息的TimeBank

  B.调查总结

  本文提供了从文本中提取事件的最新研究。我们注意到关于这个任务有一些相关的调查文章,但是每一篇文章都针对特定的应用领域有特定的重点。
  


  • Hogenboom等人:回顾了各种决策支持系统中事件提取的文本挖掘技术;
  • Vanegas等人:主要对生物分子事件提取技术进行了综述;
  • Zhang等人:主要研究开放领域事件抽取;
  • 一些人还专注于从社交媒体,尤其是Twitter中提取事件。

  Ⅱ. 事件抽取任务

  事件抽取旨在检测文本报告中的事件是否存在,如果存在,则从文本中抽取与事件相关的信息,例如“5W1H”(who、when、where、what、why、how)。
  有时,特定的事件结构是预定义的,它不仅包括事件类型,还包括事件论元的角色。事件提取不仅需要检测事件,还需要提取相应的字/词/短语来填充给定的事件结构,从而输出结构化的事件形式,这通常称为闭域事件抽取(closed-domain event extraction)。而开放域事件抽取(open-domain event extraction)不假定事件结构是预定义的,主要任务是检测文本中事件的存在。在许多情况下,它还提取关于事件的关键字,并对相似事件进行聚类。
  A. 闭域事件抽取

  闭域事件提取使用预定义的事件模式从文本中发现和提取特定类型的期望事件。事件架构包含几种事件类型及其对应的事件结构。我们使用ACE术语介绍如下事件结构:
  


  • Event mention:事件提及,描述事件的短语或句子,包括一个触发器和几个论元。
  • Event trigger:事件触发器,最清楚地表达事件发生的词,通常是动词或者名词。
  • Event argument:事件论元,在事件中充当参与者或者具有特定角色属性的实体名称、时间表达或值。
  • Argument role:论元角色,论元与其参与的事件之间的关系。

  需要注意的是,同一事件可能在不同的句子或文档中被多次提及。如何区分同一事件的多个事件提及属于另一个关键的自然语言处理任务,称为事件共指。在本文中,我们不考虑事件提及共同参考解决方案。
Ahn 首先提出将ACE事件提取任务分为四个子任务:触发器检测、事件/触发器类型识别、事件论元检测、论元角色识别。例如,考虑以下句子:
  sentence 1:At daybreak on the 9th, the terrorists set off a truck bomb attack in Nazareth.
句子1:9日黎明时分,***在拿撒勒发动了一场卡车炸弹袭击。
  在此句中存在“Conflict/Attract”事件。事件提取器应该通过检测句子中的触发词“Attract”并将其分类为“Conflict/Attract”事件,接下来,应该从文本中提取与该事件相关的论元,并根据预定义的事件结构标识它们各自的角色。

  

  

  上图给出了结构化事件的闭域提取。左边部分说明了ACE 2005中一些预定义的事件模式;而右边部分则说明了触发器检测、事件类型识别、论元检测和论元角色识别四个子任务的提取结果。
  遵循ACE 的类似定义,许多其他事件类型和结构已在该领域中定义和采用:
  


  • 如ERE和TAC-KBP定义的那些;
  • Petroni(彼得罗尼)等人定义了自然灾害事件的结构,包括7种事件类型,如“洪水”、“风暴”、“火灾”等。以及它们的“5W1H”属性,以便从新闻报道和社交媒体中提取突发事件;
  • Yang等专注于提取金融领域的事件,以帮助预测股市、投资决策支持等。他们定义了9种金融事件类型,如“股权质押”、“股权冻结”等,以及它们对应的具有不同角色的论元;
  • Han等人定义了一个包含8个事件类型和16个子类型的业务事件分类,它们有相应的论元,如时态、时间、结果、实体等。

  B. 开放域事件抽取

  开放域事件提取旨在没有预定义的事件模式情况下从文本中检测事件,在大多数情况下,还通过提取的事件关键字对相似事件进行聚类。事件关键词是指那些主要描述一个事件的单词/短语,有时关键词进一步分为触发器和论元。
  TDT公共评估计划旨在从新闻文章自动发现以前未报告的事件,或跟踪以前发现的事件的进展。除了事件之外,TDT还将故事定义为描述特定事件的新闻文章片段,主题是文章中与某个现实世界主题密切相关的一组事件。
  根据上述故事相关定义,TDT定义了以下任务:
  


  • Story segmentation:故事分割,从新闻文章中检测故事边界;
  • First story detection:第一故事检测,检测新闻流中讨论新话题的故事;
  • Topic detection:话题检测,根据故事讨论的主题对故事进行分组;
  • Topic tracking:话题跟踪,检测讨论以前已知话题的报道
  • Story link detection:故事链接检测,判断一对故事是否讨论同一主题。

  前两个任务主要用于事件检测,后三个任务用于事件聚类。虽然这五项任务之间的关系很明显,但每项任务都需要不同的评估过程,并鼓励采取不同的方法来解决特定的问题。
  前两个任务主要用于事件检测,后三个任务用于事件聚类。虽然这五项任务之间的关系很明显,但每项任务都需要不同的评估过程,并鼓励采取不同的方法来解决特定的问题。
  除了TDT任务外,还开展了许多其他研究,用于从新闻文章中检测和聚类开放领域事件。例如:
  


  • 欧盟委员会联合研究中心调查了从在线新闻中提取暴力事件,如被杀、受伤、被绑架等关键字,用于全球危机监测;
  • Yu和Wu将关于同一事件的新闻文章聚集到一个以主题为中心的集合中;
  • Liu等人按政治、经济、社会、体育、娱乐等日常重大事件分类新闻报道。

  一些工作集中在句子级别的事件检测和聚类,例如;
  


  • Naughton等人,新闻文章中涉及同一事件的分组句子,其中非事件句子在启动聚类过程之前被移除,他们使用了一组从不同来源收集的新闻故事来描述与伊拉克战争有关的事件。此外,在对事件相关句子进行分组时,他们还设计了聚类标签,如恐怖袭击、爆炸、枪击、空袭等。
  • Wang等人,除了事件检测和聚类还建议提取每个事件的关键字,如事件的类型、地点、时间和人物。

  除了新闻专线的文章,许多在线社交媒体,如Twitter和Facebook等,都提供了丰富和及时的各种类型的事件信息。最近,从社交媒体中检测和提取事件也成为一项重要的任务。值得注意的是,由于社交网络上的帖子是一种存在大量缩写、拼写错误和语法错误的非官方文本,如何从这类在线帖子中提取事件面临着比从新闻文章中提取事件更多的挑战。
  虽然检测和聚类事件是开放领域事件抽取的主要任务,但一些研究人员也提出了通过为每个事件簇分配一个事件类型标签以及一个或多个事件属性标签来进一步从聚类的事件相关语句和文档中构建事件模式。注意,这样的簇标签可以更好地解释为从每个簇的关键字进行的一种语义合成,而不是像在闭域事件提取中那样具有清晰结构的预定义的簇标签。
  Ⅲ. 事件抽取语料库

  本部分主要介绍事件抽取任务的语料库资源。通常,公开评测程序为事件抽取的任务评测提供了多个语料库。公共评测程序根据任务定义对语料库进行人工标注,并用于机器学习方法中的模型训练和验证;样本标注由具有领域知识的专业人员或专家完成,标注后的样本可视为带有ground truth标签。然而,由于标注过程成本高昂,许多公共语料库规模较小,覆盖率较低。
  A. ACE事件语料库

  ACE评测为各种提取任务提供带标注的数据和评估工具,包括实体、时间、值、关系和事件。ACE中的实体分为7种类型(人员、组织、地点、地缘政治实体、设施、车辆和武器),每种类型都有若干子类型。此外,时间是根据TIMEX2标准标注的,TIMEX2标准是自然语言文本中事件和时间表达式的丰富规范语言。每个文本样本都由两个独立的标注者进行双重标注,由资深标注者判断它们之间的版本差异。
  ACE语料库中的事件具有复杂的结构和论元,涉及到实体、时间和值。ACE 2005事件语料库定义了8种事件类型和33个子类型,每个事件子类型对应一组论元角色。所有事件子类型总共有36个论元角色。在大多数基于ACE语料库的研究中,往往将33个事件子类型单独处理,而不进一步检索它们的层次结构。
  下表提供了ACE事件类型及其对应的子类型:

  

  

下图给出了一个标注事件样本的示例。

  

  

ACE 2005语料库共包含599个标注文档和约6000个标注事件,包括英语、阿拉伯语和汉语等不同媒体来源的事件,如新闻热线文章、广播新闻等。下表提供了它们的源统计信息:

  

  

  B. TAC-KBP 语料库

  TAC-KBP中的事件块检测任务专注于检测对事件的明确提及及其在RichERE中定义的类型和子类型。由语言数据联盟(LDC)提供的TAC-KPB 2015语料库包括158个文档作为先前训练集,以及202个附加文档作为正式评估的测试集,这些文档来自新闻报道文章和论坛。
  参照ACE语料库,定义了TAC-KBP(Rich Ere)中的事件类型和子类型,包括9种事件类型和38个子类型。此外,事件提及必须被分配到三个真实值中的一个:实际(实际发生)、一般(没有具体的时间或地点)和其他(非一般事件,如失败事件、未来事件和条件语句等)。
  TAC-KBP 2015语料库仅用于英语评估,但在TAC-KBP 2016中为所有任务增加了汉语和西班牙语。
  C. TDT语料库

  在开放领域事件抽取方面,语言数据联盟LDC还提供了一系列语料库来支持从TDT-1到TDT-5的TDT研究,包括英文和中文的文本和语音(普通话)。
  每个TDT语料库包含数百万个新闻故事,用数百个主题(事件)进行标注,这些主题(事件)来自多个来源,如新闻通讯社和广播文章。此外,所有的音频材料都由LDC转换为文本材料。
  如果故事讨论的是目标主题,则为这些故事主题标签分配的值为YES;如果讨论的内容占故事的比例不到10%,则为Brief。否则,(默认)标记值为no。
  D. 其它特定领域的语料库

  除上述知名语料库外,还建立并发布了一些特定领域的事件语料库:
  


  • BioNLP共享任务(BioNLP-ST)是为了从生物医学领域的科学文献中提取细粒度的生物分子事件而定义的,它编译了各种人工标注的生物语料库,包括Genia事件语料库、BioInfer语料库、基因调控事件语料库、GeneReg语料库和PPI语料库。
  • TERQAS(问题回答系统的时间和事件识别)研讨会建立了一个名为TimeBank的语料库,该语料库为来自各种媒体资料的事件、时间和时间关系进行了标注,用于突发新闻事件提取。
  • Meng等人还标注了用中文报道的突发新闻事件,称为CEC(中文事件语料库)。
  • 其他特定领域的语料库包括MUC系列语料库,用于军事情报、恐怖袭击、芯片技术和金融领域的事件提取。
  • Ding等人的用于音乐领域的事件提取的语料库。

  IV . 基于模式匹配的事件抽取

  早期的事件提取方法是一种模式匹配技术,它首先构造一些特定的事件模板,然后执行模板匹配,从文本中提取具有单个论元的事件。如下图所示,事件模板可以从生文本或标注文本构建,但两者都需要专业知识。在提取阶段,如果事件及其论元与预定义模板匹配,则会提取事件及其论元。

  

  

  A. 手动构建事件模式

  典型的基于模式的事件抽取系统,它们利用具有专业知识的专家为不同领域的系统手动构建事件模式。第一个基于模式的提取系统可以追溯到1993年由Riloff等人开发的AutoSlog,这是用于特定领域文件提取恐怖事件。AutoSlog利用了一小组语言模式和人工标注的语料库来获取事件模式。如下表所示,定义了13种语言模式,如“passive-verb”,指的是动词短语的被动形式,后面有语法成分作主语。

  

  

语言模式不同于AutoSlog中的事件模式。在人工标注语料库中,利用语言模式自动建立事件模式;而事件模式用于事件提取。此外,AutoSlog被设计为使用单个事件论元提取事件,因此他们的语料库为每个事件都标注了单个论元。
  例如,在下面的句子中,划线的短语“public buildings”被标注为为具有“bombing”类型事件的“target”角色的论元。
  sentence2:In Laoroya, Junin department, in the central Peruvian mountain range, public buildings (target, bombing) were bombed and a car-bomb was detonated.
句子2:在老罗亚,Junin省,在中部Peruvian山脉,公共建筑(目标,炸弹)被炸,一辆汽车炸弹被引爆。
  具体地说,AutoSlog使用句法分析器Circle来识别人工标注语料库中每个句子的词性(POS),如主语、谓语、宾语、介词等。随后,AutoSlog生成触发词词典和概念节点,它们可以被视为事件模式,涉及事件触发器、事件类型、事件论元和论元角色。在上句中“public buildings”被CIRCUS认定为主语,因为它后面跟着一个被动动词“bombed”,所以它与预定义的语言模式“passive-verb”相匹配,因此,它将“bombed”添加到触发词字典中,并生成具有轰炸类型的实践模式“was bombed”。在模式匹配(事件抽取)过程中,AutoSlog首先利用触发词词典查找候选事件语句,然后按CIRCUS对候选语句进行词性标注。然后,它将触发词的语法特征(即使用CIRCUS的POS输出)与事件模式向关联,以提取论元及事件角色。对于预定义的具有绑架类型的事件模式“took”,它的触发词“took”将定位候选句子,“they took 2-year-old Gilberto Molasco, son of Patricio Rodriguez”。使用CIRCUS进行词性分析的结果进一步证明了“Giberto Molasco”是DOBJ(直接宾语)。最后结合POS的结果和预定义的事件模式,AutoSlog可以提取绑架类型的事件,及其其触发词“took”和受害者“Gilberto Molasco”的论元。
  


  • 受AutoSlog系统的启发,人们针对不同的应用领域开发了许多基于模式的事件抽取系统,包括生物医学事件抽取、金融事件抽取等。例如,Cohen等人利用OpenDMAP语义解析器对生物医学本体进行分析,提取生物医学事件。OpenDMAP语义解析器为生物医学概念及其属性提供各种高质量的本体模板。
  • Casillas等人应用了京都项目开发的Kybots(知识生成机器人)来提取生物医学事件。Kybots系统遵循一种基于规则的方法来手动构建事件模式。
  • 在金融领域,Borsje等人提出了一种基于词汇语义模式的半自动金融事件提取方法。
  • Arendarenko和Kakkonen开发了一个基于本体的事件提取系统,称为BEECON,用于从在线新闻中提取商业事件。
  • 由于构造事件模式通常需要专业知识,这些基于模式的抽取系统通常是为特定的应用领域设计的。对于涉及多个领域的应用,Cao等人提出将ACE语料库与其他专家定义的模式(如TABARI语料库)相结合来构建事件模式,产生更多的事件模式。

  除了为英语事件抽取设计的许多系统外,还为其他语言设计了一些基于模式的抽取系统。
  


  • Tran等人通过将词汇语义规则与机器学习相结合,开发了一个称为VnLoc的实时抽取框架,用于从越南新闻中抽取事件。
  • Saroj等人为印度语言设计了一个基于规则的事件提取系统,该系统从新闻通讯社和社交媒体文本中提取事件。
  • V alenzuelaEscárcega等观察到没有一种标准的语言来表达模式,这可能会阻碍基于模式的事件抽取任务的发展。他们提出了一个独立于领域的、基于规则的框架,并为事件提取设计了快速开发环境,以降低新手的成本。

  尽管基于模式的事件提取可以实现较高的提取精度,但是模式构造存在可伸缩性问题,因为模式通常依赖于应用程序领域。
  


  • 为了增加可伸缩性,Kim等人设计了并行自动语言知识获取系统PALKA(Parallel Automatic Language Knowledge Acquisition),从标注语料库中自动获取事件模式。他们为事件模式定义了一种专门的表示,称为FP结构(框架-短语和模式结构)。在Palka中,事件模式以FP-Structure的形式构建,并通过语义约束的泛化进一步调整。此外,FP-Structure将单事件论元模式扩展为具有多个论元的事件模式,即一个事件可以包含多个论元。例如句子2中的“bombing”事件,除了“target”论元之外,还可能有多个潜在的事件论元,如“agent”,“patient”,“instrument”和“effect”。此外,PALKA将一句中的多个从句转换为多句形式,用于事件提取。
  • 此外,Aone和Ramos-Santacruz开发了一个称为REES的大规模事件提取系统,通过建立事件和关系本体模式来生成新的事件模式,可以提取多达100个事件类型,但是新的模式仍然需要通过他们系统的图形界面进行人工验证。

  B. 自动事件模式构建

  对于由具有专业知识的专家手工构建的事件模式,由于它们具有高质量的定义,因此基于模式匹配的事件抽取对于特定领域的应用往往可以达到较高的准确率。然而,手工构建事件模式相当耗时费力,不仅导致产生大型模式数据库的可扩展性问题,而且在其他领域应用事件模式时也存在适应性问题。一些研究者提出利用少量预分类训练语料库或种子模式,采用弱监督方法或bootstrapping方法自动获取更多的模式。
  


  • Riloff等人开发了AutoSlog - TS事件提取系统来实现自动模式构建,这是他们之前的AutoSlog系统的扩展。特别是在AutoSlog系统中定义的13种语言模式的基础上,应用句法分析器的CIRCUS从未标记的语料库中获取新的事件模式。下面的示例说明了它的新模式构建过程。
    Sentence 3: World trade center was bombed by ter-rorists.
    通过句法分析我们得到主语“Word trade center”,动词短语“was bombed”和介词短语“by terrorists”。将“passive-verb”和“passive-verb prep”结合起来,可以得到潜在的事件模式:“was bombed”和“bombed by”。是否包含新的事件模式取决于根据领域相关文档和独立于领域文档中的统计数据得出的得分。他们在MUC-4恐怖主义数据集上的实验证实,字典的性能堪比手工制作的字典。尽管仍然需要一些人工干预,但AutoSlog - TS可以显著减少工作负载以创建一个大型的训练语料库。

  人们还提出了许多其他方法,通过设计机器学习算法,根据一些种子模式来学习新的模式,以促进自动模式构建。例如:
  


  • Yangarber等人[75]提出的ExDisco方法提供了一小组种子模式而不是语言模式来获得潜在的事件模式。
  • 不仅是种子模式,种子术语或种子事件实例也被用来构建潜在的事件模式。
  • Piskoriski等人开发的NEXUS系统通过基于熵最大化的机器学习算法,从一小部分标注的语料库中学习候选事件模式,但候选模式仍然需要人工检查和修改以纳入模式数据库。
  • Cao等人提出了一种利用主动学习从外部语料库中导入频繁模式的模式技术。
  • Li等提出了一种最小监督模型,用于从多个视图中提取中文事件,包括模式相似度视图(PSV)、语义关系视图(SRV)和形态结构视图(MSV)。此外,每个视图还可以用于提取事件模式。PSV根据候选模式与现有模式的结构相似性对候选模式进行排序,然后接受排名最高的新闻模式。相反,SRV捕获相关文档中提到的相关事件,同时合并MSV以推断新模式。

  基于模式的事件抽取由于利用领域专家建立的高质量事件模式具有较高的抽取准确率,在许多工业应用中得到了广泛的应用。然而,构建大规模的事件模式成本太高。因此,近年来见证了各种基于机器学习的事件提取技术的快速发展。
  Ⅴ. 基于传统机器学习的事件抽取

  这部分主要介绍使用传统的机器学习算法(如支持向量机(SVM),最大熵(ME)等)进行事件提取。那些使用神经网络技术(或所谓的深度学习)的将在下一节中介绍。注意,它们都是一种监督学习技术,需要使用ground truth标签的训练数据,这通常由具有专业知识的专家来完成。如何标注事件及其论元已在第三节中介绍。
  机器学习方法的基本思想几乎是一样的,即从训练数据中学习分类器,并应用分类器从新文本中提取事件。下图展示了基于机器学习的事件提取的总体结构。

  

  

此外,基于机器学习的事件提取一般分为两个阶段和四个子任务:
  


  • 第一阶段包括两个子任务:(1)触发器检测,即检测事件是否存在,如果存在,则检测文本中对应的事件触发器;(2)触发器/事件类型识别,即将触发器/事件分类为给定的事件类型之一。
  • 第二阶段包括两个子任务:(3)论元检测,即检测哪个实体、时间和值是论元;(4)论元角色识别,即根据识别的事件类型对论元的角色进行分类。

  这两个阶段和四个子任务可以以流水线方式执行,其中多个独立的分类器各自被训练,并且一个分类器的输出也可以作为其后续分类器的输入的一部分。这四个子任务也可以联合执行,一个分类器执行多任务分类,并直接输出多个子任务的结果。
  无论是PipeLine执行还是联合执行,学习分类器都需要首先执行一些特征工程工作,即从文本中提取特征作为分类模型的输入。因此,在这一部分中,我们首先介绍一些用于分类器训练的常见特征,然后回顾和比较文献中的流水线和联合分类方法。
  A. 学习模型的文本特征

  最常用的文本特征大体上可以分为三类:词汇特征、句法特征和语义特征。其中大部分可以通过一些开源的NLP工具获得。
常用的词汇特征包括:
  

  • 全词、小写词、近义词;
  • 词汇化,将单个词的不同形式还原为词根形式。例如:computers是单词computer的复数形式。
  • 词性标签,将语料库中的一个词与特定词性相对应,如名词、动词、形容词、副词等。

  句法特征是通过依存句法分析得到的,即求出句子的词汇依存关系结构。简而言之,它在表示不同类型关系的句子中的单词之间创建边缘,并将它们组织成树结构。一些常用的语法功能包括:
  

  • 依赖路径的标注;
  • 依存词及其词汇特征;
  • 候选词在依赖树中的深度。

  一些常用的语义特征包括:
  

  • 语言词典中的同义词及其词汇特征;
  • 常用于论元识别的事件和实体类型特征。

  每个特征都可以用基于word-of-bag模型的二进制向量表示。特征工程就是如何选择最重要的特征,并将它们整合到一个高维向量中来表示句子中的每个单词。最后,利用训练数据集的文本特征及其对应的标签训练事件抽取分类器。
  B. Pipeline 分类模型

  pipeline分类通常训练一组独立的分类器,每个分类器用于一个子任务;然而,一个分类器的输出也可以作为其后续分类器输入的一部分。为了训练分类器,可以使用不同的特征,包括句子中的局部特征和文档中的全局特征。根据局部特征和全局特征在分类器训练中的应用,我们将pipeline分类方法分为句子级事件抽取和文档级事件抽取。
  1)句子级事件抽取

  在句子级事件提取中,首先将句子标记为离散的token,然后根据特征工程的结果用特征向量表示每个token。在英语中,token通常是一个单词;然而,在某些语言中,token可以是一个字符或多个字符,也可以是一个单词或短语。分类器从语料库中带标记的文本进行训练,然后用于确定某个token是否为触发词(或事件论元)及其事件类型(或论元角色)。
  David Ahn[27]提出了一个典型的PipeLine处理框架,由两个连续的分类器组成:第一个分类器TimBL采用最近邻学习算法检测触发器;第二个分类器MegaM采用最大熵学习器来识别论元。为了训练TimBL分类器,使用了词法特征、WordNet特征、上下文特征、依存特征和相关实体特征;使用触发词、事件类型、实体提及、实体类型、触发词与实体之间的依存路径等特征训练MegaM分类器。已经提出了许多不同的pipeline分类器,它们通过不同类型的特征进行训练。例如Chieu和Ng加入unigram、bigram等特征,采用最大熵分类器。在生物医学领域,更多特定领域的特征和专业知识被用于分类器训练,如频率特征、token特征、路径特征等。
  一些研究者提出将模式匹配集成到到机器学习框架中。如前所述,事件模式可以提供更精确的事件结构,其中包含某些特定触发器及其关联论元之间的显式关系,尽管这种关系是人工设计的,没有太多的可扩展性。Grishman等人提出先进行模式匹配,预先分配一些潜在的事件类型,然后使用分类器识别剩余的事件提及。这两种方法在增强事件提取方面是相辅相成的。此外,在机器学习分类器检测到触发器后,也可以执行模式匹配。由于事件论元与触发器类型密切相关,因此应用一些良好的触发器-论元关系有助于改进论元识别。此外,事件模式也可以与token特征合并,作为机器学习分类的输入。
  如事件标注事例图所示,在一些语言(如英语)中,句子token化是一项简单的任务,因为单词是由分隔符显式分隔的。然而,在其他一些语言中,如汉语和日语,句子由连续的字符组成,而不使用分隔符来分隔单词。因此,分词通常需要首先将一个句子分成许多离散的token(词/词)。由于分词可以独立于事件提取任务实现,如果有分词错误,则会传播到下游任务,降低其性能。此外,由于自然语言的多义性,在分词后,一个词很可能包含两个或两个以上的触发器;而触发器被分为两个或两个以上的单词。
  为了解决这类标记化问题,Zhao等人提出,对于分句后的每个单词,首先从同义词字典中获取每个潜在触发器及其对应的事件类型。Chen和Ji提出同时使用词语级和字符级触发器标注策略。此外,他们提出使用字符级token(包括当前字符、前一个字符和下一个字符等)训练最大熵马尔科夫模型分类器用于触发检测。Li等人利用内部触发语的成分语义和触发词之间的语篇一致性来增强中文触发语的识别能力。具体来说,如果一个动词词的组成部分(一个或多个汉字)被标记为中文触发器,那么它就是一个触发器。为保证语篇一致性,对动词词的单个字符,如果属于已标注触发器,则将其与前一个字符和下一个字符合并,形成候选触发器。
  2)文档级事件抽取

  在上述方法中,只有句子中的单词或短语的局部信息和句子级别的上下文被用来训练分类器。然而,如果我们将事件提取任务放在更大的背景下,比如包含多个句子的文档或包含多个文档的集合,那么就可以利用许多全局信息来提高提取的准确性,即使只是为了从一个句子中提取事件。对于文档级事件抽取,两个关键的设计问题包括:可以使用什么样的全局信息;以及如何应用它们来辅助事件提取。对于第一个设计问题,可以从跨文档、跨句子、跨事件和跨实体的推断中挖掘全局信息,如词义、实体类型和论元提及。对于第二种,全局信息既可以作为局部分类器的补充模块使用,也可以作为局部分类器中的全局特征使用。
  通过评估局部分类器输出的置信度,可以利用全局信息建立一个附加的推理模型来增强局部分类器。Ji和Grishman观察到,事件论元在句子和文档之间会保持一定的一致性,比如不同句子和相关文档中的词义一致性,以及相同或相关事件的不同提及之间的论元和角色的一致性。为了利用这些观察结果,他们建议为主题相关的文档簇建立两条全局推理规则,即每组一个触发意义和每组一个论元角色,以帮助提高句子级分类器的抽取置信度。Liao和Grishman后来扩展了这种全局信息推理的应用,并进一步提出了应用文档级跨事件信息。Liu等人探索了事件-事件关联和主题-事件关联两种全局信息,建立了概率软逻辑(PSL)模型,进一步处理来自局部分类器的初始判断,生成最终的抽取结果。
  也可以利用全局信息和句子级特征作为全局特征来训练局部事件抽取分类器。Hong等人提出了一种跨实体推理模型,提取实体类型一致性作为关系特征。他们认为,一致类型的实体通常以相同的角色参与类似的事件。为此,他们定义了9个新的全局特征,包括实体子类型、领域中实体-子类型共现、论元实体-子类型等,训练一组句子级SVM分类器。在另外两篇文献中也采用了类似的办法。Liao和Grishman提出首先通过潜在的Dirichlet分配(LDA)模型计算每个文档的主题分布,并将这些主题特征编码到局部抽取分类器中。在另一篇论文中定义了三种全局特征,包括词汇桥特征、语篇桥特征和a角色填充分布特征,它们与局部特征一起用于训练抽取分类器。
  C. 联合分类模型

  上述PipeLine分类模型可能会遇到错误传播问题,上游分类器中的错误很容易传播到下游分类器,并且可能会降低它们的性能。另一方面,下游分类器不能影响其先前分类器的决策,不同子任务之间的相互依赖关系也不能很好地利用。为了解决PipeLine的问题,联合分类被提出并被认为是一种很有前途的替代方案,可以从两个或多个子任务之间的密切交互中获益,因为一个子任务中的有用信息可以向前传递到下一个任务中,也可以向后传递到前一个任务中。
  在每个事件提取阶段,可以针对多个子任务训练联合分类模型。例如:
  


  • Li等人提出了一种触发器检测和事件类型识别的联合模型,使用基于整数逻辑编程(ILP)的推理框架来集成两种类型的分类器。特别是,他们提出了两种触发检测模型:一种是基于条件随机场(CRF)的,另一种是基于最大熵(ME)的。基于ILP的框架可以帮助找到约束变量的最优值最小化加权目标函数。因此,可以在ILP推理框架内联合训练多个子任务,但每个子任务都有不同的约束和权重。
  • Li等人也采用了类似的方法训练了一个语篇级论元确定和角色识别的联合模型。
  • Chen和Ng训练了两个基于支持向量机的联合分类器,每个分类器用于一个阶段的子任务,具有更多的语言特征。

  还可以训练联合分类模型,根据预定义的事件结构,同时提取事件的触发器和相应的论元。例如:
  


  • Li等人将事件提取描述为一个结构化学习问题,并提出了一种将局部和全局特征集成到结构化感知器模型中的联合提取算法,用于同时预测事件触发器和论元。特别是,整个句子的结果可以看作是一个图,其中触发器或论元表示为节点,论元角色表示为从触发器到其论元的类型化边。他们应用波束搜索在图上执行不精确的解码,以捕获触发器和论元之间的依赖关系。
  • Judea和Strube观察到,事件抽取在结构上与框架-语义分析相同,后者是从文本中抽取语义谓词-论元结构。因此,他们优化并重新训练了SEMAFOR框架语义解析系统,用于结构事件提取。

  结构化预测方法也被广泛应用于生物医学领域的联合提取模型。例如:
  


  • Riedel等人将事件表示为句子的关系结构化token,并应用基于马尔可夫逻辑的联合概率模型提取生物医学事件。
  • V enugopal等人将马尔可夫逻辑网络(MLNs)和支持向量机(SVM)结合起来作为联合提取模型,利用支持向量机分类器处理高维特征,并通过MLNs对关系依赖进行建模。
  • Vlachos等人采用了基于搜索的结构化预测框架,提供了很高的建模灵活性。
  • McClosky等人在重新排序依赖关系解析器中利用事件论元的树结构来捕获全局事件结构属性。

  除了事件提取,联合分类模型还可以与其他NLP任务一起训练,如命名实体识别、事件共指消解、事件关系提取等。一些研究人员提出训练单个模型来联合执行这些任务。例如:
  


  • Li等人提出了一个可以在单个模型中联合执行这些任务和事件提取的框架。具体的说,他们使用信息网络来表示实体、关系和事件,作为信息网络表示,通过基于结构化预测的单个模型提取所有这些实体、关系和事件。上述联合提取方法仅在句子级操作,但可能会遗漏文档级的有价值的信息。
  • Judea和Strube在Li的模型的基础上提出了一种全局推理模型,将全局上下文和文档上下文纳入到语料库系统中,共同提取实体提及、事件和关系
  • 此外,Araki和Mitamura发现事件及事件共指这两种任务提供了有用的语义和语篇信息。他们提出了一个文档级的联合模型来捕获事件触发器和事件共指之间的相互作用,从而同时提高事件触发器识别和事件共指的性能。

  Ⅵ. 基于深度学习的事件抽取

  特征工程是基于机器学习的事件抽取主要挑战问题。如前所述,虽然可以将词汇、句法、语义等多种特征作为分类器的输入,但它们的构建需要语言知识和领域专家的专业知识,这可能会限制训练过的分类模型的适用性和适应性。此外,这些特征通常只有一个one-hot表示,这不仅存在数据稀疏问题,而且使分类模型训练的特征选择复杂化。
  近年来,利用多层连接的人工神经元来构建人工神经网络的深度学习技术在各种分类任务中得到了广泛的研究。在人工神经网络中,最底层可以将具有非常简单表示的原始数据作为其输入。每一层都可以学习将其较低层的输入转换为更抽象和复合的表示,然后将其输入到自己的较高层,直到最高层的输出特征用于分类。与经典的机器学习技术相比,深度学习可以大大降低特征工程的难度。
  深度学习已成功应用于各种NLP任务,如命名实体识别(NER)、搜索查询检索和问答、句子分类、名称标注和语义角色标注、关系提取。最近也有许多深度学习方案被提出用于事件抽取。一般流程是构建一个神经网络,将词嵌入作为输入,并为每个单词输出分类结果,即对单词是否是事件触发器(或事件论元),如果是,则对其事件类型(或论元角色)进行分类。
  如何设计一个高效的神经网络体系结构是基于深度学习的事件抽取的主要挑战问题。在下文将回顾一些典型的神经网络。在此之前简要介绍词嵌入技术,因为大多数用于事件抽取的神经网络都有一个共同的方法,即使用词嵌入作为原始数据输入。词嵌入技术用于将词汇表中的单词或短语转换为低维的实值向量。在实践中,单词的向量表示是从大规模语料库中训练出来的,并提出了各种词嵌入模型,如连续词袋模型(CBOW)和连续跳词模型(skip-gram)。
  A. 卷积神经网络(CNN)

  卷积神经网络(CNN)是最常用的神经网络结构之一,它由多层完全连接的神经元组成。也就是说,下层中的每个神经元都与其上层中的所有神经元相连。由于CNN能够基于连续和广义的词嵌入来学习文本隐藏特征,因此它被证明能够有效地捕捉句子的句法和语义。
  Nguyen和Grishman可能是第一批将CNN用于事件检测(在句子中标识触发器及其事件类型)的研究人员。如下图所示,首先将每个单词转换成实值向量表示,该实值向量表示是词嵌入、其位置嵌入和实体类型嵌入的串联,作为网络输入。CNN从输入到输出由卷积层、max-pooling层和softmax层组成,并输出每个单词的分类结果。训练CNN的典型技术有很多种,包括反向传播梯度(back-propagation gradient)、丢弃正则化(dropout regularization)、随机梯度下降(stochastic gradient descent)、洗牌小批量(shuffled mini-barches)、AdaDelta学习率自适应和权重优化。
  
  

  

  典型的CNN结构通常使用一个max-pooling层对整个句子的表示进行max运算,然而,一个句子可能包含多个事件,这些事件共享论元,但角色不同。Chen等人提出了一种动态多池化卷积神经网络(DMCNN),通过提取词汇级和句子级特征的动态多池化层来评估句子的每个部分。在DMCNN中,根据预测的触发器将每个特征分为三个部分,并保留每个部分的最大值,以保留更多有价值的信息,而不是使用单一的max-pooling值。此外,他们的CNN模型还使用了一个skip-gram模型来捕捉单词的有意义的语义规则。
  在上述方法中,卷积运算将k-gram的向量线性映射到特征空间中,在特征空间中,这些k-gram向量被获得为k个连续词得表示的级联。为了利用长范围和非连续依赖关系,Nguyen和Grishman[151]建议对句子中所有可能的非连续k-gram执行卷积操作,其中最大汇集函数用于计算卷积分数,以区分最重要的非连续k-gram进行事件检测。
  一些学者对典型的CNN模型提出了一些改进。例如,Burel等人设计了一种语义增强的深度学习模型,称为Dual-CNN,它在典型的CNN中增加了一个语义层,以捕获上下文信息。Li等人提出了一种并行多池卷积神经网络(PMCNN),该网络可以捕获句子的成分语义特征,用于生物医学事件的提取。PMCNN还利用基于依存关系的嵌入来表示词的语义和句法,并使用矫正后的线性单元作为非线性函数。Kodelja等人采用bootstrapping方法构建了全局上下文的表示,并将其集成到CNN模型中进行事件提取。
  B. 递归神经网络(RNN)

  许多基于CNN的事件提取方案存在错误传播问题,因为它们PipeLine执行两个子任务,即首先进行事件检测,然后进行论元识别。此外,CNN结构通常以单词嵌入的拼接为输入,对连续的单词执行卷积运算,以获取当前单词与其相邻单词的上下文关系。因此,它们不能很好地捕获远距离单词之间的一些潜在的相互依赖关系,从而将句子作为一个整体来联合提取触发器和论元;而联合提取(如上一节所讨论的)可以利用事件触发器和事件论元之间的关系来交互这两个单独的子任务。
  在语言建模中,句子通常被认为是一个词的序列,即从句首到句尾一个词接一个词。由一系列相连神经元组成的递归神经网络(RNN)结构可以有效地利用这种顺序输入。

  

  

如上图所示,简单的RNN由一系列连接的长期和短期记忆(LSTM)神经元组成,其中LSTM神经元的输出也用作其顺序连接的LSTM神经元的输入。因此,RNN结构可以利用直接或间接连接的任意两个单词之间的潜在依赖关系,这使得其能够广泛应用于许多NLP任务,包括命名实体识别、词性标注、关系提取、句子分析、序列标注等。此外,RNN结构还输出单词序列,每个单词序列可以被预测为触发器或论元,由此可以联合执行联合触发检测和论元识别这两个任务。
  对于事件抽取,已经提出了一些基于RNN的模型,通过在句子中按照单词的顺序向前或向后输入单词来利用单词的相互依存关系。例如,Nguyen等人设计了一种用于联合事件抽取的双向RNN结构,如上图所示。他们的模型通过两个单独的RNN在正反向句子上运行,每个RNN由一系列门控递归单元(GRU)组成。联合提取分为两个阶段:编码阶段和预测阶段。在编码阶段,与CNN模型不同的是,该模型不使用位置特征,而是用二值向量来表示事件触发器和论元联合预测的依赖特征。在预测阶段,该模型将触发器和论元之间的依赖关系分为三类:(1)触发子类型之间的依赖关系;(2)论元角色之间的依赖关系;(3)触发子类型和论元角色之间的依赖关系。
  单词之间的句法依赖也可以用来增强基本的RNN结构。例如,Sha等人通过在双向RNN中加入两个RNN神经元的句法依赖连接,设计了一个依赖桥RNN(Dependency Bridge RNN)。如下图所示,通过将依存关系桥包含到双向RNN中来利用句子的句法依存关系。

  

  

除了使用依存关系桥,还可以直接利用句子的句法依存关系树来构建树形结构的RNN。在典型的BiLSTM(双向LSTM)基础上,Zhang 等人通过对汉语事件检测句法依存关系分析器的原始依存关系树进行变换,进一步构建了以目标词为中心的Tree-LSTM。Li等人提出利用外部实体本体知识进一步扩充Tree-LSTM,用于生物医学事件抽取。
  RNN结构不仅适用于句子级的事件抽取,也适用于文档级的事件抽取。Duan等人设计了一种DLRNN模型(文档级RNN),通过使用分布式文档表示向量来提取跨句子甚至跨文档的线索,即通过无监督学习PV-DM模型来捕捉文档的主题分布。文档中的所有单词使用相同的文档向量,单词嵌入和文档向量的连接被用作Bi-LSTM模型的输入。
  RNN结构还可以用于训练联合分类模型,不仅用于包括触发检测和论元识别的事件提取,而且还用于实体提及检测[173]。通过训练单个Bi-GRU(双向GRU)网络模型,以实体提及检测器、触发分类器和论元角色分类器的顺序PipeLine方式执行这三个子任务,其中所有三个子任务共享网络隐含表示,以利用子任务之间的一些共同知识以及子任务之间的潜在依赖或交互。
  上述RNN结构采用GRU或LSTM作为基本组成单元,采用门控策略控制神经网络中的信息处理。然而,门运算不能并行进行,而且很耗时。Zhang等人提出使用一种简单递归单元(SRU)作为基本的组成神经元,因为它可以降低门运算的复杂度,而不会引起依赖于先前单元的乘法运算。他们建立了两个双向SRU模型(Bi-SRU):一个用于学习词级表征,另一个用于字符级表征。
  C. 图神经网络(GNN)

  近年来,许多在图上操作的神经网络,作为一般参考,称为图神经网络(GNN),最近已经在广泛的应用领域提及。简单地说,GNN在一个图结构上应用多个神经元来实现所谓的在非欧几里德空间中的几何深度学习。传统的神经元运算,如在RNN和CNN中广泛使用的递归核和卷积核,也可以应用于图结构中,学习图中嵌入的各种深层特征,用于不同的任务。
  一些研究人员尝试将GNN模型用于事件提取。这种方法的核心问题是首先为文本中的单词构建一个图表。Rao等人采用了一种语义分析技术,称为抽象意义表示(abstract meaning representation, AMR),该技术可以规范化文本中的许多词汇和语法变化,并输出一个有向无环图,以捕获文本中“谁对谁做了什么”的概念。此外,Rao等人认为事件结构是AMR图的子图,并将事件提取任务转化为子图识别问题。他们训练了一个图LSTM模型来识别用于生物医学事件提取的事件子图。
  另一种构建图的方法是对句子的句法依赖树进行一些转换。注意,句法依赖可以看作是中心词到从属词的有向边缘,但也有一个边标签作为依存性类型。
首先,对每个单词创建一个新的自循环边,并将其包含到依赖树中,即一条从单词开始,以单词结束的边。所有这些自循环边都具有相同的新边类型。然后,对于从单词wi到单词wj的每条边缘类型为T的依赖边(wi, wj),创建一条类型为T’的反向边(wj, wi),并将其包含到依赖树中。图形结构如下图所示。

  

  

在构建的图的基础上,进行多跳图卷积运算,不仅从局部邻近词中提取上下文特征,而且从长依赖词中提取上下文特征,为每个词生成新的表示向量。
  D. 混合神经网络模型

  上述三种基本的神经网络体系结构在用于捕获文本中不同的特征、关系和依赖关系进行事件提取时各有优缺点。许多研究者提出了混合神经网络模型,将不同的神经网络结合起来,各取所长。建立这种混合模型的常见方法是使用不同的神经网络来学习不同类型的单词表示。有文献在进行图卷积运算之前利用Bi-Lstm模型获得初始词表示。
  有人提出将CNN和RNN结合成一个混合模型。例如,Zeng等人提出首先使用一个CNN来学习每个单词的局部上下文表示,然后将其与另一个Bi-Lstm的输出连接起来,获得最终的单词表示用于分类。类似的连接CNN输出和Bi-Lstm隐藏层的方法也被应用于中文、印度等语言的事件提取。Nurdin和Manlidevi还设计了一个由CNN和Bi-LSTM组成的混合模型,用于从印度尼西亚新闻中提取事件,其论元包括:who、did what、when、where、why、how。Liu等人也使用CNN获取每个单词的局部上下文表示,然而,他们建议使用Bi-LSTM来获得向前层和向后层的串联隐藏状态的加权和的文档表示。然后将单词局部表示和文档表示进一步连接起来以进行事件触发检测。
  另一种重要的混合模型是生成性对抗网络(GAN),它通常由两个相互竞争的神经网络组成,一个称为生成器Gnn,另一个称为鉴别器Dnn。Gnn产生候选结果;但Dnn根据训练数据基本事实对它们进行评估。Gnn的训练过程引入了一些来自训练数据集的噪声数据,而Dnn则努力使与真实数据分布的差异最小化。生成器和鉴别器通常采用相同的神经网络结构,但许多GAN模型提出了不同的训练策略。
  一些研究人员提出将GAN框架应用于事件提取。它们的Gnn和Dnn网络采用了类似于Bi-LSTM的RNN结构。在训练过程中,Hong 等人提出用双通道自我调节学习策略来规范学习过程。在自我调节过程中,训练生成器产生最虚假的特征,同时训练带有记忆抑制器的鉴别器来消除虚假特征。Liu等人提出了一种对抗性模仿策略,将知识蒸馏模块合并到特征编码过程中。在他们的混合模型中,使用了教师编码器和学生编码器,每个编码器都是Bi-GRU网络。教师编码器通过黄金标注进行训练,而学生编码器则通过对抗性模仿学习使其输出与教师编码器的输出之间的距离最小化来进行训练。Zhang等人在训练过程中使用强化学习(RL)策略更新Q表,Q表记录了根据系统状态和动作计算出的奖励值。
  E. 注意机制

  注意机制最早出现在计算机视觉领域,其目的是模仿人脑的视觉注意机制。近年来,注意机制在许多自然语言处理任务中得到了广泛的应用。简单地说,注意力是一种辨别机制,它引导神经模型根据输入的每个组成部分对给定任务的重要性来不平等地对待。虽然它是通过为不同神经元的状态或输出分配不同的权重来实现的,但权重实际上是从模型训练过程中自学习的。
  人们提出了许多词级注意机制来学习句子中每个词的重要性,比如区分不同的论元词、词类型、词关系。它们的区别主要体现在哪些元素应该得到更多的关注,以及如何训练注意向量。例如,Liu等人认为,与其他词语相比,触发器的论元词语应该受到更多的关注。为此,他们首先构建了黄金注意向量,以便只为每个带标注的触发器、只编码带标注的论元单词及其上下文单词。此外,他们为每个单词设计了两个上下文注意向量:一个基于词的上下文向量;另一个基于在转换后的实体类型空间中编码的上下文实体类型。然后,将这两个注意向量与事件检测器连接并一起训练,以最小化事件检测和注意差异两者的加权损失。Wu等人应用论元信息通过BiLSTM网络训练注意力。
  在词级注意机制中,句法分析器的实体关系也可以用于训练注意力。其基本思想是,句法依存性可以提供两个可能非连续但距离遥远的词之间的联系,而依存性类型可以帮助区分词之间的句法重要性。对于中文事件的抽取,由于没有像英语那样的显式分词,Wu 等人还提出了一种字级注意机制来区分中文单词中的每个字的重要性。
  一些研究人员还提出将词级和句级的注意相结合,以增强多句文档中的事件抽取。Zhao等人认为,在许多多句文档中,虽然一个句子可能包含不同类型的事件,但通常与文档主题相关。他们提出了一种具有分层监督注意机制的Deeb-RNN模型,该模型在词级关注事件触发词,在句子级关注那些包含事件的句子。为此,他们构建了两个黄金注意力向量:一个是基于句子触发器的词级注意力,另一个是句子级注意力,如果每个句子包含一个触发词。除了一个文档中的句子相互依赖之外,还可以在单个句子中嵌入多个事件。Chen等人认为同一句话中提到的事件在语义上往往是连贯的。为了同时捕捉句内依赖和句间关联,他们提出了一个具有门控多级注意机制的HBTNGMA模型,用于提取和融合句内和句间上下文信息,以增强事件检测。
  除了利用单词和句子,一些研究人员还建议整合额外的知识整合到注意力中,比如使用多语言知识或先验触发语料库。大多数事件抽取模型都是针对一种特定的语言进行训练和应用的,这种语言可能会出现典型的单个单词在不同上下文中具有不同含义的歧义问题。Liu等人检查了ACE 2005中的标注事件,发现57%的触发词有歧义。他们认为,根据对多语言一致性和多语言互补的观察,使用多语言方法可以帮助解决歧义问题。因此,他们提出了一个门控多语言注意框架,该框架同时包含单语语境注意和门控跨语言注意。对于后者,他们首先使用机器翻译器来获得另一种语言的翻译文本。Li等人设计了先验知识集成网络,将收集到的关键字编码为先验知识表示。然后,将这些知识表示与自我注意网络结构集成。
  Ⅶ、基于半监督的事件抽取

  上述基于机器学习和深度学习技术的算法都是一种有监督的学习方法,需要有标注的语料库进行模型训练。由于深度学习方法通常涉及神经网络中的大量论元,通常标注的语料库越大,模型的训练效果就越好。然而,由于标注过程费时费力,因此获取标注语料库是一项相当昂贵的任务,在大多数情况下还需要领域专业知识和专业知识。正因为如此,许多标注语料库规模较小,覆盖率较低。例如,在ACE 2005语料库中,只定义了33种感兴趣的事件类型,对不同应用的覆盖率非常低;而且,在标记的事件中,大约60%的事件类型的实例少于100个,3个事件类型的实例甚至少于10个。
  如何提高一小组标记黄金数据的提取精度已成为一个关键的挑战。一种简单的解决方案是首先自动生成更多的训练数据,然后使用包含原始黄金数据和新生成的数据的混合数据进行模型训练。在本节中,我们回顾了文献中的此类解决方案,尽管它们可能使用了不同的名称,如半监督、弱监督、远程监督等。我们注意到,尽管使用混合数据会影响模型的训练过程,但这些学习分类算法的基础与前两节中回顾的算法相似。在这一部分,我们主要关注他们如何将少量的标签数据扩展到更大的语料库,以及如何从混合数据中训练提取模型。
  A. 联合数据扩展与模型训练

  带标签的黄金数据集可能很小,然而,它们可以迭代地用于模型训练。这种通过数据替换的迭代模型训练是一种称为Bootstrapping的公知技术的变体。其基本思想是首先用一小部分有标签的数据训练分类器,对新的无标签数据进行分类。除了分类标签,分类器还输出新数据的分类置信度。然后,将置信度较高的数据加入到训练数据中,用于下一轮模型训练。
  利用分类结果进行数据扩展的关键挑战在于如何评估新数据的分类可信度。由于事件具有复杂的结构,比如不同的事件类型包含不同的论元和不同的角色,因此计算事件提取置信度通常准确性较低。Liao和Grishman提出只使用新样本提取结果的一部分来进行数据扩展,特别是信心分数高的触发器及其论元。基于它们的提取模型,根据来自他们的触发器分类器和论元分类器的概率之间的乘积选择信心分数最高的。此外,他们使用了一种名为INDRI的信息检索系统来收集相关文档的群集,并应用了之前文献中提出的跨文档推理算法,以包含高置信度的训练数据。
  Wang等人提出使用基于触发器的潜在实例来发现未标注的数据进行扩展。如果一个单词在黄金数据集中用作触发器,则在未标记的数据集中提及该单词的所有实例也可能表示相同的潜在实例。基于这样的假设,他们提出了一个对抗性的训练过程,以过滤掉噪声的实例,同时提取信息实例来包含新的数据。虽然包含来自分类器输出的新数据具有成本效益,但实际上不能保证新包含的数据具有完全正确的标注。在这方面,人工检查是非常必要的。Liao和Grishman提出了一种称为伪协同测试的主动学习策略,只使用最少的人工来标注那些高置信度的新数据。
  上述算法侧重于训练数据的扩展,但事件类型与标记为黄金的算法相同。最近,一些研究人员提出了一种迁移学习算法,用与黄金数据集中的参考数据不同的事件类型来扩展训练数据。例如,Nguyen 等人提出了一种两阶段算法来训练CNN模型,该模型能够有效地将知识从旧事件类型转移到目标类型(新类型)。具体地说,第一阶段是基于旧事件类型的标记数据,用随机初始化权重矩阵训练CNN模型。第二阶段是利用第一阶段初始化的权重矩阵,基于一小部分目标类型的标记数据训练CNN模型。最后,将两阶段训练的CNN模型用于目标类型事件检测和旧型事件检测。
  除了利用一小部分带有新类型的标签数据外,Huang等人还提出了一种zero-short迁移学习方法,用于提取具有新的不可见类型的事件,它只需要手动构造新的事件类型(例如,事件模式中的事件类型名称和论元角色名称)。特别是,他们首先通过训练基于黄金数据的CNN模型,构建了事件提及结构(来自事件实例的触发器、论元及其关系结构)和事件类型结构(来自事件模式的类型、角色及其关系结构)的向量表示。接下来,他们使用优化的CNN模型来表示新数据的事件提及结构和事件类型结构,并为每个新事件提及找到最接近的事件类型。
  B. 知识库中的数据扩展

  许多现有的知识库存储了大量的结构化信息,如FrameNet、Freebase、Wikipedia、WordNet,这些信息可以被利用来生成新的标注数据作为事件抽取的训练数据。
  FrameNet定义了许多完整的语义框架,每个框架由一个词汇单元和一组名称元素组成。这样的框架与事件具有高度相似的结构。由于FrameNet中的许多帧实际上表示某些事件,一些研究人员已经探索了将帧映射到事件以进行数据扩展。例如,Liu等人通过使用从FrameNet中的给定例句中检测到的事件来扩展ACE训练数据。具体地说,他们首先学习了基于ACE标记数据的事件检测模型,然后使用该模型来产生对例句的初步判断。然后,基于“相同的词汇单位、相同的框架和相关的框架倾向于表达相同的事件”这一假设,将一组软约束应用于全局推理,并将初始判断和软约束形式化为一阶公式,并用概率软逻辑(PSL)对其建模以进行全局推理。最后,它们从给定的例句中检测事件以进行数据扩展。
  类似地,Freebase(语义知识库)中的复合值类型(CVT)可视为事件模板,CVT实例可视为事件实例。CVT的类型、取值和论元分别被认为是事件类型、事件中的论元和事件中起作用的论元。Zeng等人利用Freebase中CVT的结构信息自动标注事件提及,以进行数据扩展。他们首先确定了CVT的关键论元,CVT在一个事件中发挥着重要作用。如果一个句子包含了CVT的所有关键论元,那么它很可能表达了CVT所呈现的事件。结果,他们记录了这句话中的单词或短语,以匹配CVT属性作为涉及的论元和它们的角色进行标注。
  此外,Chen等人建议通过利用FrameNet和Freebase来扩展培训数据。Araki和Mitamura利用WordNet和Wikipedia生成新的训练数据。除了使用通用知识库外,一些研究还侧重于使用相关知识库进行特定领域的事件抽取。例如,Rao等人使用包含蛋白质之间关系的生物路径交换(BioPax)知识库来扩展来自PubMed12Central文章的训练数据。在金融领域,Yang等人利用金融事件知识库进行数据扩展,其中包含9种常见的金融事件类型。
  C. 从多语言数据扩展数据

  基于同一事件可以用不同的语言描述,而一种语言的标注数据很可能用另一种语言表达相似信息的事实,提出了一些方法来利用这种多语言信息来解决数据稀疏和低覆盖率问题。例如,Zhu等人使用Google Translate消除了中英文之间的语言差异,生成了具有双语词汇特征的统一文本表示。通过这种方式,它可以合并来自两种语言的训练数据以、进行模型训练。
  相比之下,一些研究提出了通过利用跨语言数据(即跨语言bootstrap)进行bootstrap事件抽取,而不使用机器翻译或人工对齐的知识库。例如,Chen和Ji提出了一中联合训练的bootstrap框架,该框架包含两个单语自训练bootstrap事件抽取系统,一个用于英文,另一个用于中文。标记的事件可以从一种语言转换为另一种语言,以便产生用于另一种语言的事件提取的所谓的投影触发器和论元。Hsi等人提议通过使用多语种特征,如通用POS标签、通用依存关系、双语词典、多语种词解析法,利用多语种训练来增强分类器的标准事件提取管道。
  Ⅷ、基于无监督学习的事件抽取

  与监督和半监督学习不同,无监督学习不训练基于标记语料库的事件抽取模型。相反,无监督学习方法主要集中在开放领域的事件抽取任务上,如基于词分布表示的触发器和论元检测,以及根据事件实例和提及的相似性对它们进行聚类。
  A. 事件提及检测和跟踪

  事件提及是可以用一个或多个句子描述事件的关键字的集合。这些任务包括检测一篇文章中的事件提及,以及跟踪不同文章中类似的事件提及。请注意,不需要对触发器类型和(/或)论元角色进行分类,因为在此类任务中通常不预定义类型和角色。
  TDT评测将主题定义为一组与一些有重大影响的现实事件密切相关的新闻和(/或)故事。然后,TDT任务定义为判断给定的文章是否与同一主题的事件群集相关,并为每篇文章提供具有{Y es,No,Brief}等简单标签的TDT语料库,以表明其与主题的相关性,其中Brief表示部分相关。
  在许多TDT评测中,首先将句子转换为向量表示,然后计算向量距离来衡量事件检测中与某个主题的相似度。例如,Yang等人和Nallapati等人用他们的TF-IDF向量表示文档,这是使用术语袋(bag-of-terms)表示的传统向量空间模型。具体地说,文档中使用术语(单词或短语)频率(TF)和逆文档频率(IDF)进行统计加权。它们将k个排名靠前的术语保存在术语袋中,作为文档的表示向量。
  Stokes和Carthy提出用词汇链来表示文档,通过探索文本的内聚结构来创建一个语义相关的词序列。例如,关于airplane的文档的词汇链可能由以下单词组成:plane、airplane、pilot、cockpit、airhostess、wing、engine。他们使用WordNet识别文档中的词汇链,WordNet用单个唯一标识符表示同义词。
  根据TDT评测的任务定义,在没有使用TDT语料库的情况下,已经进行了一些其他研究,以检测各种网站上的新文章是否与已经识别的事件相关。例如,Naughton等人提出了利用聚合层次聚类算法对新闻文章和聚类句子进行词袋编码的句子向量化方法。
  除了使用单词和句子嵌入之外,一些人还建议利用新闻文章的几个额外信息,如时间和地点,来增强事件提及检测。Ribeiro等人提出将时间、地点和内容维度综合到文本表示中,并采用全对相似度搜索算法和马尔可夫聚类算法对描述同一事件的新闻文章进行聚类。同样,Yu和Wu提出了一种Time2V EC表示技术,该技术通过上下文向量和时间向量构造文章表示,并采用双层聚类算法进行事件检测。最近,提出了一些新的事件检测和跟踪方法,包括负样本-剪枝支持向量机、基于卷积神经网络的多实例学习模型和基于加权无向二部图的排序框架。
  B. 事件抽取和聚类

  事件提及检测的任务主要是检测事件关键词,以便对表达同一事件的句子或文章进行聚类。一些研究提出进一步区分事件触发词和论元,以便对相似事件进行聚类,并构建相似事件的事件模式。
  一种简单的方法是将句子中的动词视为事件触发器。例如,Rusu等人使用句子中的动词作为事件触发器,并利用触发器与命名实体、时间表达式、句子主语和句子宾语之间的依存路径来识别事件论元。此外,一些知识库还可以用于增强触发器和论元判别。Chambers和Jurafsky认为WordNet中的动词及其同义词集是触发器,而句法对象的实体是论元。Huang等人将OntoNotes中的所有名词和动词概念以及FrameNet中的动词和词汇单位视为候选事件触发器。此外,他们将所有与候选触发语有语义关系的概念都视为候选论元。然后,他们计算每对候选触发器和论元之间的相似度,以识别最终触发器和论元。
  基于提取的触发器和论元,事件实例可以被聚集到不同的事件组中,每个事件组具有潜在的但不同的主题。例如,Chambers和Jurafsky提出使用概率潜在Dirichlet分配主题模型来计算事件相似度进行聚类。Romadhony等人提出利用结构化知识库对触发器和论元进行聚类。Jans等人基于skip-gram统计识别并聚集事件链,该事件链可以被视为由动词及其从属行为者组成的部分事件结构。
  此外,对于每个事件组,还可以使用槽-值(slot-value)结构来建立事件模式,其中槽可以表示事件实例的某个论元角色和值(对应于事件实例的论元)。Yuan等人首先引入了一个新的事件分析问题,以填充开放领域新闻文档中的槽值事件结构。他们还提出了一种模式归纳框架,通过利用实体共现信息来提取槽模式。 Glavasˆ s 和ˆSnajder认为事件往往包含一些常见的论元角色,如施事、目标、时间和地点,并提出构建一个事件图结构来识别不同文献中提到的相同事件。
  C. 从社交媒体抽取事件

  许多在线社交网络,如Twitter、Facebook等,都提供了大量最新的信息。Twitter就是一个典型的例子。据报道,每天大约有2亿条推文发布,1%的推文覆盖了新闻通讯社报道的95%的事件。接下来,我们以Tweet为例,回顾了一些从社交媒体中提取事件的工作。
  与新闻社的文章相比,推文有其自身的特点,事件抽取也面临着新的挑战。推文大多由个人用户发布,每条推文都有字符限制。因此,tweet经常会出现缩写、拼写错误和语法错误,这会导致许多碎片化和嘈杂的文本没有足够的上下文来提取事件。与从新闻通讯社提取事件不同,实体、日期、位置和关键字是要从tweet中提取的主要组件。由于tweet很短,tweet中的所有实体都被视为感兴趣事件的参与者。
  Weng和Lee建议首先分析单个词的频率,然后根据它们的相关性过滤掉琐碎的词。在此之后,通过基于模块化的图划分技术对剩余的单词进行聚类以形成事件。Ritter等人利用命名实体标记器和TempEx工具来解析时间表达式。Zhou等人提出通过词库匹配过滤掉有噪声的推文。该词典包含事件关键字(或触发器),这些关键字(或触发器)摘自新闻通讯社发布的与推文时间大致相同的文章。此外,Zhou等人建议首先从新闻通讯社发布文章中定义命名实体,并建立了一个字典来匹配推文中的命名实体。特别地,他们使用SUTime来解决时间表达式的模糊性,并提出了一种无监督的潜在事件模型来从推文中提取事件。Guille等人提出了一种基于提及异常的事件检测算法,该算法通过计算给定连续时间片序列中单词出现频率的异常来检测事件。
  Ⅸ、事件抽取性能比较

  正如在前几节中所回顾的那样,事件提取可能有不同的任务定义,并且可能已经在不同的语料库上进行了实验,因此,不太可能对所有算法进行公平的比较。但多亏了这些公开的测评计划,性能指标和开放数据集的标准化使研究人员能够比较他们的算法。在本节中,我们主要将在公共ACE 2005数据集上试验的算法与标准评估程序进行比较,如下所示:
  


  • 触发器检测:如果触发器的偏移量(即,触发词在文本中的位置)与参考触发器匹配,则正确检测触发器。
  • 类型标识:如果触发器的偏移量和事件类型都与参考触发器及其事件类型匹配,则正确标识事件类型。
  • 论元检测:如果论元的偏移量与引用论元中提到的任何论元匹配,则正确检测论元(即正确识别事件的参与者)。
  • 角色标识:如果论元角色的事件类型、偏移量和角色与引用论元提到的任何一个匹配,则正确标识该论元角色。

  下表分别根据标准F-MEASURE(F1)给出了不同算法在英文和中文数据集上的事件提取结果,标准F-MEASURE(F1)是由两个常用的性能度量(即精确度和召回率)获得的。我们注意到,并不是所有的算法都报告了所有的结果,因为其中一些算法只为实现一些子任务而设计。还值得注意的是,事件提取还依赖于一些上游任务的结果,如命名实体识别、实体提及分类等。这些算法中的大多数都假定直接使用ACE 2005中实体、时间、值等的黄金标注作为事件提取任务输入的一部分。但是,我们注意到ACE 2005是一个很小的数据集,即使有很少的错误标注也是如此。

  

  


  

  

从表格中我们可以观察到,总的来说,英文上的算法比中文上的算法可以取得更好的性能。这可能是因为中文句子的事件抽取也依赖于分词结果。此外,还可以注意到,最近的高级神经模型可以获得更好的性能,这可以归因于它们强大的能力,可以学习更深入、更全面的上下文感知和(/或)句法感知的单词和句子表示。最后,我们可以观察到,所有的子任务都没有达到很高的F1值,这一方面表明了事件提取任务的难度,另一方面也促使了更先进的算法的开发。
  Ⅹ、总结

  事件抽取是自然语言处理中的一项重要任务,其目的是检测句子中是否提到了真实世界中的事件,如果有,则对事件类型进行分类,并识别事件论元。事件抽取由于其广泛的应用,早在几十年前就得到了广泛的研究,最近由于深度学习等新技术的快速发展,事件抽取引起了前所未有的研究兴趣。
  在本文中,我们试图为从文本中提取事件提供一个全面而最新的回顾。我们首先介绍了公共评估程序及其任务定义,以及用于封闭域和开域事件提取的注释数据集。我们将解决方案分为五类,包括模式匹配算法、机器学习方法、深度学习模型、半监督学习技术和无监督学习方案。我们介绍和分析了每组中最具代表性的方法,特别是它们的起源、基础和优缺点。此外,我们还介绍了评价方法,并对典型算法在ACE 2005语料库上进行了实验比较。
  模式匹配方法通常可以达到较高的抽取精度,但是模式构建需要耗费大量的人力和专业知识。另一方面,包括机器学习和深度学习在内的有监督学习方法都是基于大量标注语料库的可用性,尽管它们似乎取得了更好的性能。此外,这些闭域提取算法通常是针对特定领域进行训练的,可能不会直接应用于其他领域。对于开放领域的事件抽取,如何处理像社交帖子这样的嘈杂文本以及如何组织时空事件在实践中仍然是一个巨大的挑战。在接下来的内容中,我们将讨论事件提取未来可能的研究方向。
  


  • 知识增强的深度学习:尽管深度学习技术已被证明是用于事件提取的自动特征学习的强大工具,但这些神经模型通常具有过多的学习参数和网络配置,这不仅需要大量的带注释的原始数据,还需要仔细调整大量的网络配置。另一方面,模式匹配可以很好地利用专家的知识来指定准确的事件模式,尽管会增加人力成本。虽然这两种方法看起来是相反的,但一个很有前途的方向可能是如何在包含专家知识的情况下促进深度学习模型。虽然可以设想在神经模型训练过程中使用模式进行初步尝试,但需要付出更多努力来享受高质量的人类知识。
  • 域自适应迁移学习:在封闭域事件抽取中,各种事件模式通常预先定义了详细的事件类型和事件论元的角色。尽管模式提供了事件的结构化表示,但清晰地定义模式涉及特定于领域的知识。此外,特定于域的模式不容易从一个域扩展到其他域,尽管许多具有不同标签的论元即使在不同类型的事件中也具有相似的角色。迁移学习似乎是开发领域自适应事件抽取系统的一种很有前途的方法,在一个领域训练的抽取模型只需很少的调整就可以很容易地应用到其他领域。尽管如此,首先将用于多类型分类的常用训练模型转换为多任务学习模型可能是一种有见地的尝试。
  • 资源感知事件聚类:在开放领域事件抽取中,首先检测来自不同来源的事件,然后提取事件提及或关键字。然后根据事件关键字之间的相似度进行事件聚类,即实施一种以主题为中心的事件聚类。然而,我们注意到,不仅事件可以通过其关键字进行简要描述,还可以利用文本中的其他资源,如出版商、出版日期、空间标注以及主体和/或客体之间的各种关系来丰富聚类过程。一方面,我们同意以主题为中心的事件聚类仍然应该是开放领域事件抽取的基本操作;另一方面,我们注意到,随着其他资源的加入,可以实现多焦点聚类,这可能会进一步促使其他任务,如用于回答为什么会发生这样的事件的事件推理,以及用于回答预期的下一类事件的事件推理。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分