Snowball: Extracting Relations from Large Plain-Text Collections

机器学习和深度学习都基于大量的标注数据,对于NLP任务也不例外,由于文本的特殊性,导致很多任务没有好的标注数据集给我们使用,对于某些场景下的任务也不能使用通用标注数据集训练,否则效果也不会很好。实体关系提取是NLP的基础任务,也是许多上层任务的基础。这里介绍一种很久之前就提出的,但是在我们项目中使用效果很好的方案--snowball。

由于在通天塔上没有看到翻译,因此为了方便大家学习,也方便自己阅读,在此先对原文进行翻译,后续对中文版snowball的实现进行讲解。

译文:

原文链接:http://www.mathcs.emory.edu/~eugene/papers/dl00.pdf

ABSTRACT:

文本文档中,普通的英语句子通常隐含着有价值的结构化数据。如果这些数据可以作为关系表使用,我们可以使用它来回答精确的查询或运行数据挖掘任务。我们探索了一种从文档集合中提取此类关系表的技术,该技术只需要从用户那里获取少量的训练示例。这些示例用于生成提取模式,依据这些模式可以从文档集合中提取新的元组。我们在此基础上提出了snowball系统。snowball引入了从纯文本文档中生成模式和提取元组的新策略。在提取过程的每次迭代中,Snowball在没有人工干预的情况下评估这些模式和元组的质量,并且只保留一个迭代中最可靠的模式和元组。在本文中,我们还为我们的任务开发了一种可伸缩的评估方法和度量标准,并在30多万份报纸文档的集合中对Snowball和用于对比的技术进行了全面的实验评估。

1 INTRODUCTION:

文本文档通常隐藏有价值的结构化数据。例如,一份报纸集合中可能会包含有关组织和其总部所在地的信息。比如,如果我们需要查找Microsoft总部的位置,我们可以尝试使用传统的信息检索技术来查找包含查询答案的文档。或者,如果我们有一个列出文档集合中提到的所有organization-locationpair的表,那么我们可以更准确地回答这样的查询。在这样的表中一个元组<o,l>可以表示组织o的总部位于l位置,并且该信息出现在我们收集的文档中。我们表中的<Microsoft,Redmond>将提供查询的答案。网络中包含数百万个页面,文本隐含的信息如果以了结构化形式使用,效果将会最好。在本文中,我们开发了一个snowball系统,旨在在最少的人工参下从纯文本文档中提取结构化数据。我们的技术建立在Brin介绍的DIPRE的思想之上。

DIPRE: Dual Iterative Pattern Expansion DIPRE是一种从HTML文档集合中提取结构化关系(或表)的方法。这种方法在万维网这样的环境中工作的很好,在这种环境中,要提取的表元组往往会在集合文档中重复出现的统一上下文中。DIPRE利用集合中的这种冗余和固有结构,以最少的训练集从用户中提取目标关系。

在本文的其余部分中,我们将重点介绍上面定义的组织和位置的例子。在这个上下文中,DIPRE的目标是提取给定文档集合中出现的所有organization-location元组的表。最初,我们为DIPRE提供了一些有效organization-location对的实例。例如,我们可以指出<Microsoft,Redmond>是一个有效的对,这意味着Microsoft是一个总部位于Redmond的组织。类似地,我们为DIPRE提供了一些其他示例,如表1所示。此外,用户需要提供实体匹配的通用正则表达式,这就是DIPRE需要用户提供的所有训练数据。

表1 用户提供给DIPER的表元组
Organization Location of Headquarters

MICROSOFT

EXXON

IBM

BOEING

INTEL

REDMOND

IRVING

ARMONK

SEATTLE

SANTA CLARA

在这个初始训练阶段之后,DIPRE将在文本文档中查找示例组织和位置的实例。然后,DIPRE检查围绕初始元组的文本。例如,DIPRE在“Microsoft ' s headquarters in Redmond”中检查Microsoft和Redmond周围的上下文,构建一个"<STRING1>'s headquarters in<STRING2>”的模式。图1列出了其他可能的模式。

DIPRE模式由一个五元组<order, urlprefix,left,middle,right>组成,其是通过将具有相同分隔实体(中间)字符串的种子元组分组在一起,然后将左右字符串设置为实体左侧和右侧上下文的最长公共子字符串而生成的。order反映实体出现的顺序,urlprefix被设置为发现种子元组的源URL的最长公共子字符串。在从最初的种子元组生成许多模板之后,DIPRE扫描可用的文档,搜索与这些模板匹配的文本片段。这个过程的结果是,DIPRE生成新的元组,并将它们用作新的“种子”。DIPRE通过在文档中搜索这些新的元组来识别新的可信度高的模板,并不断重复这个过程。

