广义归约的装置与方法

文档序号:184965阅读:326来源:国知局
专利名称:广义归约的装置与方法
技术领域
本发明涉及自然语言处理领域中的文本分析的装置与方法,属于国际专利分类(IPC)的子类G06F 17/27,特别涉及一种对不同语言层次的实体进行归约的装置与方法。
背景技术
大部分的文本分析工作,都包括两个步骤,即词法分析与句法分析。词法分析,其目的是判断哪些字符可构成单字,以及哪些单字可以构成词组;句法分析(或称语法分析),其目的则是判断哪些单字或词组可构成语法成分,哪些语法成分可以继续归约,直到构成一个句子。在句法分析的基础上,还可以进一步的进行语义分析,即分析不同语法成分所代表的概念,进而分析哪些概念可以组合成更复杂的概念。
无论词法分析,语法分析,还是语义分析,从自底向上分析的角度来看,其实质都是根据一定的规则对语言实体进行归约,构成新的语言实体的过程。
在此基础上进一步抽象,不难发现,所谓文本分析,其目的在于识别出文本中的各种语言实体及其相互之间的关系。所谓的语言单元关系是指,哪些语言单元根据特定的归约规则,归约出特定的语言单元。
语言实体在不同语言层次上的具体所指是不同,比如在词法层面,可以指单字,或词组;在句法层面可以指语法成分;或者在语义层面,可以指不同的语义概念。当然,随着文本处理领域研究的不断深入,所述的语言层次可能会有所增加或变动。
语言实体在实施时,一般被构造成由标记表达的数据结构(语言单元)。在词法层面,语言单元用来代表字母,单字或词组;在语法层面,则代表单字,词组或语法成分;在语义层面,则代表语法成分,或者语义概念。
传统分析方法,其着眼点在于了解每个语言单元与相邻语言单元的必然的关系,所以其采用的归约方式是紧邻的。
但是,在某些场合,人们需要(或者不得不)获知各个语言单元相互之间可能的,而非必然的关系。比如,在短时间内,对大量文本进行非严格的分析,以期得到某些具有统计意义的结论;在干扰文字或者与分析无关字符存在的情况下进行文本分析,如果要使用传统的确然的文本分析技术,就要采取文本去噪,这需要专门的领域知识以及较高的知识建模的技术,以至于在一些应用场合效果不够理想;此时,就要采用近似文本分析。
在这些场合,传统分析方法采用的紧邻归约就无法很好的工作。因此,为了施行近似文本分析,就需要采用广义归约。
所谓的广义归约,是指在已存在的语言单元(即语言实体的外在表示)集合中寻找到语言单元组合,使之匹配某个特定的规则,以得到一个新的语言单元。参与匹配的语言单元组合,并不一定在逻辑上确然性地具有此规则所代表的特定语言层次的关系,而只是反应此语言单元组合可能具有此规则所代表的特定语言层次的关系。
由于广义归约是在已存在的语言单元中寻找各种可能的语言单元组合以匹配规则,所以在实现的时候,如何在搜索语言单元组合时提高效率,将是实现一个高效实用的广义归约装置的关键。

