CN103927298A - 一种基于计算机的自然语言句法结构解析方法和装置 - Google Patents
一种基于计算机的自然语言句法结构解析方法和装置 Download PDFInfo
- Publication number
- CN103927298A CN103927298A CN201410172114.4A CN201410172114A CN103927298A CN 103927298 A CN103927298 A CN 103927298A CN 201410172114 A CN201410172114 A CN 201410172114A CN 103927298 A CN103927298 A CN 103927298A
- Authority
- CN
- China
- Prior art keywords
- unit
- predicate verb
- syntactic structure
- predicate
- statement
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Machine Translation (AREA)
Abstract
本发明公开了一种基于计算机的自然语言句法结构解析方法和装置。本发明依据抽象代数、集合论、组合数学和计算语言学等学科的数学原理和相应的计算机技术,运用复合函数的数学思想,通过建立矩阵模型和线性模型来进行自然语言句法结构解析。所述方法较易于实现,且可以大幅度提高复合式句子结构解析的准确性。
Description
技术领域
本发明涉及计算机数据处理领域,具体涉及一种基于计算机的自然语言句法结构解析方法和装置。
背景技术
自然语言处理是计算机科学领域和人工智能领域中的一个重要方向。它研究能实现人与计算机之间使用自然语言进行有效通信的各种理论和方法。
句法结构解析是自然语言处理的一个重要方面,其通过计算机对自然语言语句的句子成分进行自动划分以辅助对于语句的进一步处理。现有的句法结构解析技术中,通常采用概率上下文无约束算法(Probabilistic Context Free Grammars,PCFG),其基于自然语言具有复杂嵌套性的特点,计算语句与句法结构解析结果的规则匹配概率,选取概率最大的句法解析结果作为最终的句法结构。
但是,该方法复杂度高,而且,对于复合式句子结构的解析准确性还亟待进一步提高。
发明内容
有鉴于此,本发明提供了一种基于计算机的自然语言句法结构解析方法和装置,既有较高的准确性,又较易于实现。
第一方面,提供一种基于计算机的自然语言句法结构解析方法,包括:
读取待解析的经预处理的语句数据结构,所述经预处理的语句数据结构中仅包括语句的关联词单元、谓语动词单元、名词代词单元,且各词单元按照在所述经预处理的语句中的顺序编号并标注类型;
对每一谓语动词单元,生成对应的引导语元素、主语元素、谓语元素和宾语元素;所述引导语元素的可能取值为编号小于对应的谓语动词单元编号的关联词单元之一,或空单元;所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一或空单元,或在前出现的谓语动词单元对应的句法向量之一;所述谓语元素为对应的所述谓语动词单元;所述宾语元素的可能取值为编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词代词单元之一,或在后出现的谓语动词单元对应的句法向量之一;
根据所述引导语元素、主语元素、谓语元素和宾语元素的可能取值,获取每一谓语动词单元对应的句法向量的所有可能取值,所述句法向量包括引导语元素、主语元素、谓语元素和宾语元素;
根据所有句法向量的所有可能取值生成至少一个句法结构可能矩阵解,所述句法结构可能矩阵解由按照谓语动词单元编号顺序排列的句法向量组成;
验证根据句法结构可能矩阵解得到的语句是否与所述经预处理的语句完全相同,如果完全相同,则将该句法结构可能矩阵解中的各句法向量作为句法结构解析结果之一。
优选地,生成对应的引导语元素包括:
当不存在编号小于对应的谓语动词单元编号的关联词单元时,所述引导语元素的可能取值为空单元;
当存在编号小于对应的谓语动词单元编号的关联词单元且其数量大于等于编号大于等于对应的谓语动词单元编号的谓语动词单元数量时,所述引导语元素的可能取值为编号小于对应的谓语动词单元编号的关联词单元之一;
当存在编号小于对应的谓语动词单元编号的关联词单元且其数量小于编号大于等于对应的谓语动词单元编号的谓语动词单元数量时,所述引导语元素的可能取值为编号小于对应的谓语动词单元编号的关联词单元之一,或空单元。
优选地,生成对应的主语元素包括:
当对应的谓语动词单元编号是最小的谓语动词单元编号时,所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一,或空单元;
当对应的谓语动词单元编号不是最小的谓语动词单元编号时,所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一,或在前出现的谓语动词单元对应的句法向量之一。
优选地,生成对应的宾语元素包括:
当对应的谓语动词单元编号是最大的谓语动词单元编号时,所述宾语元素的可能取值为编号大于对应的谓语动词单元编号的名词代词单元之一;
当对应的谓语动词单元编号不是最大的谓语动词单元编号时,所述宾语元素的可能取值为编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词代词单元之一,或在后出现的谓语动词单元对应的句法向量之一。
优选地,验证根据句法结构可能矩阵解得到的语句是否与所述经预处理的语句完全相同包括:
将同一词单元重复出现的句法结构可能矩阵解首先排除;
在剩余的句法结构可能矩阵解中,基于行向量的相互引用进行代入、偏加、插空操作,排除由于两个行向量彼此互相包含而无法进行代入操作的句法结构可能矩阵解,然后把由其他句法结构可能矩阵解经操作得到的语句与所述经预处理的语句比较,判断由对应的句法结构可能矩阵解经代入、偏加、插空操作之后获得的语句是否与经预处理的语句完全相同。
优选地,当出现如下五种情况时,将对应的句法结构可能矩阵解排除:
(1)有漏掉的词;
(2)顺序值或句法向量出现重位;
(3)出现了函数的代入交叉矛盾;
(4)存在两个位置逆反的顺序值;
(5)存在这样一个句法向量fj,找不到fj的明确位置,并且对于fj的每一个可以插空的空位,按照插空的方法对fj进行代入之后,全都存在两个位置逆反的顺序值。
优选地,利用词单元编号替代词单元进行代入、偏加、插空操作,然后基于获得的语句序列是否为顺序递增的数字序列判断是否与经预处理的语句完全相同。
优选地,在根据所有句法向量的所有可能取值,生成至少一个句法结构可能矩阵解,所述句法结构可能矩阵解由按照谓语动词单元编号顺序排列的句法向量组成;以及验证根据句法结构可能矩阵解得到的语句是否与所述经预处理的语句完全相同,如果完全相同,则将该句法结构可能矩阵解中的各句法向量作为句法结构解析结果之一这两个步骤中,利用与句法结构可能线性表达式解替代所述句法结构可能矩阵解;
所述句法结构可能线性表达式解与所述句法结构可能矩阵解等价;
所述句法结构可能线性表达式解包括由按照谓语动词单元编号顺序排列的句法向量表达式组成;每个所述句法向量表达式为对应的句法向量的引导语元素、主语元素、谓语元素、宾语元素按照顺序逐项偏加起来的表达式。
第二方面,提供一种基于计算机的自然语言句法结构解析装置,包括:
读取部件,用于读取待解析的经预处理的语句数据结构,所述经预处理的语句数据结构中仅包括语句的关联词单元、谓语动词单元、名词代词单元,且各词单元按照在所述经预处理的语句中的顺序编号并标注类型;
元素生成部件,用于对每一谓语动词单元,生成对应的引导语元素、主语元素、谓语元素和宾语元素;所述引导语元素的可能取值为编号小于对应的谓语动词单元编号的关联词单元之一,或空单元;所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一或空单元,或在前出现的谓语动词单元对应的句法向量之一;所述谓语元素为对应的所述谓语动词单元;所述宾语元素的可能取值为编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词代词单元之一,或在后出现的谓语动词单元对应的句法向量之一;
向量生成部件,用于根据所述引导语元素、主语元素、谓语元素、宾语元素的可能取值获取每一谓语动词单元对应的句法向量的所有可能取值,所述句法向量包括引导语元素、主语元素、谓语元素和宾语元素;
矩阵生成部件,用于根据所有句法向量的所有可能取值生成至少一个句法结构可能矩阵解,所述句法结构可能矩阵解由按谓语动词单元编号顺序排列的句法向量组成;
求解部件,用于验证根据句法结构可能矩阵解得到的语句是否与所述经预处理的语句完全相同,如果完全相同,则将该句法结构可能矩阵解中的各句法向量输出,并作为句法结构解析结果之一。
本发明依据抽象代数、集合论、组合数学和计算语言学等数学原理和相应的计算机技术,运用复合函数的数学思想,通过建立矩阵模型和线性模型来进行自然语言句法结构解析,所述方法较易于实现,且可以大幅度提高复合式句子结构解析的准确性。
附图说明
通过以下参照附图对本发明实施例的描述,本发明的上述以及其他目的、特征和优点将更为清楚,在附图中:
图1是本发明实施例的基于计算机的自然语言句法结构解析方法的流程图;
图2是本发明实施例的基于计算机的自然语言句法结构解析装置的示意图。
具体实施方式
以下基于优选实施例对本发明进行描述,但是本发明并不仅仅限于这些实施例。在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。为了避免混淆本发明的实质,公知的方法、流程、元件和电路并没有详细叙述。
依据抽象代数和计算语言学的理论,自然语言是词汇和标点符号集合上的自由幺半群。以下用英语为例进行说明,但是本领域技术人员容易理解,本发明的方法也适用于其他自然语言。
给定一个集合A,A上的符号串是由A中的元素邻接而成的,邻接时可以重复,形成一个有限长的线性阵列。例如:从集合{a,b,c},可以形成符号串acbaab。这个符号串包含a的三次出现,b的两次出现,c的一次出现,它不同于符号串acaabb。虽然每个符号的出现次数相同,但它们的次序不同。可见,符号串是有序的。特别地,长度为0的符号串是0符号串,记为e。由此,对于给定的有限的符号集合A,A上长度为n的符号串就是从自然数集N到A的一个映射:f:N→A。
从两个符号串出发,我们可以用邻接它们的办法构成新的符号串。例如,在符号串abac的右端邻接符号串bbac,便形成了新的符号串abacbbac。
这种邻接符号串的运算称为:毗连运算,简称为毗连。
给定长度为n的符号串φ和长度为m的符号串ψ,其中:
φ={(1,x1),(2,x2),(3,x3),……,(n-1,xn-1),(n,xn)};
ψ={(1,y1),(2,y2),(3,y3),……,(m-1,ym-1),(m,ym)};
φ与ψ的毗连记为:φ^ψ。它是长度为n+m且由集合{(1,x1),(2,x2),(3,x3),……,(n-1,xn-1),(n,xn),(n+1,y1),(n+2,y2),……,(n+m,ym)}给出的符号串。那么,毗连便是定义在符号串上的一种二元运算,运算的结果是得到一个新的符号串。
φ与ψ的毗连,还可省略毗连记号^,简化记为:φψ。
则有:φ^ψ=φψ。
毗连运算是可结合的,因为对于任何符号串φ,ψ,ω,有:
φ^(ψ^ω)=(φ^ψ)^ω
现有的每个英语单词和英文标点符号都定义成一个符号,那么S中所有单词和标点符号的集合A={a1,a2,a3,…,an}(n∈N)就是一个符号集。
任给的一个由英语单词和英文标点符号组成的有限长的符号串b1b2……bk(k∈N),称为词单元或连续词串。对于任给的一个词单元a=b1b2……bm(m∈N),称a是由A中元素组成的词单元,当且仅当,b1,b2,…,bm∈A。
长度为0的唯一的词单元称为空单元,记为e。
记由A中元素组成的全体词单元(连续词串)的集合为As,设语句S=a1a2a3……an,其中,an为构成语句的词单元。代数系统(As,^,e)是英语单词和标点符号集合A上的自由幺半群。
各词单元按照其在语句中的顺序依次排列,其下标为顺序编号,记T(α)为词单元α在句子S中的编号。
构造一个句法成分顺序映射ω,ω的条件如下:
(1)ω:(a1,a2,a3,……,an}→N,N为自然数集;
(2)对任意一个ai,ai∈S,都有:ω(ai)=T(ai)。
显然,ω是一个单映射。
同时,对于代数系统(As,^,e),定义二元关系<□:
对于As中任意的词单元α,β∈As,称α<□β,当且仅当α,β的编号T(a),T(β)满足:T(α)<T(β)。
依定义,二元关系<□满足如下条件:
(1)任给a∈As,都有a≮□a;
(2)对于任何a,b,c∈As,如果a<□b,则b≮□a;
(3)对于任何a,b,c∈As,如果a<□b且b<□c,则a<□c。
则依据严格偏序关系的定义,二元关系<□是严格偏序关系。
同时,在代数系统(As,^,e)上,定义一个新的二元运算+<。称+<为定义在As中的严格偏序关系<□上的偏加法运算,简称偏加,它满足如下特性:对于任何a,b∈As,如果a<□b,则有a+<b=a^b=ab。
我们可以确定:对于任何a,b∈As,如果a<□b,则有偏加法运算+<和毗连运算^等价。偏加法运算+<,可以看作是限制在严格偏序关系<□上的毗连运算。
任一自然语言的语句S都可以看作由每个词单元依据严格偏序关系<□连接而成的词串公式,即:S=a1+<a2+<a3+<…+<an。这一特点,对于展开数学处理非常有利。
在本发明中,将构成语句的词单元ai认定为常量。词单元ai具有其语言属性,构成核心句子结构的词单元可分为关联词单元、谓语动词单元、名词代词单元三种类型。每个词单元包括至少一个自然语言词汇,其可以是词、特定结构的短语或多个同属性词的并列。
对于关联词单元,其可以是引导从句的连接代词或连接副词、引导从句的连接短语和连接并列句的并列连词,对于典型的引导词列举如下:that,what,which,who,whom,wherever,whenever,whose,where,when,why,how,whoever,whichever,while,whether,because,before,after,whatever,whomever,as,if,once,until,though,unless,although,no matter what,no matter who,no matter whom,no matter which,in that,in order that,as though,as if,even though,even if,so that,and,but,or,so,yet等。其主要包括:由单词充当引导从句的关联词单元,由短语充当引导从句的关联词单元,连接并列句与并列句的关联词单元。
对于谓语动词单元,其也可以是动词或动词短语,例如,can do,do。谓语被定义为英语中一个自然句里的主要动作语。结构上通常由两个部分构成:辅助动词+实义动词(主系表结构除外)。谓语有时态和语态的格式要求,用计算语言学的公式定义如下:
对于名词代词单元,可以是:名词的孤立短语(不包含在介宾短语中的名词短语),名词化的动词短语(名词化的动词短语定义:具有名词性质的、可以充当主语或宾语这类名词性句法成分的动词短语,包括:不定式短语和动名词短语两大类),可以单独使用的代词。名词代词单元举例如下:food,wolf,the men,me,it,this,to do等。
名词化的动词短语有格式要求,用计算语言学的公式定义如下:
1 | To+VB | 7 | RB+To+VB |
2 | To+VB+VBN | 8 | RB+To+VB+VBN |
3 | To+VB+VBN+VBN | 9 | RB+To+VB+VBN+VBN |
4 | VBG | 10 | RB+VBG |
5 | VBG+VBN | 11 | RB+VBG+VBN |
6 | VBG+VBN+VBN | 12 | RB+VBG+VBN+VBN |
自然语言语句的分句的定义如下:分句就是简单句,即自然语言的最基础句式。一个分句,就是一套主谓搭配结构。
以上三类词单元构成自然语言语句分句的主干,其中,谓语动词单元充当谓语,而名词代词单元充当主语或宾语。
在本发明中,定义变量为x,y,z,其中x为引导语元素,y为主语元素,z为宾语元素,同时,记r为谓语元素,则每一个语句中的主谓搭配结构可以表示为:
f=f(x,y,r,z)=x+<Λ+<y+<σ+<r+<ρ+<z+<μ
其中,Λ,σ,ρ,μ分别表示x,y,r,z之外的任何一种成分或标点符号,简称为杂质,通过现有的语句预处理技术可以将杂质除去。可以将除去杂质后的函数f(x,y,r,z)=x+<y+<r+<z用向量(x,y,r,z)的方式表示。
引导语元素x为简单句的一个成分:简单句为从句时,引导语元素为引导从句的连接代词或连接副词、引导从句的连接短语;简单句为并列句时,引导语元素为将该并列句与在前的其他并列句连接的并列连词。即,在一个简单句中,引导语元素x为由关联词单元构成的、用于引导后续简单句的句法成分。
进而,语句S可以用矩阵形式表达,即:
当一个函数fj充当另一个函数fk的主语元素或宾语元素时,例如:当fk=x+<y+<r+<fj或fk=x+<fj+<r+<y时,称fk是经过复合运算而得到。在本发明中复合运算记为f(f)。
由于函数f从整体上看也是词单元,所以偏加运算适用于函数。如果函数fi、fj满足fi<□fj,且另一个函数fk可以表达为fi和fj的偏加即fk=fi+<fj,称fk经过偏加运算而得到的。
每一个不省略谓语动词的英文语句S都可以看作是由n个函数f1,……,fn(n等于谓语动词单元数量)经过有限次的复合和偏加运算而得到的。据此,可以将任何一个不省略谓语的英文语句S记为:
也即,任何一个不省略谓语的英文语句由包括引导语元素、主语元素、谓语元素或宾语元素的向量经复合或偏加运算获得。接下来,就面临为英文自然句S选取一种合理表达式的问题。这种表达式,必须能够恰到好处地表明S中所包含的一切复合和偏加运算。矩阵形态恰好具备这样的条件,它能将函数的复合运算用某一行向量中元素的位置来体现,例如:fk(fj)=fk(xk,fj,rk,zk),就表明fk与fj二者之间的复合运算关系;同时,又没有破坏元素之间的偏加关系:fk=xk+<fj+<rk+<zk。综上,为了准确、直观、清楚地表达英文自然句S,为了更好地揭示自然句S的内在数理结构,我们采用矩阵作为自然句S的首要表达式。
同时,还可以利用线性形式来表达语句S,即:
特别强调:
①每一个不省略谓语的英文自然句S的线性表达式都包含了有限次的偏加运算和复合运算。本文采用线性表达式作为自然句S的补充表达式。
②本发明的矩阵表达式和线性表达式之间是等价关系。
③一个英文自然句S的线性表达式,同时也天然地是一个以函数f1,……,fn(n等于谓语动词单元数量)为未知量的线性方程组,因此,本文接下来的用代入法求得句法结构解析结果的过程,也自然地可以看作是求解这个以函数f1,……,fn(n等于谓语动词单元数量)为未知量的线性方程组的过程。
通过预处理,可以除去语句中的杂质,并标注和识别语句中的词单元编号和类型。例如,对于英语语句S=“I can completely understandwhat what you just said really meant”,其除去杂质后得到的语句S=“I can understand what what you said meant”,在对其进行词单元识别以及词单元类型标注和编号后,可以得到与下表匹配的数据结构。
语句 | 词单元类型 | 编号 |
I | 名词代词单元 | 1 |
can understand | 谓语动词单元 | 2 |
what A | 关联词单元 | 3 |
what B | 关联词单元 | 4 |
you | 名词代词单元 | 5 |
said | 谓语动词单元 | 6 |
meant | 谓语动词单元 | 7 |
本发明基于对以上数据结构所表示的经预处理的语句进行句法分析,以获得各词单元在句子中的成分关系。
图1是本发明实施例的基于计算机的自然语言句法结构解析方法的流程图。如图1所示,所述方法包括:
步骤110、读取待解析的经预处理的语句数据结构,所述经预处理的语句数据结构中仅包括语句的关联词单元、谓语动词单元和名词代词单元,且各词单元按照在所述经预处理的语句中的顺序进行编号并标注类型。
步骤120、对每一谓语动词单元,生成对应的引导语元素、主语元素、谓语元素和宾语元素;所述引导语元素的可能取值为编号小于对应的谓语动词单元编号的关联词单元之一,或空单元;所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一或空单元,或在前出现的谓语动词单元对应的句法向量之一;所述谓语元素为对应的所述谓语动词单元;所述宾语元素的可能取值为编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词代词单元之一,或在后出现的谓语动词单元对应的句法向量之一。
具体地,对于经预处理的语句,设其谓语动词单元总数量为n,由于谓语动词单元仅能作为谓语,因此,每个谓语动词单元均对应一个谓语元素,记每个谓语动词单元为rk,k=1,……,n。
在获得谓语元素后,继续基于每个谓语元素的位置编号生成对应的引导语元素、主语元素、宾语元素。
I、引导语元素
记每个谓语动词单元rk对应的关联词单元集合为:
{Leadk}={Lead|T(Lead)<T(rk)},将集合{Leadk}的元素个数记为|Leadk|。
同时,记谓语动词单元rk对应的引导语元素为xk,其可能取值集合为{xk}。生成谓语动词单元rk对应的引导语元素为xk的可能取值集合优选包括:
(1)当不存在编号小于对应的谓语动词单元编号的关联词单元时,所述引导语元素的可能取值为空单元。
也即,当即,|Leadk|=0时,{xk}={e};xk=e。
(2)当存在编号小于对应的谓语动词单元编号的关联词单元且其数量大于等于编号大于等于对应的谓语动词单元编号的谓语动词单元数量时,所述引导语元素的可能取值为编号小于对应的谓语动词单元编号的关联词单元之一。
也即,当|Leadk|≥n-k+1时,{xk}={Leadk},xk∈{Leadk}
(3)当存在编号小于对应的谓语动词单元编号的关联词单元且其数量小于对应的谓语动词单元编号的谓语动词单元数量时,所述引导语元素的可能取值为编号小于对应的谓语动词单元编号的关联词单元之一,或空单元。
也即,当|Leadk|≠0,且|Leadk|<n-k+1时,{xk}={Leadk}∪{e},xk∈{Leadk}∪{e}。
例如,对于上述表1所示的经预处理的语句S=“I can understandwhat what you said meant”,有:
r1=“can understand”,对于r1有|Lead1|=0,因此,{x1}={e},也即,与r1对应的引导元素的可取值为空单元。
r2=“said”,对于r2有|Lead2|=2,此时,n-k+1=2,有|Lead2|≥2,因此,{x2}={Lead2}={what A,what B},与r2对应的引导元素的可取值为句中第一个what或第二个what,即,“what A”和“what B”之一。
r3=“meant”,对于r3有|Lead3|=2,此时,n-k+1=1,有|Lead3|≥1,因此,{x3}={Lead3}={what A,what B},与r3对应的引导元素的可取值为句中第一个what或第二个what,即,“what A”和“what B”之一。
II、主语元素
记每个谓语动词单元rk对应的主语名词代词单元集合为{NPUk}={NPU|T(NPU)<T(rk)}。
同时,记谓语动词单元rk对应的主语元素为yk,其可能取值集合为{yk}。
生成对应的主语元素yk优选包括:
(1)当对应的谓语动词单元编号为最小的谓语动词单元编号时,所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一,或空单元。
也即,当不存在rθ(θ∈N),使得θ<k时,{yk}={NPUk}∪{e}。
(2)当对应的谓语动词单元编号不为最小的谓语动词单元编号时,所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一,或在前出现的谓语动词单元对应的句法向量之一。
也即,当存在rθ(θ∈N),使得θ<k时,{yk}={NPUk}∪{fyk},其中,{fyk}={ft|t<k}∪{e}。
例如,对于上述表1所示的经预处理的语句S=“I can understandwhat what you said meant”,有:
r1=“can understand”,对于r1有其为编号最小的谓语动词单元,因此,{y1}={NPU1}={I,e}。
r2=“said”,对于r2有其并非编号最小的谓语动词单元,在r1和r2之间的名词代词单元仅有“you”,而编号小于2的函数为f1,因此,{y2}={NPU2}∪{fy2}={I,you}∪{f1,e}。
r3=“meant”,对于r3其并非编号最小的谓语动词单元,在r2和r3之间没有名词代词单元,而编号小于3的函数为f1和f2,因此,有:{y3}={NPU3}∪{fy3}={I,you}∪{f1,f2,e}。
III、宾语元素
记每个谓语动词单元rk对应的宾语名词代词单元集合为{NPBk}={NPB|T(rk)<T(NPB)<T(rk+1)}。
同时,记谓语动词单元rk对应的引导语元素为zk,其可能取值集合为{zk}。
生成对应的宾语元素{zk}优选包括:
(1)当对应的谓语动词单元编号为最大的谓语动词单元编号时,所述宾语元素的可能取值为编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词代词单元之一。
也即,当不存在rθ(θ∈N),使得k<θ时,{zk}={NPBk}。
(2)当对应的谓语动词单元编号不为最大的谓语动词单元编号时,所述宾语元素的可能取值为编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词代词单元之一,或在后出现的谓语动词单元对应的句法向量之一。
也即,当存在rθ(θ∈N),使得k<θ时,{zk}={NPBk}∪{fzk},其中,{fzk}={ft|t>k}∪{e}。
例如,对于上述表1所示的经预处理的语句S=“Ican understandwhat what you said meant”,有:
r1=“can understand”,对于r1有其不是编号最大的谓语动词单元,在r1和r2之间存在名词代词单元“you”,而编号大于1的函数为f2,f3,因此,{z1}={NPB1}∪{fz1}={you}∪{f2,f3,e}。
r2=“said”,对于r2其并非编号最大的谓语动词单元,在r2和r3之间没有名词代词单元,而编号大于2的函数为f3,因此,有:
{z2}={NPB2}∪{fz2}={f3,e}。
r3=“meant”,对于r3其为编号最大的谓语动词单元,在r3之后没有名词代词单元,而编号大于3的函数也不存在,因此,{x3}={NPU3}={e}。
由此,经由步骤120处理,对于上述示例,可以生成得到各元素的取值集合。
步骤130、根据所述引导语元素、主语元素、谓语元素、宾语元素的可能取值,获取每一谓语动词单元对应的句法向量的所有可能取值,所述句法向量包括引导语元素、主语元素、谓语元素、宾语元素。
如前所述,每一个主谓搭配结构可以用句法向量的方式来表示。根据步骤120的运行结果,对于上述表1所示的经预处理的语句S=“I canunderstand what what you sai d meant”,有:
{r1}={can understand}
{x1}={e}
{y1}={I,e}
{z1}={you,f2,f3,e}
因此,f1(x1,y1,r1,z1)=(见下方列表)
序号 | 行矩阵f1 |
(1-1) | f1=(e,I,r1,you) |
(1-2) | f1=(e,I,r1,fz1) |
(1-3) | f1=(e,e,r1,you) |
(1-4) | f1=(e,e,r1,fz1) |
注:用fz1替代{f2,f3,e}
{r2}={said}
{x2}={what A,what B}
{y2}={I,you,f1,e}
{z2}={f3,e}
因此,f2(x2,y2,r2,z2)=(见下方列表)
序号 | 行矩阵f2 |
(2-1) | f2=(whatA,I,r2,fz2) |
(2-2) | f2=(what A,you,r2,fz2) |
(2-3) | f2=(whatA,fy2,r2,fz2) |
(2-4) | f2=(whatB,I,r2,fz2) |
(2-5) | f2=(what B,you,r2,fz2) |
(2-6) | f2=(what B,fy2,r2,fz2) |
注:用fy2替代{f1,e};用fz1替代{f3,e}。
{r3}={meant}
{x3}={what A,what B}
{y3}={I,you,f1,f2,e}
{z3}={e}
因此,f3(x3,y3,r3,z3)=(见下方列表)
序号 | 行矩阵f3 |
(3-1) | f3=(whatA,I,r3,e) |
(3-2) | f3=(whatA,you,r3,e) |
(3-3) | f3=(what A,fy3,r3,e) |
(3-4) | f3=(what B,I,r3,e) |
(3-5) | f3=(what B,you,r3,e) |
(3-6) | f3=(what B,fy3,r3,e) |
注:用fy3替代{f1,f2,e}。
步骤140、根据所有句法向量的所有可能取值生成至少一个句法结构可能矩阵解,所述句法结构可能矩阵解由按照谓语动词单元编号顺序排列的句法向量组成。
对于上述表1所示的经预处理的语句S=“I can understand whatwhat you said meant”基于f1,f2和f3的可能取值,可以获得多个可能矩阵解。
步骤150、验证根据句法结构可能矩阵解得到的语句是否与所述经预处理的语句完全相同,如果完全相同,则将该句法结构可能矩阵解中的各句法向量输出,并作为句法结构解析结果之一。
优选地,利用词单元编号替代词单元进行代入、偏加、插空操作,然后基于获得的语句序列是否为顺序递增的数字序列判断是否与经预处理的语句完全相同。
步骤150可以包括如下步骤:
步骤151、将同一词单元重复出现的句法结构可能矩阵解排除。
例如,对于如下的可能矩阵解
编号为5的词单元出现了两次,由此可以确定该可能矩阵解不正确。因此将其预先排除。由此,可以大幅降低后续需要进行代入、偏加、插空操作的可能矩阵解的数量,降低运算负担。
步骤152、在剩余的句法结构可能矩阵解中,基于行向量的相互引用进行代入、偏加、插空操作,将不能得到完整语句的句法结构可能矩阵解排除,并将得到的语句与所述经预处理的语句比较,判断由对应的句法结构可能矩阵解经代入、偏加、插空操作获得的语句是否与经预处理的语句完全相同。
如果代入之后出现下列五种情况中的一种或多种,则视为不合理,不能生成数学自然解,不能成为解析结果:
(1)不能有漏掉的词。
(2)顺序值或函数出现重位。
其在上已经描述,不再赘述。
(3)出现了函数的代入交叉矛盾:
具体地,对于上述的示例,有:
一个句法结构可能矩阵解为:
对上述矩阵进行代入,f2和f3出现了函数的代入交叉矛盾。代入得到:f2=3+<e+<6+<(4+<f2+<7+<e)。等式左右两端同时出现了f2,这就出现了的逻辑矛盾。因此,上述矩阵不能生成数学自然解,不能成为解析结果。
(4)按照从左至右的顺序,存在两个位置逆反的顺序值。
这是既数学处理的根本要求,也是定义在严格偏序关系<□上的偏加法运算的本质要求。
具体地,对于上述的示例,有:
一个句法结构可能矩阵解为:
对其进行代入后,得到顺序为(1,2,4,5,6,3,7),出现逆序,因此上述矩阵不能生成数学自然解,不能成为解析结果。
(5)存在这样一个句法向量fj:找不到fj的明确位置,并且对于fj的每一个可以插空的空位,按照插空的方法对fj进行二次代入之后,全都存在两个位置逆反的顺序值;即,fj不存在合理的二次代入。
例如,对于如上所述的示例,一个句法结构可能矩阵解为:
将上述矩阵转化为线性表达式得到:
对于上述线性表达式运用代入法消去未知量:f1找不到明确位置,则按照插空的方法进行二次代入。
容易算出:f1相对于其他两个函数,总共有10个可以安排的空位:(展开如下)
空位A:f1+<(3+<e+<6+<e):
进行二次代入,出现了位置逆反的顺序值:<5,3>;
空位B:3+<f1+<e+<6+<e:
进行二次代入,出现了位置逆反的顺序值:<3,1>等;
空位C:3+<e+<f1+<6+<e::
进行二次代入,出现了位置逆反的顺序值:<3,1>等;
空位D:3+<e+<6+<f1+<e:
进行二次代入,出现了位置逆反的顺序值:<3,1>等;
空位E:3+<e+<6+<e+<f1:
进行二次代入,出现了位置逆反的顺序值:<3,1>等;
空位F:f1+<(4+<e+<7+<e):
进行二次代入,出现了位置逆反的顺序值:<5,4>等;
空位G:4+<f1+<e+<7+<e:
进行二次代入,出现了位置逆反的顺序值:<4,1>等;
空位H:4+<e+<f1+<7+<e::
进行二次代入,出现了位置逆反的顺序值:<4,1>等;
空位I:4+<e+<7+<f1+<e:
进行二次代入,出现了位置逆反的顺序值:<4,1>等;
空位J:4+<e+<7+<e+<f1:
进行二次代入,出现了位置逆反的顺序值:<4,1>等;
综上,对于f1的每一个可以插空的空位,按照插空的方法对f1进行二次代入之后,全都存在两个位置逆反的顺序值;即,f1不存在合理的二次代入。则上述矩阵不能生成数学自然解,不能成为解析结果。
如果经代入、偏加、插空操作得到的语句与经预处理的语句完全相同,则将该句法结构可能矩阵解中的各句法向量输出,并作为句法结构解析结果之一。
对于如上所述的示例,一个句法结构可能矩阵解为:
可以将矩阵转换为线性表达式:
进行复合操作得到语句:
Ω=e+<1+<2+<(3+<(4+<5+<6+<e)+<7+<e)
去掉空单元e,得到:
Ω=1+<2+<(3+<(4+<5+<6)+<7)
它与预处理后的语句相同,该嵌套结构是句法结构解析结果之一。将词单元常量代入上述矩阵,则句法结构矩阵解可以表达为:
与这个矩阵表达式相对应的S的线性表达式如下:
据此,解析句子“I can understand what what you said meant”其句法结构为:I作为主句的主语,can understand作为主句的谓语,从句“what what you sai d meant”作为主句的宾语从句,在该从句中,第一个what为从句引导词,“what you said”为从句的主语,meant为宾语从句的谓语,宾语从句本身没有宾语;对于“what you said”从句,它充当了宾语从句里嵌套的主语从句,what为引导词,you为主语,said为谓语。
必要时,还可以转入修正步骤,以便对两个以上的句法结构解析结果进行修正,具体包括如下操作:
(1)名词代词单元充当主语和宾语的重检和取舍。
(2)运用语言规则对句法结构进行检查。举例:
①依据英文句法结构规律,主语从句的引导词不能省略。
引导主语从句的that不能省略;
②依据英文句法结构规律,主语在人称和数量上要与谓语保持一致;
③依据动词的及物和不及物性质,判定其后是否连接宾语。
(3)结构歧义的重新检查检和排除。
(4)倒装、省略、there be作为特殊情形对待。
(5)将抽出的成分放回。
(6)生成并输出最终解。
通过修正可以克服部分语句结构不规范的问题提高解析准确度。
优选地,可以根据解析结果将句法结构形成句法树数据结构。
作为另一示例,以下说明本实施例的方法对于例如:“John is adoctor,and Tom i s a teacher.”这样的并列结构的语句的解析过程。
上述语句经过预处理除去杂质并编号后的词序列表为:
原句短语 | 短语类型 | 顺序编号 |
John | 名词代词单元 | 1 |
is | 谓语动词单元 | 2 |
a doctor | 名词代词单元 | 3 |
and | 关联词单元 | 4 |
Tom | 名词代词单元 | 5 |
is | 谓语动词单元 | 6 |
a teacher | 名词代词单元 | 7 |
对于r1有{r1}={is}
{x1}={e}(e是空字符串)
{y1}={John,e}
{z1}={a doctor,Tom,fz1}
其中,fz1={f2,e}
f1(x1,y1,r1,z1)=(见下方列表)
序号 | 行矩阵f1 |
(1-1) | f1=(e,John,r1,a doctor) |
(1-2) | f1=(e,John,r1,Tom) |
(1-3) | f1=(e,John,r1,fz1) |
(1-4) | f1=(e,e,r1,adoctor) |
(1-5) | f1=(e,e,r1,Tom) |
(1-6) | f1=(e,e,r1,fz1) |
对于r2有{r2}={is}
{x2}={and}(e是空字符串)
{y2}={John,a doctor,Tom,fy2},其中fy2={f1,e}
{z2}={a teacher}
f2(x2,y2,r2,z2)=(见下方列表)
序号 | 行矩阵f2 |
(2-1) | f2=(and,John,r2,ateacher) |
(2-2) | f2=(and,a doctor,r2,ateacher) |
(2-3) | f2=(and,Tom,r2,a teacher) |
(2-4) | f2=(and,fy2,r2,a teacher) |
由此,基于上述行向量,可以产生6×4=24个2×4的句法结构可能矩阵解。按照本实施例所述方法进行筛选和代入求解后,可以获得最终解析解的矩阵为:
将这个矩阵转化为线性表达式:
去掉e得:
作为另一示例,以下说明本实施例的方法对于例如:“That men whowere appointed didn′t bother the l iberal s wash′t remarked upon bythe press.”这样的复杂结构的语句的解析过程。
上述语句经过预处理除去杂质并编号后的词序列表为:
原句短语 | 短语类型 | 顺序编号 |
That | 关联词单元 | 1 |
men | 名词代词单元 | 2 |
who | 关联词单元 | 3 |
were appointed | 谓语动词单元 | 4 |
didn′t bother | 谓语动词单元 | 5 |
the liberals | 名词代词单元 | 6 |
wasn′t remarked | 谓语动词单元 | 7 |
该句共有两个谓语动词单元,分别记为r1、r2和r3。
对于r1有,{r1}={were appointed}
{x1}={That,who,e}(e是空字符串)
{y1}={rmen,e}
{z1}={fz1}其中,fz1={f2,f3,e}
运用组合数学中的乘法原理:
f1(x1,y1,r1,z1)=(见下方列表)
序号 | 行矩阵f1 |
(1-1) | f1=(That,men,r1,fz1) |
(1-2) | f1=(who,men,r1,fz1) |
(1-3) | f1=(e,men,r1,fz1) |
(1-4) | f1=(That,e,r1,fz1) |
(1-5) | f1=(who,e,r1,fz1) |
(1-6) | f1=(e,e,r1,fz1) |
对于r2有,{r2}={didn′t bother}
{x2}={That,who,e}(e是空字符串)
{y2}={men,fy2},其中fy2={f1,e}
{z2}={the liberals,fz2},其中,fz2={f3,e}
f2(x2,y2,r2,z2)=(见下方列表)
序号 | 行矩阵f2 |
(2-1) | f2=(rhat,men,r2,the liberals) |
(2-2) | f2=(who,men,r2,the liberals) |
(2-3) | f2=(e,men,r2,the liberals) |
(2-4) | f2=(That,men,r2,fz2) |
(2-5) | f2=(who,men,r2,fz2) |
(2-6) | f2=(e,men,r2,fz2) |
(2-7) | f2=(That,fy2,r2,the liberals) |
(2-8) | f2=(who,fy2,r2,the liberals) |
(2-9) | f2=(e,fy2,r2,the liberals) |
(2-10) | f2=(That,fy2,r2,fz2) |
(2-11) | f2=(who,fy2,r2,fz2) |
(2-12) | f2=(e,fy2,r2,fz2) |
对于r3有:{r3}={wasn′t remarked}
{x3}={That,who,e}
{y3}={men,the liberals,fy3}
{z3}={e}
f3(x3,y3,r3,z3)=(见下方列表)
序号 | 行矩阵f3 |
(3-1) | f3=(That,men,r3,e) |
(3-2) | f3=(who,men,r3,e) |
(3-3) | f3=(e,men,r3,e) |
(3-4) | f3=(That,the liberals,r3,e) |
(3-5) | f3=(who,the liberals,r3,e) |
(3-6) | f3=(e,the liberals,r3,e) |
(3-7) | f3=(That,fy3,r3,e) |
(3-8) | f3=(who,fy3,r3,e) |
(3-9) | f3=(e,fy3,r3,e) |
依据f1、f2和f3的各种可能取值组合获得多个句法结构可能矩阵解,对所有的句法结构可能矩阵解运行矩阵重叠位检查、矩阵代入求解、结构修正等步骤,可得到作为句法结构解析最终结果的可能矩阵解:
将这个矩阵转化为线性表达式:
去掉e得:
由此,得到对于上述语句示例的正确解析,即:f3是主句,也就是核心句;f2是f3的主语,即主语从句;f1是定语从句,修饰men。
本示例可以较好地显示本方法的优越性。针对上述语句,当前计算机行业公认的两种世界上非常先进的自然语言句法结构解析装置一伯克利解析器(Berkeley Parser)和斯坦福解析器(Stanford Parser),至本申请递交之时,给出的依然是错误的解析结果。这两种装置给出的结果是完全相同的。其结果如下:
①That men didn′t bother;
②who were appointed;
③the liberals wasn′t remarked upon by the press.
①是主句,也就是核心句;③是①的宾语,即,宾语从句;②是定语从句,修饰men;That是限定词,修饰men。
在英语当中,如果主语从句位于全句句首,而且由that引导,则that不可以省略,即便口语也是如此。在本发明的方法中,由于将句子处理为句法向量,因此就为主语从句That men didn′t bother theliberals这一部分,在解析的过程中预留了充分的空间,充分地保护了其作为一个完整分句而生成的可能性。
对于that引导的主语从句的解析经常出错这一重大技术漏洞,至本申请递交之时,上述两种世界领先的自然语言句法结构解析装置仍然没能弥补。
本发明侧重于解决自然语言中的复合式句子结构的准确解析问题。本发明的最大特点在于:①充分利用了复合函数的性质;②采用矩阵模型和线性模型描述句法公式;③运用组合数学的相关原理生成矩阵模型。运用本发明,可以提高自然语言句法结构解析的准确率。
从数学的角度看,自然语言带有离散性特点,而这正是句法结构解析处理上的难点。本发明通过将句法向量与矩阵形式进行有效结合,既没有破坏句子结构的完整性,又不妨碍分析每一句之中的内在成分及词句之间的关系。本发明采用矩阵模型和线性模型刻画句子公式,这既符合自然语言的离散性特点,又有效地揭示了句法结构上的信息关联。
在生成矩阵的过程中,本发明运用了组合数学的相关原理生成全部矩阵,然后再逐一排除,最终获得至少一个可能的正确的句法结构解析结果。在这一过程中,只需要用到数学原理和信息编码,不涉及英语本身的语言信息。
同时,本发明结合计算机的计算能力,需要进行大量的数学运算,才能完成。
综上,本发明依据抽象代数、集合论、组合数学和计算语言学等数学原理和相应的计算机技术,运用复合函数的数学思想,通过建立矩阵模型和线性模型来进行自然语言句法结构解析,所述方法较易于实现,且可以大幅度提高复合式句子结构解析的准确性。
图2是本发明实施例的基于计算机的自然语言句法结构解析装置的示意图。如图2所示,所述装置包括读取部件21、元素生成部件22、向量生成部件23、矩阵生成部件24、求解部件25。
读取部件21用于读取待解析的经预处理的语句数据结构,所述经预处理的语句数据结构中仅包括语句的关联词单元、谓语动词单元、名词代词单元,且各词单元按照在所述经预处理的语句中的顺序编号并标注类型。
元素生成部件22用于对每一谓语动词单元,生成对应的引导语元素、主语元素、谓语元素和宾语元素;所述引导语元素的可能取值为编号小于对应的谓语动词单元编号的关联词单元之一,或空单元;所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一或空单元,或在前出现的谓语动词单元对应的句法向量之一;所述谓语元素为对应的所述谓语动词单元;所述宾语元素的可能取值为编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词代词单元之一,或在后出现的谓语动词单元对应的句法向量之一。
向量生成部件23用于根据所述引导语元素、主语元素、谓语元素、宾语元素的可能取值,获取每一谓语动词单元对应的句法向量的所有可能取值,所述句法向量包括引导语元素、主语元素、谓语元素、宾语元素;
矩阵生成部件24用于根据所有句法向量的所有可能取值,生成至少一个句法结构可能矩阵解,所述句法结构可能矩阵解由按照谓语动词单元编号顺序排列的句法向量组成。
求解部件25用于验证根据句法结构可能矩阵解得到的语句是否与所述经预处理的语句完全相同,如果完全相同,则将该句法结构可能矩阵解中的各句法向量输出,并作为句法结构解析结果之一。
由此,本发明依据抽象代数、集合论、组合数学和计算语言学等数学原理和相应的计算机技术,运用复合函数的数学思想,通过建立线性表达式和矩阵模型来进行自然语言句法结构解析,所述方法较易于实现,且可以大幅度提高复合式句子结构解析的准确性。
以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域技术人员而言,本发明可以有各种改动和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种基于计算机的自然语言句法结构解析方法,包括:
读取待解析的经预处理的语句数据结构,所述经预处理的语句数据结构中仅包括语句的关联词单元、谓语动词单元、名词代词单元,且各词单元按照在所述经预处理的语句中的顺序进行编号,并标注类型;
对每一谓语动词单元,生成对应的引导语元素、主语元素、谓语元素和宾语元素;所述引导语元素的可能取值为编号小于对应的谓语动词单元编号的关联词单元之一,或空单元;所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一或空单元,或在前出现的谓语动词单元对应的句法向量之一;所述谓语元素为对应的所述谓语动词单元;所述宾语元素的可能取值为编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词代词单元之一,或在后出现的谓语动词单元对应的句法向量之一;
根据所述引导语元素、主语元素、谓语元素和宾语元素的可能取值,获取每一谓语动词单元对应的句法向量的所有可能取值,所述句法向量包括引导语元素、主语元素、谓语元素和宾语元素;
根据所有句法向量的所有可能取值,生成至少一个句法结构可能矩阵解,所述句法结构可能矩阵解由按照谓语动词单元编号顺序排列的句法向量组成;
验证根据句法结构可能矩阵解得到的语句是否与所述经预处理的语句完全相同,如果完全相同,则将该句法结构可能矩阵解中的各句法向量作为句法结构解析结果之一。
2.根据权利要求1所述的基于计算机的自然语言句法结构解析方法,其特征在于,生成对应的引导语元素包括:
当不存在编号小于对应的谓语动词单元编号的关联词单元时,所述引导语元素的可能取值为空单元;
当存在编号小于对应的谓语动词单元编号的关联词单元且其数量大于等于编号大于等于对应的谓语动词单元编号的谓语动词单元数量时,所述引导语元素的可能取值为编号小于对应的谓语动词单元编号的关联词单元之一;
当存在编号小于对应的谓语动词单元编号的关联词单元且其数量小于编号大于等于对应的谓语动词单元编号的谓语动词单元数量时,所述引导语元素的可能取值为编号小于对应的谓语动词单元编号的关联词单元之一,或空单元。
3.根据权利要求1所述的基于计算机的自然语言句法结构解析方法,其特征在于,生成对应的主语元素包括:
当对应的谓语动词单元编号是最小的谓语动词单元编号时,所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一,或空单元;
当对应的谓语动词单元编号不是最小的谓语动词单元编号时,所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一,或在前出现的谓语动词单元对应的句法向量之一。
4.根据权利要求1所述的基于计算机的自然语言句法结构解析方法,其特征在于,生成对应的宾语元素包括:
当对应的谓语动词单元编号是最大的谓语动词单元编号时,所述宾语元素的可能取值为编号大于对应的谓语动词单元编号的名词代词单元之一;
当对应的谓语动词单元编号不是最大的谓语动词单元编号时,所述宾语元素的可能取值为编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词代词单元之一,或在后出现的谓语动词单元对应的句法向量之一。
5.根据权利要求1所述的基于计算机的自然语言句法结构解析方法,其特征在于,验证根据句法结构可能矩阵解得到的语句是否与所述经预处理的语句完全相同,包括:
将同一词单元重复出现的句法结构可能矩阵解首先排除;
在剩余的句法结构可能矩阵解中,基于行向量的相互引用进行代入、偏加、插空操作,排除由于两个行向量彼此互相包含而无法进行代入操作的句法结构可能矩阵解,然后把由其他句法结构可能矩阵解经操作得到的语句与所述经预处理的语句比较,判断由对应的句法结构可能矩阵解经代入、偏加、插空操作之后获得的语句是否与经预处理的语句完全相同。
6.根据权利要求5所述的基于计算机的自然语言句法结构解析方法,其特征在于,当出现如下五种情况时,将对应的句法结构可能矩阵解排除:
(1)有漏掉的词;
(2)顺序值或句法向量出现重位;
(3)出现了函数的代入交叉矛盾;
(4)存在两个位置逆反的顺序值;
(5)存在这样一个句法向量fj,找不到fj的明确位置,并且对于fj的每一个可以插空的空位,按照插空的方法对fj进行代入之后,全都存在两个位置逆反的顺序值。
7.根据权利要求1所述的基于计算机的自然语言句法结构解析方法,其特征在于,利用词单元编号替代词单元进行代入、偏加、插空操作,然后基于获得的语句序列是否为顺序递增的数字序列判断是否与经预处理的语句完全相同。
8.根据权利要求1所述的基于计算机的自然语言句法结构解析方法,其特征在于,在根据所有句法向量的所有可能取值,生成至少一个句法结构可能矩阵解,所述句法结构可能矩阵解由按照谓语动词单元编号顺序排列的句法向量组成;以及验证根据句法结构可能矩阵解得到的语句是否与所述经预处理的语句完全相同,如果完全相同,则将该句法结构可能矩阵解中的各句法向量作为句法结构解析结果之一这两个步骤中,利用与句法结构可能线性表达式解替代所述句法结构可能矩阵解;
所述句法结构可能线性表达式解与所述句法结构可能矩阵解等价;
所述句法结构可能线性表达式解包括由按照谓语动词单元编号顺序排列的句法向量表达式组成;每个所述句法向量表达式为对应的句法向量的引导语元素、主语元素、谓语元素、宾语元素按照顺序逐项偏加起来的表达式。
9.一种基于计算机的自然语言句法结构解析装置,包括:
读取部件,用于读取待解析的经预处理的语句数据结构,所述经预处理的语句数据结构中仅包括语句的关联词单元、谓语动词单元、名词代词单元,且各词单元按照在所述经预处理的语句中的顺序进行编号并标注类型;
元素生成部件,用于对每一谓语动词单元,生成对应的引导语元素、主语元素、谓语元素和宾语元素;所述引导语元素的可能取值为编号小于对应的谓语动词单元编号的关联词单元之一,或空单元;所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一或空单元,或在前出现的谓语动词单元对应的句法向量之一;所述谓语元素为对应的所述谓语动词单元;所述宾语元素的可能取值为编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词代词单元之一,或在后出现的谓语动词单元对应的句法向量之一;
向量生成部件,用于根据所述引导语元素、主语元素、谓语元素、宾语元素的可能取值获取每一谓语动词单元对应的句法向量的所有可能取值,所述句法向量包括引导语元素、主语元素、谓语元素和宾语元素;
矩阵生成部件,用于根据所有句法向量的所有可能取值生成至少一个句法结构可能矩阵解,所述句法结构可能矩阵解由按照谓语动词单元编号顺序排列的句法向量组成;
求解部件,用于验证根据句法结构可能矩阵解得到的语句是否与所述经预处理的语句完全相同,如果完全相同,则将该句法结构可能矩阵解中的各句法向量输出,并作为句法结构解析结果之一。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410172114.4A CN103927298B (zh) | 2014-04-25 | 2014-04-25 | 一种基于计算机的自然语言句法结构解析方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410172114.4A CN103927298B (zh) | 2014-04-25 | 2014-04-25 | 一种基于计算机的自然语言句法结构解析方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103927298A true CN103927298A (zh) | 2014-07-16 |
CN103927298B CN103927298B (zh) | 2016-09-21 |
Family
ID=51145521
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410172114.4A Active CN103927298B (zh) | 2014-04-25 | 2014-04-25 | 一种基于计算机的自然语言句法结构解析方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103927298B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016026359A1 (zh) * | 2014-08-22 | 2016-02-25 | 秦一男 | 一种基于计算机的自然语言句法结构解析的方法和装置 |
CN106021225A (zh) * | 2016-05-12 | 2016-10-12 | 大连理工大学 | 一种基于汉语简单名词短语的汉语最长名词短语识别方法 |
CN107422691A (zh) * | 2017-08-11 | 2017-12-01 | 山东省计算中心(国家超级计算济南中心) | 一种协同plc编程语言构造方法 |
CN108304362A (zh) * | 2017-01-12 | 2018-07-20 | 科大讯飞股份有限公司 | 一种从句检测方法及装置 |
CN110020434A (zh) * | 2019-03-22 | 2019-07-16 | 北京语自成科技有限公司 | 一种自然语言句法分析的方法 |
CN110990552A (zh) * | 2019-12-18 | 2020-04-10 | 北京声智科技有限公司 | 确定自然语言算式的运算顺序的方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1777888A (zh) * | 2003-04-24 | 2006-05-24 | 禹蕣朝 | 基于移动结构概念的句子结构分析及使用其的自然语言搜索 |
US20120010872A1 (en) * | 2006-10-10 | 2012-01-12 | Abbyy Software Ltd | Method and System for Semantic Searching |
-
2014
- 2014-04-25 CN CN201410172114.4A patent/CN103927298B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1777888A (zh) * | 2003-04-24 | 2006-05-24 | 禹蕣朝 | 基于移动结构概念的句子结构分析及使用其的自然语言搜索 |
US20120010872A1 (en) * | 2006-10-10 | 2012-01-12 | Abbyy Software Ltd | Method and System for Semantic Searching |
Non-Patent Citations (2)
Title |
---|
ARTHUR C.GRAESSER等: "Coh-Metrix: Analysis of text on cohesion and language", 《BEHAVIOR RESEARCH METHODS, INSTRUMENTS, & COMPUTERS》 * |
李强 等: "基于语句成分的英语语义分析算法及应用", 《计算机与数字工程》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016026359A1 (zh) * | 2014-08-22 | 2016-02-25 | 秦一男 | 一种基于计算机的自然语言句法结构解析的方法和装置 |
CN104156353B (zh) * | 2014-08-22 | 2017-10-31 | 秦一男 | 一种基于计算机的自然语言句法结构解析的方法和装置 |
CN106021225A (zh) * | 2016-05-12 | 2016-10-12 | 大连理工大学 | 一种基于汉语简单名词短语的汉语最长名词短语识别方法 |
CN106021225B (zh) * | 2016-05-12 | 2018-12-21 | 大连理工大学 | 一种基于汉语简单名词短语的汉语最长名词短语识别方法 |
CN108304362A (zh) * | 2017-01-12 | 2018-07-20 | 科大讯飞股份有限公司 | 一种从句检测方法及装置 |
CN108304362B (zh) * | 2017-01-12 | 2021-07-06 | 科大讯飞股份有限公司 | 一种从句检测方法及装置 |
CN107422691A (zh) * | 2017-08-11 | 2017-12-01 | 山东省计算中心(国家超级计算济南中心) | 一种协同plc编程语言构造方法 |
CN110020434A (zh) * | 2019-03-22 | 2019-07-16 | 北京语自成科技有限公司 | 一种自然语言句法分析的方法 |
WO2020191993A1 (zh) * | 2019-03-22 | 2020-10-01 | 北京语自成科技有限公司 | 一种自然语言句法分析的方法 |
CN110990552A (zh) * | 2019-12-18 | 2020-04-10 | 北京声智科技有限公司 | 确定自然语言算式的运算顺序的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN103927298B (zh) | 2016-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103927298B (zh) | 一种基于计算机的自然语言句法结构解析方法和装置 | |
Ma et al. | Unsupervised dependency parsing with transferring distribution via parallel guidance and entropy regularization | |
Zhang et al. | Character-level chinese dependency parsing | |
Zhang et al. | Exploring syntactic structured features over parse trees for relation extraction using kernel methods | |
CN103473224B (zh) | 基于问题求解过程的习题语义化方法 | |
Ulus et al. | Online timed pattern matching using derivatives | |
US20170052950A1 (en) | Extracting information from structured documents comprising natural language text | |
CN106909537B (zh) | 一种基于主题模型和向量空间的一词多义分析方法 | |
Cohen et al. | Approximate PCFG parsing using tensor decomposition | |
Galitsky et al. | Matching sets of parse trees for answering multi-sentence questions | |
CN104156353B (zh) | 一种基于计算机的自然语言句法结构解析的方法和装置 | |
CN111274794A (zh) | 一种基于传递的同义词扩展方法 | |
Liu et al. | Incorporating contextual and syntactic structures improves semantic similarity modeling | |
Terdalkar et al. | Framework for question-answering in Sanskrit through automated construction of knowledge graphs | |
Yoshinaka et al. | Polynomial time learning of some multiple context-free languages with a minimally adequate teacher | |
Al-Azzawy et al. | Arabic words clustering by using K-means algorithm | |
Tu et al. | Dependency forest for sentiment analysis | |
CN108959375A (zh) | 一种基于规则与深度学习的知识抽取方法 | |
Okhotin | Input-driven languages are linear conjunctive | |
Sumanathilaka et al. | Swa-bhasha: Romanized sinhala to sinhala reverse transliteration using a hybrid approach | |
Maletti | An alternative to synchronous tree substitution grammars | |
WO2023088278A1 (zh) | 用于验证表述的真实性的方法、设备、装置和介质 | |
CN114398903B (zh) | 意图识别方法、装置、电子设备及存储介质 | |
Pinheiro et al. | ChartText: Linking Text with Charts in Documents | |
Tabera | Tropical constructive Pappus' theorem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |