小智
新闻的核心内容是对事件的报道,不过一篇新闻稿中除了事件之外,还会充斥着背景、环境、评论等各种附加信息(图1),事件抽取的任务,就是要从这类非结构化的文本中抽取出有用的事件信息。
形式各异的新闻文本虽然是非结构化的,不过散落于这些文本之中的事件其实大有规律可寻。比如一个事件,它总是会发生在某个时间、某个地域,而事件必然涉及到一个或多个参与者(角色),它由某个行动触发,最终引发事物状态的改变等等。
①这条新闻除了时间、地点、参与者、动作过程等事件要素之外,还包含了背景、预测、报道者资料等其他附加信息
②ACE事件示例(各事件元素以触发词“出生”为核心组织在一起)
每个领域都会根据自己的实际需要对事件进行定义,在计算机信息领域,比较有代表性的是ACE( Automatic Content Extraction,自动内容抽取)所做的定义:事件是涉及参与者的特定事件,是发生的某些事情,通常可以描述为状态的更改。
ACE更进一步对事件的构成进行了分解,认为它是由触发词( Trigger)、类型(Type)、论元(Argument)和论元角色(Argumentrole)等元素构成(图2)。
触发词:一般为动词(或动词化的名词),是触发事件的行动。
类型:ACE为事件定义了8种大类型和33种子类型。
论元:事件参与者,主要有实体、值、时间、地点等。
角色:论元在事件中所占据的位置、充当的角色。
③支持向量机示意图(H1不能把类別分开;H2可以,但只有很小的间隔;H3以最大间隔将它们分开。SVM的目标就是将分类的间隔最大化)
事件抽取大致要经过两大步骤。
首先从新闻数据文本中检测出表达事件的语句,再依据一定的特征判断事件的类别。常用的方法是基于触发词进行分类,把语句中的每个词都当作一个实例进行训练,判断其是否为触发词。确定触发词之后,再采用最大熵模型(MaximumEntropy Model,MEM)或支持向量机(Support VectorMachine,SVM)之类的分类器对事件进行分类(图3)。
触发词确定之后,接下来就是从众多的命名实体(Entity)、时间表达式(Time Expression)和属性值( Value)之中,找出与触发词真正相关的事件元素,并且加上准确的角色标注(Semantic RoleLabeling,SRL),其中涉及到分词、句法分析、SRL等多种底层模块的应用。
目前的事件抽取主要有两大类任务,一个是元事件抽取,一个是主题事件抽取。元事件一般由动词驱动,表示一个动作发生或者状态变化。多个元事件聚焦在一个相关的主题下,便构成了主题事件。
④运用神经网络进行事件抽取的DM-CNN结构示意图
元事件的抽取普遍应用模式匹配、机器学习以及基于神经网络(图4)的抽取技术。而主题事件包括核心事件及其他直接相关的多个动作或状态,描述的信息相对较为分散,有时甚至会分散在多个文档中,元事件基于句子层级的抽取方法对它显然不适用,所以主题事件的抽取通常基于事件框架,或者基于领域本体来进行。
网络时代信息呈爆炸式增长,依靠人工方式进行处理显然已经无法满足需要,由此信息抽取技术应运而生,而事件抽取作为信息抽取的一个重要组成部分,也随之在信息服务领域得到广泛应用。
以网上的长篇文章为例,如果等看完一整篇文章才能确定内容是不是我们所需要的,未免太浪费时间,这时提供相应的文章摘要就非常有必要。人工摘要是最精准的,但是人的精力毕竟有限,无法应付海量的文档。前几年流行的计算机自动摘要固然快速,但是摘要内容有很多冗余信息,并且也不精确。而现在应用事件抽取技术,即可智能地识别出文本中的事件和非事件,过滤掉次要信息,精准、快速地生成人类所感兴趣的有用文摘,十分高效。
事件抽取另外一个与我们息息相关的应用,就是自动问答服务。在线网购时难免要和商家的智能客服打交道,以前它们采用的是关键字相关的技术,答案也是数据库中的固定内容,因此对我们的提问经常答非所问。事件抽取技术大大改善了这一局面,它通过分析用户提问中的核心内容,再抽取数据库中的相关信息,重新组合成我们刚刚好需要的答案,显得更为人性化。
当然,事件抽取在商业上的应用也非常广泛,比如本文主要讨论的新闻事件的抽取,将它应用到商业领域,就可以让厂商及时了解行业动态,或者厂商产品在网络上的反响,假设有负面影响,还可以及时危机公关以及进行事态跟踪等。另外事件抽取也可以应用于股票、金融等方面的趋势分析,掌握舆情,甚至在反诈骗等方面也可以起到很大的作用。