发明内容
本发明的目的在于解决以上问题,提供一种进行广义归约的装置和方法,该装置使用该广义归约的方法能够保存从外界得到的语言单元,并判断哪些语言单元可以按照特定的规则归约出新的语言单元。特别地,为了达到提高搜索语言单元组合效率的目的,这种方法是增量式的,即已经被遍历过的语言单元组合将不再被遍历到。
为了实现上述的目的,本发明的广义归约的装置与方法如下该广义归约的装置,其主要特点是,所述装置包括(1)归约规则表的存储部件,用于存储归约规则;所述的归约规则包含一个或一个以上子前件,存储了语言单元匹配时应满足的条件;所述的归约规则还包含一个后件,所存储的信息描述了规则被匹配后将产生的语言单元的全部或部分内容;所述的语言单元存储的信息描述了一段文字所对应的特定语言层次的语言实体;(2)候选者队列的存储部件,用于存储匹配特定规则的特定子前件的语言单元;(3)归约部件,用于将由输入手段得到的语言单元,与各规则的各子前件逐一进行匹配,当所述的语言单元与特定规则的特定子前件匹配时将之加入到此子前件对应的候选者队列中;在每个匹配子前件过程中,若此语言单元匹配的是某个具有n个子前件的规则的最末子前件,运用遍历算法搜索各种语言单元组合,每个组合满足(a)第i个成员来自此规则的第i个子前件的候选者队列(1≤i≤n-1);(b)第n个成员为此语言单元;(4)输入部件,得到从外界输入的语言单元;(5)输出部件,将产生的新的语言单元输出;所述的输入部件的输出与所述的归约部件的输入相连,该归约部件的输出与所述的输出部件的输入相连,且该归约部件还分别与归约规则表的存储部件和候选者队列的存储部件相连;对于每个语言单元组合,都根据规则后件产生新的语言单元并通过输出部件输出。
该广义归约的装置的语言单元还包括指明该语言单元所代表的语言实体在文本中占据区域的文本区域;所述的归约装置为(a)在搜索语言单元组合时,每种语言单元组合的第i个语言单元的文本区域不重合于第i+1个语言单元且在其左侧(1≤i≤n-1);(b)得到的新的语言单元的文本区域,为对应语言单元组合中各语言单元的文本区域的叠加。
使用上述装置进行广义归约的方法,其主要特点是,该方法包括以下步骤(1)由输入手段得到一个语言单元,所述的语言单元存储的信息描述了一段文字所对应的特定语言层次的语言实体;(2)将此语言单元与各归约规则的各子前件逐一进行匹配;所述的归约规则含一个或一个以上子前件,存储了语言单元匹配时应满足的条件;对于所述的每个子前件,都对应一个候选者队列,用于存储匹配此子前件的语言单元;所述的归约规则还包含一个后件,所存储的信息描述了规则被匹配后将产生的语言单元的全部或部分内容;当所述的语言单元与特定规则的特定子前件匹配时将之加入到此子前件对应的候选者队列中;在每个匹配子前件过程中,若此语言单元匹配的是某个具有n个子前件的规则的最末子前件,则运用遍历算法搜索各种语言单元组合,使得每个组合满足(a)第i个成员来自此规则的第i个子前件的候选者队列(1≤i≤n-1);(b)第n个成员为此语言单元;对于每个语言单元组合,都根据规则后件产生新的语言单元并通过输出手段输出。
该广义归约的方法的语言单元还包括指明该语言单元所代表的语言实体在文本中占据区域的文本区域,所述的归约规则为(a)在搜索语言单元组合时,每种语言单元组合的第i个语言单元的文本区域不重合于第i+1个语言单元且在其左侧(1≤i≤n-1);(b)得到的新的语言单元的文本区域,为对应语言单元组合中各语言单元的文本区域的叠加。
存储有实现上述广义归约方法的程序的计算机可读的存储介质,其主要特点是,所述的程序执行以下步骤
(1)由输入手段得到一个语言单元,所述的语言单元存储的信息描述了一段文字所对应的特定语言层次的语言实体;(2)将此语言单元与各归约规则的各子前件逐一进行匹配;所述的归约规则含一个或一个以上子前件,存储了语言单元匹配时应满足的条件;对于所述的每个子前件,都对应一个候选者队列,用于存储匹配此子前件的语言单元;所述的归约规则还包含一个后件,所存储的信息描述了规则被匹配后将产生的语言单元的全部或部分内容;当所述的语言单元与特定规则的特定子前件匹配时将之加入到此子前件对应的候选者队列中;在每个匹配子前件过程中,若此语言单元匹配的是某个具有n个子前件的规则的最末子前件,则运用遍历算法搜索各种语言单元组合,使得每个组合满足(a)第i个成员来自此规则的第i个子前件的候选者队列(1≤i≤n-1);(b)第n个成员为此语言单元;对于每个语言单元组合,都根据规则后件产生新的语言单元并通过输出手段输出。
该存储介质的语言单元还包括指明该语言单元所代表的语言实体在文本中占据区域的文本区域,所述的归约规则为(a)在搜索语言单元组合时,每种语言单元组合的第i个语言单元的文本区域不重合于第i+1个语言单元且在其左侧(1≤i≤n-1);(b)得到的新的语言单元的文本区域,为对应语言单元组合中各语言单元的文本区域的叠加。
由于采用了该发明的进行增量式广义归约的装置与方法,使得语言单元组合的最后一个元素被限定为刚输入系统的新语言单元,所以当前搜索的语言单元组合与上一次的必然不同,而且这种搜索方法不会遗漏组合,因而是增量式的,从而提高了搜索语言单元组合的效率,具有较好的实用性。