Related Work:

brin的DIPRE方法和我们在本文中介绍的Snowball系统都解决了长期以来信息提取研究的问题。然而,我们的任务是不同的,我们不试图从每个文档中提取所有相关信息,这是传统信息提取系统的目标。信息提取的主要挑战之一是每个新任务的训练系统都需要大量的人工劳动。这一挑战以不同的方式得到了解决。一种方法是为训练系统构建一个功能强大、直观的图形用户界面,这样领域专家就可以针对每一个新的任务快速采用该系统。然而,这些系统仍然需要大量的专家手工来将系统移植到每个新领域。相比之下,snowball和DIPRE只需要为每个新场景提供少量的示例元组

另一种方法是在大型人工标记语料库上对系统进行训练,系统可以在该语料库中应用机器学习技术生成提取模板。这种方法的困难在于需要一个大型标记语料库,这同样需要大量的手工来创建。为了解决这一问题,提出了一些使用无标记语料库进行训练的方法。文献[11]描述了使用人工标记的与主题相关或无关的文档训练语料库自动生成提取模式。与标记文档相比,这种方法需要更少的手工劳动,但是所涉及的工作量是很大的。文献[6]描述了利用文档的内容以及web的链接结构从web创建知识库的机器学习技术,知识库由实体和关系的类组成。这种方法需要在大量的web页面上进行训练,这些页面具有手动标记的相关文档段,以及大量的页到页关系训练集。

最后,一些系统使用未标记的示例进行训练。这一研究方向与我们的工作最为接近。具体地说,我们所遵循的方法属于引导技术的广泛类别。在自动文本处理中,引导是一种很有吸引力的替代方法。文献[15]演示了一种自举技术,用于消除歧义名词的歧义。文献[5]使用bootstrapping对文本中的命名实体进行分类,利用两个正交的特征,即,实体本身的拼写(例如,有一个suf- fix“Corp.”),以及实体发生的上下文。文献[12]还提供了一种引导技术,可以提取模式来识别和分类文本中的命名实体。文献[16]描述了DIPRE的扩展,可以在Web上挖掘缩略词及其扩展。文献[2]提供了一种将未标记示例与标记示例结合在一起的方法和理论框架,以提高web页面分类学习算法的性能。虽然使用系统的输出为下一个迭代生成训练输入的基本原则对所有这些方法都是相同的,但是任务的不同足以要求专门的方法。

Our Contributions:

正如我们所讨论的,文献[3]描述了一种使用引导从web中提取关系的方法。我们在本文中提出的snowball系统就是建立在这个基础上的。我们的主要贡献包括:

生成模板和提取元组的技术:我们开发了一个新的模板定义和模板表示策略,同时非常灵活,这样我们能捕获大部分隐含在文本集合中的元组,并且不生成无效的元组(章节2.1和2.2)。

评估模板和元组的策略:由于snowball所需的训练量非常少,因此评估提取过程中生成的模式和元组非常重要。通过这种方式,showball将能够从进一步的考虑中消除不可靠的元组和模板。我们开发了评估模板和元组的策略(2.3节)。

评估方法和指标:评估像snowball和DIPRE这样的系统是具有挑战性的,这些系统被设计用于处理大型文档集合,因此手动检查所有文档以构建应该提取的“完美”表是不可行的。我们介绍了一种可伸缩的评估方法和相关的度量标准(第3节),我们在第4节和第5节中使用该方法对大量的训练和测试文档进行实验。这些集合总共有超过300,000个真正的文档。

2 THE SNOWBALL SYSTEM

在本节中,我们将介绍Snowball系统(图2),它改进了基础DIPRE方法的关键组件。更具体地说,Snowball提出了一种新的技术,可以生成模板并从文本文档中提取元组(章节2.1和2.2)。此外,Snowball还引入了一种策略,用于评估在提取过程的每个迭代中生成的模板和元组的质量(章节2.3)。只有那些被认为是“足够可靠”的元组和模式才会被Snowball保留到系统的后续迭代中(章节2.3)。这些用于生成和过滤模板和元组的新策略极大地提高了提取表的质量,如第5节中的实验评估所示。

2.1 Generating Patterns

表提取过程中的一个关键步骤是生成模板,以便在文档中找到新的元组。理想情况下,我们希望模板具有选择性,这样它们就不会生成不正确的元组,并且具有高覆盖率,这样它们就可以识别许多新的元组。在本节中,我们将介绍一种从一组种子元组和文档集合生成此类模板的新

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值