一种自动拆分英文复合词组的系统和方法转让专利

申请号 : CN200910078791.9

文献号 : CN101576876B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杜小勇刘红岩何军李直旭

申请人 : 杜小勇

摘要 :

一种自动拆分英文复合词组的系统和方法,其中该系统包括:词组输入模块,用于输入从一个领域的文本中分离出来的大量词组;词组分类模块,用于对所输入的每个词组进行分类,并且将简单词组放入简单词组表中;基于语言学规则的概率模型模块,用于对所分类的每个复合词组进行逐一拆分;基于文本分类的机器学习模型模块,用于对在基于语言学规则的概率模型模块中无法正确拆分的复合词组进一步拆分。

权利要求 :

1.一种自动拆分英文复合词组的系统包括:词组输入模块,用于输入从一个领域的文本中分离出来的大量词组;

词组分类模块,用于对所输入的每个词组进行分类,并且将简单词组放入简单词组表中;

基于语言学规则的概率模型模块,用于对所分类的每个复合词组进行逐一拆分,该模块包括:构造分析子模块,用于分析各个复合词组可能正确的构造有哪几种;

概率计算子模块,用于对照简单词组表中是否包含有各个拆分出来的词组来给出这个复合词组关于每种构造的正确概率;

比较子模块,用于对每一个复合词组的每一种可能构造的正确概率进行比较,得出最为正确的概率拆分方法;

判断子模块,用于将在比较子模块中得到的最为正确的概率拆分方法的正确概率值与预定阀值进行比较,如果大于等于阀值则认为此方法即为正确拆分方法;

训练集子模块,用于将正确拆分的复合词组及其正确拆分类型作为训练集,而将尚未被正确拆分的复合词组作为进一步待处理对象;

基于文本分类的机器学习模型模块,用于对在基于语言学规则的概率模型模块中无法正确拆分的复合词组进一步拆分,该模块包括:预测模型建模子模块,用于利用训练集寻求拆分类型并且利用词组中词语的关系建立预测模型;

预测子模块,用于利用建立起来的预测模型对基于语言学规则的概率模型模块中无法正确拆分的复合词组进行正确拆分类型预测。

2.根据权利要求1的系统,进一步包括:

自适应进化模块,用于对上述基于语言学规则的概率模型模块和基于文本分类的机器学习模型模块进行自适应进化。

3.一种自动拆分英文复合词组的方法包括:A、输入从一个领域的文本中分离出来的大量词组;

B、对所输入的每个词组进行分类,并且将简单词组放入简单词组表中;

C、对所分类的每个复合词组进行逐一拆分,该步骤进一步包括:C1、分析各个复合词组可能正确的构造有哪几种;

C2、对照简单词组表中是否包含有各个拆分出来的词组来给出这个复合词组关于每种构造的正确概率;

C3、对每一个复合词组的每一种可能构造的正确概率进行比较,得出最为正确的概率拆分方法;

C4、将在步骤C3中得到的最为正确的概率拆分方法的正确概率值与预定阀值进行比较,如果大于等于阀值则认为此方法即为正确拆分方法;

C5、将正确拆分的复合词组及其正确拆分类型作为训练集,而将尚未被正确拆分的复合词组作为进一步待处理对象;

D、对在步骤C中无法正确拆分的复合词组进一步拆分,该步骤进一步包括:D1、利用训练集寻求拆分类型并且利用词组中词语的关系建立预测模型;

D2、利用建立起来的预测模型对步骤C中无法正确拆分的复合词组进行正确拆分类型预测。

4.根据权利要求3的方法,进一步包括步骤:对步骤C及步骤D进行自适应进化。

说明书 :

一种自动拆分英文复合词组的系统和方法

技术领域

[0001] 本发明涉及自然语言处理、本体学习、以及文本挖掘领域,尤其是涉及用一种自动拆分英文复合词组的系统和方法。

背景技术

