用于中文的标记和命名实体识别的系统.pdf

上传人:000****221 文档编号:648010 上传时间:2018-03-01 格式:PDF 页数:32 大小:1.21MB
返回 下载 相关 举报
摘要
申请专利号:

CN99816628.6

申请日:

1999.04.08

公开号:

CN1352774A

公开日:

2002.06.05

当前法律状态:

终止

有效性:

无权

法律详情:

未缴年费专利权终止IPC(主分类):G06F 17/20申请日:19990408授权公告日:20040728|||未缴年费专利权终止IPC(主分类):G06F 17/20申请日:19990408授权公告日:20040728|||授权|||公开|||实质审查的生效

IPC分类号:

G06F17/20

主分类号:

G06F17/20

申请人:

肯特里奇数字实验公司;

发明人:

S·白; H·J·P·吴; H·李; G·劳登

地址:

新加坡新加坡城

优先权:

专利代理机构:

北京纪凯知识产权代理有限公司

代理人:

沙捷;彭益群

PDF下载: PDF下载
内容摘要

公开了用于表意语言的加标记和命名实体识别的一种系统(100,200)。在该系统中,利用有限态文法(150)和一个系统词典(240)为一串表意字符产生一个字网格。依赖于一个上下文语言模型(152A)和一个或多个实体语言模型(152B),利用字网格通过确定表意字符串中的单词界限来产生分段的文本。依赖于所述上下文语言模型(152A)和一个或多个实体语言模型(152B),利用字网格识别在所述表意字符串中的一个或多个命名实体。每个上下文语言模型(152A)和一个或多个实体语言模型(152B)是基于分类的语言模型。词典(240)包括单一的表意字符,单词,以及所述字符和单词的预定的特征。

权利要求书

1: 用于表意语言的标记和命名实体识别的一种方法。所述方法包 括步骤: 利用有限态文法和一个系统词典产生用于一串表意字符的一个字 网格; 依赖于一个上下文语言模型和一个或多个实体语言模型,利用所 述字网格通过确定所述表意字符串中的单词界限来产生分段的文本; 和 依赖于所述上下文语言模型和所述一个或多个实体语言模型,利 用所述字网格识别在所述表意字符串中的一个或多个命名的实体。
2: 按照权利要求1的方法,进一步包括组合所述上下文语言模型 和所述一个或多个实体语言模型的步骤。
3: 按照权利要求1的方法,其中每个所述上下文语言模型和所述 一个或多个实体语言模型是基于分类的语言模型。
4: 按照权利要求1的方法,其中所述上下文语言模型和所述一个 或多个实体语言模型分别合并本地的和上下文语言学信息,以便产生 优先化的单词和相应的分类顺序。
5: 按照权利要求4的方法,其中所述上下文语言模型和所述一个 或多个实体语言模型取决于一个n-字符列范例。
6: 按照权利要求1的方法,其中所述词典包括单一的表意字符, 单词,以及所述字符和单词的预定的特征。
7: 按照权利要求6的方法,其中所述网格产生步骤包括利用所述 词典产生一个或多个所述格子的单元的步骤。
8: 按照权利要求6的方法,其中所述有限态文法是一种所述词典 的动态的和补充的扩展,用于生成命名实体假定。
9: 按照权利要求8的方法,其中所述有限态文法运行在包含在所 述词典中的所述预定的特征上来建议可能的实体,实体界限和实体分 类。
10: 用于表意语言的标记和命名实体识别的一种设备,所述设备 包括: 用于利用有限态文法和一个系统词典为一串表意字符来产生一个 字网格的装置; 装置,用于依赖于一个上下文语言模型和一个或多个实体语言模 型,利用所述字网格通过确定所述表意字符串中的单词界限来产生分 段的文本;和 装置,用于依赖于所述上下文语言模型和所述一个或多个实体语 言模型,利用所述字网格识别在所述表意字符串中的一个或多个命名 实体。
11: 按照权利要求10的设备,进一步包括组合所述上下文语言模 型和所述一个或多个实体语言模型的装置。
12: 按照权利要求10的设备,其中每个所述上下文语言模型和所 述一个或多个实体语言模型是基于分类的语言模型。
13: 按照权利要求10的设备,其中所述上下文语言模型和所述一 个或多个实体语言模型分别合并本地的和上下文语言学信息,以便产 生优先化的单词和相应的分类顺序。
14: 按照权利要求13的设备,其中所述上下文语言模型和所述一 个或多个实体语言模型取决于一个n-字符列范例。
15: 按照权利要求10的设备,其中所述词典包括单一的表意字符, 单词,以及所述字符和单词的预定的特征。
16: 按照权利要求15的设备,其中所述网格产生装置包括利用所 述词典产生一个或多个所述网格的单元的步骤。
17: 按照权利要求15的设备,其中所述有限态文法是一种所述词 典动态的和补充的扩展,用于生成命名实体假定。
18: 按照权利要求17的设备,其中所述有限态文法运行在包含在 所述词典中的所述预定的特征上来建议可能的实体,实体界限和实体 分类。
19: 具有一个计算机可读媒体的一个计算机程序产品,该计算机 可读媒体具有一个计算机程序,其中记录了用于表意语言的标记和命 名实体识别的程序,所述计算机程序产品包括: 装置,用于利用有限态文法和一个系统词典为一串表意字符产生 一个字网格; 装置,用于依赖于一个上下文语言模型和一个或多个实体语言模 型,利用所述字网格通过确定所述表意字符串中的单词界限来产生分 段的文本;和 装置,用于依赖于所述上下文语言模型和所述一个或多个实体语 言模型,利用所述字网格识别在所述表意字符串中的一个或多个命名 实体。
20: 按照权利要求19的计算机程序产品,进一步包括组合所述上 下文语言模型和所述一个或多个实体语言模型的装置。
21: 按照权利要求19的计算机程序产品,其中每个所述上下文语 言模型和所述一个或多个实体语言模型是基于分类的语言模型。
22: 按照权利要求19的计算机程序产品,其中所述上下文语言模 型和所述一个或多个实体语言模型分别合并本地的和上下文语言学信 息,以便产生优先化的单词和相应的分类顺序。
23: 按照权利要求22的计算机程序产品,其中所述上下文语言模 型和所述一个或多个实体语言模型取决于一个n-字符列范例。
24: 按照权利要求19的计算机程序产品,其中所述词典包括单一 的表意字符,单词,以及所述字符和单词的预定的特征。
25: 按照权利要求24的计算机程序产品,其中所述网格产生装置 包括利用所述词典产生一个或多个所述网格单元的步骤。
26: 按照权利要求24的计算机程序产品,其中所述有限态文法是 一种所述词典的动态的和补充的扩展,用于生成命名实体假定。
27: 按照权利要求26的计算机程序产品,其中所述有限态文法运 行在包含在所述词典中的所述预定的特征上来建议可能的实体,实体 界限和实体分类。

