首页 / 专利库 / 人工智能 / 计算语言学 / 一种基于计算机的自然语言句法结构解析的方法和装置

一种基于计算机的自然语言句法结构解析的方法和装置

阅读:387发布:2020-05-18

专利汇可以提供一种基于计算机的自然语言句法结构解析的方法和装置专利检索,专利查询,专利分析的服务。并且公开了一种基于计算机的自然语言句法结构解析的方法和装置。本 发明 依据抽象代数、集合论、组合数学、可计算性理论和 计算语言学 等学科的数学原理和相应的计算机技术,运用复合函数的数学思想,通过建立矩阵模型和线性模型、构造递归函数来进行自然语言句法结构解析;同时,综合运用数学归纳法等方法对重要的结论进行了证明。本发明为自然语言的语句建立了一套全新的数学模型,与常规的传统方法相比,在思路上有根本区别。本发明创造性地提出了单侧同向保序和单侧同向不保序两种整体插空方法,并创造性地运用集合族的生成处理并列句法成分的方法。本发明充分利用了数学和计算机学科规律,所述方法准确性较高,运算量非常大,有一定的技术难度。,下面是一种基于计算机的自然语言句法结构解析的方法和装置专利的具体信息内容。

1.一种基于计算机的自然语言句法结构解析的方法,包括:
S1、读取待解析的经预处理的语句数据结构,所述经预处理的语句数据结构中仅包括语句的并列关联词单元、从属关联词单元、谓语动词单元、名词代词单元,且各词单元按照在所述经预处理的语句中的顺序进行编号,并标注类型;
S2、对每一谓语动词单元,生成对应的引导语元素、主语元素、谓语元素和宾语元素;
所述引导语元素的可能取值为编号小于对应的谓语动词单元编号的并列关联词单元或从属关联词单元之一,或由一个编号小于对应的谓语动词单元编号的并列关联词单元和一个与其相邻且编号小于对应的谓语动词单元编号且编号大于该并列关联词单元编号的从属关联词单元构成的关联词组合向量之一,或空单元;
所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一,或最大词单元的编号小于对应的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词代词组合向量之一,或在前出现的谓语元素对应的句法向量之一,或空单元;
所述谓语元素为对应的所述谓语动词单元;
所述宾语元素的可能取值编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词代词单元之一,或最小词单元的编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词代词组合向量之一,或在后出现的谓语元素对应的句法向量之一,或空单元;
S3、根据所述引导语元素、主语元素、谓语元素和宾语元素的可能取值,获取每一谓语动词单元对应的句法向量的所有可能取值,所述句法向量包括引导语元素、主语元素、谓语元素和宾语元素;
S4、根据所有句法向量的所有可能取值,生成至少一个句法结构可能矩阵解,所述句法结构可能矩阵解由按照谓语动词单元编号顺序排列的句法向量组成;
S5、验证根据句法结构可能矩阵解得到的语句是否与所述经预处理的语句完全相同,如果完全相同,则将该句法结构可能矩阵解中的各句法向量作为句法结构解析结果之一;
其中,S5包括按顺序依次执行以下操作,排除不符合条件的句法结构可能解:
S5.1、如果存在不在该句法结构可能矩阵解中出现的顺序值,则排除该句法结构可能矩阵解;
S5.2、如果在不同的句法向量中出现相同的顺序值或出现相同的句法向量,则排除该句法结构可能矩阵解;
S5.3、在每一个可能矩阵解中,将与其他句法向量之间存在相互代入关系的句法向量全都进行等量代换,如果在等量代换之后出现两个句法向量的交叉矛盾,则排除该句法结构可能矩阵解;
S5.4、在每一个可能矩阵解中,将与其他句法向量之间存在相互代入关系的句法向量全都进行等量代换,如果在等量代换之后出现两个位置逆反的顺序值,则排除该句法结构可能矩阵解;
S5.5、在任意一个可能矩阵解中,如果存在与其他句法向量之间没有相互代入关系的句法向量,则执行插空操作以获得所有该可能矩阵解所对应的可能句法解析结构,并验证根据所述可能句法解析结构得到的语句是否与所述经预处理的语句完全相同,其进一步包括:
S5.5.1、先对该可能矩阵解中相互之间存在代入关系的句法向量进行等量代换,从而将该可能矩阵解转化为一组相互之间不存在代入关系的句法向量 将可能矩阵解中的句法向量称为第一类句法向量,将转化得到的句法向量 称为第二类句法向量;
S5.5.2、任取一个第二类句法向量 按照预定的方向逐一标注 中的每一个句法元素的顺序值;标注句法元素的顺序值之后,任取 中的第i个句法元素,仅在该句法元素的第一侧构造唯一的空位;造空之后,任取一个句法向量 以外的第二类句法向量 以整体插空的方式将句法向量 插入所构造的空位,进而生成一个新的句法向量,将这个新句法向量记为 并将整体插空而得到的句法向量,统称为第三类句法向量;
S5.5.3、对第三类句法向量 按照预定的方向对从向量 中的第
一侧第一个句法元素开始到向量 中包含的向量 的第二侧第一个句法元素为止的每一个句法元素,全都标注顺序值;位于向量 中包含的向量 第一侧的元素,不标注顺序值;将向量 的第二侧的第一个句法元素记为 将按照前述方式对向量 标注的句法向量部分,记为甩尾句法向量 标注顺序值之后,任
取一个前述的甩尾向量中的第j个句法元素,仅在该元素第一侧构造唯一的空位;造空之后,任取一个未使用过的第二类句法向量 以整体插空的方式将句法向量 插入所构造的空位,进而生成一个新的句法向量,则将新生成的句法向量记为 或

第三类句法向量 按照预定方向,对句法向量 中的每一个句法
元素全都标注顺序值;标注句法元素的顺序值之后,任取一个 中的第t个句法元素,在该句法元素的第一侧构造唯一的空位;造空之后,任取一个未使用过得第二类句法向量 以整体插空的方式将该向量 插入前面构造的空位,进而生成一个新向量,则该新向量记为
S5.5.4、重复执行S5.5.3,每当上一次造空和插空步骤结束的时候,对经过上一次造空和插空步骤而得到的第三类句法向量进行下一次的造空和插空操作,直至将所有第二类句法向量 全部插空完毕,最后得到一个单行的第三类句法向量,将所述最后得到的第三类句法向量称为最终单行向量;
S5.5.5、如果一个可能句法解析结构对应的所有所述最终单行向量中均存在两个位置逆反的顺序值,则排除该可能句法解析结构;
S5.5.6、重复执行S5.5.2至S5.5.5直至所有可能句法解析结构被遍历。
2.根据权利要求1所述的基于计算机的自然语言句法结构解析的方法,其特征在于,S2包括生成并列名词代词组合向量族:
S2.1选取不重复的两个名词代词单元:
A、如果介于这两个名词代词单元之间没有其他词单元,则将这两个名词代词单元作为一个并列名词代词组合向量,并保留该并列名词代词组合向量;
B、如果介于这两个名词代词单元之间存在其他词单元,则检查介于这两个名词代词单元之间的每一个词单元:如果介于这两个名词代词单元之间的任意一个词单元,全都是名词代词单元或并列关联词单元,则将所选取的两个名词代词单元和介于这两个名词代词单元之间的全体词单元作为一个并列名词代词组合向量,并保留该并列名词代词组合向量;
否则,不生成并列名词代词组合向量;
S2.2复执行S2.1直至所有的名词代词单元的组合方式被遍历,生成获得的所有的并列名词代词组合向量;
S2.3如果该可能句法解析结构存在并列名词代词组合向量,则对所有的并列名词代词组合向量进行划分,从而形成若干个并列名词代词组合向量族,使得:在每一个并列名词代词组合向量族中,该并列名词代词组合向量族中所包含的每一个并列名词代词组合向量全都包含了两个共同的名词代词单元。
S2.4在每一个名词代词组合向量族中,选取所有名词代词组合向量中所包含的编号最大的词单元,作为该名词代词组合向量族的最大词单元,以备后续生成主语时使用;选取所有名词代词组合向量中所包含的编号最小的词单元,作为该名词代词组合向量族的最小词单元,以备后续生成宾语时使用。
3.根据权利要求1所述的基于计算机的自然语言句法结构解析方法,其特征在于,生成对应的主语元素包括:
当对应的谓语动词单元编号是最小的谓语动词单元编号时,所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一,或其最大词单元的编号小于对应的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词代词组合向量之一,或空单元。
当对应的谓语动词单元编号不是最小的谓语动词单元编号时,所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一,或最大词单元的编号小于对应的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词代词组合向量之一,或在前出现的谓语动词单元对应的句法向量之一,或空单元。
4.根据权利要求1所述的基于计算机的自然语言句法结构解析的方法,其特征在于,生成对应的宾语元素包括:
当对应的谓语动词单元编号是最大的谓语动词单元编号时,所述宾语元素的可能取值为编号大于对应的谓语动词单元编号的名词代词单元之一,或其最小词单元的编号大于对应的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词代词组合向量之一,或空单元。
当对应的谓语动词单元编号不是最大的谓语动词单元编号时,所述宾语元素的可能取值为编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词代词单元之一,或其最小词单元的编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词代词组合向量之一,或在后出现的谓语动词单元对应的句法向量之一,或空单元。
5.根据权利要求1所述的基于计算机的自然语言句法结构解析的方法,其特征在于,在S4和S5两个步骤中,利用与句法结构可能线性表达式解替代所述句法结构可能矩阵解;
所述句法结构可能线性表达式解与所述句法结构可能矩阵解等价;
所述句法结构可能线性表达式解包括由按照谓语动词单元编号顺序排列的句法向量表达式组成;每个所述句法向量表达式为对应的句法向量的引导语元素、主语元素、谓语元素、宾语元素按照顺序逐项偏加起来的表达式。
6.根据权利要求1所述的基于计算机的自然语言句法结构解析的方法,其特征在于,所述方法还包括:
将句法结构解析结果中的各句法向量以及对应的句法结构关系用树状结构在人机交互界面中进行显示。
7.一种基于计算机的自然语言句法结构解析的装置,包括:
读取部件,用于读取待解析的经预处理的语句数据结构,所述经预处理的语句数据结构中仅包括语句的并列关联词单元、从属关联词单元、谓语动词单元、名词代词单元,且各词单元按照在所述经预处理的语句中的顺序进行编号,并标注类型;
元素生成部件,用于对每一谓语动词单元,生成对应的引导语元素、主语元素、谓语元素和宾语元素;
其中,所述引导语元素的可能取值为编号小于对应的谓语动词单元编号的并列关联词单元或从属关联词单元之一,或由一个编号小于对应的谓语动词单元编号的并列关联词单元和一个与其相邻且编号小于对应的谓语动词单元编号且编号大于该并列关联词单元编号的从属关联词单元构成的关联词组合向量之一,或空单元;
所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一,或最大词单元的编号小于对应的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词代词组合向量之一,或在前出现的谓语元素对应的句法向量之一,或空单元;
所述谓语元素为对应的所述谓语动词单元;
所述宾语元素的可能取值编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词代词单元之一,或最小词单元的编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词代词组合向量之一,或在后出现的谓语元素对应的句法向量之一,或空单元;
向量生成部件,用于根据所述引导语元素、主语元素、谓语元素和宾语元素的可能取值,获取每一谓语动词单元对应的句法向量的所有可能取值,所述句法向量包括引导语元素、主语元素、谓语元素和宾语元素;
矩阵生成部件,用于根据所有句法向量的所有可能取值,生成至少一个句法结构可能矩阵解,所述句法结构可能矩阵解由按照谓语动词单元编号顺序排列的句法向量组成;
求解部件,用于验证根据句法结构可能矩阵解得到的语句是否与所述经预处理的语句完全相同,如果完全相同,则将该句法结构可能矩阵解中的各句法向量作为句法结构解析结果之一;
其中,所述求解部件通过以下模操作排除不符合条件的句法结构可能解:
第一排除模块,如果存在不在该句法结构可能矩阵解中出现的顺序值,则排除该句法结构可能矩阵解;
第二排除模块,如果在不同的句法向量中出现相同的顺序值或出现相同的句法向量,则排除该句法结构可能矩阵解;
第三排除模块,在每一个可能矩阵解中,将与其他句法向量之间存在相互代入关系的句法向量全都进行等量代换,如果在等量代换之后出现两个句法向量的交叉矛盾,则排除该句法结构可能矩阵解;
第四排除模块,在每一个可能矩阵解中,将与其他句法向量之间存在相互代入关系的句法向量全都进行等量代换,如果在等量代换之后出现两个位置逆反的顺序值,则排除该句法结构可能矩阵解;
第五排除模块,在任意一个可能矩阵解中,如果存在与其他句法向量之间没有相互代入关系的句法向量,则执行插空操作以获得所有该可能矩阵解所对应的可能句法解析结构,并验证根据所述可能句法解析结构得到的语句是否与所述经预处理的语句完全相同,其进一步包括:
第一子模块,先对该可能矩阵解中相互之间存在代入关系的句法向量进行等量代换,从而将该可能矩阵解转化为一组相互之间不存在代入关系的句法向量 将可能矩阵解中的句法向量称为第一类句法向量,将转化得到的句法向量 称为第二类句法向量;
第二子模块、任取一个第二类句法向量 按照预定的方向逐一标注 中的每一个句法元素的顺序值;标注句法元素的顺序值之后,任取 中的第i个句法元素,仅在该句法元素的第一侧构造唯一的空位;造空之后,任取一个句法向量 以外的第二类句法向量以整体插空的方式将句法向量 插入所构造的空位,进而生成一个新的句法向量,将这个新句法向量记为 并将整体插空而得到的句法向量,统称为第三类句法向量;
第三子模块,对第三类句法向量 按照预定的方向对从向量
中的第一侧第一个句法元素开始到向量 中包含的向量 的第二侧第一个句法元素为止的每一个句法元素,全都标注顺序值;位于向量 中包含的向量第一侧的元素,不标注顺序值;将向量 的第二侧的第一个句法元素记为 将按照前述方式对向量 标注的句法向量部分,记为甩尾句法向量 标注
顺序值之后,任取一个前述的甩尾向量中的第j个句法元素,仅在该元素第一侧构造唯一的空位;造空之后,任取一个未使用过的第二类句法向量 以整体插空的方式将句法向量 插入所构造的空位,进而生成一个新的句法向量,则将新生成的句法向量记为或者
第三类句法向量 按照预定方向,对句法向量 中的每一个句法
元素全都标注顺序值;标注句法元素的顺序值之后,任取一个 中的第t个句法元素,在该句法元素的第一侧构造唯一的空位;造空之后,任取一个未使用过得第二类句法向量 以整体插空的方式将该向量 插入前面构造的空位,进而生成一个新向量,则该新向量记为
第四子模块,重复第三子模块的操作,每当上一次造空和插空步骤结束的时候,对经过上一次造空和插空步骤而得到的第三类句法向量进行下一次的造空和插空操作,直至将所有第二类句法向量 全部插空完毕,最后得到一个单行的第三类句法向量,将所述最后得到的第三类句法向量称为最终单行向量;
第五子模块,如果一个可能句法解析结构对应的所有所述最终单行向量中均存在两个位置逆反的顺序值,则排除该可能句法解析结构;
第六子模块,重复调用第二子模块至第五子模块的操作直至所有可能句法解析结构被遍历。
8.根据权利要求7所述的基于计算机的自然语言句法结构解析的装置,其特征在于,还包括:
结果显示部件,将句法结构解析结果中的各句法向量以及对应的句法结构关系用树状结构进行在人机交互界面上进行显示。

说明书全文

一种基于计算机的自然语言句法结构解析的方法和装置

技术领域

[0001] 本发明涉及计算机数据处理领域,具体涉及一种基于计算机的自然语言句法结构解析的方法和装置。

背景技术

[0002] 自然语言处理是计算机科学领域和人工智能领域中的一个重要方向。它研究能实现人与计算机之间使用自然语言进行有效通信的各种理论和方法。
[0003] 句法结构解析是自然语言处理的一个重要方面,其通过计算机对自然语言语句的句子成分进行自动划分以辅助对于语句的进一步处理。在现有的句法结构解析技术中,通常采用概率上下文无约束算法(Probabilistic Context Free Grammars,PCFG),其基于自然语言具有复杂嵌套性的特点,计算语句与句法结构解析结果的规则匹配概率,选取概率最大的句法解析结果作为最终的句法结构。
[0004] 但是,该方法复杂度高,而且,对于复合式句子结构的解析准确性还亟待进一步提高。

发明内容

[0005] 有鉴于此,本发明提供了一种基于计算机的自然语言句法结构解析的方法和装置,构思独特、方法巧妙、论证详实,充分利用了数学和计算机学科的规律,所述方法准确性较高,运算量非常大,有一定的技术难度。
[0006] 本发明提供一种基于计算机的自然语言句法结构解析的方法,包括:
[0007] S1、读取待解析的经预处理的语句数据结构,所述经预处理的语句数据结构中仅包括语句的并列关联词单元、从属关联词单元、谓语动词单元、名词代词单元,且各词单元按照在所述经预处理的语句中的顺序进行编号,并标注类型;
[0008] S2、对每一谓语动词单元,生成对应的引导语元素、主语元素、谓语元素和宾语元素;
[0009] 所述引导语元素的可能取值为编号小于对应的谓语动词单元编号的并列关联词单元或从属关联词单元之一,或由一个编号小于对应的谓语动词单元编号的并列关联词单元和一个与其相邻且编号小于对应的谓语动词单元编号且编号大于该并列关联词单元编
号的从属关联词单元构成的关联词组合向量之一,或空单元;
[0010] 所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一,或最大词单元的编号小于对应的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词代词组合向量之一,或在前出现的谓语元素对应的句法向量之一,或空单元;
[0011] 所述谓语元素为对应的所述谓语动词单元;
[0012] 所述宾语元素的可能取值编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词代词单元之一,或最小词单元的编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的全体并列名词代词组合向量族中
所包含的并列名词代词组合向量之一,或在后出现的谓语元素对应的句法向量之一,或空单元;
[0013] S3、根据所述引导语元素、主语元素、谓语元素和宾语元素的可能取值,获取每一谓语动词单元对应的句法向量的所有可能取值,所述句法向量包括引导语元素、主语元素、谓语元素和宾语元素;
[0014] S4、根据所有句法向量的所有可能取值,生成至少一个句法结构可能矩阵解,所述句法结构可能矩阵解由按照谓语动词单元编号顺序排列的句法向量组成;
[0015] S5、验证根据句法结构可能矩阵解得到的语句是否与所述经预处理的语句完全相同,如果完全相同,则将该句法结构可能矩阵解中的各句法向量作为句法结构解析结果之一;
[0016] 其中,S5包括按顺序依次执行以下操作,排除不符合条件的句法结构可能解:
[0017] S5.1、如果存在不在该句法结构可能矩阵解中出现的顺序值,则排除该句法结构可能矩阵解;
[0018] S5.2、如果在不同的句法向量中出现相同的顺序值或出现相同的句法向量,则排除该句法结构可能矩阵解;
[0019] S5.3、在每一个可能矩阵解中,将与其他句法向量之间存在相互代入关系的句法向量全都进行等量代换,如果在等量代换之后出现两个句法向量的交叉矛盾,则排除该句法结构可能矩阵解;
[0020] S5.4、在每一个可能矩阵解中,将与其他句法向量之间存在相互代入关系的句法向量全都进行等量代换,如果在等量代换之后出现两个位置逆反的顺序值,则排除该句法结构可能矩阵解;
[0021] S5.5、在任意一个可能矩阵解中,如果存在与其他句法向量之间没有相互代入关系的句法向量,则执行插空操作以获得所有该可能矩阵解所对应的可能句法解析结构,并验证根据所述可能句法解析结构得到的语句是否与所述经预处理的语句完全相同,其进一步包括:
[0022] S5.5.1、先对该可能矩阵解中相互之间存在代入关系的句法向量进行等量代换,从而将该可能矩阵解转化为一组相互之间不存在代入关系的句法向量 将可能矩阵解中的句法向量称为第一类句法向量,将转化得到的句法向量 称
为第二类句法向量;
[0023] S5.5.2、任取一个第二类句法向量 按照预定的方向逐一标注 中的每一个句法元素的顺序值;标注句法元素的顺序值之后,任取 中的第i个句法元素,仅在该句法元素的第一侧构造唯一的空位;造空之后,任取一个句法向量 以外的第二类句法向量 以
整体插空的方式将句法向量 插入所构造的空位,进而生成一个新的句法向量,将这个新句法向量记为 并将整体插空而得到的句法向量,统称为第三类句法向量;
[0024] S5.5.3、对第三类句法向量 按照预定的方向对从向量 中的第一侧第一个句法元素开始到向量 中包含的向量 的第二侧第一个句法元
素为止的每一个句法元素,全都标注顺序值;位于向量 中包含的向量 第一侧
的元素,不标注顺序值;将向量 的第二侧的第一个句法元素记为 将按照前述方式
对向量 标注的句法向量部分,记为甩尾句法向量 标注顺序值之后,
任取一个前述的甩尾向量中的第j个句法元素,仅在该元素第一侧构造唯一的空位;造空之后,任取一个未使用过的第二类句法向量 以整体插空的方式将句法向量 插入所构
造的空位,进而生成一个新的句法向量,则将新生成的句法向量记为 或

