基于新闻语料库的时序事件提取方法

2017 IEEE 2nd International Conference on Big Data Analysis

Yaguang Wu

Department of Computer Science

and Technology Tongji University The Key Laboratory of Embedded System and Service ComputingTongji University

Shanghai 201804, China

 

Haichun Sun

College of Police Information Engineering People’s Public Security

University of China Beijing 100076, China

 

Chungang Yan

Department of Computer Science

and Technology Tongji University The Key Laboratory of Embedded System and Service ComputingTongji University

Shanghai 200092, China

 

摘要:事件提取是信息提取领域的一个重要研究点,新闻事件提取具有较大的实际意义。 从时间元素开始提取新闻事件的现有方法是识别自然语言处理所保存的日期句子,并通过文本聚类提取日期中的事件。 但是,他们只处理包含时间标签的新闻,并放弃没有准确日期的新闻,这很容易导致重要事件的提取偏差,并且会降低重要事件排序的准确性。 在本文中,对这种缺陷的改进是计算句子之间的相似性,将部分非时间标记语句放入正确的日期容器中,从而提高重要事件排序的准确性。 通过实验与现有方法进行比较,本文中重大事件排序的准确率提高了14.6%。

关键词: 事件提取、文本信息挖掘、句子相似度、时间序列

 

一、简介

新闻由于其真实性、经验性、及时性和广度性,一直是最重要的信息来源之一。与其他类型的文本相比,新闻消息往往具有更高的准确性和更强的可信度。但是互联网的开放特性使得在线新闻变得混杂、冗余且变化频繁,所以描述同一事物的新闻通常分散在不同表现形式的站点中。从混杂的数据中快速准确地找到有价值的信息成为近年来的热点研究课题。这主要涉及信息提取、事件提取和多文档摘等技术技术。

信息提取主要处理非结构化/半结构化文本。它提取信息元素并以结构化的方式存储它们。作为信息提取的重要组成部分,事件提取具有更广阔的应用前景和更重要的现实意义。

实现事件提取的主要方法属于监督学习或无监督学习。监督学习分为两种方法:模式匹配和机器学习。模式匹配中的事件识别和提取是在一些模式的指导下进行的,这些模式用于匹配目标文本。R Mooney详细阐述了如何通过关系学习设置模式匹配规则。SakakiOkazaki M定制模式来监测关于地震的推文,并通过提取推文的信息元素来判断地震是否在某处发生。 Chakrabarti DPunera K了解到,在足球比赛期间,在每个推特数量的高峰期都会出现令人兴奋的场景,他们可以总结所有激动人心的时刻。模式匹配对于预先确定的区域具有更高的准确性,但由于可移植性差,因此在开放式文本中执行较差。机器学习通过发现和选择特征来构建分类器,其将事件提取视为分类问题。 Makoto MiwayRune Strey利用机器学习方法构建了一个多特征分类器,以识别比生物学领域的二元关系更复杂的关系。他们在上述基础上构建了一个复杂的事件抽取系统。机器学习方法不需要太多的领域知识并且更客观,但是提取特征和构建分类器的初步工作也很复杂。

无监督事件提取通常用于对多文档进行总结,其目的是提取信息或生成摘要。信息抽取往往会找到最重要的语义单位(句子,段落)来总结文档主题。生成摘要需要合并信息并压缩/重构句子以实现高度总结。基于质心的方法是最流行的提取总结方法之一,它从质心获取相关信息。 MEAD 就是这样一种实现。 MMR TextRank提供了解决重复句子和评估文本重要性的解决方案。为了显示汇总文件的结果,SwanAllan通过提取他们的日期来把这些句子放在时间线上,但是他们并没有排除不相关的句子,而是留下了一批毫无价值的文本。 Chieu等人通过文本相似性分析建立了类似的系统,排除了重复句子,使得提取结果更加简洁和准确。但他们并没有考虑没有日期的句子,这降低了句子排序的准确性,因为它们的重要性。

本文重点关注新闻报道,并将没有准确日期的句子考虑在内,实践如下。