说明书


用于中文的标记和命名实体识别的系统

    【发明领域】

    本发明涉及自然语言处理的领域,并尤其涉及在一种表意语言的一个文本全集中用于标记和识别命名实体的系统。背景

    自然语言处理是正处于积极研究中的感兴趣的技术领域。特别是,已经对英语语言采取了有意义的举动并具有成果。然而,对于表意语言的行动却很少报告,比如中文。在一种表意语言中,一个单词由一个或多个表意字组成,其中每个表意字是代表比如一个对象或观念的某些内容而不表示它的声音。

    比如中文,标记表意语言和识别命名的实体(也就是固有名称)比英文语言更困难,这是因为有许多原因。首先,不同于英文,在中文文本的单词之间没有界限。例如,一个句子通常是一连串表意字,其中一个或多个表意字可以形成一个单词,而在“单词”之间没有空隙。第二,在中文书写系统中字符串的一致性不表示固定的名称。在英文语言中,大写表示固有的名称。英文中固有名称的大写特征在一个文本文集中地固有名称的位置界限上提供了重要的信息。

    因此,非常需要存在一种用于表意语言的加标记和命名实体识别的系统。概述

    按照本发明的第一个方面,公开了表意语言的标记和命名实体识别的一种方法。该方法包括步骤:利用有限态文法和一个系统词典产生用于一串表意字符的一个字网格;依赖于一个上下文语言模型和一个或多个实体语言模型,利用字网格通过确定表意字符串中的单词界限来产生分段文本;以及依赖于所述上下文语言模型和一个或多个实体语言模型,利用字网格识别在表意字符串中的一个或多个命名实体。

    值得可取的是,该方法进一步包括组合上下文语言模型和一个或多个实体语言模型的步骤。上下文语言模型和一个或多个实体语言模型可以分别被建立语言模型的类别。

    最好是,上下文语言模型和一个或多个实体语言模型分别合并本地的和上下文语言学信息,以便产生优先化的单词和相应的分类顺序。上下文语言模型和一个或多个实体语言模型可以取决于一个n-字符列范例。

    最好是,词典包括单一的表意字符,单词,以及字符和单词的预定的特征。网格产生步骤可以包括利用词典产生一个或多个网格单元的步骤。

    可选的,有限态文法是一种所述词典动态的和补充的扩展,用于生成命名实体假定。有限态文法可以运行在包含在词典中的预定的特征上来建议可能的实体,实体界限和实体分类。

    按照本发明的第二个方面,公开了用于表意语言的标记和命名实体识别的一种设备,该设备包括:用于利用有限态文法和一个系统词典为一串表意字符来产生一个字网格的装置;一个装置,用于依赖于一个上下文语言模型和一个或多个实体语言模型,利用字网格通过确定表意字符串中的单词界限来产生分段文本;以及一个装置,用于依赖于上下文语言模型和一个或多个实体语言模型,利用字网格识别在表意字符串中的一个或多个命名实体。

    按照本发明的第三个方面,公开了具有一个计算机可读媒体的一个计算机程序产品,该计算机可读媒体具有一个计算机程序,其中记录了用于表意语言的标记和命名实体识别的程序。该计算机程序产品包括:一个模块,用于利用有限态文法和一个系统词典为一串表意字符产生一个字网格;一个模块,用于依赖于一个上下文语言模型和一个或多个实体语言模型,利用字网格通过确定表意字符串中的单词界限来产生分段文本;以及一个模块,用于依赖于上下文语言模型和一个或多个实体语言模型,利用字网格识别在表意字符串中的一个或多个命名实体。简述附图

    下面结合参考附图描述本发明的少量实施例,其中:

    图1是培训模块100的一个方框图,形成了按照本发明第一实施例的用于表意语言的标记和命名实体识别的一个系统的一部分;

    图2是一个解码模块200的一个方框图,形成了按照本发明第一实施例的用于表意语言的标记和命名实体识别的系统的一部分;

    图3是一个流程图,说明图1的模块120的实体特征提取的处理过程;

    图4是一个流程图,说明图1的模块140的字-簇的处理过程;

    图5是一个流程图,说明图2的模块220的构造网格的处理过程;

    图6是一个流程图,说明图5的步骤522的命名实体的建议处理过程;

    图7是一个流程图,说明图2的模块230的统计的解码处理过程;

    图8是一个示例性的通用计算机的方框图,可以实际应用于本发明的实施例;

    图9是一个方框图,示例了可从中提取命名实体特征的一个固定名称列表;

    图10是包括命名实体特征的一个系统词典的方框图;

    图11是从包含表意字符的一个句子中导出一个字网格的说明图;和

    图12是一个图,示例了可能的单词和相应的指针。详述

    描述用于表意语言的标记和命名实体识别的一种方法,一种计算机程序产品和一种系统。在下面的叙述中,陈述了大量的细节,例如包括具体的表意语言,字簇技术,以及类似的。然而,对于本领域技术人员显而易见的是,本发明可以不用这些具体的细节而得以实现。在其他的例子中,没有详细的描述已知的特点以便显出本发明的特征。

    在下面的描述中,系统的部件被描述成模块。一个模块,尤其是它的功能性,可以通过硬件或软件来实现。以软件来理解,一个模块是一个处理程序,程序,或者是通常执行特殊的功能或相关功能的其中一部分。以硬件来理解,一个模块是设计用于其它部件或模块的一个功能的硬件单元。例如,一个模块可以使用分离的电子元件来实现,或者它可以形成整个电子电路的一部分,比如专用集成电路(ASIC)。存在大量的其他的可能性。本领域技术人员应该清楚,通过组合硬件和软件模块也可以实现本系统。

    本发明的实施例为固有名字(PN)或命名的实体建立了不同的文法。该文法被用于作出假定来找出一个文本的正文中的可能的固有名字。为了进行这样的工作,建立固有名字或命名实体统计的模型以便导出用于名称的分数。此外,建立上下文语言模型评估发现了何种类型的固有名字。组合两种类型的模型来评估整个句子的分数,其中文本的主体被逐句进行处理。

    标记和命名实体识别系统把表意语言(例如中文,韩文,日文,以及类似的)的字符串分段成单词形式的语句。对于一种表意语言,加标记是在一个给定的文本中确定一个句子的有意义单元的界限的处理过程。从这个意义上来说,系统能被考虑作为一个分段器。随后系统识别和分类一个给定文本主题中命名的实体。分段器按照系统字典词条把一串表义字符分解成一个字网格。通过把有限态文法(FSGs)提供给格子的结构系统的实体识别部分找出网格内可能的实体。最后,在网格上应用统计不明确的分辨处理依照出最新建议的命名实体的最可能的单词界限和分类。

    对于给定的一个表意语言(例如中文)文本全集,对名称文集和一个字表加以分类,它们包含作为种子的所有的表义字符和一些固有名字,系统被用于执行加标记和名称识别。在某种意义上系统作为一个分段器来简化确定单词的界限。此外,系统还作为一个名称识别器来确定文本中名称的界限和类别。一个名称可以由一个或多个单字组成。因为在表意语言中没有名字的大写特征,例如中文,因此确定名字的界限的处理是困难的。加标记和名字识别系统按下述进行操作:

    (1)运行作为一个分段器的解码模块(图2的200)并把字符串和名字文集分段成字串格式。可以使用一个单一的文本文集,最好是使用从报纸,杂志,书籍等等收集的一个文本文集。起初,不给出上下文和实体模型,并通过一个统计的解码器对由一个网格构造器产生的诸格子提供一种最大匹配方法。每个实体模型相应于由名字(实体)的列表组成的一个实体文集。例如,根据一个人名文集建立一个人名模型。同样,根据一个组织名字文集建立一个组织名字模型,等等。接着,产生n-个字符列(n-gram)(例如单字符列uni-gram和双字符列bi-gram)并且为文本文集和不同的名字文集计算相关的统计数字。

    (2)提供字-簇以分别生成用于上下文和名字模型的字类,并建立用于上下文和实体模型的基于分类的语言模型提供特征提取以便提取在名称中使用字的特征。一个语言模型是从一个培训文集导出的可能的数据;它也可以是用于估计单词顺序可能性的机制或公式。上下文和实体模型是从培训文集和估计单词顺序可能性的机制导出的可能性的数据。再有是,上下文模型最好是从包含来自报纸,杂志,书籍等等文本的一个文本文集所得到的的。实体模型最好是从一个名字或实体文集得到的。上下文和实体模型最好使用相同的机制来估计单词顺序概率。上下文和实体模型可以是基于单词的和基于类别的,但最好是基于类别。一个基于单词的语言模型是一个直接的和简单的机制,它通过乘以每个单词概率(单字符列模型)或通过乘以单词顺序中每个n-1之前的单词来计算单词顺序概率。这可以应付参数扩张和稀疏数据的问题。这种模型使用少量的类别估计单词顺序的概率,而不是单词本身,通过按照预定的准则通过把单词的组映象成类别。可以同时利用手动的(例如,利用部分语言符号)和自动的方法,最好使用按照本发明实施例的自动的方法。下面结合公式(2)描述一种分类双字符列(bi-gram)的方法。

    (3)结合上下文语言和实体模型以及分段器中的实体FSGs。

    (4)用在(3)中获得的(新的)分段器分段文本文集。

    (5)重复步骤(2),(3)(4)直到获得最佳的性能。值得可取的是,进行三次,但在不脱离本发明的范围和精神的条件下可以使用其他的次数。

    本发明的实施例实现了一个基于统计的系统。利用容易获得的现成数据可以培训该系统。此外,该系统是自己-组织的,并且操作该系统需要极少的人的相互作用。尽管如此,该系统能够精确和有效的完成命名实体的识别。另外,实体模型和上下文模型被很好地组织。该系统可以同时完成加标记和命名的实体识别。

    前述的优点有许多因素。首先,系统把表意语言(例如中文)中的字符串分段成单词序列并精确地识别未登记的实体,比如一个人的名字,组织机构,地方等等。后面会给出其它命名实体的例子。第二,系统分配正确的单词分类到认可的实体。第三,系统的操作时自动地和自己-组织的。不需要将手工的数据用于培训。给出适当数量的培训数据,可以生成坚固的统计语言模型以便模拟单词的上下文约束和命名实体的各个结构。第四,系统基于隐藏马尔可夫模型(HMMs)的框架结构进行操作。可以从文本文集自动地产生词类来用于上下文模型并且在一个统计的解码处理过程中不仅仅用作HMM状态,而且还是实体类别标识,最好是在较少的手工之后。第五,系统不需要在系统中装入大量的名字字典。使用静态词典,建立生产性的引擎按照统计的和确定性的文法规则产生名称。下面描述实施例的其他方面。

    系统体系结构

    图1和2是方框图,示例了按照本发明第一实施例的用于表意语言的加标记和命名的实体识别的一个系统。该系统包括两个主要的模块:一个培训模块100和一个解码模块200。系统使用两个知识基础:一个上下文模块152A和名字实体模块152B。一个名字实体是一个固有名字(PN)。最好是,具有七种命名的实体分类:人,地方,组织机构,数据,时间,百分率,和货币的数量。这样,例如,命名的实体的一个分类是用于一个人的名字,比如“John Doe”。然而,在不脱离本发明的范畴和精神的条件下可以利用其他的分类。每个命名实体的类型具有它自己的模型。这些模型与不同的命名实体的种类是类似的;只不过构成模型的培训数据是不同的。一个基于类别的n-字符串模型最好作为152A和152B这些模型的基础框架。

    图1和2的系统把一种表意语言(例如,中文,日文,韩文,以及类似的)中的表意文字字符串(例如,形成一句话)转换成单词序列。系统从一个给定文本文集的单词顺序识别和分类命名实体的确定分类的成分。

    首先参考图1,培训模块100具有两个子模块或分支:一个语言模块培训分支和一个用于导出一个实体有限态文法(FSG)的模块。FSG基于字符的组合建议不同的名称。对于人名,它能导出姓和教名。一个FSG是产生或识别确定种类的字节顺序的一个机器。例如,一个FSG产生的人名是:Pn->Pnb Pnc Pne。人的名字(Pn)可以包括一个人的名字的开始(Pnb),一个人的名字的延续(Pnc),和一个人的名字的结束(Pne)。Pnb例子是:Pnb->Bai|Li|Wang|…,其中所述的每个最好是一个人的姓。Pnc的例子是:Pnc->Shuan|nil|…,因此,一个人的姓名的延续可以是Shuan,空的字节串,或其他的。Pne的例子是:Pnc->Hu|…前述的是FSG的规则。上分支代表语言模型培训处理,其中上下文模型和实体模型被培训。基于类别的模型最好是一个隐藏马克波夫模型(HMM)。图1中的下分支代表实体特征提取处理。一个分段的文本/名字文集110被输入到一个模块130来用于产生单词n-个字符列和被输入到模块120来用于提取实体特征。培训的数据具有被分段成单字的文集110的表意字。

    在语言模型培训分支中,单词N-个字符列产生模块130被耦合到一个字-簇模块140,它产生和输出基于分类的上下文/实体语言模型(LMs)152。N-个字符列涉及直到N个单字。一个单一的表意字单词是一个单-字符列,一个两个表意字单词是一个双-字符列,等等。单词n-个字符列产生模块130从分段的文本/名字文集中产生单词n-个字符列统计的数据。单词n-个字符列统计的数据经过单字-簇模块140以产生单词分类和分类的n-个字符列数据。最通常的n-个字符列是单-字符列和双-字符列,但也可以使用其他的n-个字符列。

    因此,语言-模块培训分支从分段的文本/名字文集110产生单词N-个字符列,词类,和一个分类的n-个字符列语言模型。由于多对一的映象,基于分类的语言模型152减少了存储的需求。更重要的是,基于分类的语言模型生成与固有名字或命名的实体相关联的词类。这些实体类别在解码模块200中为消除命名实体类别的多义性起到重要的作用。包括模块130和140的培训分支可应用于一个上下文模块和实体模块。估计单词顺序概率的方法可应用于通常较短的实体的序列和较大的序列,比如句子。

    实体-特征提取模块120产生和输出实体有限态文法(FSGs)150。模块120仅把一个分段的名字文集作为输入来提取实体构成的特征。这些特征可以用于定义实体FSGs150来用于后面的建议名字。相关的特征是实体-开始,实体-延续,和实体-结束,如后面所描述的。模块120在固有名字的列表上工作以建立用于或实体的每个分类或种类的FSGs150。实体FSGs是包括提取的实体特征的一个词典。

    参考图2,解码模块200包括耦合到一个统计解码模块230的一个网格构造器模块。文本/名字文集210被输入到网格构成器模块220。一个系统词典240和实体FSGs150也被输入到网格构成器模块220。对于中文语言,例如,每个表意字或字符被存储在词典中作为二-字节单词或词条。上下文模型152A和实体模型152B被输入到统计的解码器模块230。统计解码器模块230产生和输出分段的文本/名字文集250。

    解码模块200以两个阶段逐句处理文本。对于给定的一个表意语言(例如中文)的句子,模块200找出所有可能的句子的分段和在可能的命名实体界限和命名的实体类别上作出假定。这依赖于一个系统词典和实体FSGs150,利用网格构成器模块220来完成。

    网格构成器模块220从文本/名字文集210中读取一个句子。利用系统词典240和实体有限态文法150,网格构成器模块220产生所有可能的句子的单词安排并按照单词的开始字符把它们输入进到成为一个格子的数据结构。一个格子是一种二-维数据结构,经常用于描述一种时间同步的处理。网格的X-轴表示时间间隔,Y-轴表示各个采样。对于中文的分段和实体识别的情况,时间间隔对应于句子中字符的顺序。采样对应于带有这些字符开始的单词。用于每个句子的格子被输入到统计的解码器模块230。

    利用产生的网格,模块200接着用统计解码器模块230中的一个上下文模型152A组和实体模型152B以便决定单词界限和实体类别。利用上下文模型152A和实体模型152B,统计解码器模块230通过所有这些单词的格子的排列并找出最可能的单词排列和实体分类,如果有的话。中复解码模块200的处理直到整个文本210被处理。

    固有名字(PN)特征提取

    图1的命名的-实体模型-培训处理(培训模块100的下分支)提取命名实体的构成的特征。这涉及用于提取实体特征的模块120。本发明的第一实施例最好实际使用中文语言。在中文语言中,中文文本中具有两种种类的单词:静态的和动态的。静态的单词是按照预定的标准收集在字典中的经常使用的单词。另一方面,动态的单词仅是通过按照预定的规则和单词特征组合字典中的静态单词在运行时间上形成的。这对一个中文自然语言处理(NLP)系统是可应用的,其中一个系统词典240可以包含所有单一-字符的单词和数字。

    在按照第一实施例的系统中,以下列的方式描述命名的实体:

    实体=实体_开始(实体_连续)*实体_结束             (1)

    命名的实体可以具有三种构成:实体-开始,实体-连续,和实体-结束。在一个命名的实体中,实体-开始和实体-结束可以是相同的。也就是说,单词本身是一个实体。在另一方面,单词北京和中国每个是一个地名并具有两个特征:地方-开始和地方-结束。实体-连续可以是任意的或最后出现n(n>=0)次。作为一个示例,一个典型的表示是:

    Hongkong Asia Pacific Satellite Communication Corporation(香港亚洲太平洋卫星通信公司)

    对于是一个组织的命名实体的类型,词汇的单词香港被分配成一个机构-开始,公司是一个机构-结束,以及单词亚洲,太平洋,卫星和通信分别被分配成机构-连续的相同的值。因此,每种命名实体的构成可以具有三个特征。

    因为实体构成是词典单词,在一个词典中的单词可以具有多种特征。在某些情况下,一个单词可以按不同的实体类型出现(例如,人,地方,组织机构,等等),甚至在不同的位置上以相同类型的实体出现。实体分类和在名字中出现成分的位置确定了构成一个命名实体的特征。基于这种公式化,使用其中类型的实体和三种类型的构成特征,特征的总数是7×3=21。

    下面结合参考图3描述用于提取实体特征的模块120的处理。在步骤310,特征提取开始着手处理一个给定的词典和一个特殊类型分段的名字文集110。分段的名字文集可以被组织成一个命名实体的列表。在这种连接中,一个命名的实体的列表910被描述在图9中。分段的名字文集的“类型”意味着实体类型,比如人,地方,组织机构等等。在步骤312,从培训文集110中读取或获得一个命名的实体,并在命名的实体的第一个单词上扫描指针。再参考图9,描述了带有名字“BaiShuan Hu”的一个单一的词条900A。在步骤314,通过扫描指针确定当前单词和它的位置的指向(例如,图9中的“Bai”和“1”)并接着向下一个位置或单词移动扫描指针。

    在决定方框316中,基于在被处理的实体中的单词的位置信息,做出一个检验以确定是否当前的单词是命名实体的第一个单词。如果决定方框316返回否定信息(否),在决定方框320上继续处理。否则,如果决定方框316返回肯定信息(是),表明该单词是一个命名实体的开始,并在步骤318上继续处理。在步骤318中,特征“实体-开始”或E-开始被加到词典中的这个单词上。通过培训文集的类型可以容易地确定实体类别。在图9的例子中,在图10的词典1010中一个词条“Bai”给出了一个人名的特征P-开始。接着在决定方框320上继续处理。

    在决定方框320中,基于被处理的实体中的单词的位置信息,做出一个检验来确定是否当前的单词是命名实体的最后的单词。例如,如果在图9的列表910中的第二词条只具有名字“Bai”,一个P-结束特征也将被加到图10的“Bai”词条1010上。如果决定方框320返回否定(否),在步骤322上继续进行处理。在步骤322,特征“实体-连续”或E-连续被加到单词上并为下一个当前单词在步骤314上继续进行处理。否则,如果决定方框320返回肯定(是),表明单词是实体中的最后的一个单词,在步骤324上继续进行处理。在步骤324中,特征“实体-结束”或E-结束被加到系统词典中的单词上。

    接着,在决定方框326上继续进行处理。在决定方框326中,做出一个检验以便确定是否已经到达培训文集110的末端。如果决定方框326返回否定(否),在步骤312上继续进行处理并且从培训文集110中读取两一个命名的实体。否则,如果决定方框326返回肯定(是),在步骤328上终止特征提取处理。

    模型的培训处理

    图1的培训模块(上分支)可应用于上下文模型和实体模型的培训。培训模块本身可分成两部分:单词n-个字符列产生和单词簇模块。

    单词n-个字符列产生模块130经过整个的培训文集110并计数相邻n个单词的出现。模块130计算在培训文集中相邻n个单词的频率。如果对于单-个字符列的n=1,模块130仅仅计数单词的频率。如果对于双-个字符列的n=2,模块130计数一对单词的频率。如果n>2应用类似的处理。

    对于在一个单词列表中的一个固定数的类别,自动单词簇模块140执行单词对类别的多对一的映象,这取决于单词的上下文统计信息的相似性。由Bai Shuanhu,Li Haizhou,Li Zhiwei和Yuan Baosheng公开了单词簇的最好方法,“Building class-based language models withcontextual ststistics”,Proceedings of ICASSP’98,pp173-176,SeattleWashington,USA,1998,在此结合它的公开来相互参考。

    参考图4,描述了自动单词-簇模块140的处理的流程图。在步骤410开始单词-簇的处理,从模块130中使用单词n-个字符列统计数据作为输入。最好是,n-个字符列统计数据是双-个字符列。在步骤412中,给出一个单词列表和预定的类别数N,从单词列表中选择N个单词作为用于每个类别的种子。例如,单词列表最好包含80,000单词和预定的类别数N最好是1000。可以实际使用任何数量的技术数字以选择用于每个分类的种子。值得可取的是,由单-个字符列统计数字存储单词列表并选择最频繁的N个单词作为种子。可替换的,可以使用双-个字符列确定最频繁的N个单词作为种子。此外,可以手动的选择种子。在不脱离本发明的范围和精神的条件下可以利用其他的选择种子的技术。

    在步骤414中,从类别(对于80,000单词的情况,从保留的80,000-N个单词中选择单词)之外的单词列表中选择一个单词,并获得单词的n-个字符列统计数据。最好是,使用单词的双-个字符列统计数字。在步骤416中,使用n-个字符列统计的数据计算带有所有分类的单词的相似性以便找出最相似的类别。在比较的N步骤之后,可以确定最相似的类别。在步骤418中,选择的单词被加到最相似的类别中并用那个类别的n-个字符列数据合并它的单词n-个字符列。在决定方框420中,做出一个检验来确定是否已经完成列表中的最后的单词,也就是,是否所有的单词已经被翻译成类别。如果确定方框420返回否定(否),在步骤414上继续进行处理并选择下一个单词。否则,如果决定方框420返回肯定(是),在步骤422上终止单词簇处理。

    生成相应于名字实体的分类,不同于命名实体的分类的词类可以被选择作为有代表性的种子并被加到用于自动单词分类的词典中以便生成这些固有名字的词类。这必须在单词分割阶段之前进行,以便在整个单词单-个字符列和双-个字符列计算处理的过程中可以获得培训文集110的上下文中这些单词的统计信息。在自动单词簇处理之后,使用其中含有代表性种子的一些自动生成的类别可以建立实体分类之间的映象。

    利用n-个字符列模型的框架,通过培训带有分段的名字实体文集110的模型可以建立实体模型。为了应付稀疏数据问题,自动单词-簇模块140生成类别n-个字符列模型,其中类别数远远小于在上下文中使用的类别数。

    构造网格

    给定的一个词典和一个带有该词典范围内单词的表意语言的句子,通过从左到右逐个字符的扫描句子可以发现用于句子的可能的单词排列;在左边上的子串可以用词典机械的匹配。这是建造字网格的步骤之一,其中列举一个句子的所有的单词排列。

    然而,处理系统词汇之外的或句子中较大单元的单词并不简单。实体建议处理是特征提取的逆过程,通过在上面步骤中获得的字网格来建议名字,通过所述的公式(1)用满足有限态文法的特征组合所有的那些网格元素。建议的实体,连同它们的可能的类别识别以及相关联的实体分类被加到字网格中。

    在图5中描述了网格构造器模块220的处理。在步骤510,处理开始建立一个用于一个句子的字网格。在步骤512中,设置一个字符指针到句子的第一字符并设置网格的帧指数在1的值上。字符指针考虑指出一个子串的开始字符,也就是说,句子的第一个字符。选择第一帧作为当前帧,其中不放置单词。结合图11的例子,一个字符指针指向一个字符串中的第一字符“C1”。图11中描述的帧指数指在第一帧上。虚垂直线表明帧界限。

    在步骤514中,从指针开始的字符串与系统词典相匹配以找出所有可能的子串/候选单词。在图11中,在具有字符“C1”和“C1C2”的第一帧中分别指出两个单词。在步骤516中,候选的单词在索引的位置上被放入字网格。连同候选的单词,它们的单词特征(即实体特征)以及统计的信息被放入字网格。在步骤518中,字符指针向句子中的下一个字符移动,并且网格指数增加1。在决定方框520中,做出一个检验确定是否字符指针已经到达当前句子末端。如果决定方框520返回否定(否),在步骤514上对句子中的下一个字符继续进行处理。否则,如果决定方框520返回肯定(是),在步骤522上继续进行处理。在步骤522中,在字网格上完成名字建议处理。在步骤524中,终止句子的网格构造处理。

    描述图6中步骤522的名字建议处理过程。在步骤610开始进行处理。在步骤612中,设置一个帧指数在1的值上,指到字网格的第一帧。在步骤614中,设置一个单词指针在当前帧的第一个单词上,表明这是考虑的当前单词。在图11中,单词指针被描述成最初指在单词“C1”上。在决定方框616中,做出一个检验确定是否在格子中的当前单词具有“实体-开始”的特征。如果决定方框616返回否定(否),在步骤624上继续进行处理。否则,如果决定方框616返回肯定(是),在步骤618上继续处理。在步骤618中,当前单词通过提供由公式(1)表示的有限态文法(FSGs)被扩充到随后帧中的相邻的单词。这是通过查看下一个字符/单词从实体-开始的特征进行扩展而得以进行的,直到遇到一个结束特征位置。扩充产生一个或多个实体候选,意味着扩充成功,如果没有的话,意味着扩充失败。

    在决定方框620中,做出一个检验来确定是否扩充成功。如果决定方框620返回否定(否),在步骤624上继续进行处理。否则,如果决定方框620返回肯定(是),在步骤622上继续进行处理。在步骤622中,生成新单词并加到当前帧的开始。可与具有多于一个的实体类型。对于每个实体,在帧的开始生成一个单词。然后在步骤624上继续进行处理。

    在步骤624中,单词指针向相同帧中的下一个单词移动。在决定方框626中,做出一个检验以确定是否单词指针已经到达当前帧的末端。如果决定方框626返回否定(否),在决定方框616上继续进行处理,确定是否(下一个)单词是一个实体开始。如果决定方框626返回肯定(是),在决定方框628上继续进行处理。在决定方框628中,做出一个检验来确定是否当前帧是字网格的最后帧。如果决定方框628返回否定(否),在步骤630上继续进行处理。在步骤630中,帧指数被加一。当前帧被考虑改变到网格中的下一格子。在步骤614上继续进行处理。否则,如果决定方框628返回肯定(是),在步骤632上继续进行处理。在步骤632中,终止名字建议处理。图6处理的输出始终是一个格子,但它现在包含更多的命名的实体(例如,人,组织机构,地方等等)。可以由一个标志表示格子中建议的名字,表明是否一个名字被建议。可替换的,如果不使用一个标志,可以通过使每个建议的名字不具有分类码和分类码等于零来表明一个建议的名字。

    统计解码

    传统的,一个语言模型给每个单词串分配一个概率值,w=w1w2...wn,从一个规定的词汇表中取得。从培训文集中获得词汇表中单词的统计参数。这可以应用于估计句子和命名实体的概率。当一个句子被处理时,wi表示句子中的单词。问题在于估计字串w1w2...wn的接合的概率。当一个命名的实体被处理时,wi表示一个命名实体的构成成分。然后问题在于估计构成部分序列的接合概率,以及估计用作实体的词典参数的概率。

    形式上,使用类别双-个字符列语言模型形式,一个字串w的概率被描述成下式:P(w)=Πi=1nP(ci|ci=1)P(wi|ci),--(2)]]>

    其中ci表示一个类别标识。P(ci|ci=1)项表示上下文参数,和P(wi|ci)是词典参数。

    在图2的统计解码模块230中,类别被看作是规定的,并且词汇表被看作是动态的。从而,最新建议的命名实体是新的单词,并且与它们的分类相关联的类别属于规定的类别的其中之一。在所有这些单词类别中,仅仅关心那些与命名的实体相关联的类别。

    从网格构造模块220获得一个给定的字网格,统计解码器模块230估计所有字串和所有命名实体的概率并找出最可能的字串和相关的单词类别序列。有许多方法找出最可能的序列。最好是,使用一个Viterbi搜索引擎,如图7所示。在步骤710,处理开始。在步骤712,帧指数被设置为值1来用于第一帧,表明这是考虑中的当前帧。

    在步骤714,单词指针被设置在当前帧的第一个单词上,表明这是考虑中的当前单词。在决定方框716中,做出一个检验以确定是否在格子中的当前单词是最新建议的实体。如果决定方框716返回否定(否),在步骤720上继续进行处理。在步骤720中,从上下文语言模型数据中获得单词的词典概率数据。然后在步骤722上继续进行处理。否则,如果决定方框716返回肯定(是),在步骤718上继续进行处理。在步骤728中,根据公式(2)的形式从相应的实体模型估计实体的词典概率。在步骤722上继续进行处理。图12示例了在三个帧中用于许多单词的概率。为简化附图,通过带有相关概率的黑圆圈来表示每个单词。

    在步骤722中,应用上下文模型找出最佳的在前的相邻单词,并倒转指针到那个生成的单词。这样做是为了在当前单词终止时找出最可能的子-串并估计和存储那个单词的概率。在公式(2)的形式下,子-串的概率终止于在前的相邻的单词并且当前单词和它的在前相邻单词之间的概率被组合。生成一个指针指向最可能的在前的单词。步骤722不为帧1执行。最好使用单词双-个字符列统计数字来找出条件概率。在步骤724中,当前单词指针向下一个单词移动以便为下一个单词的可能的处理开始准备。

    在决定方框726中,做出一个检验以确定是否当前单词指针正指向当前帧的末端。如果决定方框726返回否定(否),在决定方框716上继续进行处理以便处理下一个单词。否则,如果决定方框726返回肯定(是),在决定方框728上继续进行处理。在决定方框728中,做出一个检验确定是否已经到达格子的最后帧。如果决定方框728返回否定(否),在步骤730上继续进行处理。在步骤730中,帧指数被加1。在步骤714上继续进行处理。否则,如果决定方框728返回肯定(是),在步骤732上继续进行处理。在步骤732中,最可能的单词的倒转指针被追溯到最后的帧中,并且如果有的话,单词顺序和实体信息随后被输出。在图12中,这分别通过在第一个三帧中具有概率0.6,0.7和0.5的节点之间的两个宽箭头来表示。然后在步骤732上终止处理。

    最好使用一个计算机来实现本发明的实施例,比如图8中所示的通用计算机。特别是,可以用软件实现图1-7的处理或功能性,或者一个计算机程序,在计算机上执行。通过由计算机完成的软件中的指令,用于一种表意语言的加标记和命名实体识别的方法或处理步骤将是有效的。软件可以用一个或多个用于实现处理步骤的模块来实现。一个模块是一个计算机程序的一部分,通常执行特殊的或相关的功能。此外,如前所述,一个模块也可以是一个用于其它部件或模块的封装的功能硬件单元。

    特别是,软件可以被存储在一个计算机可读媒介中,包括下述的存储装置。软件最好从计算机可读媒介被装入计算机并随后由计算执行。一个计算机程序产品包括具有这样软件或在其上记录一个计算机程序的一个计算机可读媒介,通过一个计算机来执行。在计算机中计算机程序产品的使用最好对按照本发明实施例的用于表意语言的标记和命名实体识别的设备起到有效的作用。

    计算机系统800包括计算机802,一个视频显示816,和输入装置818,820。此外,计算机系统800可以具有任意数量的其他装置,包括行式打印机,激光打印机,绘图仪,和其它连接到计算机802的再生装置。利用诸如一个调制解调器通信路径,一个计算机网络之类的一个适当的通信信道830,可以经一个通信接口808b把计算机系统800连接到一个或多个其它的计算机。计算机网络可以包括一个局域网(LAN),一个广域网(WAN),一个内联网,和/或因特网。

    计算机802本身包括一个中央处理单元(后面简单地称作一个处理器)804,一个存储器806,可以包括随机存储器(RAM)和只读存储器(ROM),输入/输出(I/O)接口808a,808b,&808c,一个视频接口810,以及图8中有放矿812表示的一个或多个普通的存储装置。存储装置812可以下列的一个或多个所组成:一个软盘,一个硬盘驱动,一个磁-光盘驱动,CD-ROM,磁带或者任何数量的本领域熟知的非-易失性存储装置。每个804-812的部件典型的经一个总线814被连接到一个或多个其他的装置,总线814依次由数据,地址,和控制总线组成。

    视频接口810被连接到视频显示816并在视频显示816上从计算机802位显示提供视频信号。通过一个或多个输入装置808b提供操作计算机的用户输入。例如,一个操作者可以使用键盘818和/或诸如鼠标820的一个指示装置来提供对计算机802的输入。

    系统800仅作为示例的目的,在不脱离本发明的范围和精神的情况下可以使用其他的配置。实施例的计算机可以实际包括IBM-PC/Ats或兼容机,PCs的Macintosh(TM)系列的其中之一,SunSparcstation(TM),一个工作站或类似的。前述的内容仅仅作为本发明实施例可以实际使用的计算机的示例性的类型。典型的,实施例的处理程序,如下文所述的,是驻留成软件或记录在一个硬盘驱动(通常是图8中的方框812)上的一个程序来作为计算机可读媒介,并利用处理器804进行读取和控制。利用半导体存储器806可以实现程序的中间存储和中间数据以及从网络提取的任何数据,有可能与硬盘驱动812一致。

    在一些例子中,程序可以被提供到在一个CD-ROM或一个软盘(通常都由方框812描述)上编码的用户,或者可替换的例如可以经连接到计算机的一个调制解调器从网络由用户读取。此外,软件也可以从其他的计算机可读媒介被装入计算机系统800,包括磁带,一个ROM或集成电路,一个磁-光盘,在计算机和另一个装置之间的无线或红外线传输信道,一个诸如PCMCIA卡的计算机可读卡,以及包括邮件传输和在网站上记录信息的因特网和内联网,和类似的。所述的内容仅作为相关计算机可读媒介的示例。在不脱离本发明的范围和精神的条件下可以实际使用其他的计算机可读媒介。

    在前述的内容中,描述了用于表意语言的加标记和命名实体识别的一种方法,一种计算机程序产品和一种系统。虽然只描述了不多的实施例,但作为本领域普通技术人员显而易见的是,在不脱离本发明的范畴和精神的条件下,可以对公开的内容进行许多改变和/或修改。

用于中文的标记和命名实体识别的系统.pdf_第1页
第1页 / 共32页
用于中文的标记和命名实体识别的系统.pdf_第2页
第2页 / 共32页
用于中文的标记和命名实体识别的系统.pdf_第3页
第3页 / 共32页
点击查看更多>>
资源描述

《用于中文的标记和命名实体识别的系统.pdf》由会员分享,可在线阅读,更多相关《用于中文的标记和命名实体识别的系统.pdf(32页珍藏版)》请在专利查询网上搜索。

公开了用于表意语言的加标记和命名实体识别的一种系统(100,200)。在该系统中,利用有限态文法(150)和一个系统词典(240)为一串表意字符产生一个字网格。依赖于一个上下文语言模型(152A)和一个或多个实体语言模型(152B),利用字网格通过确定表意字符串中的单词界限来产生分段的文本。依赖于所述上下文语言模型(152A)和一个或多个实体语言模型(152B),利用字网格识别在所述表意字符串中的。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1