[0002] 自然语言处理的最终目的就是为了能让电脑能和人类一样正确有效地使用自然语言。然而,由于存在以下两大挑战目前仍然还有很长的路要走:其一是自然语言的多义性;其二是需要很多的背景知识。人类的语言在各个层面上都是相当模糊的,这些层面包括:词法层面,句法层面,语义层面和各种语言特殊的构造和语法;为了让计算机能够正确处理自然语言,我们可能需要提供数以百万计的词库,句法知识和更为复杂的其他关于语言的语义,构造和习惯用语方面的资料。即使是这样,计算机仍然还是很难表现得很好。
[0003] 所谓的复合词组是相对于简单词组而言的(主要指的是名词词组),简单词组的内容只能精确描述一个事物;而复合词组是由简单词组按照某种特点结构组合而成。
[0004] 现如今,计算机可以通过简单的统计技术较为轻易地识别出英文文章中的简单词组,因为简单词组总以连续的单词序列出现(比如“DataMining”),只要能够通过概率统计发现某几个词的序列总在文章中出现就能断定它们是一个词组。然而,英文文章中的复合词组相对来说则比较复杂,比如“Data Mining and Warehousing”,可以看出这个复合词组是由“DataMining”和“Data Warehousing”组合而成,而“Data,Text and Web Mining”则是由“Data Mining”,“Text Mining”和“Web Mining”组合而成。作为领域专家,拆分这样的复合词组并不难,然而要让计算机能够自动地正确拆分这些词组却并不好办。
[0005] 对于某一领域来说,其领域术语都应该是简单词组,那么如何从复合词组中拆分出正确的简单词组则相当于一个领域术语的抽取问题。从这个角度来说,复合词组的拆分问题跟本体学习里的领域术语抽取问题是非常相关的。在本体学习领域,为了能够在从文本中正确抽取术语,大致有三类方法,一类是基于语言学的方法;一类是基于统计的方法;还有一类是将两者结合的混合方法。基于语言学的方法试图通过语言学上的语法给出一些特别的构词模式,然后用此模式在文本中匹配找到术语;基于统计的方法主要是根据词汇共现分析来找到常用的词组,然后用TF/IDF方法过滤掉常用的非领域术语词组。
[0006] 另一个跟复合词组拆分比较相关的领域是自然语言处理领域的namedentity recognition(NER),中文名称应该是“专名辨识”,即在文本中找到代表人,地址,时间或者数量等的词组。现如今这方面的工作也有不少的成就,主要采用的方法有:基于隐式马尔可夫链的方法、最大熵值法和支持向量机模型等。
[0007] 马尔可夫链因安德烈·马尔可夫得名,是数学中具有马尔可夫性质的离散时间随机过程。该过程中,在给定当前知识或信息的情况下,只有当前的状态用来预测将来,过去(即当前以前的历史状态)对于预测将来(即当前以后的未来状态)是无关的。隐马尔可夫模型是马尔可夫链的一种,它的状态不能直接观察到,但能通过观测向量序列观察到每个观测向量都是通过某些概率密度分布表现为各种状态,每一个观测向量是由一个具有响应概率密度分布的状态序列产生。所以,隐马尔可夫模型是一个双重随机过程----具有一定状态数的隐马尔可夫链和显示随机函数集。自20世纪80年代以来,HMM被应用于语音识别,取得重大成功。到了90年代,HMM还被引入计算机文字识别和移动通信核心技术“多用户的检测”。近年来,HMM在生物信息科学、故障诊断等领域也开始得到应用。
[0008] 最大熵原理指出,当我们需要对一个随机事件的概率分布进行预测时,我们的预测应当满足全部已知的条件,而对未知的情况不要做任何主观假设。(不做主观假设这点很重要。)在这种情况下,概率分布最均匀,预测的风险最小。因为这时概率分布的信息熵最大,所以人们称这种模型叫“最大熵模型”。
[0009] 支持向量机(SVM)是数据挖掘中的一种重要方法,能非常成功地处理回归问题(时间序列分析)和模式识别(分类问题、判别分析)等诸多问题,并可推广于预测和综合评价等领域。支持向量机属于一般化线性分类器.他们也可以认为是提克洛夫规则化(Tikhonov Regularization)方法的一个特例.这族分类器的特点是他们能够同时最小化经验误差与最大化几何边缘区.因此支持向量机也被称为最大边缘区分类器。我们通常希望分类的过程是一个机器学习的过程。这些数据点是n维实空间中的点。我们希望能够把这些点通过一个n-1维的超平面分开。通常这个被称为线性分类器。有很多分类器都符合这个要求。但是我们还希望找到分类最佳的平面,即使得属于两个不同类的数据点间隔最大的那个面,该面亦称为最大间隔超平面。如果我们能够找到这个面,那么这个分类器就称为最大间隔分类器。所谓支持向量是指那些在间隔区边缘的训练样本点。这里的“机(machine,机器)”实际上是一个算法。在机器学习领域,常把一些算法看做是一个机器。
[0010] 然而,不同于术语抽取和专名辨识技术的是,复合词组的拆分要考虑的不是从文本中抽取以连续单词序列出现的简单词组,而是如何从文本中得到非连续单词序列。目前对于此类问题尚未有比较好的解决方案。