在日期元素被识别之后,具有相同日期的句子聚集到相同的日期向量中。然后我们分别对每个日期向量中的句子进行分词,为每个日期向量建立一个多维向量。根据分词的结果,我们为每个句子建立了一个多维向量,并计算它与它所属的日期向量之间的相似度,其目的是排除不相关的句子。同时我们计算没有准确日期的句子和每个日期向量之间的相似度,因此部分不准确的日期语句也会聚集到正确的日期向量中。作为判断事件是否重要的​​标准,每个日期向量中的句子数量将被计数。我们选择前10个重要事件来构建时间表。在本文中,部分没有准确日期的句子被正确聚类,这提高了重要事件排序的准确性。

本文组织如下:第2章列出了相关的概念和定义;3章介绍了该方法的基本框架及其实现,包括日期表达式的提取,日期向量的建立和句子的聚类;4章展示了一个实验,展示了这种改进方法的可行性和结果;最后一章总结了这篇论文,并为未来的工作做了展望。

 

二、概念和设置

本文用q代表查询词,C代表语料库,s代表句子。

定义1:日期向量定义为, 表示日期。C(q)表示语料库C中包含q的集合;s.t 表示s中的日期元素

t = {t0, t1, t2, …, tn} 表示所有时间戳的集合,t0表示没有准确日期信息的句子; Vt = {Vt0 , Vt1 , Vt2 …Vtn }  表示所有日期向量的集合。

定义2: 文件频率(Document frequency )定义为, 表示第i()个元素(item)在文档中频率; k表示文档中元素的个数。

定义3: 词汇特征定义为( s),  表示每个包含q的句子; 特征向量 = (Fw1 , Fw2 …Fwj …Fwk )  表示一个单词的文件频率, k表示W中单词数量。

定义4:句子向量定义为{a1, a2…ai…ak}, ai ={0,  !∈s } 表示出现在句子s中。

定义5: 最大相似度定义为 表示一个日期向量的最大相似度由日期向量中的一个句子或决定,且这个句子与有最大相似性。

定义6: 有效句定义为,  表示句子s有相同的时间戳,是根据实际情况调整的阈值。每个日期向量都有至少一个对应的有效句,一个日期向量中拥有相同时间戳的称为有效句集合,写作

定义7: 重要事件[ 14 ]被定义为e,指有很高关注度、报道量、引用量的事件.我们选择与特征词最相似的句子为e,即有效句子的数量排在前10位。

 

三、框架以及实现

A     新闻事件提取方法框架

现有的按日期提取事件的方法只能对有准确日期的句子进行聚类,并放弃了不准确的日期句子,这就失去了很多有价值的信息。 本文的改进在于:我们计算了不准确的日期句子与每个日期向量之间的相似度,将这些句子放入正确的日期向量中,增加了每个日期向量中句子的数量。 以下为具体实验步骤:

1)将语料库中的文本分为句子,包含查询词q 的句子输出为Cq|C);

2)从Cq|C)中的句子中提取日期,并将每个时间戳建立一个V0V1V2Vn  的时间向量,然后将这些句子放入相应的日期向量中(V0表示没有准确日期的日期向量)。

3)为每个日期向量V1V2Vn构建特征词W1W2Wn

4)计算无准确日期的句子与W1W2Wn之间的相似度,并将其放入相似度最大的日期向量中。

5)对于每个日期向量,排除与特征词相似度小于阈值的语句。 这些句子被称为无关句子。

6)计算每个日期向量中句子的质量(关注度、报道量、引用量)并对其重要性进行排序,然后选择具有MaxSimilarity的句子生成时间轴。

 

            B. 新闻事件提取方法的实现

首先,我们在整个框架内进行以下设置。

1s∈Cq)表示q出现在s中,即Cq= {s∈Cq∈s}

2)每个句子至多包含一个准确的日期。 如果有多个日期表达式,选择最接近查询词的日期。

3)假设日期是准确的,准确到某一天。 没有准确日期的句子将被放入日期向量V0中。

1)         将文本分为句子并建立语料库

本文中使用的数据来自搜狗发布的语料库,其主要内容是20126月至7月期间主要门户网站的近200万条新闻报道。将每条新闻用符号 喜欢。 通过单词匹配选择单词q作为相关句子出现的所有句子。