图1为本发明进行增量式广义归约的装置的功能结构框图。
图2为图1中装置的硬件结构框图。
图3为本发明的语言单元的结构框图。
图4为本发明的归约规则表的结构框图。
图5为本发明的候选者队列的结构框图。
图6为本发明的归约规则的子前件与候选者队列的关系示意图。
图7为增量式广义归约方法中主过程MainProc的流程图。
图8为被主过程MainProc调用、用于寻找语言单元组合以产生新语言单元的过程GenNewUnit流程图。
图9为被过程GenNewUnit调用、根据给定的语言单元栈产生新语言单元的过程Stk2Unit的流程图。
具体实施例方式
为了能够更清楚地理解本发明的技术内容,特举以下实施例详细说明。
请参阅图1所示,归约部件102通过输入部件101得到从外界输入的语言单元,根据归约规则表104,运用随后将描述的增量式广义归约的方法,将新得到的语言单元复制到候选者队列表105中的符合条件的候选者队列中;并在符合特定条件的情况下,在候选者队列表105中寻找符合特定条件的语言单元组合,由归约规则表104中特定的规则得到新的语言单元,将新语言单元由输出部件103输出到装置外。
再请参阅图2所示,处理器201执行随后将描述的增量式广义归约的程序,RAM 202提供了程序执行时所需要的存储区域;此外,还用于存储归约规则表104以及存储候选者队列表105,ROM 203存储进行增量式广义归约的程序,I/O接口204与输入部件101与输出部件103相连,输入部件101可以是键盘、OCR、接收器或者是储存有待处理语言单元的内存等。输出部件103可以是显示设备、打印机、网络接口或者是内存等。总线205联接以上各个部件。
所述的语言单元存储的信息描述了一段文字所对应的特定语言层次的语言实体;特别地,语言单元存储的信息以标记方式描述了一段文字所对应的特定语言层次的语言实体。
语言单元的实现方式有多种,比如1.用单个标记来表示语言实体的类属;2.用多个标记来表示语言实体在不同方面的类属,这些标记构成一个集合。
单标记是多数语言分析装置或软件在归约时都采用的方法,其好处是简单直接;多标记集合方法在功能合一文法等文本分析方法中采用。为了简便起见,本实施例采用单标记的实现方法。掌握计算机科学一般知识的技术人员,参照本实施例,不难将语言单元实现为多标记集合以实施本发明。
在实施时,可以选择语言单元是否包含文本区域信息以说明语言实体在文本中占据的区域。
如果不使用文本区域,则归约规则各子前件之间不存在位置关系的限定,这时的归约是无顺序归约。无顺序归约可被用于某些场合,比如对于某些语言的文本进行分析,比如拉丁文,各词汇的语法上的角色通过词格变化区分,而非词汇在句子中的位置;在语法要求不是很严格的情况下分析文本;或者对文本进行时间要求高但准确度要求不是很高的分析。
另一方面,如果使用文本区域,则归约规则各子前件之间存在位置关系的限定,这时的归约是有顺序归约。大部分自然语言,比如中文,英文等,都适用有顺序归约的方式。
本实施例采用有顺序归约的模式,所以语言单元中包含文本区域。掌握计算机科学一般知识的技术人员,参照本实施例,不难以无顺序归约方式实施本发明。
本实施例中语言单元所采用的结构请参见图3所示,由于是有顺序归约模式,每个语言单元301包含主体302与文本区域303;主体302包含标记304与辅助信息305。如果是无顺序归约模式,则语言单元301不包含文本区域303。
标记304用于标识不同的语言层次下的语言概念可以使用英语中的POS(Part of Speech)标记,也可以根据需要自行定义。如果本发明被实施为某个文本分析装置或软件的一个模块时,则采用此文本分析装置或软件给定的标记。
以下是一些标记的举例,供实施时参考

