小样本自动化Web文本数据抽取模板生成与抽取方法

文档序号:6377592阅读:1117来源:国知局
专利名称:小样本自动化Web文本数据抽取模板生成与抽取方法
技术领域
本发明涉及一种数据处理方法,具体涉及一种自动化Web文本数据抽取模板生成与抽取方法,更具体涉及一种基于小样本学习的自动化Web文本数据抽取模板生成与抽取方法。
背景技术
Web是目前世界上最大的信息共享平台和信息源,其中蕴藏着大量有价值的信息。因此,如何能够用有效的手段从Web上精确获取人们感兴趣的信息成为一个热点技术问题。搜索引擎可以帮助人们查找有用信息,但搜索引擎所获得的结果仅仅是一些网页链接,信息粒度太粗,且包含大量无关网页信息。为了满足用户精确获取有用信息的需求,近十多年来出现了 Web信息抽取技术(Web Information Extraction)。所谓Web信息抽取是指从半结构化、非结构化的Web页面抽取感兴趣的数据,转换成结构化的数据以便进行后续的 深度信息处理和利用的过程。Web网页通常会以半结构化或非结构化文本展现数据,从一个HTML Tag元素(如td、span等)中获得的数据也常常是包含非结构化或以一定分隔符隔开的半结构化文本数据。Web信息抽取时,大多数Web信息抽取系统都基于DOM树的结构化抽取规则抽取网页数据记录,这些数据记录中的元素往往包含一些粒度较大的半结构化或非结构化文本数据。因此,用结构化规则抽取出来的数据往往粒度较大,仍然不是用户最终所希望的数据元素。因此,有必要使用文本数据抽取规则对这些中间数据进行更细粒度的数据过滤和抽取。基于半结构化和非结构化文本数据进行细粒度数据元素抽取的基本示例如图2所示。图中假设已经获得一组数量不大的包含待抽取数据字段的文本样本,这些样本是来自Web网页的一组书籍数据记录,但这些数据记录粒度较粗,未能把其中的书名、作者、出版年月、出版社等用户感兴趣的字段一一抽取出来变成用户或应用系统所需要的结构化数据。如上例所示,样本文本数据集中的数据记录呈现出较为明显的字段模式,如果我们能把其中的模式自动推导出来,并以某种方式表达出这种模式,即可形成我们所要的抽取模板,最后运用基于特定模式所产生的抽取模板即可完成实际的数据字段的抽取处理。然而,文本数据抽取模板的生成是一个技术难题。生成文本数据抽取模板可有多种可能的方法。一种方法是由用户人工书写类似于正则表达式的文本数据抽取规则,但人工书写正则表达式是一个非常专业性的工作,对用户的技术要求太高;第二种方法是,由用户标记一定数量的样本,然后由系统从这些样本中自动推导出文本数据抽取模板,这种方法比第一种方法要求要低得多,但标记很多样本仍然会给用户带来负担。最理想的方法是,系统能基于一定数量的文本样本自动推导出最终的抽取模板。但是,这种自动化的文本数据抽取模板的生成是一个尚未得到很好解决的难点技术问题。虽然目前已有很多自动化/半自动化的Web结构化抽取规则生成和数据抽取方法,但自动化的Web文本数据抽取模板生成和数据抽取技术研究仍然是空白,目前仍缺少有效的自动化Web文本数据抽取模板生成和数据抽取方法。

发明内容
发明目的针对上述现有技术存在的问题和不足,本发明的目的是提供一种自动化Web文本数据抽取模板生成与抽取方法,将使用较小的文本样本,通过没有人工介入的自动化小样本学习方法,自动识别并推导出样本中所包含的数据模版,然后用所推导出的模版去处理网页中所提取出来的粗粒度的文本数据记录,通过该模板自动完成细粒度的文本数据的抽取处理。技术方案为实现上述发明目的,本发明采用的技术方案为一种小样本自动化Web文本数据抽取模板生成与抽取方法,包括如下步骤

(2)确定比对的单元利用分隔符切分所述文本记录,使得所述文本记录成为分隔符和单词间隔的序列,该序列称为原始文本序列,所述单元有两种类型分隔符和单词;(3)在所述原始文本序列中找到一个与其它原始文本序列相似度最高的序列,称为核心序列;(4)将每条原始文本序列以所述核心序列为标准,逐一对齐到一起,形成一组由多个对齐的数据栏衔接而成的对齐文本序列;(5)对每个数据栏计算信息熵,用信息熵识别出该数据栏是模板字段栏或数据字段栏,由此得出模板;(6)利用所述模板完成文本数据的抽取。优选地,所述步骤⑶包括对所述原始文本序列中的每一对做相似性比对,每对原始文本序列都得到一个相似度分值,因此,对每条原始文本序列,在与其它原始文本序列比对后,获得一个累计分值,将累计分值最高的原始文本序列作为核心序列。优选地,所述步骤(4)包括首先取出核心序列并把它加入到对齐文本序列中,然后每次从剩下的原始文本序列中取出一条与所述对齐文本序列对齐,得到一组新的对齐文本序列,直到把所有原始文本序列都对齐到一起,形成一组对齐文本序列。优选地,所述步骤(5)包括先将数据栏中的所有单元划分成若干等价类,再计算数据栏的信息熵。更优选地,还设定一个阈值,若数据栏的信息熵高于该阈值,则认为该数据栏是数据字段栏;若数据栏的信息熵不高于该阈值,则认为该数据栏是模板字段栏。优选地,所述步骤(6)包括将待抽取的文本记录先用分隔符切分,形成单元的序列,再将这条序列与所述模板进行匹配比对。有益效果本发明可与现有的很多基于结构化抽取规则的Web信息抽取系统相融合,大幅提高这些基于结构抽取规则系统抽取数据的精细度和准确度,避免了基于结构化规则的Web信息抽取系统需要对所抽取出的粗粒度、半结构化或非结构化的数据进行二次过滤和抽取处理的繁琐过程;同时由于该方法是基于自动化的模板生成和抽取处理,不需要人工编写文本数据抽取规则或者人工标注样本文本数据,因而,可大大提供Web信息抽取的自动化程度,减轻用户人工操作的负担。