2句子日期提取:语料库中的句子可以分为三类:

 绝对日期(AD:意味着完整且准确的日期表达式,可以格式化为YYYY-MM-DD

 创建日期相对日期(DCT-RD:意味着我们可以通过语义分析从文章创建日期中获取准确的日期。 它也可以格式化为YYYY-MM-DD

  未指定日期(UD: 表示我们无法得到任何准确的日期。

                        1AD的句子:

2008“5·12”汶川大地震,2010年青海和甘肃玉树地震“4·14”地震,“2010 8 8”舟曲山体滑坡等重大自然灾害中,甘肃移动都顺利完成沟通支持任务。

我们能通过正则匹配从上述句子中提取准确的日期。

2DCT-RD的句子:

菲律宾火山学研究所和地震研究所18日宣布,昨天上午在菲律宾北部菲律宾吕宋岛附近发生6度地震。

该报告于2012.6.18发布,因此我们可以从昨天早上获得2012.6.17的准确日期。

    3UD的句子:

伊犁哈萨克自治州新源县发生6.6级地震,造成7万人受灾,直接经济损失3.8亿多元。

上面的句子没有准确的日期表达,但仍然提供了“6.6“7万人受影响经济损失3.8亿元等丰富的信息。 不幸的是,放弃这种句子,我们可以通过计算与其他句子的相似度来得到它的准确日期。 所以我们暂时把这些句子写入V0,这意味着没有准确的日期。

 

虽然V0中的句子没有准确的日期元素,但是他们的其他信息如地点,字符和事物细节仍然使得它们与某些日期向量特征词高度相似。 一旦它们的相似度与阈值匹配,V0中的一些句子就可以被正确地分类。 例如,在我们的实验中,我们选择奥巴马作为关键词,得到1566个有效句子,而不处理V0中的句子。 在计算V0中句子和日期向量特征词之间的相似度之后,我们得到了1695个有效句子,这意味着没有准确的日期句子被正确分类。 表2和图1给出了各日期向量中有效句子数量的变化情况,提高了句子排序的准确性。

通过上述步骤,所有s∈Cq)被聚集在正确的日期向量Vt0Vt1Vt2Vtn中。 所以我们得到日期提取的程序为算法1

算法1:日期提取

输入:Cq

日期的正则表达式(正则表达式)

创建与时间相关的日期单词(r词)

输出:Vt

——————-

步骤1:建立日期向量,但没有准确的日期V0

步骤2:使用正则表达式来匹配si∈Sq | C)以获得SitSit表示Si具有的准确日期)

如果Sit不存在,则将SiR字匹配并获得DateDisanceDateDistance表示SiDCT之间的时间间隔)

如果DateDistance不存在,则将Si放入V0

如果DateDistance存在,计算(DateDistanceR-words)以获得坐。

步骤3:如果VitVit 代表日期为t的日期向量)已经存在,则将Sit放入Vit。 如果Vit不存在,则先生成Vit,然后放入Sit

3)    从每个日期向量中提取事件:

日期向量存储具有相同日期并包含查询词的句子。 这里我们有一个新的假设,如果包含关键词的新闻句子具有相同的日期,他们通常会描述相同的事物,这意味着日期向量中的大部分句子都指向同一个事物。 为了提取这个事件,我们需要知道日期之外的所有元素。 我们计算日期向量中的词频以获得特征词W(包括出现的每个词和它的频率)。

查询单词“Obama”, 表三记录了日期向量“2012.06.28”中出现频率最高的10个单词:

事件e的元素必须是特征词中的一个常用词,接下来我们应该判断日期向量中的句子是否表示e,即ss∈S)和W满足一定阈值的相似度。 所以我们得到算法2来排除日期向量中不相关的句子:

                                    算法2:计算日期向量和特征词中的句子相似度

                                    输入:Vt(日期t的日期向量)

                                    输出:Vt(去除无关句子后的日期向量)

                                   

step 1: 对所有, 计算词频  ,然后建立特征向量 = (Fw1,Fw2,…,Fwi,…Fwk)

step2: 对所有,建立一个K维向量,{a ,a ,…,a ,…a }

                                    step 3: 计算  余弦相似度:

step 4: 根据特征向量找到具有最高相似度的句子sw, 最大相似度记作:

MaxSimilarity = Max(Similarity())   

                                    step 5: 设置阈值

对于 如果Similarity() < MaxSimilarity * , Vt中移除;

如果Similarity() >= MaxSimilarity * ∂, 放入Vt

 

分类: 自然语言处理

发表评论

电子邮件地址不会被公开。 必填项已用*标注