[0025] 第三类句法向量 按照预定方向,对句法向量 中的每一个句法元素全都标注顺序值;标注句法元素的顺序值之后,任取一个 中的第t个
句法元素,在该句法元素的第一侧构造唯一的空位;造空之后,任取一个未使用过得第二类句法向量 以整体插空的方式将该向量 插入前面构造的空位,进而生成一个新向量,则
该新向量记为
[0026] S5.5.4、重复执行S5.5.3,每当上一次造空和插空步骤结束的时候,对经过上一次造空和插空步骤而得到的第三类句法向量进行下一次的造空和插空操作,直至将所有第二类句法向量 全部插空完毕,最后得到一个单行的第三类句法向量,将所述最后得到的第三类句法向量称为最终单行向量;
[0027] S5.5.5、如果一个可能句法解析结构对应的所有所述最终单行向量中均存在两个位置逆反的顺序值,则排除该可能句法解析结构;
[0028] S5.5.6、重复执行S5.5.2至S5.5.5直至所有可能句法解析结构被遍历。
[0029] 进一步,S2包括生成并列名词代词组合向量族:
[0030] S2.1选取不重复的两个名词代词单元:
[0031] A、如果介于这两个名词代词单元之间没有其他词单元,则将这两个名词代词单元作为一个并列名词代词组合向量,并保留该并列名词代词组合向量;
[0032] B、如果介于这两个名词代词单元之间存在其他词单元,则检查介于这两个名词代词单元之间的每一个词单元:如果介于这两个名词代词单元之间的任意一个词单元,全都是名词代词单元或并列关联词单元,则将所选取的两个名词代词单元和介于这两个名词代词单元之间的全体词单元作为一个并列名词代词组合向量,并保留该并列名词代词组合向量;否则,不生成并列名词代词组合向量;
[0033] S2.2复执行S2.1直至所有的名词代词单元的组合方式被遍历,生成获得的所有的并列名词代词组合向量;
[0034] S2.3如果该可能句法解析结构存在并列名词代词组合向量,则对所有的并列名词代词组合向量进行划分,从而形成若干个并列名词代词组合向量族,使得:在每一个并列名词代词组合向量族中,该并列名词代词组合向量族中所包含的每一个并列名词代词组合向量全都包含了两个共同的名词代词单元。
[0035] S2.4在每一个名词代词组合向量族中,选取所有名词代词组合向量中所包含的编号最大的词单元,作为该名词代词组合向量族的最大词单元,以备后续生成主语时使用;选取所有名词代词组合向量中所包含的编号最小的词单元,作为该名词代词组合向量族的最小词单元,以备后续生成宾语时使用。
[0036] 进一步,生成对应的主语元素包括:
[0037] 当对应的谓语动词单元编号是最小的谓语动词单元编号时,所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一,或其最大词单元的编号小于对应的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词代词组合向量之一,或空单元。
[0038] 当对应的谓语动词单元编号不是最小的谓语动词单元编号时,所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一,或最大词单元的编号小于对应的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词代词组合向量之一,或在前出现的谓语动词单元对应的句法向量之一,或空单元。
[0039] 进一步,生成对应的宾语元素包括:
[0040] 当对应的谓语动词单元编号是最大的谓语动词单元编号时,所述宾语元素的可能取值为编号大于对应的谓语动词单元编号的名词代词单元之一,或其最小词单元的编号大于对应的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词代词组合向量之一,或空单元。
[0041] 当对应的谓语动词单元编号不是最大的谓语动词单元编号时,所述宾语元素的可能取值为编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词代词单元之一,或其最小词单元的编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词代词
组合向量之一,或在后出现的谓语动词单元对应的句法向量之一,或空单元。
[0042] 进一步,在S4和S5两个步骤中,利用与句法结构可能线性表达式解替代所述句法结构可能矩阵解;
[0043] 所述句法结构可能线性表达式解与所述句法结构可能矩阵解等价;
[0044] 所述句法结构可能线性表达式解包括由按照谓语动词单元编号顺序排列的句法向量表达式组成;每个所述句法向量表达式为对应的句法向量的引导语元素、主语元素、谓语元素、宾语元素按照顺序逐项偏加起来的表达式。
[0045] 进一步,所述方法还包括:
[0046] 将句法结构解析结果中的各句法向量以及对应的句法结构关系用树状结构在人机交互界面中进行显示。
[0047] 本发明还提供一种基于计算机的自然语言句法结构解析的装置,包括:
[0048] 读取部件,用于读取待解析的经预处理的语句数据结构,所述经预处理的语句数据结构中仅包括语句的并列关联词单元、从属关联词单元、谓语动词单元、名词代词单元,且各词单元按照在所述经预处理的语句中的顺序进行编号,并标注类型;
[0049] 元素生成部件,用于对每一谓语动词单元,生成对应的引导语元素、主语元素、谓语元素和宾语元素;
[0050] 其中,所述引导语元素的可能取值为编号小于对应的谓语动词单元编号的并列关联词单元或从属关联词单元之一,或由一个编号小于对应的谓语动词单元编号的并列关联词单元和一个与其相邻且编号小于对应的谓语动词单元编号且编号大于该并列关联词单元编号的从属关联词单元构成的关联词组合向量之一,或空单元;
[0051] 所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一,或最大词单元的编号小于对应的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词代词组合向量之一,或在前出现的谓语元素对应的句法向量之一,或空单元;
[0052] 所述谓语元素为对应的所述谓语动词单元;
[0053] 所述宾语元素的可能取值编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词代词单元之一,或最小词单元的编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的全体并列名词代词组合向量族中
所包含的并列名词代词组合向量之一,或在后出现的谓语元素对应的句法向量之一,或空单元;
[0054] 向量生成部件,用于根据所述引导语元素、主语元素、谓语元素和宾语元素的可能取值,获取每一谓语动词单元对应的句法向量的所有可能取值,所述句法向量包括引导语元素、主语元素、谓语元素和宾语元素;
[0055] 矩阵生成部件,用于根据所有句法向量的所有可能取值,生成至少一个句法结构可能矩阵解,所述句法结构可能矩阵解由按照谓语动词单元编号顺序排列的句法向量组成;
[0056] 求解部件,用于验证根据句法结构可能矩阵解得到的语句是否与所述经预处理的语句完全相同,如果完全相同,则将该句法结构可能矩阵解中的各句法向量作为句法结构解析结果之一;
[0057] 其中,所述求解部件通过以下模操作排除不符合条件的句法结构可能解:
[0058] 第一排除模块,如果存在不在该句法结构可能矩阵解中出现的顺序值,则排除该句法结构可能矩阵解;
[0059] 第二排除模块,如果在不同的句法向量中出现相同的顺序值或出现相同的句法向量,则排除该句法结构可能矩阵解;
[0060] 第三排除模块,在每一个可能矩阵解中,将与其他句法向量之间存在相互代入关系的句法向量全都进行等量代换,如果在等量代换之后出现两个句法向量的交叉矛盾,则排除该句法结构可能矩阵解;
[0061] 第四排除模块,在每一个可能矩阵解中,将与其他句法向量之间存在相互代入关系的句法向量全都进行等量代换,如果在等量代换之后出现两个位置逆反的顺序值,则排除该句法结构可能矩阵解;
[0062] 第五排除模块,在任意一个可能矩阵解中,如果存在与其他句法向量之间没有相互代入关系的句法向量,则执行插空操作以获得所有该可能矩阵解所对应的可能句法解析结构,并验证根据所述可能句法解析结构得到的语句是否与所述经预处理的语句完全相同,其进一步包括:
[0063] 第一子模块,先对该可能矩阵解中相互之间存在代入关系的句法向量进行等量代换,从而将该可能矩阵解转化为一组相互之间不存在代入关系的句法向量
将可能矩阵解中的句法向量称为第一类句法向量,将转化得到的句法向
量 称为第二类句法向量;
[0064] 第二子模块、任取一个第二类句法向量 按照预定的方向逐一标注 中的每一个句法元素的顺序值;标注句法元素的顺序值之后,任取 中的第i个句法元素,仅在该句法元素的第一侧构造唯一的空位;造空之后,任取一个句法向量 以外的第二类句法向量以整体插空的方式将句法向量 插入所构造的空位,进而生成一个新的句法向量,将这
个新句法向量记为 并将整体插空而得到的句法向量,统称为第三类句法向量;
[0065] 第三子模块,对第三类句法向量 按照预定的方向对从向量中的第一侧第一个句法元素开始到向量 中包含的向量 的第二侧
第一个句法元素为止的每一个句法元素,全都标注顺序值;位于向量 中包含
的向量 第一侧的元素,不标注顺序值;将向量 的第二侧的第一个句法元素记为
将按照前述方式对向量 标注的句法向量部分,记为甩尾句法向量
标注顺序值之后,任取一个前述的甩尾向量中的第j个句法元素,仅在该元素第一侧构
造唯一的空位;造空之后,任取一个未使用过的第二类句法向量 以整体插空的方式将
句法向量 插入所构造的空位,进而生成一个新的句法向量,则将新生成的句法向量记为或者
[0066] 第三类句法向量 按照预定方向,对句法向量 中的每一个句法元素全都标注顺序值;标注句法元素的顺序值之后,任取一个 中的第t个
句法元素,在该句法元素的第一侧构造唯一的空位;造空之后,任取一个未使用过得第二类句法向量 以整体插空的方式将该向量 插入前面构造的空位,进而生成一个新向量,
则该新向量记为
[0067] 第四子模块,重复第三子模块的操作,每当上一次造空和插空步骤结束的时候,对经过上一次造空和插空步骤而得到的第三类句法向量进行下一次的造空和插空操作,直至将所有第二类句法向量 全部插空完毕,最后得到一个单行的第三类句法向量,将所述最后得到的第三类句法向量称为最终单行向量;
[0068] 第五子模块,如果一个可能句法解析结构对应的所有所述最终单行向量中均存在两个位置逆反的顺序值,则排除该可能句法解析结构;
[0069] 第六子模块,重复调用第二子模块至第五子模块的操作直至所有可能句法解析结构被遍历。
[0070] 进一步,还包括:
[0071] 结果显示部件,将句法结构解析结果中的各句法向量以及对应的句法结构关系用树状结构进行在人机交互界面上进行显示。附图说明
[0072] 通过以下参照附图对本发明实施例的描述,本发明的上述以及其他目的、特征和优点将更为清楚,在附图中:
[0073] 图1是本发明实施例的基于计算机的自然语言句法结构解析的方法的流程图
[0074] 图2是本发明实施例的基于计算机的自然语言句法结构解析的装置的示意图。

具体实施方式

[0075] 以下基于优选实施例对本发明进行描述,但是本发明并不仅仅限于这些实施例。在下文对本发明的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本发明。为了避免混淆本发明的实质,公知的方法、流程、元件和电路并没有详细叙述。
[0076] A部分 半群上的偏序关系和偏加法运算
[0077] A1部分 自然语言是词汇和标点符号集合上的自由幺半群
[0078] 依据抽象代数和计算语言学的理论,自然语言是词汇和标点符号集合上的自由幺半群。以下用英语为例进行说明,但是本领域技术人员容易理解,本发明的方法也适用于其他自然语言。
[0079] 给定一个集合A,A上的符号串是由A中的元素邻接而成的,邻接时可以重复,形成一个有限长的线性阵列。例如:从集合{a,b,c},可以形成符号串acbaab。这个符号串包含a的三次出现,b的两次出现,c的一次出现,它不同于符号串acaabb。虽然每个符号的出现次数相同,但它们的次序不同。可见,符号串是有序的。特别地,长度为0的符号串是0符号串,记为e。由此,对于给定的有限的符号集合A,A上长度为n的符号串就是从自然数集N到A的一个映射:f:N→A。
[0080] 从两个符号串出发,我们可以用邻接它们的办法构成新的符号串。例如,在符号串abac的右端邻接符号串bbac,便形成了新的符号串abacbbac。
[0081] 这种邻接符号串的运算称为:毗连运算,简称为毗连。
[0082] 给定长度为n的符号串φ和长度为m的符号串ψ,其中:
[0083] φ={(1,x1),(2,x2),(3,x3),……,(n-1,xn-1),(n,xn)};
[0084] ψ={(1,y1),(2,y2),(3,y3),……,(m-1,ym-1),(m,ym)};
[0085] φ与ψ的毗连记为:φ^ψ。它是长度为n+m且由集合{(1,x1),(2,x2),(3,x3),……,(n-1,xn-1),(n,xn),(n+1,y1),(n+2,y2),……,(n+m,ym)}给出的符号串。那么,毗连便是定义在符号串上的一种二元运算,运算的结果是得到一个新的符号串。
[0086] φ与ψ的毗连,还可省略毗连记号^,简化记为:φψ。
[0087] 则有:φ^ψ=φψ。
[0088] 毗连运算是可结合的,因为对于任何符号串φ,ψ,ω,有:
[0089] φ^(ψ^ω)=(φ^ψ)^ω
[0090] 现有的每个英语单词和英文标点符号都定义成一个符号,那么S中所有单词和标点符号的集合A={a1,a2,a3,...,an}(n∈N)就是一个符号集。
[0091] 任给的一个由英语单词和英文标点符号组成的有限长的符号串b1b2......bk(k∈N),称为词单元或连续词串。对于任给的一个词单元a=
b1b2......bm(m∈N),称a是由A中元素组成的词单元,当且仅当,b1,b2,...,bm∈A。
[0092] 长度为0的唯一的词单元称为空单元,记为e。
[0093] 记由A中元素组成的全体词单元(连续词串)的集合为As,设语句S=s
a1a2a3......an,其中,an为构成语句的词单元。代数系统(A,^,e)是英语单词和标点符号集合A上的自由幺半群。
[0094] 各词单元按照其在语句中的顺序依次排列,其下标为顺序编号,记T(α)为词单元α在句子S中的编号。
[0095] 构造一个句法成分顺序映射ω,ω的条件如下:
[0096] (1)ω:{a1,a2,a3,……,an}→N,N为自然数集;
[0097] (2)对任意一个ai,ai∈S,都有:ω(ai)=T(ai)。
[0098] 显然,ω是一个单映射。
[0099] A2部分 定义一种偏序关系
[0100] 同时,对于代数系统(As,^,e),定义二元关系<□:
[0101] 对于As中任意的词单元α,β∈As,称α<□β,当且仅当α,β的编号T(α),T(β)满足:T(α)<T(β)。
[0102] 依定义,二元关系<□满足如下条件:
[0103] (1)任给a∈As,都有a≮□a;
[0104] (2)对于任何a,b,c∈As,如果a<□b,则b≮□a;
[0105] (3)对于任何a,b,c∈As,如果a<□b且b<□c,则a<□c。
[0106] 则依据严格偏序关系的定义,二元关系<□是严格偏序关系。
[0107] A3部分 定义偏加法运算和句法顺序值
[0108] 同时,在代数系统(As,^,e)上,定义一个新的二元运算+<。称+<为定义在Ass中的严格偏序关系<□上的偏加法运算,简称偏加,它满足如下特性:对于任何a,b∈A,如果a<□b,则有a+<b=a^b=ab。
[0109] 我们可以确定:对于任何a,b∈As,如果a<□b,则有偏加法运算+<和毗连运算^等价。偏加法运算+<,可以看作是限制在严格偏序关系<□上的毗连运算。
[0110] 任一自然语言的语句S都可以看作由每个词单元依据严格偏序关系<□连接而成的词串公式,即:S=a1+<a2+<a3+<…+<an。这一特点,对于展开数学处理非常有利。
[0111] 在原句S中,按照从左至右的顺序,一次性地从句首至句尾,为全句中相邻的n个连续词串α1,α2,...,αn标注顺序号:1,2,.....,n。
[0112] 在一次确定的、如上所述的标注中,记任意给定的一个连续词串α的顺序号为τ(α),则称τ(α)为α的从左至右顺序值。即,任给一个原句S中的句法元素γ,将句法元素γ在原句S中的句法顺序值记为τ(γ)。
[0113] B部分 技术方案详述
[0114] B1部分 对语言信息的初步分类
[0115] 在本发明中,将构成语句的词单元ai认定为常量。词单元ai具有其语言属性。构成核心句子结构的词单元可分为并列关联词单元、从属关联词单元、谓语动词单元、名词代词单元4种类型。每个词单元包括至少一个自然语言词汇,其可以是词、特定结构的短语或多个同属性词的并列。
[0116] 对于并列关联词单元,其可以是连接并列句和并列句法成分的并列连词and,but,or,so,yet等。
[0117] 对于从属关联词单元,其可以是引导从句的连接代词或连接副词和引导从句的连接短语,对于典型的引导词列举如下: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等。其主要包括:由单词充当引导从句的关联词单元,由短语充当引导从句的关联词单元,连接并列句与并列句的关联词单元。
[0118] 对于谓语动词单元,其也可以是动词或动词短语,例如,can do,do。谓语被定义为英语中一个自然句里的主要动作语。结构上通常由两个部分构成:辅助动词+实义动词(主系表结构除外)。谓语有时态和语态的格式要求,用计算语言学的公式定义如下:
[0119]
[0120] 对于名词代词单元,可以是:纯粹的名词短语(不包含在介宾短语中的名词短语),名词化的动词短语(名词化的动词短语定义:具有名词性质的、可以充当主语或宾语这类名词性句法成分的动词短语,包括:不定式短语和动名词短语两大类),可以单独使用的代词。名词代词单元举例如下:food,wolf,the men,me,it,this,to do等。
[0121] 名词化的动词短语有格式要求,用计算语言学的公式定义如下:
[0122]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
[0123] {重要符号的说明}
[0124]r 谓语动词单元
k 当前正在处理的谓语动词单元的顺序数
Lead 从属关联词单元
NPI 纯粹名词单元
Conj 并列关联词单元
VNP 名词性质的动词单元
NOMP 主格代词单元
OBJP 宾格代词单元
NP 名词代词单元的统称
[0125] 在上述的词单元列表中,词单元的集合之间有如下关系:
[0126] {NP}={NPI}∪{VNP}∪{NOMP}∪{OBJP}。
[0127] B2部分 定义重要的概念
[0128] 说明:自然语言语句的分句的定义如下:分句就是简单句,即自然语言的最基础句式。一个分句,就是一套主谓搭配结构。以上三类词单元构成自然语言语句分句的主干,其中,谓语动词单元充当谓语,而名词代词单元充当主语或宾语。
[0129] 在本发明中,定义变量为x,y,z,其中x为引导语元素,y为主语元素,z为宾语元素,同时,记r为谓语元素,则每一个语句中的主谓搭配结构可以表示为:
[0130] f(x,y,r,z)=x+<Λ+<y+<σ+<r+<ρ+<z+<μ
[0131] Λ,σ,ρ,μ分别表示x,y,r,z之外的任何一种成分或标点符号,简称为杂质,通过现有的语句预处理技术可以将杂质除去。可以将除去杂质后的函数f(x,y,r,z)=x+<y+<r+<z。用向量(x,y,r,z)的方式表示。
[0132] 引导语元素x为简单句的一个成分:简单句为从句时,引导语元素为引导从句的连接代词或连接副词、引导从句的连接短语;简单句为并列句时,引导语元素为将该并列句与在前的其他并列句连接的并列连词。即,在一个简单句中,引导语元素x为由关联词单元构成的、用于引导后续简单句的句法成分。
[0133] 如果当前正在处理S中的一个函数f,则记这个当前的函数f为fk;记当前正在处理的谓语动词单元的顺序数为k。(k∈N,N是自然数集,k≤n)
[0134] B3部分 生成三个关键集合:{xk},{yk},{zk}
[0135] B3.1部分 生成{xk}
[0136] [B3.1.1]预备工作:定义如下子集合:
[0137] 1)Leadk={Lead|Lead<□rk};
[0138] 2)conjk={conj|conj<□rk};
[0139] 3)(conjkοLeadk)=
[0140] {Rk|Rk=conj+<Lead,conj<□rk,Lead<□rk,τ(Lead)=τ(conj)+1};
[0141] [B3.1.2]{xk}的生成算法:
[0142] {xk}=Leadk∪conjk∪(conjkοLeadk)∪{e}。
[0143] B3.2部分 关于并列句法成分的生成方法的专说明(以并列主语和并列宾语为例)
[0144] [B3.2.1]直观描述
[0145] 说明:在下面的叙述中,为了便于表达,将连续词串的公式Фt或 中包含句法元素 记为
[0146] 第1步
[0147] 取原句中的全体名词性质的词组,将原句中的全体名词性质的词组编为一个集合,记为集合Ψ={α1,......,αm-1,αm},m∈N,m是集合Ψ中的元素的个数。
[0148] 第2步
[0149] 按照 的方式,取集合Ψ={α1,......,αm-1,αm}中的任意两个元素的全部组合, 设集合
[0150] 第3步
[0151] 对任给的一个 按照元素 在原句S中的句法顺序值的从小到大排列。则不妨设 则可获得有序对 建立一个连续词串的公
式 其中 是原句S中的从 到 的一组相
邻的连续词串或空词串。穷尽这样的有序对和连续词串公式。
[0152] 第4步
[0153] 对公式Фt进行检查,如果对于公式Фt中的任给的介于元素 和 之间的元素γ,都有:γ或者是名词性质的词组,或者是并列连接词,或者是空串,
t t
则将Ф 的标记改为 称为Ф 生成 设集合 则
[0154] 第5步
[0155] 任取集合 如果集合 存在对应的 则定义一个集合族,该集合族由包含集合 的全体集合构成。将该集合族记为如下表达形
式:
[0156] 第6步
[0157] 如 果 集合 存 在 对 应 的 集 合族 将 任 意 一 个集合族 中的每一个集合下辖的句法元素全都取出,列为集合
[0158] 第7步
[0159] 分别取出集合 中在原句S中的句法顺序值的最大和最小的元素。
[0160] 注:该方法也可用于生成其他类型的并列成分,例如生成并列的形容词词组。只要将该方法中的全体NPI、全体VNP、全体NOMP词组,将原句中的全体NPI、全体VNP、全体NOMP词组替换成相应的句法成分,即可得到。
[0161] [B3.2.2]形式化定义
[0162] 定义:一元函数A(S),A(S)表示取出原句S中的全体NPI词组、全体VNP词组、全体NOMP词组,同时,将原句中的全体NPI词组、全体VNP词组、全体NOMP词组列为一个集合,将该集合记为Ψ={α1,...,αm-1,αm},m∈N,m是集合Ψ中的元素的个数。则A(S)=Ψ={α1,...,αm-1,αm}。
[0163] 定义:一元函数B(Ψ),B(Ψ)表示按照 的方式取集合Ψ={α1,...,αm-1,αm}中任意两元素的全部组合, 设集合则
将任给的一个 记为 则 则
[0164] 定义:二元函数K(α,β),K(α,β)表示对一元函数B(Ψ)的结果,即对任给的一个 按照元素 在原句S中的句法顺序值的从小到大排列。则不妨设 则可得到有序对 设集合
进而建立一个连续词串公式 其中
是原句S中的从 到 的一组相邻的连续词串或空词串,且