发明内容

[0011] 本发明是鉴于上述技术问题而产生的。本发明的一个目的是提出一种自动拆分英文复合词组的系统和方法。
[0012] 在一个方面中,根据本发明的自动拆分英文复合词组的系统包括:词组输入模块,用于输入从一个领域的文本中分离出来的大量词组;词组分类模块,用于对所输入的每个词组进行分类,并且将简单词组放入简单词组表中;基于语言学规则的概率模型模块,用于对所分类的每个复合词组进行逐一拆分;基于文本分类的机器学习模型模块,用于对在基于语言学规则的概率模型模块中无法正确拆分的复合词组进一步拆分。
[0013] 在这个方面中,其中基于语言学规则的概率模型模块进一步包括:构造分析模块,用于分析各个复合词组可能正确的构造有哪几种;概率计算模块,用于对照简单词组集中是否包含有各个拆分出来的词组来给出这个复合词组关于每种构造方法的正确概率;比较模块,用于对每一个复合词组的每一种可能构造方法的正确概率进行比较,得出最为正确的概率拆分方法;判断模块,用于将在比较模块中得到的最为正确的概率拆分方法的正确概率值与预定阀值进行比较,如果大于等于阀值则认为此方法即为正确拆分方法;训练集模块,用于将正确拆分的复合词组及其正确拆分类型作为训练集,而将尚未被正确拆分的复合词组作为进一步待处理对象。
[0014] 在这个方面中,其中基于文本分类的机器学习模型模块进一步包括:预测模型建模模块,用于利用训练集寻求拆分类型并且利用词组中词语的关系建立预测模型;预测模块,用于利用建立起来的预测模型对基于语言学规则的概率模型模块中无法正确拆分的复合词组进行正确拆分类型预测。
[0015] 在这个方面中,其中该系统进一步包括:自适应进化模块,用于对上述基于语言学规则的概率模型模块和基于文本分类的机器学习模型模块进行自适应进化。
[0016] 在另一个方面中,根据本发明的一种自动拆分英文复合词组的方法包括:A、输入从一个领域的文本中分离出来的大量词组;B、对所输入的每个词组进行分类,并且将简单词组放入简单词组表中;C、对所分类的每个复合词组进行逐一拆分;D、对在步骤C中无法正确拆分的复合词组进一步拆分。
[0017] 在这个方面中,其中步骤C进一步包括:C 1、分析各个复合词组可能正确的构造有哪几种;C2、对照简单词组集中是否包含有各个拆分出来的词组来给出这个复合词组关于每种构造方法的正确概率;C3、对每一个复合词组的每一种可能构造方法的正确概率进行比较,得出最为正确的概率拆分方法;C4、将在步骤C3中得到的最为正确的概率拆分方法的正确概率值与预定阀值进行比较,如果大于等于阀值则认为此方法即为正确拆分方法;C5、将正确拆分的复合词组及其正确拆分类型作为训练集,而将尚未被正确拆分的复合词组作为进一步待处理对象。
[0018] 在这个方面中,其中步骤D进一步包括:D1、利用训练集寻求拆分类型并且利用词组中词语的关系建立预测模型;D2、利用建立起来的预测模型对步骤C中无法正确拆分的复合词组进行正确拆分类型预测。
[0019] 在这个方面中,其中该方法进一步包括步骤:对上述基于语言学规则的概率模型模块和基于文本分类的机器学习模型模块进行自适应进化。