图I为本发明的流程图;图2为原始文本数据记录示例图;图3为文本记录序列的切分处理图;图4为基于核心多文本序列比对后的对齐文本序列;图5为一个经过模板推导处理后所得到的模板。
具体实施例方式下面结合附图和具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各 种等价形式的修改均落于本申请所附权利要求所限定的范围。本发明的基本技术方案是对一组小样本文本数据,采用非监督式小样本机器学习(unsupervised small sample learning)方法,完成自动化的样本分析和文本数据抽取模版推导过程。该方法中所使用的小样本的数量依赖于样本数据整齐规范的程度,可在数个到20-30以内。基于一组小数量的文本数据样本,该方法首先采用所研究的核心多序列比对方法对文本样本进行多文本序列对齐处理,然后根据对齐栏在样本中的统计特征,用信息熵识别出每个模板字段栏和数据字段栏,以此推导出模板;最后应用自动化推导和生成的文本数据抽取模板来从记录中抽取数据字段。基本的处理过程如图I所示。本发明中的自动化文本数据抽取模板生成和数据抽取的主要技术方案和处理过程如下。要推导并生成抽取模板,首先要能识别出样本中包含的某种模板。例如,图2示例中,人可以很容易地看出这个样本中蕴含的模板,但是要靠程序自动识别出这个模板并不容易。我们首先采用多序列比对方法,把同一类型的字段对齐到一起。以前述图书样本为例,就是要把“出版日期”和“作者”字段分别对齐到一起,进一步就得到有代表性的两个栏。经过这样的对齐处理后,将为下一步识别模板提供基础。多序列比对得到一组“对齐文本序列(aligned text sequence) ”,由若干个对齐的数据栏衔接而成。然后将基于对齐文本序列中各个数据栏(简称“栏”)的统计特征,弓丨入一种“信息熵”度量方法,基于该信息熵进一步确定每个栏是属于模板字段栏还是数据字段栏。对齐文本序列中栏的个数称为对齐文本序列的长度,而栏中单元的个数称为对齐文本序列的高度。我们为对齐文本序列中的每个栏计算信息熵,以此来量度栏内的单元的不一致性。信息熵越高,不一致性的程度越大,这个栏是数据字段栏的可能性越大;反之,则这个栏是模板字段栏的可能性越大。设定一个阈值,然后根据栏的信息熵的高低来决定某一栏是模板字段栏还是数据字段栏。经过多序列比对把文本数据栏对齐后,为了识别出具体的模板,我们需要确定模板字段和数据字段。模板字段就是在所有记录中保持不变或者基本不变的字段,而记录的数据字段在所有的记录中彼此不一致。对对齐文本序列再加以一些后续处理,就得到了样本所蕴含的模板。模板是经过后续处理的对齐文本序列,这个序列中的每一栏都有一个属性值来标志这个栏是属于模板还是属于数据。用所产生的模板进行数据字段抽取处理时,只需要把记录和对齐文本序列做比对。若记录中的字段与模板字段栏对齐到了一起,就认为这个字段属于模板字段。识别出记录中所有的模板字段之后,剩下来的就是数据字段,抽取也就完成了。本发明中的文本数据抽取模板生成和抽取处理主要过程如图I所示,包括文本记录序列切分、原始文本多序列比对、模板推导与生成、以及文本数据字段抽取等步骤。以下详细叙述各个主要的处理步骤和方法。I.文本记录序列切分进行序列比对的第一步是确定比对的文本 单元。通常情况下,比对的单元是单个字符。但是在本方法中,比对的单元并不是单个字符。我们利用分隔符切分记录,使得记录成为分隔符和单词间隔的序列。图3显示了一条记录及其被切分之后形成的序列(用下划线“ ”来表示空格)。这样的序列我们称为“原始文本序列”以区别于后面要提到的“对齐文本序列”。在文本记录序列切分中,我们使用了本领域技术人员熟知的语义实体识别方法。以图3示例来说,2009-09-01是一个日期的语义实体,我们不能够用把它切分成5个单元。相反地,我们把它的整体识别为一个日期。我们构建一个语义实体库,库中的每个语义实体由一个或多个正则表达式来表示。这些语义实体包括数字、日期、时间、金额、英文单词或短语等等。2.基于核心序列法的多文本序列比对2. I核心序列法方法概述设小样本学习时有η条原始文本序列,所有序列的最大单元数为m(当序列单元数不一致时,进行比对时会插入空位以保证两者长度一致)。所谓核心序列,就是在这组序列中找到一个与其他序列相似度最高的那个序列,作为其他文本序列比对时看齐的标准。为了得到这个核心序列,首先对η条原始文本序列中的每一对通过“动态规划”方法(该方法是本领域技术人员熟知的)做相似性比对并得到一个相似度分值f(sa,sb), a, b=l, 2,-,η,其中\和sb分别表示两条不同的原始文本序列。因此,对每条原始文本序列Sa,它与剩余
的η-I条原始文本序列比对后,将可以获得一个累计分值fb=l, 2,…,n,b Φ a。
我们根据这个原始文本序列的累计分值从高到低对所有的原始文本序列排序,分值最高的那条原始文本序列就被当作“核心序列”,这是第一轮比对处理。在第二轮比对中,我们以核心序列为标准,把其余n-Ι条原始文本序列与核心序列逐条对齐到一起,形成一组对齐文本序列。具体过程如下首先取出核心序列并把它加入到对齐文本序列(此时,这组对齐的文本序列只含一条原始文本序列)。接下来每次从剩下的原始文本序列中取出一条与前面得到的对齐文本序列对齐,得到一组新的对齐文本序列,以此类推,直到把所有n-Ι条文本序列都对齐到一起。图3显示了多条原始文本序列对齐后得到的一组对齐文本序列。 2. 2序列相似性度量与核心序列选择在核心序列法中有两轮比对。第一轮在任意两条原始文本序列之间做相似性比较来选取核心序列。原始文本序列中的单元有两种类型分隔符和单词。为了完成序列相似性比较,我们需要先定义分别来自两个序列\和Sb中的单元ei和h之间的相似度,其中i和j = l,2,···,!!!。首先,分隔符与单词之间的相似度为O;然后两个不同的分隔符之间的相似度也为O,比如“,”和“。”的相似度就是O。但是为了强化这种不同单元之间在相似性比较时的差异,对以上两种情况,我们的打分函数将把其相似性从O改为-100,作为强化其不相似性的惩罚分。此外,我们把两个单词之间的相似度定义为WordSim(ei,ej),同时把两个相同分隔符间的相似度定义为DelimitSim(ei,ej);于是任意两个单元&和e」之间的相似度UnitSim(ei, e」)可用以下公式定义
权利要求
1.一种小样本自动化Web文本数据抽取模板生成与抽取方法,包括如下步骤 (1)选取一组文本数据样本,该文本数据样本包括多条文本记录; (2)确定比对的单元利用分隔符切分所述文本记录,使得所述文本记录成为分隔符和单词间隔的序列,该序列称为原始文本序列,所述单元有两种类型分隔符和单词; (3)在所述原始文本序列中找到一个与其它原始文本序列相似度最高的序列,称为核心序列; (4)将每条原始文本序列以所述核心序列为标准,逐一对齐到一起,形成一组由多个对齐的数据栏衔接而成的对齐文本序列; (5)对每个数据栏计算信息熵,用信息熵识别出该数据栏是模板字段栏或数据字段栏,由此得出模板; (6)利用所述模板完成文本数据的抽取。
2.根据权利要求I所述一种小样本自动化Web文本数据抽取模板生成与抽取方法,其特征在于所述步骤(3)包括 对所述原始文本序列中的每一对做相似性比对,每对原始文本序列都得到一个相似度分值,因此,对每条原始文本序列,在与其它原始文本序列比对后,获得一个累计分值,将累计分值最高的原始文本序列作为核心序列。
3.根据权利要求I所述一种小样本自动化Web文本数据抽取模板生成与抽取方法,其特征在于所述步骤(4)包括首先取出核心序列并把它加入到对齐文本序列中,然后每次从剩下的原始文本序列中取出一条与所述对齐文本序列对齐,得到一组新的对齐文本序列,直到把所有原始文本序列都对齐到一起,形成一组对齐文本序列。
4.根据权利要求I所述一种小样本自动化Web文本数据抽取模板生成与抽取方法,其特征在于所述步骤(5)包括先将数据栏中的所有单元划分成若干等价类,再计算数据栏的信息熵。
5.根据权利要求I所述一种小样本自动化Web文本数据抽取模板生成与抽取方法,其特征在于所述步骤(6)包括将待抽取的文本记录先用分隔符切分,形成单元的序列,再将这条序列与所述模板进行匹配比对。
6.根据权利要求4所述一种小样本自动化Web文本数据抽取模板生成与抽取方法,其特征在于还设定一个阈值,若数据栏的信息熵高于该阈值,则认为该数据栏是数据字段栏;若数据栏的信息熵不高于该阈值,则认为该数据栏是模板字段栏。
全文摘要
本发明公开了一种基于小样本的自动化Web文本数据抽取模板生成与抽取方法,包括如下步骤选取一组文本数据样本,该文本数据样本包括多条文本记录;确定比对的单元利用分隔符切分所述文本记录,使得所述文本记录成为分隔符和单词间隔的序列,该序列称为原始文本序列;在所述原始文本序列中找到一个与其它原始文本序列相似度最高的序列,称为核心序列;将每条原始文本序列以所述核心序列为标准,逐一对齐到一起,形成一组由多个对齐的数据栏衔接而成的对齐文本序列;对每个数据栏计算信息熵,用信息熵识别出该数据栏是模板字段栏或数据字段栏,由此得出模板;利用所述模板完成文本数据的抽取。本发明能自动完成细粒度的文本数据的抽取处理。
文档编号G06F17/30GK102929930SQ20121035775
公开日2013年2月13日 申请日期2012年9月24日 优先权日2012年9月24日
发明者黄宜华, 袁春风, 刘玉龙, 施生生 申请人:南京大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1