标记可以是相互平级的,即相互间不存在从属关系;也可以是有层次关系的。如果是平级的,在比较标记A与B时,判断A与B是否一致;如果是有层次关系的,则判断A是B的子类,还是B是A的子类,或者A与B无关。在本实施例中,标记相互间关系是平级的。
辅助信息305用于描述一些标记无法描述的信息,比如当语言单元表示一个单字时,用辅助信息存储这个单字的字符串形式;或者当语言单元表示一个词组时,用辅助信息存储这个词组的字符串形式。
文本区域303描述了语言单元所代表的语言实体在文本中占据的区域,可以实现为1.以数字对偶表示的区间,说明此区域在文本中的边界。比如,(3,10)表示文本的区域从标号为3的字符串开始到标号为10的字符串结束。
2.数字集合,说明哪些位置上的字符串属于此语言实体。
比如,{3,4,5,10}表示此语言实体覆盖标号为3、4、5、10的字符串。
在本实施例中,采用数字对偶的方式。
以下,结合若干实例对结构如图3的语言单元进行说明,标记及其含义见上面给出的标记示例1.语言单元(WRD,“中”,(3,3))标记为WRD,表示该语言单元代表的语言实体为一个单字;辅助信息为“中”,表示该单字为“中”;占据的文本区域只覆盖标号为3的字符串;2.语言单元(PHR,“中国”,(3,5))标记为PHR,表示该语言单元代表的语言实体为一个词组;辅助信息为″中国″,表示该词组为″中国″;占据的文本区域为(3,5);3.语言单元(V,NULL,(4,7))标记为V,表示该语言单元代表的语言实体为一个动词;辅助信息为空,表示语言单元未对此语言实体进一步描述;占据的文本区域为(4,7);归约规则表包含若干归约规则。单个归约规则的结构如图4所示。归约规则401包含前件402与后件403。前件402包含若干子前件(404,405,...,406)。
每个子前件存储了语言单元的匹配条件。子前件的实现方式有多种,可以1.表达为语言单元的主体,进行匹配时先检查标记一致性如果二者的标记不一致(标记系统为平级),或者语言单元不是子前件标记的子类或标记本身(标记系统为层次化)则不匹配。在标记匹配基础上,检查辅助信息一致性子前件辅助信息为空则匹配;子前件辅助信息不为空且语言单元与子前件的辅助信息不一致,二者仍不匹配。
2.或者表达为以集合形式存储的条件表达式,匹配时检查待匹配语言单元对于集合中所有条件表达式是否都满足。
本实施例采用以语言单元主体作为子前件内容的实现方式。
后件存储的信息描述了归约规则被匹配后将产生的语言单元的内容。在无顺序归约模式下,将要产生的语言单元,也就是主体在后件中进行描述。而在有顺序归约模式下,将要产生的语言单元的主体在后件中描述;而其文本区域可以不在后件中描述,而是交给后面部分提到的增量式广义归约方法来决定。
以下,结合实例说明归约规则1.归约规则<(WRD,“人”)>→(PHR,“人类”)子前件为(WRD,“人”);后件为(PHR,“人类”);该规则表示单字″人″归约成类属为″人类″的词组;2.归约规则<(N,NULL),(V,NULL)>→(EVT,NULL)子前件1为(N,NULL),子前件2为(V,NULL);后件为(EVT,NULL);该规则表示一个表示名词的语言实体,与一个表示动词的语言实体,归约成一个表示事件的语言实体。
候选者队列的结构如图5所示。一个候选者队列501包含若干语言单元(502,503,...,504)。在实现时,候选者队列可以采用多种方式,比如数组、链表、双向链表等。本实施例中,候选者队列实现为链表。
候选者队列与子前件的关系在实现时,可以采用多种方式,比如1.将所有的候选者队列集中起来。比如构造候选者队列表,表的每条记录包含规则标识,子前件标识与候选者队列;2.将候选者队列附着到各自的子前件。比如在子前件的数据结构中增加一个指向候选者队列的指针;或者将候选者队列作为成员加入子前件的数据结构或者类中,等等。
为了说明的方便,在本实施例中,采用的是候选者队列表的实现方式。掌握计算机科学一般知识的技术人员,参照本实施例,不难以候选者队列附着子前件方式实施本发明。
语言单元存入候选者队列的方法,可以采取多种方式,比如1.复制语言单元的全部数据作为候选者队列的成员到候选者队列中;2.复制语言单元的标识作为候选者队列的成员到候选者队列中,标识可以是系统给予每个语言单元的标号,或者语言单元数据结构的内存地址等。
在本发明给出的实施例中,采用复制语言单元的全部数据作为候选者队列的成员到候选者队列中的实现方式。如果采用保存语言单元标识的方法,则需要将语言单元存储到事先构造好的数据结构中,以便随后提到的归约方法能够访问。
如图6所示,对于每个归约规则,它的每个子前件都对应一个候选者队列。
增量式广义归约主过程MainProc将新的语言单元与各规则各子前件一一匹配,只要发现匹配就将之保存到此子前件对应的候选者队列中。如果匹配的是某个规则的最后一个子前件,则开始在此规则各有关候选者队列中进行增量式的语言单元组合的搜索。
主过程MainProc可供参考的一种实现步骤如下(参见图7)A01从输入部件101得到一个语言单元UA02得到归约规则表104的规则个数NA03令I=1A04如果I<=N,则转步骤A05,否则结束A05得到归约规则表的第I个规则R(I)A06得到R(I)的子前件个数SA07令J=1A08如果J<=S,则转步骤A09,否则转步骤A12A09得到R(I)的第J个子前件Pre(I,J)A10如果U匹配Pre(I,J),则转A13,否则转步骤A11A11J=J+1;转步骤A08A12I=I+1;转步骤A04A13在候选者队列表105中找到候选者队列Cand(I,J)A14将U加入Cand(I,J)队列尾A15如果J=S,则转步骤A16,否则转步骤A11
A16调用过程GenNewUnit(U,I,S),转步骤A12步骤A10所述的匹配是指语言单元符合规则子前件的要求。具体地,可以参考上文所述的子前件实现方式中所描述的匹配方式。
主过程调用遍历算法在特定规则的各有关候选者队列中寻找语言单元组合。在实施例中,即A16调用方法GenNewUnit来实现。为了保证搜索是增量式的,语言单元组合的最后一个元素被限定为刚输入系统的新语言单元。
有顺序归约模式相对于无顺序归约模式,在搜索语言单元组合时,多了一条限制,即语言单元组合中的每个成员与其后的成员,在文本区域上是互不重叠的,且前者在后者的左侧。如语言单元A的文本区域为(4,7),语言单元B的文本区域为(5,8),则A与B在文本区域上有公共部分,二者的位置关系为重叠。又比如,语言单元C的文本区域为(8,10),则A与C无重叠,而且A的右边界为7,仍小于C的左边界8,故而A在C的左侧。
方法GenNewUnit可供参考的一种实现步骤如下(参见图8)B01进行初始化,包括得到U在Cand(I,S)中的地址PU;堆栈Stk清空;将<S,PU>入栈StkB02读取Stk栈顶元素<X,Y>
B03将Y所指向的语言单元的文本区域赋值给YT,即令YT=Y->TxtRgnB04如果X>1转步骤B05,否则转步骤B11B05X=X-1B06将指针PC指向候选者队列Cand(I,X)的队尾B07如果PC到队首则转步骤B12,否则转步骤B08B08将PC所指向语言单元的文本区域赋值给CT,即令CT=PC->TxtRgnB09如果CT与YT不重叠且在YT左侧,则转步骤B18,否则转步骤B10B10指针PC向前移动一个单元,即令PC=PC->Prv;转步骤B07B11调用过程Stk2Unit(I,Stk)B12弹出Stk栈顶元素
B13如果栈Stk为空,则结束,否则转步骤B14B14读取Stk栈顶元素<X,Y>
B15如果Y到队首,则转步骤B12,否则转步骤B16B16指针Y向前移动一个单元,即令Y=Y->PrvB17<X,Y>入栈Stk;转步骤B02B18<X,*PC>入栈Stk;转步骤B02步骤B18的*PC表示PC所指向的语言单元。
步骤B11所调用的方法Stk2Unit用于由当前得到的语言单元组合,特定的后件产生新的语言单元并输出之。
方法Stk2Unit可供参考的一种实现步骤如下(参见图9)C01文本区域T0初始化C02将指针PS指向堆栈Stk底部C03如果PS到栈顶,则转步骤C06,否则转步骤C04C04得到PS所指向的栈中语言单元的文本区域T=PS->TxtRgnC05将PS所指向的栈中语言单元的文本区域叠加到T0,即令T0=T0∪T;转步骤C03C06创建语言单元U0C07将U0的文本区域设置为T0,即令U0。TxtRgn=T0C08得到第I个归约规则的后件Post(I)C09将Post(I)复制到语言单元U0的主体C10向输出接口输出U0步骤C05所述的文本区域的叠加操作,就是数学中区间或集合的“并”操作。比如,语言单元A文本区域(2,5),语言单元B为(4,6),则叠加的结果为A∪B=(2,6)如果对上述方法做如下修改1.去除B08、B09、B10;
2.让B07在为假时转B18;3.去除C04、C05、C07。
则此归约即为无顺序归约模式。
以上是增量式广义归约方法的一种实施方式。计算机科学领域的一般技术人员,不难根据本实施例,针对具体应用背景实施本发明。
进行增量式广义归约的方法可以用程序的形式存储在计算机可读的存储介质中,用于存储程序的存储介质可以是软盘、硬盘、光盘、磁光盘、CD-ROM、CD-R、磁带、非易失存储器或者易失存储器。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。
权利要求
1.一种广义归约的装置,其特征在于,所述装置包括(1)归约规则表的存储部件,用于存储归约规则;所述的归约规则包含一个或一个以上子前件,存储了语言单元匹配时应满足的条件;所述的归约规则还包含一个后件,所存储的信息描述了规则被匹配后将产生的语言单元的全部或部分内容;所述的语言单元存储的信息描述了一段文字所对应的特定语言层次的语言实体;(2)候选者队列的存储部件,用于存储匹配特定规则的特定子前件的语言单元;(3)归约部件,用于将由输入手段得到的语言单元,与各规则的各子前件逐一进行匹配,当所述的语言单元与特定规则的特定子前件匹配时将之加入到此子前件对应的候选者队列中;在每个匹配子前件过程中,若此语言单元匹配的是某个具有n个子前件的规则的最末子前件,运用遍历算法搜索各种语言单元组合,每个组合满足(a)第i个成员来自此规则的第i个子前件的候选者队列(1≤i≤n-1);(b)第n个成员为此语言单元;(4)输入部件,得到从外界输入的语言单元;(5)输出部件,将产生的新的语言单元输出;所述的输入部件的输出与所述的归约部件的输入相连,该归约部件的输出与所述的输出部件的输入相连,且该归约部件还分别与归约规则表的存储部件和候选者队列的存储部件相连;对于每个语言单元组合,都根据规则后件产生新的语言单元并通过输出部件输出。
2.根据权利要求1所述的广义归约的装置,其特征在于,所述的语言单元还包括指明该语言单元所代表的语言实体在文本中占据区域的文本区域;所述的归约装置为(a)在搜索语言单元组合时,每种语言单元组合的第i个语言单元的文本区域不重合于第i+1个语言单元且在其左侧(1≤i≤n-1);(b)得到的新的语言单元的文本区域,为对应语言单元组合中各语言单元的文本区域的叠加。
3.一种使用权利要求1所述的装置进行广义归约的方法,其特征在于,该方法包括以下步骤(1)由输入手段得到一个语言单元,所述的语言单元存储的信息描述了一段文字所对应的特定语言层次的语言实体;(2)将此语言单元与各归约规则的各子前件逐一进行匹配;所述的归约规则含一个或一个以上子前件,存储了语言单元匹配时应满足的条件;对于所述的每个子前件,都对应一个候选者队列,用于存储匹配此子前件的语言单元;所述的归约规则还包含一个后件,所存储的信息描述了规则被匹配后将产生的语言单元的全部或部分内容;当所述的语言单元与特定规则的特定子前件匹配时将之加入到此子前件对应的候选者队列中;在每个匹配子前件过程中,若此语言单元匹配的是某个具有n个子前件的规则的最末子前件,则运用遍历算法搜索各种语言单元组合,使得每个组合满足(a)第i个成员来自此规则的第i个子前件的候选者队列(1≤i≤n-1);(b)第n个成员为此语言单元;对于每个语言单元组合,都根据规则后件产生新的语言单元并通过输出手段输出。
4.根据权利要求3所述的广义归约的方法,其特征在于,所述的语言单元还包括指明该语言单元所代表的语言实体在文本中占据区域的文本区域,所述的归约规则为(a)在搜索语言单元组合时,每种语言单元组合的第i个语言单元的文本区域不重合于第i+1个语言单元且在其左侧(1≤i≤n-1);(b)得到的新的语言单元的文本区域,为对应语言单元组合中各语言单元的文本区域的叠加。
5.一种存储有实现权利要求3所述的广义归约方法的程序的计算机可读的存储介质,其特征在于,所述的程序执行以下步骤(1)由输入手段得到一个语言单元,所述的语言单元存储的信息描述了一段文字所对应的特定语言层次的语言实体;(2)将此语言单元与各归约规则的各子前件逐一进行匹配;所述的归约规则含一个或一个以上子前件,存储了语言单元匹配时应满足的条件;对于所述的每个子前件,都对应一个候选者队列,用于存储匹配此子前件的语言单元;所述的归约规则还包含一个后件,所存储的信息描述了规则被匹配后将产生的语言单元的全部或部分内容;当所述的语言单元与特定规则的特定子前件匹配时将之加入到此子前件对应的候选者队列中;在每个匹配子前件过程中,若此语言单元匹配的是某个具有n个子前件的规则的最末子前件,则运用遍历算法搜索各种语言单元组合,使得每个组合满足(a)第i个成员来自此规则的第i个子前件的候选者队列(1≤i≤n-1);(b)第n个成员为此语言单元;对于每个语言单元组合,都根据规则后件产生新的语言单元并通过输出手段输出。
6.根据权利要求5所述的存储介质,其特征在于,所述的语言单元还包括指明该语言单元所代表的语言实体在文本中占据区域的文本区域,所述的归约规则为(a)在搜索语言单元组合时,每种语言单元组合的第i个语言单元的文本区域不重合于第i+1个语言单元且在其左侧(1≤i≤n-1);(b)得到的新的语言单元的文本区域,为对应语言单元组合中各语言单元的文本区域的叠加。
全文摘要
本发明涉及一种广义归约的装置与方法,其装置包括归约规则表的存储部件、候选者队列的存储部件和归约部件,其方法包括由输入手段得到一个语言单元,所述的语言单元存储的信息描述了一段文字所对应的特定语言层次的语言实体;将此语言单元与各归约规则的各子前件逐一进行匹配,当匹配特定子前件时将之加入到此子前件对应的候选者队列中;若此语言单元匹配的是某个规则的最末子前件,则运用增量式的遍历算法搜索各种语言单元组合,根据规则后件产生新的语言单元并通过输出手段输出。采用了该装置与方法,使得当前搜索的语言单元组合与上一次的必然不同,不会遗漏组合,是增量式的,从而提高了搜索语言单元组合的效率,具有较好的实用性。
文档编号G06F17/27GK1645361SQ200510023588
公开日2005年7月27日 申请日期2005年1月26日 优先权日2005年1月26日
发明者刘健, 吴耿锋 申请人:上海大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1