附图说明

[0020] 结合随后的附图,从下面的详细说明中可显而易见的得出本发明的上述及其他目的、特征及优点。在附图中:
[0021] 图1给出了根据本发明的系统的方框图;
[0022] 图2给出了根据本发明的基于语言学规则的概率模型模块的详细方框图;
[0023] 图3给出了根据本发明的基于文本分类的机器学习模型模块的详细方框图;
[0024] 图4给出了根据本发明的方法的流程图;
[0025] 图5给出了根据本发明的方法的子流程图;
[0026] 图6给出了根据本发明的方法的另一子流程图;

具体实施方式

[0027] 下面结合附图和具体实施例对本发明的自动拆分英文复合词组的系统和方法进行详细描述。
[0028] 一般来说,英文中的复合词组的常用构造形式大概有以下几种:
[0029] 1)有一个公共前缀:如“Data Mining and Warehousing”;
[0030] 2)有一个公共后缀:如“Data,Text and Web Mining”;
[0031] 3)没有前缀和后缀:如“Data Mining and Data Warehousing”;
[0032] 4)既 有 前 缀 又 有 后 缀:如“Query Processing and Optimization in P2PSystems”。
[0033] 首先,参考图1,对根据本发明的自动拆分英文复合词组的系统进行说明。为了方便说明该系统功能,给出示范例1如下:
[0034] 例1:假设我们所拥有的输入词组包括如下几条:
[0035] i.“Data Mining”
[0036] ii.“Data Warehousing”
[0037] iii.“Data Mining and Warehousing”
[0038] iv.“Data Mining and Data Warehousing”
[0039] v.“Data,Text and Web Mining”
[0040] vi.“Data and Web Management”
[0041] 如图1所示,根据本发明的系统包括词组输入模块、词组分类模块、基于语言学规则的概率模型模块、基于文本分类的机器学习模型模块、以及自适应进化模块。
[0042] 词组输入模块用于一次性输入从一个领域的文本中分离出来的大量词组。即是将例1中的几条词组输入到系统中。
[0043] 词组分类模块用于对所输入的每个词组进行分类。具体地说,根据每个词组中是否包含有“and”、逗号,分号,破折号等分隔词汇或者分隔符号来判断词组是否为需要拆分的复合词组。如果包含则为复合词组,需要拆分;否则为简单词组,不需要拆分,并且将简单词组都放入一个简单词组表中。就例1中的词组而言,显然i,ii俩条是不需要拆分的简单词组,可以将其放入到简单词组表中;而其他几条是需要拆分的复合词组。
[0044] 基于语言学规则的概率模型模块用于对所分类的每个复合词组进行逐一拆分。如前所述总体大致分为四种:有共同的前缀;有共同的后缀;无前缀也无后缀;既有前缀又有后缀。然而这只是一个大类的区分,有共同的前缀的情况又要分清楚到底有几个词作为前缀;同理有共同后缀的情况又要分清楚到底有几个词作为后缀。然而不可能每个复合词组都有这么多可能的组合。比如例1中“Data Mining and Warehousing”只可能是有一个词“Data”作为共同前缀的构造,或者是无前缀且无后缀的情况。它不可能有后缀因为“and”后面只有一个词,不可能作为后缀;再比如“Data,Text and WebMining”只可能是有一个词“Mining”作为后缀的情况,或者无前缀,无后缀的情况。因为第一个分隔符号“,”前只有一个词“Data”,不可能作为前缀。按照这样的方法,可以将每个复合词组的可能拆分类型的搜索范围缩小很多。随后参考图2对此进行详细的描述。
[0045] 基于文本分类的机器学习模型模块对在基于语言学规则的概率模型模块中无法正确拆分的复合词组进一步拆分。随后参考图3对此进行详细地描述。
[0046] 此外,优选地,为了提高拆分模型的拆分准确率,该系统还可包括拆分模型自适应进化模块。该拆分模型自适应进化模块对上述基于语言学规则的概率模型模块和基于文本分类的机器学习模型模块进行自适应进化。在此模块中可以通过将新拆分得到的词组和拆分情况加入到训练集中,提高拆分模型的准确率,从而自适应地对两个拆分模型进行进化。
[0047] 下面参考图2,对根据本发明的基于语言学规则的概率模型模块进行详细地说明。
[0048] 如图2所示,基于语言学规则的概率模型模块包括构造分析模块、概率计算模块、比较模块、判断模块、以及训练集模块。
[0049] 构造分析模块分析各个复合词组可能正确的构造有哪几种。比如对于例1中的“Data Mining and Warehousing”,可能存在的构造只有俩种:一种将其拆分为“Data Mining”和“Warehousing”;另一种拆分为“Data Mining”和“Data Warehousing”。
[0050] 概率计算模块对照简单词组集中是否包含有各个拆分出来的词组来给出这个复合词组关于每种构造方法的正确概率。还是对于例1中的“DataMining and Warehousing”,上面提到的第一种拆分,我们得到了“DataMining”和“Warehousing”,然而简单词表中只有“Data Mining”和“DataWarehousing”,如果按照找到一个匹配词就加1分的原则,那么这种拆分可以得1分,而第二种拆分方法,我们得到了“Data Mining”和“Data Warehousing”,对比简单词表后它可以得到2分。
[0051] 比较模块对每一个复合词组的每一种可能构造方法的正确概率进行比较,得出概率值最大的那一种构造方法即为最为正确的概率拆分方法。对于例1中的“Data Mining and Warehousing”的俩种可能拆分,经过对比可知,第二种拆分方法是最为正确的概率拆分方法。
[0052] 判断模块将在比较模块中得到的最为正确的概率拆分方法的正确概率值与预定阀值进行比较,如果大于等于阀值则认为此方法即为正确拆分方法,否则认定模型并不能拆分此复合词组。阀值的设定应该确保从复合词组中拆分出来的词组至少有一个能在简单词组集中找到,这样才能说明拆分有效,具体阀值应该根据应用的需求来设定。比如我们将例1中的阀值预设为1,那么“Data Mining and Warehousing”的最正确拆分是可以被此模块判断为正确拆分方法。
[0053] 训练集模块将正确拆分的复合词组及其正确拆分类型作为训练集,而将尚未被正确拆分的复合词组作为进一步待处理对象。对于例1中的4条复合词组词组,“Data Mining and Warehousing”,“Data Mining and DataWarehousing”和“Data,Text and Web Mining”都是可以正确拆分的,而“Dataand Web Management”则无法正确拆分。
[0054] 下面参考图3,对根据本发明的基于文本分类的机器学习模型模块进行详细地说明。
[0055] 如图3所示,基于文本分类的机器学习模型模块包括预测模型建模模块和预测模块。
[0056] 预测模型建模模块利用训练集寻求拆分类型并且利用词组中词语的关系建立预测模型,这里采用的训练策略是通过CBA算法来挖掘词语和拆分类型之间的关联规则。就例1而言,我们有了三个正确拆分的复合词组,那么可以得到这三个词组中所有除and之外的单词如“Data”,“Mining”,“Text”等等与拆分类型(有一个公共前缀;有一个公共后缀;没有前缀和后缀;既有前缀又有后缀)之间的关系。比如我们可以得到词组中1个“Data”拆分类型很可能是“有一个公共前缀”;而当词组中有2个“Data”时,则拆分类型很可能是“没有前缀和后缀”。
[0057] 预测模块利用建立起来的预测模型对基于语言学规则的概率模型模块中无法正确拆分的复合词组进行正确拆分类型预测。就例1而言,比如我们有了“Data”与拆分类型的关系之后,对于尚未正确拆分的词组“Data andWeb Management”,就可以得到它的拆分类型为“有一个公共前缀”。这样得到的拆分就是:“Data Management”和“Web Management”。
[0058] 接下来,参考图4-6,对根据本发明的自动拆分英文复合词组的方法进行说明。
[0059] 如图4所示,根据本发明的方法包括如下步骤:
[0060] A、一次性输入从一个领域的文本中分离出来的大量词组;
[0061] B、对所输入的每个词组进行分类。具体地说,根据每个词组中是否包含有“and”、逗号,分号,破折号等分隔词汇或者分隔符号来判断词组是否为需要拆分的复合词组。如果包含则为复合词组,需要拆分;否则为简单词组,不需要拆分,并且将简单词组都放入一个简单词组表中。
[0062] C、基于语言学规则对所分类的每个复合词组进行逐一拆分。
[0063] 具体地说,如图5所示,该步骤C进一步包括:
[0064] C1、分析各个复合词组可能正确的构造有哪几种。
[0065] C2、对照简单词组集中是否包含有各个拆分出来的词组来给出这个复合词组关于每种构造方法的正确概率。
[0066] C3、对每一个复合词组的每一种可能构造方法的正确概率进行比较,得出概率值最大的那一种构造方法即为最为正确的概率拆分方法。
[0067] C4、将在步骤C3中得到的最为正确的概率拆分方法的正确概率值与预定阀值进行比较,如果大于阀值则认为此方法即为正确拆分方法,否则认定模型并不能拆分此复合词组。阀值的设定应该确保从复合词组中拆分出来的词组至少有一个能在简单词组集中找到,这样才能说明拆分有效。
[0068] C5、将正确拆分的复合词组及其正确拆分类型作为训练集,而将尚未被正确拆分的复合词组作为进一步待处理对象。
[0069] D、基于文本分类规则对步骤C中无法正确拆分的复合词组进一步拆分。
[0070] 具体地说,如图6所示,该步骤D进一步包括:
[0071] D1、利用训练集寻求拆分类型并且利用词组中词语的关系建立预测模型。
[0072] D2、利用建立起来的预测模型对步骤C中无法正确拆分的复合词组进行正确拆分类型预测。
[0073] 此外,优选地,为了提高拆分模型的拆分准确率,该方法还可包括步骤:对上述基于语言学规则的概率模型模块和基于文本分类的机器学习模型模块进行自适应进化。
[0074] 通过上述描述可知,本发明能够在缺乏某领域知识库支持的情况下,依据领域中可获取的有限数目的简单词组,来对领域中的复合词组进行拆分。实验证明本系统的拆分正确率较高,时间效率也很高。可以用来解决一些同类型应用中遇到的复合词组拆分问题。
[0075] 应该说明的是,本公开可以采用完全硬件的实施例、完全软件的实施例或包括硬件和软件元件两者的实施例的形式。在优选实施例中,本公开可以用软件来实施,其可以包括但不局限于固件、驻留软件、微码等等。
[0076] 此外,对于本领域的普通技术人员来说可显而易见的得出其他优点和修改。因此,具有更广方面的本发明并不局限于这里所示出的并且所描述的具体说明及示例性实施例。因此,在不脱离由随后权利要求及其等价体所定义的一般发明构思的精神和范围的情况下,可对其做出各种修改。