[0165] 定 义:一 元 函 数 H(Фt),H(Фt)表 示 对 二 元 函 数K(α,β)生 成 的t进行检查:如果对任给的元素γ∈Ф,且
且 都 有:γ= NPI或γ =VNP 或γ= NOMP或 γ=CONJ 或γ =e,则
t t
将Ф 的标记改为 称为Ф 生成 设集合 则
[0166] 定 义:二 元 函 数 M(α,β),M(α,β)表 示 对 于 任 取 的 一 个 集合 如 果 集 合 存 在 对 应 的 则 定
义一个集合 族,该集合族由 包含集合 的全体 集合构成,该集 合
族 记 为 则
[0167] 定 义:二 元 函 数 N(α,β),N(α,β) 表 示 对 二 元 函 数 M(α,β) 的 结 果 即 对 于 任 取 集 合 如
果 集 合 存 在 对 应 的 集 合 族 则 构 造 一 个 新 的 集 合
如 下 则
[0168] 定义:一元函数U(α),U(α)表示对二元函数N(α,β)的结果取 设 对任给的元素γ,
都有τ(γ)≤τ(δ)。则
[0169] 定义:一元函数V(β),V(β)表示对二元函数N(α,β)的结果取 设 对任给的元素γ,
都有τ(δ)≤τ(γ)。则
[0170] [B3.2.3]并列主语的生成算法:
[0171]
[0172] [B3.2.4]并列宾语的生成算法:
[0173]
[0174] [B3.2.4]对并列主语和并列宾语的生成算法的举例说明
[0175] 举例说明:词序列表为:
[0176]原句短语 短语类型 顺序编号
After 从属关联词单元 1
Jack 名词代词单元 2
Mary 名词代词单元 3
and 并列关联词单元 4
Linda 名词代词单元 5
left 谓语动词单元 6
I 名词代词单元 7
gave 谓语动词单元 8
my son 名词代词单元 9
a book 名词代词单元 10
[0177] 在生成主语元素集合{y1}、{y2}的过程中,运行并列主语生成算法如下:
[0178] ①A(S)取出原句中的全体NPI词组、全体VNP词组、全体NOMP词组,并将原句中的全体NPI词组、全体VNP词组、全体NOMP词组列为一个集合,将该集合记为Ψ={Jack,Mary,Linda,I,my son,a book}={2,3,5,7,9,10}。
[0179] ② B(Ψ) 表 示 按 照 的 方 式 取 集 合 Ψ = {2,3,5,7,9,10} 中 任 意 两 元 素 的 全 部 组 合, 设 集 合
则B(Ψ)={{2,3},{2,5},{2,7},
{2,9},{2,10},{3,5},{3,7},{3,9},{3,10},{5,7},{5,9},{5,10},{7,9},{10,7},{10,
9}}。
[0180] ③K(α,β)对一元函数B(Ψ)的结果,即对任给的一个 按照元素在原句S中的句法顺序值的从小到大排列。则不妨设 则可得到有序对
则 生成的有序对是:
[0181] {<2,3>,<2,5>,<2,7>,<2,9>,<2,10>,<3,5>,<3,7>,<3,9>,<3,10>,<5,7>,<5,9>,<5,10>,<7,9>,<7,10>,<9,10>};
[0182] 设集合 进而建立一个连续词串公式 其中 是原句S中的从 到 的一
组相邻的连续词串或空词串,且 则
1 2 3
则Φ =2+<e+<3,Φ =2+<3+<4+<5,Φ =2+<3+<4+<5+
4 5
<6+<7,Φ =2+<3+<4+<5+<6+<7+<8+<9,Φ =2+<3+<4+<5+
6 7 8
<6+<7+<8+<9+<10,Φ =3+<4+<5,Φ =3+<4+<5+<6+<7,Φ =3+
9 10
<4+<5+<6+<7+<8+<9,Φ =3+<4+<5+<6+<7+<8+<9+<10,Φ
11 12
=5+<6+<7,Φ =5+<6+<7+<8+<9,Φ =5+<6+<7+<8+<9+<10,
13 14 15
Φ =7+<8+<9,Φ =7+<8+<9+<10,Φ =9+<e+<10。
[0183] ④H(Φt)对 二 元 函 数 K(α,β)生 成 的 进t
行检查:如果对任给的元素γ∈Φ,且 且 都有:γ=NPI或γ=
t t
VNP或γ=NOMP或γ=CONJ或γ=e,则将Φ 的 标记改为 称为Φ 生
成 设 集 合 则 集 合 则
[0184] ⑤M(α,β)表示对于任取的一个集合 如果集合存在对应的 则定义一个集合族,该集合族由包含集合 的全体集合构成,该集
合族记为 则
则M(α,β)={I1({2,3}),I2({3,5}),I3({9,10})}。
[0185] ⑥N(α,β)对二元函数M(α,β)的结果 即对于任取集合如果集合 存在对应的集合族 则构造一个新
的集合如下 则可得P[I1({2,3})]={2,
3,4,5},P[I2({3,5})]={2,3,4,5},P[I3({9,10})]={9,10}。
[0186] ⑦U(α)对二元函数N(α,β)的结果 取设 对任给的元素γ, 都有
τ(γ)≤τ(δ)。则Pmax[I1({2,3})]=5,Pmax[I2({3,5})]=5,Pmax[I3({9,10})]=10。
[0187] 在生成宾语元素集合{z1}、{z2}的过程中,运行并列宾语生成算法如下:
[0188] ①A(S)取出原句中的全体NPI词组、全体VNP词组、全体NOMP词组,并将原句中的全体NPI词组、全体VNP词组、全体NOMP词组列为一个集合,将该集合记为Ψ={Jack,Mary,Linda,I,my son,a book}={2,3,5,7,9,10}。
[0189] ② B(Ψ) 表 示 按 照 的 方 式 取 集 合 Ψ = {2,3,5,7,9,10} 中 任 意 两 元 素 的 全 部 组 合, 设 集 合
则B(Ψ)={{2,3},{2,5},{2,7},
{2,9},{2,10},{3,5},{3,7},{3,9},{3,10},{5,7},{5,9},{5,10},{7,9},{10,7},{10,
9}}。
[0190] ③K(α,β)对一元函数B(Ψ)的结果,即对任给的一个 按照元素在原句S中的句法顺序值的从小到大排列。则不妨设 则可得到有序对
则 生成的有序对是:
[0191] {<2,3>,<2,5>,<2,7>,<2,9>,<2,10>,<3,5>,<3,7>,<3,9>,<3,10>,<5,7>,<5,9>,<5,10>,<7,9>,<7,10>,<9,10>};
[0192] 设集合 进而建立一个连续词串公式 其中 是原句S中的从 到 的一
组相邻的连续词串或空词串,且 则
1 2 3
则Φ =2+<e+<3,Φ =2+<3+<4+<5,Φ =2+<3+<4+<5+
4 5
<6+<7,Φ =2+<3+<4+<5+<6+<7+<8+<9,Φ =2+<3+<4+<5+
6 7 8
<6+<7+<8+<9+<10,Φ =3+<4+<5,Φ =3+<4+<5+<6+<7,Φ =3+
9 10
<4+<5+<6+<7+<8+<9,Φ =3+<4+<5+<6+<7+<8+<9+<10,Φ
11 12
=5+<6+<7,Φ =5+<6+<7+<8+<9,Φ =5+<6+<7+<8+<9+<10,
13 14 15
Φ =7+<8+<9,Φ =7+<8+<9+<10,Φ =9+<e+<10。
[0193] ④H(Φt)对 二 元 函 数 K(α,β)生 成 的 进t
行检查:如果对任给的元素γ∈Φ,且 且 都有:γ=NPI或γ=
t t
VNP或γ=NOMP或γ=CONJ或γ=e,则将Φ 的 标记改为 称为Φ 生
成 设 集 合 则 集 合 则
[0194] ⑤M(α,β)表示对于任取的一个集合 如果集合存在对应的 则定义一个集合族,该集合族由包含集合 的全体集合构成,该集
合族记为 则
则M(α,β)={I1({2,3}),I2({3,5}),I3({9,10})}。
[0195] ⑥N(α,β)对二元函数M(α,β)的结果 即对于任取集合如果集合 存在对应的集合族 则构造一个新
的集合如下 则可得P[I1({2,3})]={2,
3,4,5},P[I2({3,5})]={2,3,4,5},P[I3({9,10})]={9,10}。
[0196] ⑦ V(β) 表 示 对 二 元 函 数 N(α,β) 的 结 果 取设 对 任 给 的 元 素 γ,
都有τ(δ)≤τ(γ)。则Pmin[I1({2,3})]=2,Pmin[I2({3,5})]=2,
Pmin[I3({9,10})]=9。
[0197] B3.3部分{yk}的生成方法
[0198] [B3.3.1]预备工作:定义如下子集合:
[0199] 1)NPIyk={NPI|NPI<□rk}。
[0200] 2)VNPyk={VNP|VNP<□rk}。
[0201] 3)NOMPk={NOMP|NOMP<□rk}。
[0202] 4)
[0203]
[0204] 其中:
[0205] 5)ryk={rα|α<k,α∈N}。(N是自然数集)
[0206] 6)fyk={fα|α<k,α∈N}。(N是自然数集)
[0207] [B3.3.2]{yk}的生成算法
[0208]
[0209] ②转换成:当存在rk-1时:{yk}=NPIyk∪VNPyk∪NOMPk∪Gk∪fyk∪{e},则上式转化为:
[0210]
[0211] B3.4部分{zk}的生成方法
[0212] [B3.4.1]预备工作:定义如下子集合:
[0213] 1)
[0214]
[0215] 2)
[0216]
[0217] 3)
[0218]
[0219] 4)
[0220]
[0221] 其中:
[0222]
[0223] 5)rzk={rα|k<α,α∈N}。(N是自然数集)
[0224] 6)fzk={fα|k<α,α∈N}。(N是自然数集)
[0225] [B3.4.2]{zk}的生成算法
[0226]
[0227] ②转换成:当存在rk+1时:{zk}=NPIzk∪VNPzk∪OBJPk∪Hk∪fzk∪{e},则上式转化为:
[0228]
[0229] B3.5部分矩阵表达式和线性表达式
[0230] [B3.5.1]矩阵表达式
[0231] 进而,语句S可以用矩阵形式表达,即:
[0232]
[0233] 当一个函数fj充当另一个函数fk的主语元素或宾语元素时,例如:当fk=x+<y+<r+<fj或fk=x+<fj+<r+<y时,称fk是经过复合运算而得到。在本发明中复合运算记为f(f)。
[0234] 由于函数f从整体上看也是词单元,所以偏加运算适用于函数。如果函数fi、fj满足fi<□fj,且另一个函数fk可以表达为fi和fj的偏加即fk=fi+<fj,称fk经过偏加运算而得到的。
[0235] 每一个不省略谓语动词的英文语句S都可以看作是由n个函数f1,……,fn(n等于谓语动词单元数量)经过有限次的复合和偏加运算而得到的。据此,可以将任何一个不省略谓语的英文语句S记为:
[0236]
[0237] 也即,任何一个不省略谓语的英文语句由包括引导语元素、主语元素、谓语元素或宾语元素的向量经复合或偏加运算获得。接下来,就面临为英文自然句S选取一种合理表达式的问题。这种表达式,必须能够恰到好处地表明S中所包含的一切复合和偏加运算。矩阵形态恰好具备这样的条件,它能将函数的复合运算用某一行向量中元素的位置来体现,例如:fk(fj)=fk(xk,fj,rk,zk),就表明fk与fj二者之间的复合运算关系;同时,又没有破坏元素之间的偏加关系:fk=xk+<fj+<rk+<zk。综上,为了准确、直观、清楚地表达英文自然句S,为了更好地揭示自然句S的内在数理结构,我们采用矩阵作为自然句S的首要表达式。
[0238] [B3.5.2]线性表达式
[0239] 同时,还可以利用线性形式来表达语句S,即:
[0240]
[0241] 特别强调:
[0242] ①每一个不省略谓语的英文自然句S的线性表达式都包含了有限次的偏加运算和复合运算。本文采用线性表达式作为自然句S的补充表达式。
[0243] ②本发明的矩阵表达式和线性表达式之间是等价关系。
[0244] ③一个英文自然句S的线性表达式,同时也天然地是一个以函数f1,……,fn(n等于谓语动词单元数量)为未知量的线性方程组,因此,本文接下来的用代入法求得句法结构解析结果的过程,也自然地可以看作是求解这个以函数f1,……,fn(n等于谓语动词单元数量)为未知量的线性方程组的过程。
[0245] B3.6部分矩阵的代入求解程序
[0246] 第1步
[0247] 如果存在不在该句法结构可能矩阵解中出现的顺序值,则排除该句法结构可能矩阵解;
[0248] 例如对于如下的可能矩阵解
[0249]
[0250] 编号为4的词单元没有出现,排除。
[0251] 第2步
[0252] 如果在不同的句法向量中出现相同的顺序值或出现相同的句法向量,则排除该句法结构可能矩阵解;
[0253] 例如对于如下的可能矩阵解
[0254]
[0255] 编号为5的词单元出现了两次,排除。
[0256] 第3步
[0257] 在每一个可能矩阵解中,将与其他句法向量之间存在相互代入关系的句法向量全都进行等量代换,如果在等量代换之后出现两个句法向量的交叉矛盾,则排除该句法结构可能矩阵解;
[0258] 例如对于如下的可能矩阵解
[0259]
[0260] 对上述矩阵进行代入,f2和f3出现了函数的代入交叉矛盾。代入得到:f2=3+<e+<6+<(4+<f2+<7+<e)。等式左右两端同时出现了f2,这就出现了(的)逻辑
矛盾。排除。
[0261] 第4步
[0262] 在每一个可能矩阵解中,将与其他句法向量之间存在相互代入关系的句法向量全都进行等量代换,如果在等量代换之后出现两个位置逆反的顺序值,则排除该句法结构可能矩阵解;这是既数学处理的根本要求,也是定义在严格偏序关系<□上的偏加法运算的本质要求。
[0263] 例如对于如下的可能矩阵解
[0264]
[0265] 对其进行代入,f2=4+<5+<6+<3+<e+<7+<e,得到顺序为(4,5,6,3,e,7,e),出现位置逆反的顺序值,排除。
[0266] 第5步
[0267] 在任意一个可能矩阵解中,如果存在如果存在与其他句法向量之间没有相互代入关系的句法向量,则执行插空操作以获得所有该可能矩阵解所对应的可能句法解析结构,并验证根据所述可能句法解析结构得到的语句是否与所述经预处理的语句完全相同,其进一步包括:
[0268] 5.5.1、先对该可能矩阵解中相互之间存在代入关系的句法向量进行等量代换,从而将该可能矩阵解转化为一组相互之间不存在代入关系的句法向量 将可能矩阵解中的句法向量称为第一类句法向量,将转化得到的句法向量 称为
第二类句法向量;
[0269] 5.5.2、任取一个第二类句法向量 按照预定的方向逐一标注 中的每一个句法元素的顺序值;标注句法元素的顺序值之后,任取 中的第i个句法元素,仅在该句法元素的第一侧构造唯一的空位;造空之后,任取一个句法向量 以外的第二类句法向量 以整
体插空的方式将句法向量 插入所构造的空位,进而生成一个新的句法向量,将这个新句法向量记为 并将整体插空而得到的句法向量,统称为第三类句法向量;
[0270] 5.5.3、对第三类句法向量 按照预定的方向对从向量 中的第一侧第一个句法元素开始到向量 中包含的向量 的第二侧第一个句法元素
为止的每一个句法元素,全都标注顺序值;位于向量 中包含的向量 第一侧的
元素,不标注顺序值;将向量 的第二侧的第一个句法元素记为 将按照前述方式对
向量 标注的句法向量部分,记为甩尾句法向量 标注顺序值之后,任
取一个前述的甩尾向量中的第j个句法元素,仅在该元素第一侧构造唯一的空位;造空之后,任取一个未使用过的第二类句法向量 以整体插空的方式将句法向量 插入所构造
的空位,进而生成一个新的句法向量,则将新生成的句法向量记为 或者
[0271] 第三类句法向量 按照预定方向,对句法向量 中的每一个句法元素全都标注顺序值;标注句法元素的顺序值之后,任取一个 中的第t个
句法元素,在该句法元素的第一侧构造唯一的空位;造空之后,任取一个未使用过得第二类句法向量 以整体插空的方式将该向量 插入前面构造的空位,进而生成一个新向量,
则该新向量记为
[0272] 5.5.4、重复执行5.5.3,每当上一次造空和插空步骤结束的时候,对经过上一次造空和插空步骤而得到的第三类句法向量进行下一次的造空和插空操作,直至将所有第二类句法向量 全部插空完毕,最后得到一个单行的第三类句法向量,将所述最后得到的第三类句法向量称为最终单行向量;
[0273] 5.5.5、如果一个可能句法解析结构对应的所有所述最终单行向量中均存在两个位置逆反的顺序值,则排除该可能句法解析结构;
[0274] 5.5.6、重复执行5.5.2至5.5.5直至所有可能句法解析结构被遍历。
[0275] B3.7部分矩阵修正程序
[0276] 必要时,转入修正程序,以便对两个以上的句法结构解析结果进行修正,具体包括如下操作:
[0277] (1)名词代词单元充当主语和宾语的重检和取舍。
[0278] (2)运用语言规则对句法结构进行检查。举例:
[0279] ①依据英文句法结构规律,主语从句的引导词不能省略。
[0280] 引导主语从句的that不能省略;
[0281] ②依据英文句法结构规律,主语在人称和数量上要与谓语保持一致;
[0282] ③依据动词的及物和不及物性质,判定其后是否连接宾语。
[0283] (3)结构歧义的重新检查检和排除。
[0284] (4)倒装、省略、there be作为特殊情形对待。
[0285] (5)将抽出的成分放回。
[0286] (6)生成并输出最终解。
[0287] 通过修正可以克服部分语句结构不规范的问题提高解析准确度。
[0288] 优选地,可以根据解析结果将句法结构形成句法树数据结构。
[0289] B3.8部分对两种插空方法的专门说明
[0290] [B3.8.1]两种不同的插空方法的共同原则:
[0291] 原句的顺序值数列1,2,......,k,可以看作是经过可能矩阵解中的找得到明确位置的句法向量的等量代换和经过可能矩阵解中的找不到明确位置的句法向量之间的有限次整体插空而得到的。即,与原句对应的初始句法向量 可以看作是先
经过可能矩阵解中的找得到明确位置的句法向量的等量代换,再经过可能矩阵解中的找不到明确位置的句法向量之间的有限次整体插空而得到的。各种不相同的插空情况,本质上就是组合数学中的排列和组合。
[0292] [B3.8.2]第1种插空方法:
[0293] 在任意一个可能矩阵解中,如果存在与其他任何句法向量之间都没有明确的代入关系的句法向量,则首先对该可能矩阵解中与其他句法向量之间存在代入关系的句法向量全都进行等量代换,同时令该可能矩阵解中与其他句法向量之间不存在代入关系的句法向量全都保持不变,综合前述两个方面,将该可能矩阵解转化为一组相互之间全都不存在代入关系的句法向量 将可能矩阵解中原有的句法向量f1,f2,...,fδ统称为第一类句法向量;在前述的等量代换之后,将按照前述方式转化出来的一组相互之间不存在代入关系的句法向量 统称为第二类句法向量;强调,第二类句法向量全都
是相互之间不存在代入关系的句法向量。当θ≥2时,整体插空有意义;下述讨论全都预设θ≥2。
[0294] 接下来,进行单侧同向保序整体插空,也可以称为单侧顺向保序整体插空:任取一个第二类句法向量 按照从右到左的方向(也可以从左到右)逐一标注句法向量 中的每一个句法元素的顺序值。标注句法元素的顺序值之后,任取一个 中的句法元素,不妨设该句法元素是 中的右边数第i个元素,仅在该句法元素的右侧(也可以仅在左侧)构
造唯一的空位;造空之后,任取一个除句法向量 以外的第二类句法向量 以整体插空
的方式将句法向量 插入前面构造的空位,进而生成一个新句法向量,将这个新向量记为凡是经过整体插空而得到的句法向量,统称为第三类句法向量,则
是第三类句法向量;对于任给的两个句法向量α和β,如果将向量β以整体插空的方式
插入句法向量α的右边数第i个句法元素所对应的空位,得到了一个新的第三类句法向
i
量,则将这个新获得的第三类句法向量记为[α]+<β;强调,第三类句法向量全都是相互之间不存在代入关系的句法向量。第1个造空和插空步骤完毕。
[0295] 转入第2个造空和插空步骤。对经过第1个造空和插空步骤而得到的第三类句法向量 按照从右到左的方向(也可从左到右,但要与上一次标序选取的方向相
同,即与上一次标序在同一侧),对从向量 中的右边数第一个句法元素开始到向
量 中包含的向量 的左边数第一个句法元素为止的每一个句法元素,全都标注
顺序值;位于向量 中包含的向量 左侧的句法元素,不标注顺序值;将向量
的左边数第一个句法元素记为 将按照前述方式对向量 中标注顺序的句
法向量部分,记为:句法向量 称该句法向量为:甩尾向量。标注顺序值之后,任
取一个前述的甩尾向量中的元素,不妨设该元素是甩尾向量 中的右边数第j个
元素,仅在该元素右侧(也可仅在左侧,但要与上一次造空选取的方向相同,即与上一次造空在同一侧),构造唯一的空位;造空之后,任取一个除在第1个造空和插空步骤中使用过的句法向量 和 以外的第二类句法向量 以整体插空的方式将句法向量 插入前面构
造的空位,进而生成一个新的句法向量,则将新生成的句法向量记为 对
于任给的句法向量α和β,将向量β的左边数第一个句法元素记为λ(β),如果存在句
法向量[α]i+<β,则按照前述方式对向量[α]i+<β进行标注,并将按照前述方式标
注的句法向量部分,记为:向量[αk\λ(βk-1)],称该向量为:甩尾向量。第2个造空和插空步骤完毕。
[0296] 按照前述方法,对经过上一次造空和插空步骤而得到的第三类句法向量选取甩尾向量,并按照前述的方法对所选取的甩尾向量标注顺序值,但要与上一次标序选取的方向相同,即与上一次标序在同一侧;标注顺序值之后,任取一个该甩尾向量中的句法元素,按照前述方法构造唯一的单侧空位,但要与上一次造空选取的方向相同,即与上一次造空在同一侧;造空之后,任取一个除在先前的造空和插空步骤中使用过的句法向量以外的第二类句法向量,以整体插空的方式将该第二类句法向量插入前面构造的空位,进而生成一个新的句法向量;重复执行前述的操作:每当上一次造空和插空步骤结束的时候,都按照前述的方法,对经过上一次造空和插空步骤而得到的第三类句法向量进行下一次的造空和插空操作,直至将第二类句法向量 全部插空完毕,最后得到一个单行的第三类句法向量;将最后得到的第三类句法向量称为最终单行向量。
[0297] 将前述的从首次选取第二类句法向量 到生成最终单行向量的一个完整流程作为一个具体方案,从而前述的每一次造空和插空步骤也就是具体方案中的一个步骤。
[0298] 通过穷举每一个步骤的全部可能情况,穷举全部方案。检查穷举生成的每一个最终单行向量:删除出现两个位置逆反的顺序值的最终单行向量。
[0299] 如果穷举生成的每一个最终单行向量都出现两个位置逆反的顺序值,则违反自然规律,排除全部最终单行向量,进而排除该句法结构可能矩阵解。
[0300] 凡是没有出现两个位置逆反的顺序值的最终单行向量,都符合自然规律,都是合理的最终单行向量;保留合理的最终单行向量作为正确结果之一,并保留该句法结构可能矩阵解作为正确结果之一,以备生成句法树之用。
[0301] [B3.8.3]第2种插空方法:
[0302] 在任意一个可能矩阵解中,如果存在与其他任何句法向量之间都没有明确的代入关系的句法向量,则首先对该可能矩阵解中与其他句法向量之间存在代入关系的句法向量全都进行等量代换,同时令该可能矩阵解中与其他句法向量之间不存在代入关系的句法向量都保持不变,综合前述两个方面,将该可能矩阵解转化为一组相互之间全都不存在代入关系的句法向量 将该可能矩阵解中原有的那些句法向量f1,f2,...,fδ统称为第一类句法向量;在前述的等量代换之后,将按照前述方式转化出来的一组相互之间不存在代入关系的句法向量 统称为第二类句法向量;强调,第二类句法向量
全都是相互之间不存在代入关系的句法向量。当θ≥2时,整体插空有意义;下述讨论全都预设θ≥2。
[0303] 接下来,进行单侧同向不保序整体插空,也可以称为单侧顺向不保序整体插空:任取一个第二类句法向量 按照从右到左的方向(也可从左到右)对句法向量 中的每一个句法元素逐一标注顺序值。标注句法元素的顺序值之后,任取一个 中的句法元素,不妨设该句法元素是 中的右边数第m个元素,仅在该句法元素的右侧(也可以仅在左侧)构
造唯一的空位;造空之后,任取一个除句法向量 以外的第二类句法向量 以整体插空的
方式将向量 插入前面构造的空位,进而生成一个新的句法向量,则将新生成的句法向量记为 凡是经过整体插空而得到的句法向量,统称为第三类句法向量;对于任
给的两个句法向量α和β,如果将向量β以整体插空的方式插入向量α的右边数第m个
句法元素所对应的空位,得到了一个新的第三类句法向量,则将这个新获得的第三类句法m
向量记为(α)+<β。第1个造空和插空步骤完毕。
[0304] 转入第2个造空和插空步骤。对于经过第1个造空和插空步骤而得到的第三类句法向量 按照从右到左的方向(也可从左到右,但要与上一次标序选取的方向
相同,即与上一次标序在同一侧),对句法向量 中的每一个句法元素全都标注
顺序值;标注句法元素的顺序值之后,任取一个 中的句法元素,不妨设该元素
是 中的右边数第t个句法元素,仅在该句法元素右侧(也可仅在左侧,但要与上
一次造空选取的方向相同,即与上一次造空在同一侧),构造唯一的空位;造空之后,任取一个除在第1个造空和插空步骤中使用过的句法向量 和 以外的第二类句法向量 以
整体插空的方式将该向量 插入前面构造的空位,进而生成一个新向量,则该新向量记为第2个造空和插空步骤完毕。
[0305] 按照前述的方法,对经过上一次造空和插空步骤而得到的第三类句法向量标注顺序值,但要与上一次标序选取的方向相同,即与上一次标序在同一侧;标注顺序值之后,任取一个该第三类句法向量中的句法元素,按照前述的方法构造唯一的单侧空位,但要与上一次造空选取的方向相同,即与上一次造空在同一侧;造空之后,任取一个除在先前的造空和插空步骤中使用过的句法向量以外的第二类句法向量,以整体插空的方式将该第二类句法向量插入前面构造的空位,进而生成一个新的句法向量;重复执行前述的操作:每当上一次造空和插空步骤结束的时候,都按照前述的方法,对经过上一次造空和插空步骤而获得的第三类句法向量进行下一次的造空和插空操作,直至将第二类句法向量 全部插空完毕,最后得到一个单行的第三类句法向量;将最后得到的第三类句法向量称为最终单行向量。
[0306] 将前述的从首次选取第二类句法向量 到生成最终单行向量的一个完整流程作为一个具体方案,从而前述的每一次造空和插空步骤也就是具体方案中的一个步骤。
[0307] 通过穷举每一个步骤的全部可能情况,穷举全部方案。检查穷举生成的每一个最终单行向量:在区分可能矩阵解中的不同位置上的e的前提之下,将两个或两个以上完全相同的最终单行向量保留一个,删除多余的雷同的最终单行向量,然后再删除出现两个位置逆反的顺序值的最终单行向量。
[0308] 在删除多余的雷同的最终单行向量之后,如果每一个最终单行向量都出现两个位置逆反的顺序值,则违反自然规律,排除全部最终单行向量,进而排除该句法结构可能矩阵解。
[0309] 在删除多余的雷同的最终单行向量之后,凡是没有出现两个位置逆反的顺序值的最终单行向量,都符合自然规律,都是合理的最终单行向量;保留合理的最终单行向量作为正确结果之一,并保留该句法结构可能矩阵解作为正确结果之一,以备生成句法树之用。
[0310] [B3.8.4]对两种方法的特点综述和比较:
[0311] 可以通过数学方法证明:前述两个方法中的全部方案和全部步骤都是有限的、固定的、可查明的,并且可以给出全部具体方案和全部步骤的个数计算公式,还可以给出通过穷举生成的全部最终单行向量的个数计算公式。前述两个方法都构造了相应的映射全排列集合和相应的递归函数作为其数学模型。前述两个方法中的每一环节都有严格的数学依据和严密的数学论证。前述两个方法是完全符合自然规律的方法。
[0312] 前述的两个方法都是针对下述原则展开的,都是下述原则的具体实施方案:
[0313] 原句的顺序值数列1,2,......,k,可以看作是经过可能矩阵解中的找得到明确位置的句法向量的等量代换和经过可能矩阵解中的找不到明确位置的句法向量之间的有限次整体插空而得到的。即,与原句对应的初始句法向量 可以看作是先
经过可能矩阵解中的找得到明确位置的句法向量的等量代换,再经过可能矩阵解中的找不到明确位置的句法向量之间的有限次整体插空而得到的。各种不相同的插空情况,本质上就是组合数学中的排列和组合。
[0314] 前述的两个方法都满足了上述原则的要求,并且两个方法的最终结果是完全一致的。由此可见,前述的两个方法是等效的方法。
[0315] 在选取用来造空的句法元素方面:前述的第1种方法对于造空元素的选择是有限制的,实际上是要求保持插空句法向量的先后顺序;前述的第2种方法对于造空元素的选择是没有限制的,实际上是不要求保持插空句法向量的先后顺序。
[0316] 在最终单行向量方面:在区分可能矩阵解中的不同位置上的e的前提之下,前述第1种方法生成的最终单行向量都是两两不相同的句法向量,而前述的第2种方法生成的最终单行向量可能会出现雷同,因此要删除多余的雷同的最终单行向量。
[0317] 下面,本文将分别对前述两种方法做具体说明。
[0318] [B3.8.5]对第1种插空方法的具体说明
[0319] [B3.8.5.1]构造作为方案模式的映射
[0320] 注:并列名词代词组合向量和关联词组合向量都看作一个整体,不能被其他句法向量整体插空。
[0321] 原句的顺序值数列1,2,......,k,可以看作是经过可能矩阵解中的找得到明确位置的句法向量的等量代换和经过可能矩阵解中的找不到明确位置的句法向量之间的有限次整体插空而得到的。即,与原句对应的初始句法向量 可以看作是先
经过可能矩阵解中的找得到明确位置的句法向量的等量代换,再经过可能矩阵解中的找不到明确位置的句法向量之间的有限次整体插空而得到的。各种不相同的插空情况,本质上就是组合数学中的排列和组合。
[0322] 下面详细介绍前述的单侧保序整体插空方法。该方法能够精确地刻画出可能矩阵解中的找不到明确位置的句法向量之间的有限次整体插空的每一种情况。
[0323] 将原可能矩阵解转化为θ个找不到明确位置的新句法向量记为: 将这θ个句法向量进行全排列,根据组合数学的相关原
理,这样的全排列结果是 个;即经过这样的全排列,共得到θ!个θ元有序组。将
经过这样的全排列得到的θ!个θ元有序组构成的集合记为 (θ≥2)
[0324] 构造j个两两都不相同的θ元映射ρj,j∈N,1≤j≤θ!令每个θ元映射ρj都是从集合{t1,t2,...,tθ}到集合 的映射;集合{t1,t2,...,tθ}仅用来表示映射ρj的定义域,进而辅助标定集合Φ的θ元全排列,没有其他的实际含义。构造映射如下:
j∈N,1≤j≤θ!;对任给的j1和j2,
j1∈N,j2∈N,1≤j1≤θ!,1≤j2≤θ!,如果j1≠j2,则ρj1≠ρj2。(θ≥2)
[0325] 对 于 θ 元 映 射 ρj, 有 如 下 的 结 论 成 立 :显 然,对 任 意 一 个
ρj(tk),都存在 1≤δ≤θ,使得 即任意一个ρj(tk)都标定了集合
中的一个句法向量 (θ≥2)
[0326] 依据前述的构造可知:由θ!个θ元映射ρj构成的有限集合Ω={ρ1,ρ2,ρ3,ρ4,ρ5,ρ6,...,ρθ!}就刻画了有限集合集合 的θ
元全排列。(θ≥2)
[0327] 集合π={ρ1,ρ2,ρ3,ρ4,ρ5,ρ6,...,ρθ!}列表说明:(θ≥2)
[0328]
[0329] 定义1.1:将在一个前述的从选取第二类句法向量 到生成最终单行向量的完整操作流程中使用的全部θ个第二类句法向量的任意一种顺序排列,作为一个方案模式。举一例详细说明:如果 作为方案模式,则表示第1个步骤是选取向量
和 并将向量 以单侧保序整体插空的方式插入向量 第2个步骤是选取 并将
以单侧保序整体插空的方式插入第1个步骤生成的新句法向量中,……,第θ个步骤是选取向量 并将 以单侧保序整体插空的方式插入第(θ-1)个步骤生成的新句法向量中。
显然可见,任意一个θ元映射ρj都是一个方案模式,并且全部θ元映射ρj的集合 就
是全部方案模式的集合,则全部方案模式的总数是θ!个。(θ≥2)
[0330] 定义1.2:将依据任意一个方案模式而进行的任意一次插空并生成新向量的操作,作为该方案模式的一个步骤。对任意一个方案模式ρj,将依据ρj执行的第k个步骤记为 [nk]表示第k个步骤总共有nk种可供选择的情况。
[0331] 定义1.3:将依据任意一个方案模式ρj执行的每一个步骤都选取任意一种具体情况,再将各个步骤都联合起来,作为一个具体方案。将任意一个具体方案记为
ρj表示该具体方案所依据的方案模式,ik表示第k个步骤选取
该步骤上的第ik种情况。
[0332] [B3.8.5.2]构造插空递归函数
[0333] 接下来,本文要依据任意一个方案模式ρj,构造一个插空递归算法通过该递归算法,就能够刻画前述的每一次单侧保序整体插空的具体
操作过程。在构造插空递归算法之前,首先给出下列5个定义,作为预备知识:
[0334] 下面要构造的插空递归算法 就是前述的依据方案模式ρj执行的第k个步骤。其中的k表示插空递归算法 运行的次数,即执行前述的
单侧保序整体插空操作的次数。
[0335] 定义1.4:任给一个句法向量α,一元函数W表示取出并标记句法向量α。W(α)=αk表示取出句法向量α,并将句法向量α标记为αk,称αk为:输入向量。
[0336] 定义1.5:任给一个句法向量β,一元函数Q表示取出并标记句法向量β。Q(β)=βk表示取出句法向量β,并将句法向量β标记为βk,称βk为:插空向量。在运行插空递归算法 过程中,要将句法向量βk插入句法向量αk中。
[0337] 定义1.6:二元函数Z表示对句法向量αk标注顺序值,将句法向量αk中的从右数起第1个句法元素标注顺序值1,然后从右至左依次标注顺序值2,3,......,直至标注到向量αk中包含的向量βk-1中的从左数起的第1个句法元素为止。将向量βk-1中的从左
数起的第1个句法元素记为λ(βk-1),将λ(βk-1)的顺序值记为nk,则nk是前述标注的最大顺序值。该过程刻画为:设句法向量αk=b......λ(βk-1)......b2b1,元素λ(βk-1)表示向量βk-1中的从左数起的第1个元素。在第k个步骤中,对αk运行二元函数Zk(α,β)得:λ(βk-1)......b2<2>b1<1>,将这个结果记为:向量[αk\λ(βk-1)],称该向量为:甩尾向量。记号 表示:对甩尾向量[αk\λ(βk-1)]标注的最大顺序值是
nk。运行二元函数Z得
[0338] 定义1.7:二元函数T表示对甩尾向量进行整体插空操作,在二元函数Z运行完毕之后,在甩尾向量上选取从右边数的第ik个句法元素,并在第ik个句法元素的右
侧构造唯一的空位,然后将向量βk以整体插空的方式插入该空位。该过程刻画为:设
句法向量αk=b......λ(βk-1)......b2b1,元素λ(βk-1)表示向量βk-1中的从左
数起第1个元素。则甩尾向量是[αk\λ(βk-1)]=λ(βk-1)......b2<2>b1<1>。
在第k个步骤中,对向量[αk\λ(βk-1)]和向量βk运行二元函数Tk(α,β),
将βk以整体插空的方式插入[αk\λ(βk-1)]右边数第ik个句法元素所对应的
空位得到: 将经过前述的插空而得到
的新向量记为 称向量 为:输 出向量。
[0339] 定义1.8:任给一个句法向量α,将α中包含的句法元素的个数记为σ[α]。如果句法向量α中包含n个句法元素,n∈N,则显然有:n=σ[α]。
[0340] 注:在下面的插空递归算法的定义中,会看到这样的等式:
[0341]
[0342] 其中的α和β是自变量的含义,是抽象记号,可以宽泛取值。因此,上述的记法并不矛盾。
[0343] 下面,依据本文前述的映射ρj和4个函数,定义插空递归算法如下:
[0344] 注:任取一个方案模式ρj;集合
[0345]
[0346] 特别强调:当k=1时,插空递归算法 的初始条 件是:
[0347]
[0348] 递归算法 的特点在于:将前述的单侧保序整体插空操作分解成了四个环节:①取造空向量;②取插空向量;③对造空向量中特定的句法元素标注顺序值,并截取甩尾向量;④任意选取甩尾向量中的一个句法元素,并在其右侧构造唯一的空位,然后将插空向量以整体插空的方式插入之前构造的空位。
[0349] [B3.8.5.3]插空递归算法 的操作举例
[0350]
[0351] (区分不同位置上的e)
[0352] 令集合 θ=4,θ!=24,ρj=ρ2。
[0353] 令 则
[0354]
[0355] 令nε是第ε个步骤选取的甩尾向量中的句法元素的个数,iε是第ε个步骤构造的空位对应的元素顺序数。
[0356] 执行方案模式ρ2,则要将插空递归算法 运行3次。选取一个具体方案
[0357] 运行如下:(n1∈N,i1∈N,1≤i1≤n1)
[0358]
[0359] 易得n1=4;取i1=3,得到:T1(α,β)=(7eC(eA5 6eB)8eD)
[0360] 运行如下:(n2∈N,i2∈N,1≤i2≤n2)
[0361]
[0362] 易得n2=6;取i2=4,得到:
[0363] T2(α,β)=(7eC(eA 5 6(1 2 3 4)eB)8eD)
[0364] 运行如下:(n3∈N,i3∈N,1≤i3≤n3)
[0365]
[0366] 易得n3=7;取i3=2,得到:
[0367] T3(α,β)=(7eC(eA 5 6(1 2 3 4)eB)8(eE9 10eF)eD)
[0368] [B3.8.5.4]对该法穷尽性和互异性的说明
[0369] 结论1.1:前述的θ元映射的全排列集合 和前述的插空递归算法穷尽了前述的找不到明确位置的句法向量之间的有限次整体插空的全
部可能。
[0370] 结论1.2:依据前述的插空递归算法 的定义可知,在本文方法的任意两个具体方案中,都分别存在互不相同的两个步骤,即任意两个具体方案都不相同。因此,在区分不同位置上的e的前提之下,本文方法的全部具体方案生成的全部最终单行向量都是两两不相同的句法向量。
[0371] [B3.8.5.5]第一组计算公式和相关证明
[0372] 注:并列名词代词组合向量和关联词组合向量都看作一个整体,不能被其他句法向量整体插空。
[0373] 注:以下的引理和定理,都是在给定了本文方法中的任意一个方案模式ρj和插空递归算法 的前提下展开讨论;都是在区分可能矩阵解中的不同位置上的e的前提之下展开讨论。
[0374] 定义1.9:运行插空递归算 设在第k个步骤上截取的甩尾向量的个数是n,不妨设在第k个步骤上截取的n个甩尾向量是α1,α2,......,αn,则在第k个步骤上对这些向量中的每一个进行整体插空,将这些向量的插空情况的个数之和记为τ[∑(k)]。
[0375] 引理1.1:(σ的定义,参见定义1.8)
[0376]
[0377] 证:如下:
[0378] (1)k≥2 时,依 据 前 述 的 定 义1.6可 知,第k个 步 骤 的 甩 尾 向 量其 中 的 句 法 元 素
表示向量αk中包含的元素,<βk-1>表示向量βk-1在向量αk中的元素
所对应的空位上。依据甩尾向量[αk\λ(βk-1)]的表达式,在该句法向量中,元素的个数显然是:σ[βk]+(ik-1)。待证明的结论成立。
[0379] (2)k=1时,依据前述的插空递归算法 的定义直接得到。
[0380] 证毕
[0381] 引理1.2:任给一个k,k∈N且k≥1,对在第k个步骤上截取的甩尾向量标注的句法元素的最大顺序值是:
[0382]
[0383] 证:依据算法 中的函数Zk(α,β)的递归定义,对在第k个步骤上截取的甩尾向量[αk\λ(βk-1)]标注的句法元素的最大顺序值是:
[0384]
[0385] 依据引理1.1,第k个步骤的甩尾向量[αk\λ(βk-1)]包含的句法元素的个数是:
[0386]
[0387] 则对在第k个步骤上截取的甩尾向量标注的句法元素的最大顺序值是:
[0388]
[0389] 证毕
[0390] 引 理 1.3:插 空 递 归 算 法 生 成 的 具 体 方 案的个数是:(σ的定义,参见定义1.8)(k∈N,k≥1)
[0391]
[0392] 证:依据引理1.2,任给一个k,k∈N且k≥1,对在第k个步骤上截取的甩尾向量标注的句法元素的最大顺序值是:
[0393]
[0394] 依据算法 中的插空函数Tk(α,β)的递归定义,i1的取值范围是:1≤i1≤n1,即1≤i1≤σ[α1]。
[0395] 依据算法 中的插空函数Tk(α,β)的递归定义,k≥3时ik-1的取值范围是:1≤ik-1≤nk-1,即1≤ik-1≤σ[βk-2]+(ik-2-1)。
[0396] 不妨设 β1=λ(β1)......b2b1,则依据前述的结果和插空递归算法 的定义,第1个步骤的插空情况总数是σ[α1],即β1有σ[α1]
个插入α1的插空情况。
[0397] 不妨设β2=λ(β2)......c2c1, 则依据前述的结果和算法 中的插空函数Tk(α,β)的递归定义,对任意给定的
一个i1,1≤i1≤σ[α1],第2个步骤的插空情况的个数都是σ[β1]+(i1-1);由于i1的取值方法是遍历实数区间[1,σ[α1]]内的全体自然数,则对于i1的全部取值,按照求和∑的方式进行计数,可以算得:第2个步骤插空情况总数是 即β2有
个插入甩尾向量的插空情况。
[0398] 不 妨 设 β3 = λ(β3)...d2d1, 或则依据前 述的结果和 算
法 中的插空函数Tk(α,β)的递归定义,对任意给定的一个i2,
1≤i2≤σ[β1]+(i1-1),第3个步骤的插空情况个数都是σ[β2]+(i2-1);由于i2的取
值方法是遍历实数区间[1,σ[β2]+(i2-1)]内的全体自然数,i1的取值方法是遍历实数区间[1,σ[α1]]内的全体自然数,则对于i2的全部取值,按照求和∑的方式进行计数累加,可以算得:第3个步骤插空情况总数是 即β3有
个插入甩尾向量的插空情况。
[0399] 以下用数学归纳法证明:在第k个步骤上,对全体甩尾向量进行整体插空,获得的插空情况的总数τ[∑(k)]是:(k≥2)
[0400]
[0401] 假设:在第k个步骤上,对全体甩尾向量进行整体插空,获得的插空情况的总数τ[∑(k)]是:(k≥2)
[0402] 依据算法 中的插空函数Tk(α,β)的递归定义,k≥2时ik的取值范围是:1≤ik≤nk,即1≤ik≤σ[βk-1]+(ik-1-1)。
[0403] 依据算法 中的插空函数Tk(α,β)的递归定义,对任意给定的一个ik,1≤ik≤σ[βk-1]+(ik-1-1),第(k+1)个步骤的插空情况个数都是σ[βk]+(ik-1);
由于ik的取值方法是遍历实数区间[1,σ[βk-1]+(ik-1-1)]内的全体自然数,则对于
任意给定的一个σ[βk-1]+(ik-1-1)的取值,按照求和∑的方式进行计数累加,遍历ik
的全部取值,容易计算出:通过个数累加获得的第(k+1)个步骤的插空情况的总数是
即对于任给的一个σ[βk-1]+(ik-1-1)的取值,βk+1都有
个插入甩尾向量的插空情况。
[0404] 进一步地,归纳假设已经提供了公式σ[βk-1]+(ik-1-1)的表达式,即,通过归纳假设可以确定σ[βk-1]+(ik-1-1)的全部取值。所以,按照求和∑的方
式进行计数累加,从公式 出发,依据归纳假设公式
遍历ik-1,......,i2,i1的全
部取值,从而消去参数ik-1,......,i2,i1,则直接计算出:第(k+1)个步骤的插空情况总数是:
[0405]
[0406] 即βk+1总共有 个插入甩尾向量的插空情况。待证明的结论成立,数学归纳法证明完毕。
[0407] 综合上述的结果,第k个步骤的插空情况的总数τ[∑(k)]如下:(k≥1)
[0408]
[0409] 依据插空递归算法 的定义,第k个步骤的插空情况的总数τ[∑(k)],也就是算法 的最后一个步骤的插空情况的总数τ[∑(k)],
与算法 生成的具体方案 的个数是相等的,综合
上述的结果,插空递归算法 生成的具体方案
个数是:(σ的定义,参见定义1.8)(k∈N,k≥1)
[0410]
[0411] 证毕
[0412] 定理1.1:将本文方法中的任意一个方案模式ρj生成的具体方案的个数记为Ω[ρj],则有:Ω[ρj]=(公式如下)(θ≥2)
[0413]
[0414] 证:依据插空递归算法 的定义,再结合该定义套用引理1.3,则待证结论显然成立。 证毕
[0415] 定理1.2:将本文方法中的任意一个方案模式ρj生成的最终单行向量的个数记为Ω[ρj],则有:Ω[ρj]=(公式如下)(θ≥2)
[0416]
[0417] 证:依据最终单行向量和具体方案的定义,最终单行向量的个数和具体方案的个数相等。又依据定理1.1可得。 证毕
[0418] [B3.8.5.6]对第1种插空方法的操作举例
[0419]
[0420] 取集合 θ=4,θ!=24,ρj=ρ2。
[0421] 取 则
[0422]
[0423] 则
[0424] 方案模式ρ2生成的最终单行向量的个数Ω[ρ2]=(公式如下):
[0425]
[0426] 当i1=1时:
[0427]
[0428] 当i1=2时:
[0429]
[0430] 当i1=3时:
[0431]
[0432] 当i1=4时:
[0433]
[0434]
[0435] 方案模式ρ2生成的最终单行向量的个数是:Ω[ρ2]=140。
[0436] 本 文 方 法 的 全 部 方 案 模 式 生 成 的 最 终 单 行 向 量 的 个 数 是:
[0437] [B3.8.5.7]第二组计算公式和相关证明
[0438] 将原可能矩阵解转化为θ个找不到明确位置的新句法向量记为: 将新生成的找不到明确位置的句法向量
统称为第二类句法向量。将任意一个在前述的等量代换过程中被消去的句法向量称为前身句法向量。对于任意一个新生成的第二类句法向量 将在前述的等量代换过程
中被 替换掉的前身句法向量f的个数记为uε。则 是经过uε次等量代换获得的。
[0439] 例 如:由 向 量 f2 = e+ < f3+ < 7+ < f5 和 f3 = 3+ < e+ < 4+<e和 f5 =8+ <e+< 9+< 10经 过 等 量 代 换 生 成 了 一 个 第 二 类 向 量
则显然可知u1=2,即 是经过2次等
量代换得到的。
[0440] 定理1.3:任给一个第二类句法向量 将 中包含的句法元素的个数记为 将句法向量 消去的前身句法向量f的个数记为uε,则 满足递推公式:
[0441]
[0442] 证:运用数学归纳法证明如下:
[0443] (1),如果uε=0,则句法向量 消去的前身句法向量f的个数是0,即 是原可能矩阵解中的没有经过等量代换的句法向量,句法向量 中包含的句法元素个数是4,显然此时公式 成立。
[0444] (2),假设当uε=k时 成立,此时 消去的前身句法向量f的个数是k, 中包含的元素个数是3k+4;当uε=k+1时,可以看作 先消去k个前身句法向量f,然后在此基础之上, 在减去自身一个句法元素的同时又引入了一个前身句法向量f,即 在减去自身1个句法元素的同时又引入了4个元素。则此时 中包含的元素个数是3k+4+3,
则公式 成立。综合(1)、(2),可知待证明结论成立。
[0445] [B3.8.5.8]关于本文方法的个数计算公式的总结
[0446] 结论1.3:在区分不同位置上的e的前提之下,将本文方法中的任意一个方案模式ρj对应的具体方案的个数与方案模式ρj生成的最终单行向量的个数相同,都记为
Ω[ρj],则有:Ω[ρj]=(公式如下)(σ的定义,参见定义1.8)(θ≥2)
[0447]
[0448] 结论1.4:不妨定义dθ=σ[ρj(tθ)],则结论1.3的公式转化为:Ω[ρj]=(如下)(σ的定义,参见定义1.8)(θ≥2)
[0449]
[0450] 结论1.5:依据定理1.3,则有:Ω[ρj]=(如下)(σ的定义,参见定义1.8)(θ≥1)
[0451]
[0452] 结论1.6:定义gθ=3uθ+4,则结论1.5的Ω[ρj]公式转化为:Ω[ρj]=(如下)(σ的定义,参见定义1.8)(θ≥2)
[0453]
[0454] 结论1.7:因为在本文方法实施过程中总共产生θ!个方案模式,则在区分不同位置上的e的前提之下,本文方法中的全部方案模式生成的全部具体方案的个数与生成的全部最终单行向量的个数相同,个数公式是: (θ≥2)
[0455] 结论1.8:综合前述的每一条结论,在本文方法实施过程中生成有限个具体方案和有限个最终单行向量。具体方案的个数和最终单行向量的个数是确定的,有确切的计算公式和相应的证明,符合自然规律。
[0456] [B3.8.5.9]第1种方法的全面演示
[0457] 举例说明:取如下可能矩阵解,并先将该可能矩阵解中找得到明确位置的句法向量进行等量代换。设:可能矩阵解,如下:
[0458]
[0459] 原可能矩阵解,经过等量代换转化为:
[0460]
[0461] 集合 列表如下:(集合 θ=3,θ!=6)
[0462]
[0463] 构造映射ρj如下:(θ=3, )
[0464] j∈N,1≤j≤6
[0465] 集合π={ρ1,ρ2,ρ3,ρ4,ρ5,ρ6}列表如下:
[0466]
[0467] 执行方案模式ρ1,要将递归算法 运行2次。
[0468] 运行如下:(n1∈N,i1∈N,1≤i1≤n1)
[0469]
[0470] 运行如下:(n2∈N,i2∈N,1≤i2≤n2)
[0471]
[0472] 依据方案模式ρ1, 列表:
[0473]
[0474] 依据方案模式ρ1, 列表:
[0475]
[0476]
[0477]
[0478] 执行方案模式ρ2,要将递归算法 运行2次。
[0479] 运行如下:(n1∈N,i1∈N,1≤i1≤n1)
[0480]
[0481] 运行如下:(n2∈N,i2∈N,1≤i2≤n2)
[0482]
[0483] 依据方案模式ρ2, 列表:
[0484]
[0485] 依据方案模式ρ2, 列表:
[0486]
[0487]
[0488] 执行方案模式ρ2,要将递归算法 运行2次。
[0489] 运行如下:(n1∈N,i1∈N,1≤i1≤n1)
[0490]
[0491] 运行如下:(n2∈N,i2∈N,1≤i2≤n2)
[0492]
[0493] 依据方案模式ρ3, 列表:
[0494]
[0495] 依据方案模式ρ3, 列表:
[0496]
[0497]
[0498]
[0499]
[0500] 执行方案模式ρ4--ρ6的过程,略。
[0501] 将插空递归算法 的重要信息列表总结如下:
[0502]
[0503] 还可将上述的公式转化为:用前身句法向量的个数表示的形式。
[0504] 前身句法向量个数和第二类句法向量中元素的个数列表:
[0505]
[0506]
[0507] 用前身句法向量的个数表达插空递归算法的重要信息,列表如下:
[0508]
[0509] 检查每一个最终单行向量是否出现两个位置逆反的顺序值,略。
[0510] 实例全面演示完毕。
[0511] [B3.8.6]对第2种插空方法的具体说明
[0512] 下面详细介绍前述的单侧不保序整体插空方法。该方法能够精确地刻画出可能矩阵解中的找不到明确位置的句法向量之间的有限次整体插空的每一种情况。
[0513] [B3.8.6.1]构造插空递归函数
[0514] 方案模式、具体方案、步骤的定义,参照第1种方法。下面是第2种方法与第1种方法的不同之处。构造一个插空递归算法 通过该递归算法,就能刻画前述每一次单侧不保序整体插空的具体过程。在构造步骤递归算法之前,首先给出下列5个定义,作为预备知识:
[0515] 下面要构造的插空递归算法 是依据方案模式ρj执行的第k个步骤。其中的k表示插空递归算法 运行的次数,即执行前述的单侧不保
序整体插空操作的次数。
[0516] 定义2.1:任给一个句法向量α,一元函数W表示取出并标记句法向量α。W(α)=αk表示取出句法向量α,并将句法向量α标记为αk。
[0517] 定义2.2:任给一个句法向量β,一元函数Q表示取出并标记句法向量β。Q(β)=βk表示取出句法向量β,并将句法向量β标记为βk。在运行插空递归算法
过程中,要将句法向量βk插入句法向量αk中。
[0518] 定义2.3:一元函数Z表示对句法向量αk标注顺序值,将句法向量αk中的从右数起第1个句法元素标注顺序值1,然后从右至左依次标注顺序值2,3,......,直至将句法向量αk中的句法元素全部标注完毕。将标注的最大顺序值记为nk。运行一元函数Z得到:
[0519] 定义2.4:二元函数T表示在运用一元函数Z对句法向量αk标序之后,在向量αk上选取右数第mk个元素,并在第mk个元素的右侧构造唯一的空位,然后将句法向量βk以整体插空的方式插入该空位。将插空之后获得的新向量记为: 运行二元函数T得到:
[0520] 定义2.5:任给一个句法向量α,将α中包含的句法元素的个数记为σ[α]。如果句法向量α中包含n个句法元素,n∈N,则显然有:n=σ[α]。
[0521] 注:在下面的插空递归算法的定义中,会看到这样的等式:
[0522] Wk(α)=Tk-1(α,β);
[0523] 其中的α和β是自变量的含义,是抽象记号,可以宽泛取值。因此,上述的记法并不矛盾。
[0524] 下面,依据本文前述的映射ρj和4个函数,定义插空递归算法如下:(集合 )
[0525]
[0526] [B3.8.6.2]具体方案和最终单行向量的个数计算公式
[0527] 引理2.1:
[0528] 证:依据前述的定义,在运行递归算法 的过程中,造空向量αk和插空向量βk中的句法元素都没有增加或减少,即对于任意一个句法元素b:
[0529] ①如果b∈αk或者b∈αk,则
[0530] ②如果 并且 则
[0531] 依据①和②,显然有:
[0532] 证毕
[0533] 引理2.2:设:(k∈N,k≥1)
[0534]
[0535] 句法向量∑Ψk表示是由ρj(t1),ρj(t2),...,ρj(tk)依次经过单侧不保序整体插空而得到的句法向量。m1,m2,...,mk-1分别表示相应的向量的任意一个空位顺序数。则有如下结论成立:
[0536]
[0537] (注: )
[0538] 证:运用数学归纳法证明如下:
[0539] (1),如果k=1, 结论成立。
[0540] (2),假设当k=h时成立,则有
[0541] 当k=h+1时, 则有:
[0542]
[0543] 依据引理2.1,则可得:
[0544]
[0545] 依据归纳假设可得:
[0546]
[0547] 从而可得:
[0548] 又可得:
[0549] 证毕
[0550] 定理2.1:将本文方法中的任意一个方案模式ρj生成的具体方案的个数记为Ω[ρj],则有: (θ≥2)
[0551] 证:依据插空递归算法 的定义,对于任意的一个方案模式ρj,第k个步骤的插空情况的个数与第k个步骤的造空向量αk的句法元素的个数相同。依据
前述的定义,显然 则依据引理2.2,方案模式ρj的第k个步骤有 个
情况。由于任意一个方案模式ρj都下辖(θ-1)个步骤,依据组合数学的乘法原理可知:
本文方法的任意一个方案模式ρj都对应 个具体方案。
[0552] 证毕
[0553] 定理2.2:将本文方法中的任意一个方案模式ρj生成的最终单行向量的个数记为Ω[ρj],则有: (θ≥2)
[0554] 证:依据最终单行向量和具体方案的定义,最终单行向量的个数和具体方案的个数相等;又依据定理2.1,可得。
[0555] 证毕
[0556] 结论2.1:本文方法总共有θ!个方案模式,根据定理2.1,又依据组合数学的加法原理,可知具体方案的总数是:
[0557] 结论2.2:本文方法总共有θ!个方案模式,根据定理2.2,又依据组合数学的加法原理,可知最终单行向量的总数是:
[0558] [B3.8.6.3]第2种方法的实例演示
[0559] 举例说明:取如下可能矩阵解,并先将该可能矩阵解中找得到明确位置的句法向量进行等量代换。设:可能矩阵解,如下:
[0560]
[0561] 原可能矩阵解,经过等量代换转化为:
[0562]
[0563] 集合 列表如下:集合 θ=3,θ!=6
[0564]
[0565]
[0566] 构造映射ρj如下:(θ=3, )
[0567]
[0568] 集合π={ρ1,ρ2,ρ3,ρ4,ρ5,ρ6}列表如下:
[0569]
[0570] 执行方案模式ρ1,要将步骤递归算法 运行2次。
[0571] 运行如下:
[0572]
[0573] 运行如下:
[0574]
[0575] 依据方案模式ρ1,运行插空函数 列表:
[0576]
[0577] 依据方案模式ρ1,运行插空函数 列表:
[0578]
[0579]
[0580]
[0581] 执行方案模式ρ2--ρ6的过程,略。
[0582] 将插空递归算法 的重要信息列表总结如下:
[0583]
[0584]
[0585] 将两个或两个以上完全相同的最终单行向量保留一个,删除多余的雷同的最终单行向量,最后得到210个两两不相同的最终单行向量,与方法1的结果完全吻合。
[0586] 检查每一个最终单行向量是否出现两个位置逆反的顺序值,略。
[0587] 实例演示完毕。
[0588] C部分 应用举例
[0589] C1部分 例1
[0590] 例1:通过预处理,可以除去语句中的杂质,并标注和识别语句中的词单元编号和类型。例如,对于英语语句S=“I can completely understand what what you just said really meant”,其除去杂质后得到的语句S=“I can understand what what you said meant”,在对其进行词单元识别以及词单元类型标注和编号后,可以得到与下表匹配的数据结构。
[0591]语句 词单元类型 编号
I 名词代词单元 1
can understand 谓语动词单元 2
what A 从属关联词单元 3
what B 从属关联词单元 4
you 名词代词单元 5
said 谓语动词单元 6
meant 谓语动词单元 7
[0592]
[0593] 本发明基于对以上数据结构所表示的经预处理的语句进行句法分析,以获得各词单元在句子中的成分关系。
[0594] 图1是本发明实施例的基于计算机的自然语言句法结构解析的方法的流程图。如图1所示,所述方法包括:
[0595] 步骤110、读取待解析的经预处理的语句数据结构,所述经预处理的语句数据结构中仅包括语句的关联词单元、谓语动词单元和名词代词单元,且各词单元按照在所述经预处理的语句中的顺序进行编号并标注类型。
[0596] 步骤120、对每一谓语动词单元,生成对应的引导语元素、主语元素、谓语元素和宾语元素;所述引导语元素的可能取值为编号小于对应的谓语动词单元编号的并列关联词单元或从属关联词单元之一,或由一个编号小于对应的谓语动词单元编号的并列关联词单元和一个与其相邻且编号小于对应的谓语动词单元编号且编号大于该并列关联词单元编号的从属关联词单元构成的关联词组合向量之一,或空单元;
[0597] 所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一,或最大词单元的编号小于对应的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词代词组合向量之一,或在前出现的谓语元素对应的句法向量之一,或空单元;
[0598] 所述谓语元素为对应的所述谓语动词单元;
[0599] 所述宾语元素的可能取值编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词代词单元之一,或最小词单元的编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的全体并列名词代词组合向量族中
所包含的并列名词代词组合向量之一,或在后出现的谓语元素对应的句法向量之一,或空单元。
[0600] 具体地,对于经预处理的语句,设其谓语动词单元总数量为n,由于谓语动词单元仅能作为谓语,因此,每个谓语动词单元均对应一个谓语元素,记每个谓语动词单元为rk,k=1,…,n。
[0601] 在获得谓语元素后,继续基于每个谓语元素的位置编号生成对应的引导语元素、主语元素、宾语元素。
[0602] I、引导语元素
[0603] 记每个谓语动词单元rk对应的关联词单元集合为:
[0604] {xk}=Leadk∪conjk∪(conjkοLeadk)∪{e}
[0605] 记谓语动词单元rk对应的引导语元素为xk,其可能取值集合为{xk}。生成谓语动词单元rk对应的引导语元素为xk的可能取值集合(优选)包括:
[0606] 所述引导语元素的可能取值为编号小于对应的谓语动词单元编号的并列关联词单元或从属关联词单元之一,或由一个编号小于对应的谓语动词单元编号的并列关联词单元和一个与其相邻且编号小于对应的谓语动词单元编号且编号大于该并列关联词单元编
号的从属关联词单元构成的关联词组合向量之一,或空单元。
[0607] 即,xk∈Leadk∪conjk∪(conjkοLeadk)∪{e}。
[0608] 在上述的公式中,集合Leadk表示编号小于对应的谓语动词单元编号的从属关联词单元集合;conjk表示编号小于对应的谓语动词单元编号的并列关联词单元集合;
(conjkοLeadk)表示由一个编号小于对应的谓语动词单元编号的并列关联词单元和一个与其相邻且编号小于对应的谓语动词单元编号且编号大于该并列关联词单元编号的从属关
联词单元构成的关联词组合向量的集合,e表示空单元。
[0609] 例如,对于上述表1所示的经预处理的语句S=“I can understand what what you said meant”,有:
[0610] r1=“can understand”,对于r1有{x1}={e},也即,与r1对应的引导语元素的取值为空单元。
[0611] r2=“said”,对于r2有{x2}={what A,what B,e},与r2对应的引导语元素的可取值为句中第一个what或第二个what,即,“what A”和“what B”之一,或空单元。
[0612] r3=“meant”,对于r3有{x3}={what A,what B,e},与r3对应的引导语元素的可取值为句中第一个what或第二个what,即,“what A”和“what B”之一,或空单元。
[0613] II、主语元素
[0614] 记每个谓语动词单元rk对应的主语名词代词单元集合为{yk}=NPIyk∪VNPyk∪NOMPk∪Gk∪{e}或{yk}=NPIyk∪VNPyk∪NOMPk∪Gk∪fyk∪{e}。
[0615] 记谓语动词单元rk对应的主语元素为yk,其可能取值集合为{yk}。
[0616] 生成对应的主语元素yk优选包括:
[0617] (1)当对应的谓语动词单元编号是最小的谓语动词单元编号时,所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一,或其最大词单元的编号小于对应的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词代词组合向量之一,或空单元。
[0618] 也即,当不存在rk-1时:{yk}=NPIyk∪VNPyk∪NOMPk∪Gk∪{e};
[0619] 从而,yk∈NPIyk∪VNPyk∪NOMPk∪Gk∪{e}。
[0620] 在上述的公式中,集合NPIyk表示编号小于对应的谓语动词单元编号的纯粹名词单元集合;VNPyk表示编号小于对应的谓语动词单元编号的名词性质的动词单元集合;
NOMPk编号小于对应的谓语动词单元编号的主格代词单元集合;Gk表示由最大词单元的编号小于对应的谓语动词单元编号的全体并列名词代词组合向量族组成的并集合;e表示空单元。
[0621] (2)当对应的谓语动词单元编号不是最小的谓语动词单元编号时,所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一,或最大词单元的编号小于对应的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词代词组合向量之一,或在前出现的谓语动词单元对应的句法向量之一,或空单元。
[0622] 也即,当存在rk-1时:{yk}=NPIyk∪VNPyk∪NOMPk∪Gk∪fyk∪{e}。
[0623] 从而,yk∈NPIyk∪VNPyk∪NOMPk∪Gk∪fyk∪{e}。
[0624] 在上述的公式中,集合NPIyk表示编号小于对应的谓语动词单元编号的纯粹名词单元集合;VNPyk表示编号小于对应的谓语动词单元编号的名词性质的动词单元集合;
NOMPk编号小于对应的谓语动词单元编号的主格代词单元集合;Gk表示由最大词单元的编号小于对应的谓语动词单元编号的全体并列名词代词组合向量族组成的并集合;fyk表示在前出现的谓语动词单元对应的句法向量集合;e表示空单元。
[0625] 例如,对于上述表1所示的经预处理的语句S=“I can understand what what you said meant”,有:
[0626] r1=“can understand”,对于r1有其为编号最小的谓语动词单元,因此,{y1}=NOMP1∪{e}={I,e}。
[0627] r2=“said”,对于r2有其并非编号最小的谓语动词单元,在r1和r2之间的名词代词单元仅有“you”,而编号小于2的函数为f1,因此,{y2}=NOMP2∪fy2∪{e}={I,you}∪{f1}∪{e}。
[0628] r3=“meant”,对于r3其并非编号最小的谓语动词单元,在r2和r3之间没有名词代词单元,而编号小于3的函数为f1和f2,因此,有:{y3}=NOMP3∪fy3∪{e}={I,you}∪{f1,f2}∪{e}。
[0629] III、宾语元素
[0630] 记每个谓语动词单元rk对应的宾语名词代词单元集合为{zk}=NPIzk∪VNPzk∪OBJPk∪Hk∪{e}或{zk}=NPIzk∪VNPzk∪OBJPk∪Hk∪fzk∪{e}。
[0631] 同时,记谓语动词单元rk对应的引导语元素为zk,其可能取值集合为{zk}。
[0632] 生成对应的宾语元素{zk}优选包括:
[0633] (1)当对应的谓语动词单元编号是最大的谓语动词单元编号时,所述宾语元素的可能取值为编号大于对应的谓语动词单元编号的名词代词单元之一,或其最小词单元的编号大于对应的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词代词组合向量之一,或空单元。
[0634] 也即,当不存在rk+1时:{zk}=NPIzk∪VNPzk∪OBJPk∪Hk∪{e}。
[0635] 在上述的公式中,集合NPIzk表示编号大于对应的谓语动词单元编号的纯粹名词单元集合;VNPzk表示编号大于对应的谓语动词单元编号的名词性质的动词单元集合;
OBJPk表示编号大于对应的谓语动词单元编号的名词性质的宾格代词单元集合;Hk表示由最小词单元的编号大于对应的谓语动词单元编号的全体并列名词代词组合向量族组成的
并集合;e表示空单元。
[0636] (2)当对应的谓语动词单元编号不是最大的谓语动词单元编号时,所述宾语元素的可能取值为编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词代词单元之一,或其最小词单元的编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词
代词组合向量之一,或在后出现的谓语动词单元对应的句法向量之一,或空单元。
[0637] 也即,当存在rk+1时:{zk}=NPIzk∪VNPzk∪OBJPk∪Hk∪fzk∪{e}。
[0638] 在上述的公式中,集合NPIzk表示编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的的纯粹名词单元集合;VNPzk表示编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词性质的动词单元集合;NOMPk表示大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的宾格代词单元集合;Hk表示由最小词单元的编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的全体并列名词代词组合向量族组成的并集合;fzk表示在后出现的谓语动词单元对应的句法向量集合;e表示空单元。
[0639] 例如,对于上述表1所示的经预处理的语句S=“I can understand what what you said meant”,有:
[0640] r1=“can understand”,对于r1其不是编号最大的谓语动词单元,在r1和r2之间存在名词代词单元“you”,没有并列名词代词组合向量,而编号大于1的函数为f2,f3,因此,{z1}=OBJP1∪fz1∪{e}={you}∪{f2,f3}∪{e}。
[0641] r2=“said”,对于r2其并非编号最大的谓语动词单元,在r1和r2之间没有名词代词单元,而编号大于2的函数为f3,也没有并列名词代词组合向量,因此,有:{z2}=fz2∪{e}={f3}∪{e}。
[0642] r3=“meant”,对于r3其为编号最大的谓语动词单元,在r3之后没有名词代词单元,也没有并列名词代词组合向量,而编号大于3的函数也不存在,因此,{z3}={e}。
[0643] 由此,经由步骤120处理,对于上述示例,可以生成得到各元素的取值集合。
[0644] 步骤130、根据所述引导语元素、主语元素、谓语元素、宾语元素的可能取值,获取每一谓语动词单元对应的句法向量的所有可能取值,所述句法向量包括引导语元素、主语元素、谓语元素、宾语元素。
[0645] 如前所述,每一个主谓搭配结构可以用句法向量的方式来表示。根据步骤120的运行结果,对于上述表1所示的经预处理的语句S=“I can understand what what you said meant”,有:
[0646] {r1}={can understand}
[0647] {x1}={e}
[0648] {y1}={I,e}
[0649] {z1}={you,f2,f3,e}
[0650] 运用组合数学中的乘法原理:f1(x1,y1,r1,z1)=(见下方列表)
[0651]序号 行矩阵f1 序号 行矩阵f1
(1-1) f1=(e,I,r1,you) (1-5) f1=(e,e,r1,you)
(1-2) f1=(e,I,r1,f2) (1-6) f1=(e,e,f1,f2)
(1-3) f1=(e,I,r1,f3) (1-7) f1=(e,e,r1,f3)
(1-4) f1=(e,I,r1,e) (1-8) f1=(e,e,r1,e)
[0652] 用顺序值替换常量,得到:f1(x1,y1,r1,z1)=(见下方列表)
[0653]序号 行矩阵f1 序号 行矩阵f1
(1-1) f1=(e,1,2,5) (1-5) f1=(e,e,2,5)
(1-2) f1=(e,1,2,f2) (1-6) f1=(e,e,2,f2)
[0654](1-3) f1=(e,1,2,f3) (1-7) f1=(e,e,2,f3)
(1-4) f1=(e,1,2,e) (1-8) f1=(e,e,2,e)
[0655] {r2}={said}
[0656] {x2}={what A,what B,e}
[0657] {y2}={I,you,f1,e}
[0658] {z2}={f3,e}
[0659] 运用组合数学中的乘法原理:f2(x2,y2,r2,z2)=(见下方列表)
[0660]序号 行矩阵f2 序号 行矩阵f2
(2-1) f2=(what A,I,r2,f3) (2-13) f2=(what B,f1,r2,f3)
(2-2) f2=(what A,I,r2,e) (2-14) f2=(what B,f1,r2,e)
(2-3) f2=(what A,you,r2,f3) (2-15) f2=(what B,e,r2,f3)
(2-4) f2=(what A,you,r2,e) (2-16) f2=(what B,e,r2,e)
(2-5) f2=(what A,f1,r2,f3) (2-17) f2=(e,I,r2,f3)
(2-6) f2=(what A,f1,r2,e) (2-18) f2=(e,I,r2,e)
(2-7) f2=(what A,e,r2,f3) (2-19) f2=(e,you,r2,f3)
(2-8) f2=(what A,e,r2,e) (2-20) f2=(e,you,r2,e)
(2-9) f2=(what B,I,r2,f3) (2-21) f2=(e,f1,r2,f3)
(2-10) f2=(what B,I,r2,e) (2-22) f2=(e,f1,r2,e)
(2-11) f2=(what B,you,r2,f3) (2-23) f2=(e,e,r2,f3)
(2-12) f2=(what B,you,r2,e) (2-24) f2=(e,e,r2,e)
[0661] 用顺序值替换常量,得到:f2(x2,y2,r2,z2)=(见下方列表)
[0662]序号 行矩阵f2 序号 行矩阵f2
(2-1) f2=(3,1,6,f3) (2-13) f2=(4,f1,6,f3)
(2-2) f2=(3,1,6,e) (2-14) f2=(4,f1,6,e)
(2-3) f2=(3,5,6,f3) (2-15) f2=(4,e,6,f3)
(2-4) f2=(3,5,6,e) (2-16) f2=(4,e,6,e)
(2-5) f2=(3,f1,6,f3) (2-17) f2=(e,1,6,f3)
(2-6) f2=(3,f1,6,e) (2-18) f2=(e,1,6,e)
(2-7) f2=(3,e,6,f3) (2-19) f2=(e,5,6,f3)
(2-8) f2=(3,e,6,e) (2-20) f2=(e,5,6,e)
(2-9) f2=(4,1,6,f3) (2-21) f2=(e,f1,6,f3)
(2-10) f2=(4,1,6,e) (2-22) f2=(e,f1,6,e)
(2-11) f2=(4,5,6,f3) (2-23) f2=(e,e,6,f3)
(2-12) f2=(4,5,6,e) (2-24) f2=(e,e,6,e)
[0663] {r3}={meant}
[0664] {x3}={what A,what B,e}
[0665] {y3}={I,you,f1,f2,e}
[0666] {z3}={e}
[0667] 运用组合数学中的乘法原理:f3(x3,y3,r3,z3)=(见下方列表)
[0668]序号 行矩阵f3 (3-8) f3=(what B,f1,r3,e)
(3-1) f3=(what A,I,r3,e) (3-9) f3=(what B,f2,r3,e)
(3-2) f3=(what A,you,r3,e) (3-10) f3=(what B,e,r3,e)
[0669](3-3) f3=(what A,f1,r3,e) (3-11) f3=(e,I,r3,e)
(3-4) f3=(what A,f2,r3,e) (3-12) f3=(e,you,r3,e)
(3-5) f3=(what A,e,r3,e) (3-13) f3=(e,f1,r3,e)
(3-6) f3=(what B,I,r3,e) (3-14) f3=(e,f2,r3,e)
(3-7) f3=(what B,you,r3,e) (3-15) f3=(e,e,r3,e)
[0670] 用顺序值替换常量,得到:f3(x3,y3,r3,z3)=(见下方列表)
[0671]序号 行矩阵f3 (3-8) f3=(4,f1,7,e)
(3-1) f3=(3,1,7,e) (3-9) f3=(4,f2,7,e)
(3-2) f3=(3,5,7,e) (3-10) f3=(4,e,7,e)
(3-3) f3=(3,f1,7,e) (3-11) f3=(e,1,7,e)
(3-4) f3=(3,f2,7,e) (3-12) f3=(e,5,7,e)
(3-5) f3=(3,e,7,e) (3-13) f3=(e,f1,7,e)
(3-6) f3=(4,1,7,e) (3-14) f3=(e,f2,7,e)
(3-7) f3=(4,5,7,e) (3-15) f3=(e,e,7,e)
[0672] 运用组合数学中的乘法原理:
[0673] |S|=|f1|×|f2|×|f3|=8×24×15=2880
[0674] 则总共生成2880个可能矩阵解。
[0675] 步骤140、根据所有句法向量的所有可能取值生成至少一个句法结构可能矩阵解,所述句法结构可能矩阵解由按照谓语动词单元编号顺序排列的句法向量组成。
[0676] 对于上述表1所示的经预处理的语句S=“I can understand what what yousaid meant”基于f1,f2和f3的可能取值,可以获得多个可能矩阵解。
[0677] 步骤150、验证根据句法结构可能矩阵解得到的语句是否与所述经预处理的语句完全相同,如果完全相同,则将该句法结构可能矩阵解中的各句法向量输出,并作为句法结构解析结果之一。优选地,利用词单元编号替代词单元进行等量代换、整体插空、偏加操作,然后基于获得的语句序列是否为顺序递增的数字序列判断是否与经预处理的语句完全相同。
[0678] 步骤150可以包括如下步骤:
[0679] 步骤151、如果存在不在该句法结构可能矩阵解中出现的顺序值,则排除该句法结构可能矩阵解;例如对于如下的可能矩阵解:
[0680]
[0681] 编号为4的词单元没有出现,排除。
[0682] 步骤152、如果在不同的句法向量中出现相同的顺序值或出现相同的句法向量,则排除该句法结构可能矩阵解;例如对于如下的可能矩阵解:
[0683]
[0684] 编号为5的词单元出现了两次,排除。
[0685] 步骤153、在每一个可能矩阵解中,将与其他句法向量之间存在相互代入关系的句法向量全都进行等量代换,如果在等量代换之后出现两个句法向量的交叉矛盾,则排除该句法结构可能矩阵解;
[0686] 例如对于如下的可能矩阵解:
[0687]
[0688] 对上述矩阵进行代入,f2和f3出现了函数的代入交叉矛盾。代入得到:f2=3+<e+<6+<(4+<f2+<7+<e)。等式左右两端同时出现了f2,这就出现了(的)逻辑
矛盾。排除。
[0689] 步骤154、在每一个可能矩阵解中,将与其他句法向量之间存在相互代入关系的句法向量全都进行等量代换,如果在等量代换之后出现两个位置逆反的顺序值,则排除该句法结构可能矩阵解;
[0690] 例如对于如下的可能矩阵解:
[0691]
[0692] 对其进行代入,f2=4+<5+<6+<3+<e+<7+<e,得到顺序为(4,5,6,3,e,7,e),出现位置逆反的顺序值,排除。
[0693] 步骤155、在任意一个可能矩阵解中,如果存在与其他句法向量之间没有相互代入关系的句法向量,则执行插空操作以获得所有该可能矩阵解所对应的可能句法解析结构,并验证根据所述可能句法解析结构得到的语句是否与所述经预处理的语句完全相同,其进一步包括:
[0694] 步骤155.1,先对该可能矩阵解中相互之间存在代入关系的句法向量进行等量代换,从而将该可能矩阵解转化为一组相互之间不存在代入关系的句法向量
将可能矩阵解中的句法向量称为第一类句法向量,将转化得到的句法向
量 称为第二类句法向量;
[0695] 步骤155.2,任取一个第二类句法向量 按照预定的方向逐一标注 中的每一个句法元素的顺序值;标注句法元素的顺序值之后,任取 中的第i个句法元素,仅在该句法元素的第一侧构造唯一的空位;造空之后,任取一个句法向量 以外的第二类句法向量以整体插空的方式将句法向量 插入所构造的空位,进而生成一个新的句法向量,将
这个新句法向量记为 并将整体插空而得到的句法向量,统称为第三类句法向
量;
[0696] 步骤155.3,对第三类句法向量 按照预定的方向对从向量中的第一侧第一个句法元素开始到向量 中包含的向量 的第二侧
第一个句法元素为止的每一个句法元素,全都标注顺序值;位于向量 中包含的
向量 第一侧的元素,不标注顺序值;将向量 的第二侧的第一个句法元素记为
将按照前述方式对向量 标注的句法向量部分,记为甩尾句法向量
标注顺序值之后,任取一个前述的甩尾向量中的第j个句法元素,仅在该元素第一侧构造唯一的空位;造空之后,任取一个未使用过的第二类句法向量 以整体插空的方式将句
法向量 插入所构造的空位,进而生成一个新的句法向量,则将新生成的句法向量记为
或者
[0697] 第三类句法向量 按照预定方向,对句法向量 中的每一个句法元素全都标注顺序值;标注句法元素的顺序值之后,任取一个 中的第t个
句法元素,在该句法元素的第一侧构造唯一的空位;造空之后,任取一个未使用过得第二类句法向量 以整体插空的方式将该向量 插入前面构造的空位,进而生成一个新向量,
则该新向量记为
[0698] 步骤155.4,重复执行步骤155.3,每当上一次造空和插空步骤结束的时候,对经过上一次造空和插空步骤而得到的第三类句法向量进行下一次的造空和插空操作,直至将所有第二类句法向量 全部插空完毕,最后得到一个单行的第三类句法向量,将所述最后得到的第三类句法向量称为最终单行向量;
[0699] 步骤155.5,如果一个可能句法解析结构对应的所有所述最终单行向量中均存在两个位置逆反的顺序值,则排除该可能句法解析结构;
[0700] 步骤155.6,重复执行步骤155.2至步骤155.5直至所有可能句法解析结构被遍历。
[0701] 例如,对于如上所述的示例,一个句法结构可能矩阵解为:
[0702]
[0703] 将上述矩阵转化为线性表达式为:
[0704]
[0705] 经过前述的插空操作,每一个最终单行向量中都存在两个位置逆反的顺序值,排除。
[0706] 对于如上所述的示例,一个句法结构可能矩阵解为:
[0707]
[0708] 可以将矩阵转换为线性表达式:
[0709]
[0710] 进行等量代换操作得到语句:
[0711] α=e+<1+<2+<(3+<(4+<5+<6+<e)+<7+<e)
[0712] 去掉空单元e,得到:
[0713] α=1+<2+<(3+<(4+<5+<6)+<7)
[0714] 它与预处理后的语句相同,该嵌套结构是句法结构解析结果之一。
[0715] 将词单元常量代入上述矩阵,则句法结构矩阵解可以表达为:
[0716]
[0717] 与这个矩阵表达式相对应的S的线性表达式如下:
[0718]
[0719] 据此,解析句子“I can understand what what you said meant”其句法结构为:I作为主句的主语,can understand作为主句的谓语,从句“what what you said meant”作为主句的宾语从句,在该从句中,第一个what为从句引导词,“what you said”为从句的主语,meant为宾语从句的谓语,宾语从句本身没有宾语;对于“what you said”从句,它充当了宾语从句里嵌套的主语从句,what为引导词,you为主语,said为谓语。
[0720] 进一步,所述方法还可以包括显示步骤,将句法结构解析结果中的各句法向量以及对应的句法结构关系用树状结构在人机交互界面中进行显示。
[0721] C2部分例2
[0722] 例2:作为另一示例,以下说明本实施例的方法对于例如:“That men who were appointed didn’t bother the liberals wash’t remarked upon by the press.”这样的复杂结构的语句的解析过程。
[0723] 上述语句经过预处理除去杂质并编号后的词序列表为:
[0724]原句短语 短语类型 顺序编号
That 从属关联词单元 1
men 名词代词单元 2
who 从属关联词单元 3
were appointed 谓语动词单元 4
didn’t bother 谓语动词单元 5
the liberals 名词代词单元 6
wasn’t remarked 谓语动词单元 7
[0725]
[0726] 该句共有三个谓语动词单元,分别记为r1、r2和r3。
[0727] 对于r1有,{r1}={were appointed}
[0728] {x1}={That,who,e}(e是空字符串)
[0729] {y1}={men,e}
[0730] {z1}={f2,f3,e}
[0731] 运用组合数学中的乘法原理:f1(x1,y1,r1,z1)=(见下方列表)
[0732]序号 行矩阵f1 序号 行矩阵f1
(1-1) f1=(That,men,r1,f2) (1-10) f1=(That,e,r1,f3)
(1-2) f1=(who,men,r1,f2) (1-11) f1=(who,e,r1,f3)
(1-3) f1=(e,men,r1,f2) (1-12) f1=(e,e,r1,f3)
(1-4) f1=(That,e,r1,f2) (1-13) f1=(That,men,r1,e)
(1-5) f1=(who,e,r1,f2) (1-14) f1=(who,men,r1,e)
(1-6) f1=(e,e,r1,f2) (1-15) f1=(e,men,r1,e)
(1-7) f1=(That,men,r1,f3) (1-16) f1=(That,e,r1,e)
(1-8) f1=(who,men,r1,f3) (1-17) f1=(who,e,r1,e)
(1-9) f1=(e,men,r1,f3) (1-18) f1=(e,e,r1,e)
[0733] 用顺序值替换常量,得到:f1(x1,y1,r1,z1)=(见下方列表)
[0734]序号 行矩阵f1 序号 行矩阵f1
(1-1) f1=(1,2,4,f2) (1-10) f1=(1,e,4,f3)
(1-2) f1=(3,2,4,f2) (1-11) f1=(3,e,4,f3)
(1-3) f1=(e,2,4,f2) (1-12) f1=(e,e,4,f3)
(1-4) f1=(1,e,4,f2) (1-13) f1=(1,2,4,e)
(1-5) f1=(3,e,4,f2) (1-14) f1=(3,2,4,e)
(1-6) f1=(e,e,4,f2) (1-15) f1=(e,2,4,e)
(1-7) f1=(1,2,4,f3) (1-16) f1=(1,e,4,e)
(1-8) f1=(3,2,4,f3) (1-17) f1=(3,e,4,e)
[0735](1-9) f1=(e,2,4,f3) (1-18) f1=(e,e,4,e)
[0736] 对于r2有,{r2}={didn’t bother}
[0737] {x2}={That,who,e}(e是空字符串)
[0738] {y2}={men,f1,e}
[0739] {z2}={the liberals,f3,e}
[0740] 运用组合数学中的乘法原理:f2(x2,y2,r2,z2)=(见下方列表)
[0741]序号 行矩阵f2 (2-14) f2=(who,f1,r2,f3)
(2-1) f2=(That,men,r2,the liberals) (2-15) f2=(e,f1,r2,f3)
(2-2) f2=(who,men,r2,the liberals) (2-16) f2=(That,e,r2,f3)
(2-3) f2=(e,men,r2,the liberals) (2-17) f2=(who,e,r2,f3)
(2-4) f2=(That,f1,r2,the liberals) (2-18) f2=(e,e,r2,f3)
(2-5) f2=(who,f1,r2,the liberals) (2-19) f2=(That,men,r2,e)
(2-6) f2=(e,f1,r2,the liberals) (2-20) f2=(who,men,r2,e)
(2-7) f2=(That,e,r2,the liberals) (2-21) f2=(e,men,r2,e)
(2-8) f2=(who,e,r2,the liberals) (2-22) f2=(That,f1,r2,e)
(2-9) f2=(e,e,r2,the liberals) (2-23) f2=(who,f1,r2,e)
(2-10) f2=(That,men,r2,f3) (2-24) f2=(e,f1,r2,e)
(2-11) f2=(who,men,r2,f3) (2-25) f2=(That,e,r2,e)
(2-12) f2=(e,men,r2,f3) (2-26) f2=(who,e,r2,e)
(2-13) f2=(That,f1,r2,f3) (2-27) f2=(e,e,r2,e)
[0742] 用顺序值替换常量,得到:f2(x2,y2,r2,z2)=(见下方列表)
[0743]序号 行矩阵f2 (2-14) f2=(3,f1,5,f3)
(2-1) f2=(1,2,5,6) (2-15) f2=(e,f1,5,f3)
(2-2) f2=(3,2,5,6) (2-16) f2=(1,e,5,f3)
(2-3) f2=(e,2,5,6) (2-17) f2=(3,e,5,f3)
(2-4) f2=(1,f1,5,6) (2-18) f2=(e,e,5,f3)
(2-5) f2=(3,f1,5,6) (2-19) f2=(1,2,5,e)
[0744](2-6) f2=(e,f1,5,6) (2-20) f2=(3,2,5,e)
(2-7) f2=(1,e,5,6) (2-21) f2=(e,2,5,e)
(2-8) f2=(3,e,5,6) (2-22) f2=(1,f1,5,e)
(2-9) f2=(e,e,5,6) (2-23) f2=(3,f1,5,e)
(2-10) f2=(1,2,5,f3) (2-24) f2=(e,f1,5,e)
(2-11) f2=(3,2,5,f3) (2-25) f2=(1,e,5,e)
(2-12) f2=(e,2,5,f3) (2-26) f2=(3,e,5,e)
(2-13) f2=(1,f1,5,f3) (2-27) f2=(e,e,5,e)
[0745] 对于r3有:{r3}={wasn’t remarked}
[0746] {x3}={That,who,e}
[0747] {y3}={men,the liberals,f1,f2,e}
[0748] {z3}={e}
[0749] 运用组合数学中的乘法原理:f3(x3,y3,r3,z3)=(见下方列表)
[0750]序号 行矩阵f3 (3-8) f3=(who,f1,r3,e)
(3-1) f3=(That,men,r3,e) (3-9) f3=(e,f1,r3,e)
(3-2) f3=(who,men,r3,e) (3-10) f3=(That,f2,r3,e)
(3-3) f3=(e,men,r3,e) (3-11) f3=(who,f2,r3,e)
(3-4) f3=(That,the liberals,r3,e) (3-12) f3=(e,f2,r3,e)
(3-5) f3=(who,the liberals,r3,e) (3-13) f3=(That,e,r3,e)
(3-6) f3=(e,the liberals,r3,e) (3-14) f3=(who,e,r3,e)
(3-7) f3=(That,f1,r3,e) (3-15) f3=(e,e,r3,e)
[0751] 用顺序值替换常量,f3(x3,y3,r3,z3)=(见下方列表)
[0752]序号 行矩阵f3 (3-8) f3=(3,f1,7,e)
[0753](3-1) f3=(1,2,7,e) (3-9) f3=(e,f1,7,e)
(3-2) f3=(3,2,7,e) (3-10) f3=(1,f2,7,e)
(3-3) f3=(e,2,7,e) (3-11) f3=(3,f2,7,e)
(3-4) f3=(1,6,7,e) (3-12) f3=(e,f2,7,e)
(3-5) f3=(3,6,7,e) (3-13) f3=(1,e,7,e)
(3-6) f3=(e,6,7,e) (3-14) f3=(3,e,7,e)
(3-7) f3=(1,f1,7,e) (3-15) f3=(e,e,7,e)
[0754] 运用组合数学中的乘法原理:
[0755] |S|=|f1|×|f2|×|f3|=18×27×15=7290
[0756] 则总共生成7290个可能矩阵解。
[0757] 对所有的句法结构可能矩阵解,运行矩阵代入求解程序、结构修正程序,可得到作为句法结构解析最终结果的可能矩阵解:
[0758]
[0759] 该例句是本文的整体插空方法成功处理的一个典型例句。经过本文前述的整体插空处理,上述的可能矩阵解的整体插空结果之一是如下的一个最终单行向量:e+<(1+<2+<(3+<e+<4+<e)+<5+<6)+<7+<e。这个最终单行向量没有出现逆序
数,是合理的最终单行向量。这个最终单行向量,与原句完全相同。该可能矩阵解也正是此例句的正确的句法结构解析结果。
[0760] 将上述可能矩阵解的编号还原为词单元,得到如下形式:
[0761]
[0762] 将这个矩阵转化为线性表达式:
[0763]
[0764] 去掉e得:
[0765]
[0766] 由此,得到对于上述语句示例的正确解析,即:f3是主句,也就是核心句;f2是f3的主语,即主语从句;f1是定语从句,修饰men。
[0767] 本示例可以较好地显示本方法的优越性。针对上述语句,当前计算机行业公认的两种世界上非常先进的自然语言句法结构解析装置-伯克利解析器(Berkeley Parser)和斯坦福解析器(Stanford Parser),至本申请递交之时,给出的依然是错误的解析结果。这两种装置给出的结果是完全相同的。其结果如下:
[0768] ①That men didn’t bother;
[0769] ②who were appointed;
[0770] ③the liberals wasn’t remarked upon by the press.
[0771] ①是主句,也就是核心句;③是①的宾语,即,宾语从句;②是定语从句,修饰men;That是限定词,修饰men。
[0772] 在英语当中,如果主语从句位于全句句首,而且由that引导,则that不可以省略,即便口语也是如此。在本发明的方法中,由于将句子处理为句法向量,因此就为主语从句That men didn’t bother the liberals这一部分,在解析的过程中预留了充分的空间,充分地保护了其作为一个完整分句而生成的可能性。
[0773] 对于that引导的主语从句的解析经常出错这一重大技术漏洞,至本申请递交之时,上述两种世界领先的自然语言句法结构解析装置仍然没能弥补。
[0774] C3部分例3
[0775] 例3:作为另一示例,以下说明本实施例的方法对于例如:“Jack who has abeautiful car is a businessman.”这样的复杂结构的语句的解析过程。上述语句经过预处理除去杂质并编号后的词序列表为:
[0776]原句短语 短语类型 顺序编号
Jack 名词代词单元 1
who 从属关联词单元 2
has 谓语动词单元 3
a car 名词代词单元 4
is 谓语动词单元 5
a businessman 名词代词单元 6
[0777] 该句共有两个谓语动词单元,分别记为r1和r2。
[0778] 对于r1有,{r1}={has}
[0779] {x1}={who,e}(e是空字符串)
[0780] {y1}={Jack,e}
[0781] {z1}={a car,f2,e}
[0782] 运用组合数学中的乘法原理:f1(x1,y1,r1,z1)=(见下方列表)
[0783]序号 行矩阵f1 序号 行矩阵f1
(1-1) f1=(who,Jack,r1,a car) (1-7) f1=(who,e,r1,f2)
(1-2) f1=(e,Jack,r1,a car) (1-8) f1=(e,e,r1,f2)
(1-3) f1=(who,e,r1,a car) (1-9) f1=(who,Jack,r1,e)
(1-4) f1=(e,e,r1,a car) (1-10) f1=(e,Jack,r1,e)
(1-5) f1=(who,Jack,r1,f2) (1-11) f1=(who,e,r1,e)
(1-6) f1=(e,Jack,r1,f2) (1-12) f1=(e,e,r1,e)
[0784]
[0785] 用顺序值替换常量,f1(x1,y1,r1,z1)=(见下方列表)
[0786]序号 行矩阵f1 序号 行矩阵f1
(1-1) f1=(2,1,3,4) (1-7) f1=(2,e,3,f2)
(1-2) f1=(e,1,3,4) (1-8) f1=(e,e,3,f2)
(1-3) f1=(2,e,3,4) (1-9) f1=(2,1,3,e)
(1-4) f1=(e,e,3,4) (1-10) f1=(e,1,3,e)
(1-5) f1=(2,1,3,f2) (1-11) f1=(2,e,3,e)
(1-6) f1=(e,1,3,f2) (1-12) f1=(e,e,3,e)
[0787] 对于r2有,{r2}={is}
[0788] {x2}={who,e}(e是空字符串)
[0789] {y2}={Jack,a car,f1,e}
[0790] {z2}={a businessman,e}
[0791] 运用组合数学中的乘法原理:f2(x2,y2,r2,z2)=(见下方列表)
[0792]序号 行矩阵f2 序号 行矩阵f2
(2-1) f2=(who,Jack,r2,a businessman) (2-9) f2=(who,Jack,r2,e)
(2-2) f2=(e,Jack,r2,a businessman) (2-10) f2=(e,Jack,r2,e)
(2-3) f2=(who,a car,r2,a businessman) (2-11) f2=(who,a car,r2,e)
(2-4) f2=(e,a car,r2,a businessman) (2-12) f2=(e,a car,r2,e)
[0793](2-5) f2=(who,f1,r2,a businessman) (2-13) f2=(who,f1,r2,e)
(2-6) f2=(e,f1,r2,a businessman) (2-14) f2=(e,f1,r2,e)
(2-7) f2=(who,e,r2,a businessman) (2-15) f2=(who,e,r2,e)
(2-8) f2=(e,e,r2,a businessman) (2-16) f2=(e,e,r2,e)
[0794] 用顺序值替换常量,f2(x2,y2,r2,z2)=(见下方列表)
[0795]序号 行矩阵f2 序号 行矩阵f2
(2-1) f2=(2,1,5,6) (2-9) f2=(2,1,5,e)
(2-2) f2=(e,1,5,6) (2-10) f2=(e,1,5,e)
(2-3) f2=(2,4,5,6) (2-11) f2=(2,4,5,e)
(2-4) f2=(e,4,5,6) (2-12) f2=(e,4,5,e)
(2-5) f2=(2,f1,5,6) (2-13) f2=(2,f1,5,e)
(2-6) f2=(e,f1,5,6) (2-14) f2=(e,f1,5,e)
(2-7) f2=(2,e,5,6) (2-15) f2=(2,e,5,e)
(2-8) f2=(e,e,5,6) (2-16) f2=(e,e,5,e)
[0796] 运用组合数学中的乘法原理:
[0797] |S|=|f1|×|f2|=12×16=192
[0798] 则总共生成192个可能矩阵解。
[0799] 可得到作为句法结构解析最终结果的可能矩阵解:
[0800]
[0801] 该例句是本文的整体插空方法成功处理的一个典型例句。经过本文前述的整体插空处理,上述的可能矩阵解得到了唯一的一个没有出现逆序数的最终单行向量:e+<1+<(2+<e+<3+<4)+<5+<6。这个最终单行向量是合理的最终单行向量。这个最终
单行向量的句法顺序值编号,与原句完全相同。该可能矩阵解也正是此例句的正确的句法结构解析结果。
[0802] 将上述可能矩阵解的编号还原为词单元,得到如下形式:
[0803]
[0804] 将这个矩阵转化为线性表达式:
[0805]
[0806] 去掉e得:
[0807]
[0808] C4部分 例4
[0809] 例4:作为另一示例,以下说明本实施例的方法对于例如:“After Jack,Mary and Linda left,I gave my son a new book.”这样的并列结构的语句的解析过程。
[0810] 上述语句经过预处理除去杂质并编号后的词序列表为:
[0811]原句短语 短语类型 顺序编号
After 从属关联词单元 1
Jack 名词代词单元 2
Mary 名词代词单元 3
and 并列关联词单元 4
Linda 名词代词单元 5
left 谓语动词单元 6
I 名词代词单元 7
gave 谓语动词单元 8
my son 名词代词单元 9
a book 名词代词单元 10
[0812]
[0813] 通过以下步骤包括生成并列名词代词组合向量族:
[0814] S2.1选取不重复的两个名词代词单元:
[0815] A、如果介于这两个名词代词单元之间没有其他词单元,则将这两个名词代词单元作为一个并列名词代词组合向量,并保留该并列名词代词组合向量;
[0816] B、如果介于这两个名词代词单元之间存在其他词单元,则检查介于这两个名词代词单元之间的每一个词单元:如果介于这两个名词代词单元之间的任意一个词单元,全都是名词代词单元或并列关联词单元,则将所选取的两个名词代词单元和介于这两个名词代词单元之间的全体词单元作为一个并列名词代词组合向量,并保留该并列名词代词组合向量;否则,不生成并列名词代词组合向量;
[0817] S2.2复执行S2.1直至所有的名词代词单元的组合方式被遍历,生成获得的所有的并列名词代词组合向量;
[0818] S2.3如果该可能句法解析结构存在并列名词代词组合向量,则对所有的并列名词代词组合向量进行划分,从而形成若干个并列名词代词组合向量族,使得:在每一个并列名词代词组合向量族中,该并列名词代词组合向量族中所包含的每一个并列名词代词组合向量全都包含了两个共同的名词代词单元。
[0819] S2.4在每一个名词代词组合向量族中,选取所有名词代词组合向量中所包含的编号最大的词单元,作为该名词代词组合向量族的最大词单元,以备后续生成主语时使用;选取所有名词代词组合向量中所包含的编号最小的词单元,作为该名词代词组合向量族的最小词单元,以备后续生成宾语时使用。
[0820] 在生成主语元素集合{y1}、{y2}的过程中,运行并列主语生成算法如下:
[0821] ①A(S)取出原句中的全体NPI词组、全体VNP词组、全体NOMP词组,并将原句中的全体NPI词组、全体VNP词组、全体NOMP词组列为一个集合,将该集合记为Ψ={Jack,Mary,Linda,I,my son,a book}={2,3,5,7,9,10}。
[0822] ② B(Ψ) 表 示 按 照 的 方 式 取 集 合 Ψ = {2,3,5,7,9,10} 中 任 意 两 元 素 的 全 部 组 合, 设 集 合
则B(Ψ)={{2,3},{2,5},{2,7},
{2,9},{2,10},{3,5},{3,7},{3,9},{3,10},{5,7},{5,9},{5,10},{7,9},{10,7},{10,
9}}。
[0823] ③K(α,β)对一元函数B(Ψ)的结果,即对任给的一个 按照元素在原句S中的句法顺序值的从小到大排列。则不妨设 则可得到有序对
则 生成的有序对是:
[0824] {<2,3>,<2,5>,<2,7>,<2,9>,<2,10>,<3,5>,<3,7>,<3,9>,<3,10>,<5,7>,<5,9>,<5,10>,<7,9>,<7,10>,<9,10>};
[0825] 设集合 进而建立一个连续词串公式 其中 是原句S中的从 到 的一
组相邻的连续词串或空词串,且 则
1 2 3
则Φ =2+<e+<3,Φ =2+<3+<4+<5,Φ =2+<3+<4+<5+
4 5
<6+<7,Φ =2+<3+<4+<5+<6+<7+<8+<9,Φ =2+<3+<4+<5+
6 7 8
<6+<7+<8+<9+<10,Φ =3+<4+<5,Φ =3+<4+<5+<6+<7,Φ =3+
9 10
<4+<5+<6+<7+<8+<9,Φ =3+<4+<5+<6+<7+<8+<9+<10,Φ
11 12
=5+<6+<7,Φ =5+<6+<7+<8+<9,Φ =5+<6+<7+<8+<9+<10,
13 14 15
Φ =7+<8+<9,Φ =7+<8+<9+<10,Φ =9+<e+<10。
t
[0826] ④H(Φ)对 二 元 函 数K(α,β) 生 成 的 进t
行检查:如果对任给的元素γ∈Φ,且 且 都有:γ=NPI或γ=
VNP或γ=NOMP或γ=CONJ或γ=e,则将Φt的标记改为 称为Φt生
成 设集合 则集合 则
[0827] ⑤M(α,β)表示对于任取的一个集合 如果集合 存在对应的 则定义一个集合族,该集合族由包含集合
的全体 集合构成,该集合 族记为 则
则M(α,β)={I1({2,
3}),I2({3,5}),I3({9,10})}。
[0828] ⑥N(α,β)对二元函数M(α,β)的结果 即对于任取集合如果集合 存在对应的集合族 则构造一个
新的集合如下 则可得P[I1({2,3})]=
{2,3,4,5},P[I2({3,5})]={2,3,4,5},P[I3({9,10})]={9,10}。
[0829] ⑦U(α)对二元函数N(α,β)的结果 取设 对任给的元素γ, 都有
τ(γ)≤τ(δ)。则Pmax[I1({2,3})]=5,Pmax[I2({3,5})]=5,Pmax[I3({9,10})]=10。
[0830] 对于r1有{r1}={left},编号为6。则对应的主语的选取方法为:当不存在rk-1时:{yk}=NPIyk∪VNPyk∪NOMPk∪Gk∪{e};
[0831] 其 中:
[0832] 其 中 :
[0833] 在上述的公式中,Gk表示最大值编号小于对应的谓语动词单元编号的全体并列名词代词集合族的并集合。
[0834] 则有:
[0835] 则 有:则r1对应的主语元素的集合是:
[0836] 在生成宾语元素集合{z1}、{z2}的过程中,运行并列宾语生成算法如下:
[0837] ①A(S)取出原句中的全体NPI词组、全体VNP词组、全体NOMP词组,并将原句中的全体NPI词组、全体VNP词组、全体NOMP词组列为一个集合,将该集合记为Ψ={Jack,Mary,Linda,I,my son,a book}={2,3,5,7,9,10}。
[0838] ② B(Ψ) 表 示 按 照 的 方 式 取 集 合 Ψ = {2,3,5,7,9,10} 中 任 意 两 元 素 的 全 部 组 合, 设 集 合
则B(Ψ)={{2,3},{2,5},{2,7},
{2,9},{2,10},{3,5},{3,7},{3,9},{3,10},{5,7},{5,9},{5,10},{7,9},{10,7},{10,
9}}。
[0839] ③K(α,β)对一元函数B(Ψ)的结果,即对任给的一个 按照元素在原句S中的句法顺序值的从小到大排列。则不妨设 则可得到有序对
则 生成的有序对是:
[0840] {<2,3>,<2,5>,<2,7>,<2,9>,<2,10>,<3,5>,<3,7>,<3,9>,<3,10>,<5,7>,<5,9>,<5,10>,<7,9>,<7,10>,<9,10>};
[0841] 设集合 进而建立一个连续词串公式 其中 是原句S中的从 到 的一
组相邻的连续词串或空词串,且 则
1 2 3
则Φ =2+<e+<3,Φ =2+<3+<4+<5,Φ =2+<3+<4+<5+
4 5
<6+<7,Φ =2+<3+<4+<5+<6+<7+<8+<9,Φ =2+<3+<4+<5+
6 7 8
<6+<7+<8+<9+<10,Φ =3+<4+<5,Φ =3+<4+<5+<6+<7,Φ =3+
9 10
<4+<5+<6+<7+<8+<9,Φ =3+<4+<5+<6+<7+<8+<9+<10,Φ
11 12
=5+<6+<7,Φ =5+<6+<7+<8+<9,Φ =5+<6+<7+<8+<9+<10,
13 14 15
Φ =7+<8+<9,Φ =7+<8+<9+<10,Φ =9+<e+<10。
[0842] ④H(Φt)对二元函数K(α,β)生成的 进行t
检查:如果对任给的元素γ∈Φ,且 且 都有:γ=NPI或γ=
t t
VNP或γ=NOMP或γ=CONJ或γ=e,则将Φ 的标记改为 称为Φ 生
成 设集合 则集合 则
[0843] ⑤M(α,β)表示对于任取的一个集合 如果集合 存在对应的 则定义一个集合族,该集合族由包含集合
的全体 集合构 成,该集合 族记为 则
则M(α,β)={I1({2,
3}),I2({3,5}),I3({9,10})}。
[0844] ⑥N(α,β)对二元函数M(α,β)的结果 即对于任取集合如果集合 存在对应的集合族 则构造一个
新的集合如下 则可得P[I1({2,3})]=
{2,3,4,5},P[I2({3,5})]={2,3,4,5},P[I3({9,10})]={9,10}。
[0845] ⑦ V(β) 表 示 对 二 元 函 数 N(α,β) 的 结 果 取设 对任 给的元 素γ,
min min
都有τ(δ)≤τ(γ)。则P [I1({2,3})]=2,P [I2({3,5})]=2,
min
P [I3({9,10})]=9。
[0846] 对于r2有{r2}={gave},编号为8。则对应的宾语的选取方法为:当不存在rk+1时:{zk}=NPIzk∪VNPzk∪OBJPk∪Hk∪{e};
[0847] 其中:
[0848] 其中:当不存在rk+1时:
[0849] 在上述的公式中,Hk表示最小值编号大于对应的谓语动词单元的全体并列名词代词集合集合族的并集合。
[0850] 则有:
[0851] 则有:
[0852] 则r2对应的宾语元素的集合是:
[0853] 注:在处理的过程中,并列名词代词组合向量作为一个整体来处理;并列名词代词组合向不能被其他句法向量插空;在检查顺序值时,直接将并列名词代词组合向所包含的句法顺序值代入即可。
[0854] 对于r1有{r1}={left}
[0855] {x1}={After,and,e}(e是空字符串)
[0856]
[0857] {z1}={f2,e}
[0858] 运用组合数学中的乘法原理:f1(x1,y1,r1,z1)=(见下方列表)
[0859]
[0860]
[0861] 对于r2有{r2}={gave}
[0862] {x2}={After,and,e}(e是空字符串)
[0863]
[0864]
[0865] 运用组合数学中的乘法原理:f2(x2,y2,r2,z2)=(见下方列表)
[0866]
[0867]
[0868]
[0869]
[0870] 用顺序值替换常量,略。
[0871] 运用组合数学中的乘法原理:
[0872] |S|=|f1|×|f2|=42×108=4536
[0873] 则总共生成4536个可能矩阵解。
[0874] 可得到作为句法结构解析最终结果的可能矩阵解:
[0875]
[0876] 将上述可能矩阵解进一步还原,得到如下形式:
[0877]
[0878] 注:该结果由整体插空方法获得。
[0879] 将这个矩阵转化为线性表达式:
[0880]
[0881] 去掉e得:
[0882]
[0883] C5部分例5
[0884] 例5:作为另一示例,以下说明本实施例的方法对于例如:“Linda was singing,and Mary was dancing.”这样的并列结构的语句的解析过程。
[0885] 上述语句经过预处理除去杂质并编号后的词序列表为:
[0886]原句短语 短语类型 顺序编号
Linda 名词代词单元 1
was singing 谓语动词单元 2
and 并列关联词单元 3
Mary 名词代词单元 4
was dancing 谓语动词单元 5
[0887] 对于r1有{r1}={was singing}
[0888] {x1}={e}(e是空字符串)
[0889] {y1}={Linda,e}
[0890] {z1}={Mary,f2,e}
[0891] 运用组合数学中的乘法原理:f1(x1,y1,r1,z1)=(见下方列表)
[0892]序号 行矩阵f1
(1-1) f1=(e,Linda,r1,Mary)
(1-2) f1=(e,e,r1,Mary)
(1-3) f1=(e,Linda,r1,f2)
(1-4) f1=(e,e,r1,f2)
(1-5) f1=(e,Linda,r1,e)
(1-6) f1=(e,e,r1,e)
[0893] 对于r2有{r2}={was dancing}
[0894] {x2}={and,e}(e是空字符串)
[0895] {y2}={Linda,Mary,f1,e}
[0896] {z2}={e}
[0897] 运用组合数学中的乘法原理:f2(x2,y2,r2,z2)=(见下方列表)
[0898]序号 行矩阵f2
(2-1) f2=(and,Linda,r2,e)
(2-2) f2=(and,Mary,r2,e)
(2-3) f2=(and,f1,r2,e)
(2-4) f2=(and,e,r2,e)
(2-5) f2=(e,Linda,r2,e)
(2-6) f2=(e,Mary,r2,e)
(2-7) f2=(e,f1,r2,e)
(2-8) f2=(e,e,r2,e)
[0899] 用顺序值替换常量,略。
[0900] 运用组合数学中的乘法原理:
[0901] |S|=|f1|×|f2|=6×8=48
[0902] 则总共生成48个可能矩阵解。
[0903] 将上述可能矩阵解的编号还原为词单元,得到如下形式:
[0904]
[0905] 将这个矩阵转化为线性表达式:
[0906]
[0907] 去掉e得:
[0908]
[0909] C6部分例6
[0910] 例6:作为另一示例,以下说明本实施例的方法对于例如:“I know that you have a car and that he has a bike.”这样的并列结构的语句的解析过程。
[0911] 上述语句经过预处理除去杂质并编号后的词序列表为:
[0912]原句短语 短语类型 顺序编号
I 名词代词单元 1
know 谓语动词单元 2
that A 从属关联词单元 3
you 名词代词单元 4
have 谓语动词单元 5
a car 名词代词单元 6
and 并列关联词单元 7
that B 从属关联词单元 8
he 名词代词单元 9
has 谓语动词单元 10
a bike 名词代词单元 11
[0913] 记每个谓语动词单元rk对应的引导语元素的集合为:
[0914] {xk}=Leadk∪conjk∪(conjkοLeadk)∪{e}
[0915] 记谓语动词单元rk对应的引导语元素为xk,其可能取值集合为{xk}。生成谓语动词单元rk对应的引导语元素为xk的可能取值集合:
[0916] {x1}={Lead1}∪{e}={that A,e};
[0917] {x2}=Lead2∪conj2∪(conj2οLead2)∪{e}={that A,and,that B,Ψ,e}。
[0918] 上 述 两 个 公 式 来 源 于 引 导 语 元 素 的 生 成 算 法:{xk} =Leadk∪conjk∪(conjkοLeadk)∪{e}。其中,(conjkοLeadk)={Rk|Rk=conj+<Lead,conj<□rk,Lead<□rk,τ(Lead)=τ(conj)+1};(conjkοLeadk)表示由一个编号小于对应的谓语动词单元编号的并列关联词单元和一个与其相邻且编号小于对应的谓语动词单
元编号且编号大于该并列关联词单元编号的从属关联词单元构成的关联词组合向量的集
合。
[0919] 对于r1有{r1}={know}
[0920] {x1}={e}(e是空字符串)
[0921] {y1}={I,e}
[0922] {z1}={you,f2,f3,e}
[0923] 运用组合数学中的乘法原理:f1(x1,y1,r1,z1)=(见下方列表)
[0924]序号 行矩阵f1 序号 行矩阵f1
(1-1) f1=(e,I,r1,you) (1-5) f1=(e,I,r1,f3)
(1-2) f1=(e,e,r1,you) (1-6) f1=(e,e,r1,f3)
(1-3) f1=(e,I,r1,f2) (1-7) f1=(e,I,r1,e)
(1-4) f1=(e,e,r1,f2) (1-8) f1=(e,e,r1,e)
[0925] 对于r2有{r2}={have}
[0926] {x2}={that A,e}(e是空字符串)
[0927] {y2}={you,I,f1,e}
[0928] {z2}={a car,f3,e}
[0929] 运用组合数学中的乘法原理:f2(x2,y2,r2,z2)=(见下方列表)
[0930]序号 行矩阵f2 序号 行矩阵f2
(2-1) f2=(that A,you,r2,a car) (2-13) f2=(that A,f1,r2,f3)
(2-2) f2=(e,you,r2,a car) (2-14) f2=(e,f1,r2,f3)
(2-3) f2=(that A,I,r2,a car) (2-15) f2=(that A,e,r2,f3)
(2-4) f2=(e,I,r2,a car) (2-16) f2=(e,e,r2,f3)
[0931](2-5) f2=(that A,f1,r2,a car) (2-17) f2=(that A,you,r2,e)
(2-6) f2=(e,f1,r2,a car) (2-18) f2=(e,you,r2,e)
(2-7) f2=(that A,e,r2,a car) (2-19) f2=(that A,I,r2,e)
(2-8) f2=(e,e,r2,a car) (2-20) f2=(e,I,r2,e)
(2-9) f2=(that A,you,r2,f3) (2-21) f2=(that A,f1,r2,e)
(2-10) f2=(e,you,r2,f3) (2-22) f2=(e,f1,r2,e)
(2-11) f2=(that A,I,r2,f3) (2-23) f2=(that A,e,r2,e)
(2-12) f2=(e,I,r2,f3) (2-24) f2=(e,e,r2,e)
[0932] 对于r3有{r3}={has}
[0933] {x3}={that A,that B,and,Ψ,e}(e是空字符串)
[0934] {y3}={you,I,a car,he,f1,f2,e}
[0935] {z3}={a bike,e}
[0936] 运用组合数学中的乘法原理:f3(x3,y3,r3,z3)=(见下方列表)
[0937]序号 行矩阵f3 序号 行矩阵f3
(3-1) f3=(that A,you,r3,a bike) (3-36) f3=(that A,you,r3,e)
(3-2) f3=(that B,you,r3,a bike) (3-37) f3=(that B,you,r3,e)
(3-3) f3=(and,you,r3,a bike) (3-38) f3=(and,you,r3,e)
(3-4) f3=(Ψ,you,r3,a bike) (3-39) f3=(Ψ,you,r3,e)
(3-5) f3=(e,you,r3,a bike) (3-40) f3=(e,you,r3,e)
(3-6) f3=(that A,I,r3,a bike) (3-41) f3=(that A,I,r3,e)
(3-7) f3=(that B,I,r3,a bike) (3-42) f3=(that B,I,r3,e)
[0938](3-8) f3=(and,I,r3,a bike) (3-43) f3=(and,I,r3,e)
(3-9) f3=(Ψ,I,r3,a bike) (3-44) f3=(Ψ,I,r3,e)
(3-10) f3=(e,I,r3,a bike) (3-45) f3=(e,I,r3,e)
(3-11) f3=(that A,a car,r3,a bike) (3-46) f3=(that A,a car,r3,e)
(3-12) f3=(that B,a car,r3,a bike) (3-47) f3=(that B,a car,r3,e)
(3-13) f3=(and,a car,r3,a bike) (3-48) f3=(and,a car,r3,e)
(3-14) f3=(Ψ,a car,r3,a bike) (3-49) f3=(Ψ,a car,r3,e)
(3-15) f3=(e,a car,r3,a bike) (3-50) f3=(e,a car,r3,e)
(3-16) f3=(that A,he,r3,a bike) (3-51) f3=(that A,he,r3,e)
(3-17) f3=(that B,he,r3,a bike) (3-52) f3=(that B,he,r3,e)
(3-18) f3=(and,he,r3,a bike) (3-53) f3=(and,he,r3,e)
(3-19) f3=(Ψ,he,r3,a bike) (3-54) f3=(Ψ,he,r3,e)
(3-20) f3=(e,he,r3,a bike) (3-55) f3=(e,he,r3,e)
(3-21) f3=(that A,f1,r3,a bike) (3-56) f3=(that A,f1,r3,e)
(3-22) f3=(that B,f1,r3,a bike) (3-57) f3=(that B,f1,r3,e)
(3-23) f3=(and,f1,r3,a bike) (3-58) f3=(and,f1,r3,e)
(3-24) f3=(Ψ,f1,r3,a bike) (3-59) f3=(Ψ,f1,r3,e)
(3-25) f3=(e,f1,r3,a bike) (3-60) f3=(e,f1,r3,e)
(3-26) f3=(that A,f2,r3,a bike) (3-61) f3=(that A,f2,r3,e)
(3-27) f3=(that B,f2,r3,a bike) (3-62) f3=(that B,f2,r3,e)
[0939](3-28) f3=(and,f2,r3,a bike) (3-63) f3=(and,f2,r3,e)
(3-29) f3=(Ψ,f2,r3,a bike) (3-64) f3=(Ψ,f2,r3,e)
(3-30) f3=(e,f2,r3,a bike) (3-65) f3=(e,f2,r3,e)
(3-31) f3=(that A,e,r3,a bike) (3-66) f3=(that A,e,r3,e)
(3-32) f3=(that B,e,r3,a bike) (3-67) f3=(that B,e,r3,e)
(3-33) f3=(and,e,r3,a bike) (3-68) f3=(and,e,r3,e)
(3-34) f3=(Ψ,e,r3,a bike) (3-69) f3=(Ψ,e,r3,e)
(3-35) f3=(e,e,r3,a bike) (3-70) f3=(e,e,r3,e)
[0940] 用顺序值替换常量,略。
[0941] 运用组合数学中的乘法原理:
[0942] |S|=|f1|×|f2|×|f3|=8×24×70=13440
[0943] 则总共生成13440个可能矩阵解。
[0944] 可得到作为句法结构解析最终结果的可能矩阵解:
[0945]
[0946] 与这个矩阵表达式相对应的S的线性表达式如下:
[0947]
[0948] 该例句的正确结构是:I know作为主句;that Ayou have a car是主句的谓语know下辖的第一个宾语从句;and that B he has a bike是与第一个宾语从句并列的第二个宾语从句;从属关联词单元that A和that B分别引导两个宾语从句;两个宾语从句之间由并列关联词单元and连接;在处理的过程中,关联词组合向量Ψ=and that B作为一个整体来处理;关联词组合向量Ψ不能被其他句法向量插空;在检查顺序值时,直接将关联词组合向量所包含的两个句法顺序值代入即可。最终的结果,是将第二个宾语从句看作以整体插空的方式,插空在第一个宾语从句的末尾处。
[0949] 图2是本发明的一种基于计算机的自然语言句法结构解析的装置的示意图,所示装置包括:
[0950] 读取部件21,用于读取待解析的经预处理的语句数据结构,所述经预处理的语句数据结构中仅包括语句的并列关联词单元、从属关联词单元、谓语动词单元、名词代词单元,且各词单元按照在所述经预处理的语句中的顺序进行编号,并标注类型;
[0951] 元素生成部件22,用于对每一谓语动词单元,生成对应的引导语元素、主语元素、谓语元素和宾语元素;
[0952] 其中,所述引导语元素的可能取值为编号小于对应的谓语动词单元编号的并列关联词单元或从属关联词单元之一,或由一个编号小于对应的谓语动词单元编号的并列关联词单元和一个与其相邻且编号小于对应的谓语动词单元编号且编号大于该并列关联词单元编号的从属关联词单元构成的关联词组合向量之一,或空单元;
[0953] 所述主语元素的可能取值为编号小于对应的谓语动词单元编号的名词代词单元之一,或最大词单元的编号小于对应的谓语动词单元编号的全体并列名词代词组合向量族中所包含的并列名词代词组合向量之一,或在前出现的谓语元素对应的句法向量之一,或空单元;
[0954] 所述谓语元素为对应的所述谓语动词单元;
[0955] 所述宾语元素的可能取值编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的名词代词单元之一,或最小词单元的编号大于对应的谓语动词单元编号且小于相邻的在后出现的谓语动词单元编号的全体并列名词代词组合向量族中
所包含的并列名词代词组合向量之一,或在后出现的谓语元素对应的句法向量之一,或空单元;
[0956] 向量生成部件23,用于根据所述引导语元素、主语元素、谓语元素和宾语元素的可能取值,获取每一谓语动词单元对应的句法向量的所有可能取值,所述句法向量包括引导语元素、主语元素、谓语元素和宾语元素;
[0957] 矩阵生成部件24,用于根据所有句法向量的所有可能取值,生成至少一个句法结构可能矩阵解,所述句法结构可能矩阵解由按照谓语动词单元编号顺序排列的句法向量组成;
[0958] 求解部件25,用于验证根据句法结构可能矩阵解得到的语句是否与所述经预处理的语句完全相同,如果完全相同,则将该句法结构可能矩阵解中的各句法向量作为句法结构解析结果之一;
[0959] 其中,所述求解部件25通过以下模块操作排除不符合条件的句法结构可能解:
[0960] 第一排除模块,如果存在不在该句法结构可能矩阵解中出现的顺序值,则排除该句法结构可能矩阵解;
[0961] 第二排除模块,如果在不同的句法向量中出现相同的顺序值或出现相同的句法向量,则排除该句法结构可能矩阵解;
[0962] 第三排除模块,在每一个可能矩阵解中,将与其他句法向量之间存在相互代入关系的句法向量全都进行等量代换,如果在等量代换之后出现两个句法向量的交叉矛盾,则排除该句法结构可能矩阵解;
[0963] 第四排除模块,在每一个可能矩阵解中,将与其他句法向量之间存在相互代入关系的句法向量全都进行等量代换,如果在等量代换之后出现两个位置逆反的顺序值,则排除该句法结构可能矩阵解;
[0964] 第五排除模块,在任意一个可能矩阵解中,如果存在与其他句法向量之间没有相互代入关系的句法向量,则执行插空操作以获得所有该可能矩阵解所对应的可能句法解析结构,并验证根据所述可能句法解析结构得到的语句是否与所述经预处理的语句完全相同,其进一步包括:
[0965] 第一子模块,先对该可能矩阵解中相互之间存在代入关系的句法向量进行等量代换,从而将该可能矩阵解转化为一组相互之间不存在代入关系的句法向量
将可能矩阵解中的句法向量称为第一类句法向量,将转化得到的句法向
量 称为第二类句法向量;
[0966] 第二子模块、任取一个第二类句法向量 按照预定的方向逐一标注 中的每一个句法元素的顺序值;标注句法元素的顺序值之后,任取 中的第i个句法元素,仅在该句法元素的第一侧构造唯一的空位;造空之后,任取一个句法向量 以外的第二类句法向量以整体插空的方式将句法向量 插入所构造的空位,进而生成一个新的句法向量,将
这个新句法向量记为 并将整体插空而得到的句法向量,统称为第三类句法向
量;
[0967] 第三子模块,对第三类句法向量 按照预定的方向对从向量中的第一侧第一个句法元素开始到向量 中包含的向量 的第二
侧第一个句法元素为止的每一个句法元素,全都标注顺序值;位于向量 中包含
的向量 第一侧的元素,不标注顺序值;将向量 的第二侧的第一个句法元素记为
将按照前述方式对向量 标注的句法向量部分,记为甩尾句法向量
标注顺序值之后,任取一个前述的甩尾向量中的第j个句法元素,仅在该元素第一侧构造唯一的空位;造空之后,任取一个未使用过的第二类句法向量 以整体插空的方式将句
法向量 插入所构造的空位,进而生成一个新的句法向量,则将新生成的句法向量记为
或者
[0968] 第三类句法向量 按照预定方向,对句法向量 中的每一个句法元素全都标注顺序值;标注句法元素的顺序值之后,任取一个 中的第t个
句法元素,在该句法元素的第一侧构造唯一的空位;造空之后,任取一个未使用过得第二类句法向量 以整体插空的方式将该向量 插入前面构造的空位,进而生成一个新向量,则
该新向量记为
[0969] 第四子模块,重复第三子模块的操作,每当上一次造空和插空步骤结束的时候,对经过上一次造空和插空步骤而得到的第三类句法向量进行下一次的造空和插空操作,直至将所有第二类句法向量 全部插空完毕,最后得到一个单行的第三类句法向量,将所述最后得到的第三类句法向量称为最终单行向量;
[0970] 第五子模块,如果一个可能句法解析结构对应的所有所述最终单行向量中均存在两个位置逆反的顺序值,则排除该可能句法解析结构;
[0971] 第六子模块,重复调用第二子模块至第五子模块的操作直至所有可能句法解析结构被遍历。
[0972] 进一步,所述装置还可以包括:
[0973] 结果显示部件,将句法结构解析结果中的各句法向量以及对应的句法结构关系用树状结构进行在人机交互界面上进行显示。
[0974] 本发明侧重于解决自然语言中的复合式句子结构的准确解析问题。本发明的最大特点在于:①充分利用了复合函数的性质;②采用矩阵模型和线性模型描述句法公式;③运用组合数学的相关原理生成矩阵模型和线性模型。运用本发明,可以提高自然语言句法结构解析的准确率。
[0975] 从数学的度看,自然语言带有离散性特点,而这正是句法结构解析处理上的难点。本发明通过将句法向量与矩阵形式进行有效结合,既没有破坏句子结构的完整性,又不妨碍分析每一句之中的内在成分及词句之间的关系。本发明采用矩阵模型和线性模型刻画句子公式,这既符合自然语言的离散性特点,又有效地揭示了句法结构上的信息关联。
[0976] 从计算机技术的角度看,本发明采用矩阵模型和线性模型,将单行的自然语言语句转化为分层线性嵌套的形式,从而在很大程度上避免了计算机直接对自然语言的原句标注成分和划分结构而出现的错乱,进而使计算机的程序任务更加清楚、简洁。本发明所采用的矩阵模型和线性模型,相当于为自然语言的语句画出多条平行的跑道,令自然语言的语句在多条平行的跑道上同时起跑,然后再从中筛选正确结果;也相当于为自然语言的语句提供多个平面,在多个平面上同时处理自然语言的语句,然后再从中筛选正确结果。
[0977] 在生成矩阵的过程中,本发明运用了组合数学的相关原理生成全部矩阵,然后再逐一排除,最终获得至少一个可能的正确的句法结构解析结果。在这一过程中,只需要用到数学原理和信息编码,只需要处理实数的数值,每一个步骤最终都落实到查看句法向量的数值是否是升序排列,也就是比较实数的大小,而不涉及英语本身的语言信息。
[0978] 同时,本发明需要进行大量的数学运算,因此必须借助计算机的计算能,才能有效实现。
[0979] 综上,本发明依据抽象代数、集合论、组合数学、可计算性理论和计算语言学等学科的数学原理和相应的计算机技术,运用复合函数的数学思想,通过建立矩阵模型和线性模型、构造递归函数来进行自然语言句法结构解析;同时,综合运用数学归纳法等方法对重要的结论进行了证明。
[0980] 本发明构思独特、方法巧妙、论证详实,充分利用了数学和计算机学科的规律,所述方法准确性较高,有一定的技术难度。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