本文是一篇软件工程硕士论文,本文针对中文金融领域的事件抽取任务展开研究,根据ACE会议的方案,将事件抽取任务分为了事件检测任务和论元填充任务,并总结了国内外研究方法的优点与不足,针对现有方法中存在的不足进行了改进。
1 绪论
1.1 研究背景和意义
近年来,随着互联网技术的飞速发展,中国互联网使用规模逐年增长[1],网络中的金融文本数据量也呈指数级上升[2],相关的新闻文章和公告文档也为金融机构分析市场、做出决策提供有力参考[3]。各大金融新闻网站如新浪财经、东方财富等网站每天会发布上千篇文章,人工处理这些文本费时费力,并且非常容易主观地遗漏重要信息。因此,使用计算机将散布在文本中的论元信息进行结构化处理具有非常重要的意义[4],抽取出的结构化事件记录信息可以直接提供给金融行业运营和分析人员使用[5],或者作为上游任务的输出,给下游金融领域的风控、情感分析、文本分类、智能问答、事理图谱的构建等任务使用[6][7]。
事件抽取EE (Event Extraction)是自然语言处理和信息抽取的一种关键任务,旨在从海量的非结构化文本中抽取出人感兴趣的内容,将其表示并储存为便于人和计算机后续处理应用的结构化信息[8]。在知识图谱构建[9][10][11]、信息检索[12][13]和情报分析[14]等领域有着广泛的应用,对相关学科理论的完善和发展起到了积极的推进作用[15]。同时,事件抽取在各类研究工作中也起到了非常重要的作用,它不但能够帮助研究人员从大量信息中快速提取相关事件,节约了人工分析的时间,而且可以为开展定量情报分析提供必要的技术支持,因此,事件抽取具有广阔的应用前景。以下图1.1是事件抽取任务的一个示例,其中图1.1(a)所示的是待抽取的目标金融文档原文,图1.1(b)是抽取过程中的实体集合,图1.1(c)是抽取的结果生成的事件表,其中在原文中未提及的内容填充为NULL。

1.2 国内外研究现状
事件抽取任务按抽取的粒度可以划分成句子级和文档级,句子级的事件抽取方法只关注句子内部获取的特征[21],而文档级的事件抽取关注点更全面,论元信息包含的更广泛。
根据自动内容抽取ACE (Automatic Content Extraction) 会议的定义,事件抽取任务分为事件检测ED (Event Detection)和事件论元抽取EAE (Event Argument Extraction)两个步骤。由于事件的论元往往分散在文档的不同句子之间,现在的研究重点和难点在于文档级的事件抽取。随着硬件和算法技术的进步,事件抽取的主要方法从基于模式匹配、机器学习,到如今的深度学习。
1.2.1 基于模式匹配的事件抽取方法
早期的事件抽取方法主要基于模式匹配[22],学者们针对模式匹配的方法,通过研究跨句子和跨文档的事件一致性特征[23]、跨事件的一致性特征[24]和跨实体的事件一致性特征[25]来提高事件抽取的性能。其抽取思想是通过人为设定好的约束条件来判断,通过匹配算法抽取出符合条件的信息,其算法的核心是构建事件对应的模式[26]。
基于模式匹配的事件抽取方法的优点是在特定领域内效果较好[27],但其缺点也同样明显,第一,模式的构建需要大量对应领域的专家;第二,模式匹配的流程比较繁琐,容易产生级联错误;第三,模式匹配的方法主要聚焦于句子粒度,仅依靠模式匹配的方法难以应对事件信息分散在不同句子中的情况。
2 相关理论及关键技术
2.1 相关理论
本节主要介绍了一些事件抽取任务的定义和评价策略。
2.1.1 事件抽取任务
事件是指发生或存在于特定时间和空间中的事物或现象,在自然语言处理中,事件通常指文本中描述的动作、活动或发生的事情。事件的组成元素包括触发词和论元,触发词的出现标志着某个类型事件发生,论元指事件的参与者,它们提供了关于事件更详细的信息。论元通常与触发词形成关系,描述了事件中不同角色的实体或概念。论元可以包括主语、宾语、时间、地点等。
事件抽取是自然语言处理领域中的一项关键任务,旨在从文本中提取出与特定事件相关的信息。这个任务通常涉及识别文本中的事件触发词、参与者、时间、地点等关键信息,并将这些信息结构化地表示出来。 事件抽取任务通常可以分解为以下四个子任务:
(1) 触发词识别:识别出能够触发某一事件的词或短语,其主要目的是帮助事件检测模块确定文档或句子中包含的事件类别。
(2) 事件检测:事件检测是事件抽取任务的一个关键组成部分,其目标是将从文本中抽取的事件进行分类,将其归属到预定义的事件类型或类别中,以生成对应事件类型的空白表,便于后续模块填充。这个过程有助于计算机进一步理解文本中发生的事件,并使计算机能够根据不同事件类型进行有针对性的分析和处理。
(3) 实体和论元抽取:实体是文本中具有独特意义的事物,通常表示具体的对象、人物、地点、组织等。实体抽取的目标是从文本中识别并定位这些具体的实体。论元是与事件相关的实体或属性,它们描述了事件中的角色、参与者和其他关键要素。
2.2 关键技术和经典方法
自然语言处理NLP(Natural Language Processing)任务通常可以划分为两个步骤,编码器Encoder部分作用是接收输入序列(如一段文本),并将其转换为固定维度的隐藏表示,以便计算机理解,解码器Decoder部分作用是接收编码器生成的隐藏表示,并利用它来生成目标序列。本节首先按照研究的时间顺序介绍几种经典的文本表征方法,这些方法通常用作Encoder部分,接着介绍了几种经典事件抽取算法,这些Encoder和Decoder模型成为了本文的研究基础,这些经典的事件抽取算法的思路也给本文的研究思路和方向带来了启发。
2.2.1 文本表征技术
1) 词袋模型
词袋模型BOW (Bag-of-Words model)[55]是一种在NLP领域和信息检索领域广泛使用的模型,这种模型忽略了文本的语法和语序,仅关注文本中包含的词汇及出现的频次,将文本视为一组相互独立的词汇集合。
词袋模型的过程首先需要构建词汇表,收集文本中出现的所有不同的词汇,并形成一个词汇表,这个词汇表通常由文本中的所有唯一单词组成,然后进行表示文本,对于每个文本样本,通过统计每个词汇在文本中出现的次数,形成一个向量,这个向量的每个元素对应于词汇表中的一个单词,而元素的值表示该单词在文本中的出现次数。
例如“我在西安上学”和“我去南京旅游,我喜欢南京”两句话,可以构建一个长度为8的词典{“我”,“在”,“西安”,“上学”,“去”,“南京”,“旅游”,“喜欢”},对于任何仅使用这个词典的句子,均可以用这个词典表示,如一个新的句子“我喜欢去旅游”,可以表示成8维的向量[1, 0, 0, 0, 1, 0, 1, 1],向量中表示对应位置的词均出现过1次,至此,完成了使用BOW模型的文本表征。
3 基于Fin-BERT的事件检测模型 ................................... 21
3.1 问题分析 .................................. 21
3.2 模型结构 ................................... 22
4 基于PTPCG的论元抽取模型 ................................ 34
4.1 问题分析 ...................................... 34
4.2 模型结构 ............................ 34
5 金融领域文档级事件抽取系统 ........................ 50
5.1 需求分析 ................................. 50
5.2 整体设计 ........................................ 50
5 金融领域文档级事件抽取系统
5.1 需求分析
金融类的新闻是如今银行和金融机构舆论风控的重要环节,但是由于其文章多且篇幅长,有效信息相对较少,人工整理一方面费时费力,另一方面容易主观遗漏重要内容,所以一个事件抽取系统应能够通过输入的文档抽取出结构化信息,并通过合适的方式展示给用户,此外系统还应能够自动获取金融类新闻,避免人工输入的麻烦。基于上述需求,本章设计的文档级事件抽取系统功能如下:
(1) 金融新闻的文本收集及预处理。本系统通过对金融新闻网站新浪财经使用网络爬虫收集原始数据,然后将原始数据的文本部分过滤掉非法字符如新闻中的表情和额外符号,将数据存储等待后续使用。
(2) 事件类型的检测。通过CFDED方法判断出文档内包含的事件类型,并依此结果生成空白的事件表。
(3) 事件角色论元的抽取和填充。使用Fin-PTPCG方法,将文档中的实体识别出来,并填充进空白的事件表中。
(4) 结构化的输出。根据事件抽取的结果,以键值对的形式进行结构化的输出,便于用户快速获得信息,并在原文中使用不同的颜色对不同事件的论元进行标注,使用户可以快速关注到核心信息。
(5) 通过用户打分进行数据集的标注和扩充。每篇新闻文档在抽取之后会让用户进行判断和打分,如果用户认为模型抽取的正确则将该用例扩充添加至数据集中。

6 结论与展望
6.1 本文结论
本文针对中文金融领域的事件抽取任务展开研究,根据ACE会议的方案,将事件抽取任务分为了事件检测任务和论元填充任务,并总结了国内外研究方法的优点与不足,针对现有方法中存在的不足进行了改进。总体而言,本文的主要工作如下:
(1) 本文针对现有方法难以识别一篇文档中包含多个事件的问题,提出了一种基于Fin-BERT的事件检测方法CFDED,该方法充分利用了Fin-BERT的编码器的表示学习能力
