基于目标语句的依存句法分析方法、装置及服务器转让专利

申请号 : CN201410386389.8

文献号 : CN105335348B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 吴胜兰董凡

申请人 : 阿里巴巴集团控股有限公司

摘要 :

本申请提供了一种目标语句的依存句法分析方法、装置及服务器,所述方法包括:获取待分析的目标语句的目标词序列;将所述目标词序列中的前两个目标词作为当前目标词,判断当前目标词是否都是骨干词,如果都是,则采用预置的动作预测骨干模型确定两个目标词之间的依存关系,如果有一个不是或者两个都不是,则采用预置的动作预测完整模型确定两个目标词之间的依存关系;参考目标词序列组成语句的顺序和确定的依存关系获取下两个待处理的目标词作为当前目标词,并执行判断所述当前目标词是否都是骨干词的步骤,直至所述目标词序列中的所有目标词都分析完毕为止。在本申请实施例中,可以大大降低错误级联给准确率带来的影响,从而提升了依存句法分析结果的准确率。

权利要求 :

1.一种目标语句的依存句法分析方法,其特征在于,该方法包括:

获取待分析的目标语句的目标词序列;

将所述目标词序列中的前两个目标词作为当前目标词,判断所述当前目标词是否都是骨干词,如果都是,则采用预置的动作预测骨干模型确定所述两个目标词之间依存关系的指向,并根据所述指向确定所述两个目标词之间的依存关系,如果有一个不是或者两个都不是,则采用预置的动作预测完整模型确定所述两个目标词之间依存关系的指向,并根据所述指向确定所述两个目标词之间的依存关系;其中,所述骨干词包括产品词以及动词;

参考所述目标词序列组成语句的顺序和所述确定的依存关系获取下两个待处理的目标词作为当前目标词,并执行所述判断所述当前目标词是否都是骨干词的步骤,直至所述目标词序列中的所有目标词都分析完毕为止。

2.根据权利要求1所述的方法,其特征在于,所述动作预测骨干模型采用下述方式训练:提取样本语句中的骨干词序列;

获取针对所述骨干词序列进行依存句法树标注得到的骨干依存树;

将获取到的骨干依存树转换成一系列的骨干动作序列,所述骨干动作序列中的骨干动作包括所述样本语句中目标词之间依存关系的指向;

针对所述骨干动作序列中的每个当前骨干动作,从所述当前骨干动作涉及的目标词的上下文和所述当前骨干动作前所有骨干动作中抽取当前骨干特征,并将当前骨干动作的动作内容确定为与所述当前骨干特征对应的当前骨干类,其中,所述目标词的上下文为:所述目标词本身及其前后的部分目标词以及所述部分目标词的属性信息;

针对大量的样本语句,依据所述骨干动作序列中所有骨干动作的骨干特征和骨干类的映射,利用特定的机器学习算法训练得到动作预测骨干模型。

3.根据权利要求2所述的方法,其特征在于,所述采用预置的动作预测骨干模型确定所述两个目标词之间依存关系的指向,并根据所述指向确定所述两个目标词之间的依存关系,包括:参考所述两个目标词的上下文和所述目标语句的至少一个历史骨干动作,采用动作预测骨干模型确定所述两个目标词之间的依存关系;其中,所述目标语句的至少一个历史骨干动作包括距离当前动作为止对所述目标语句中骨干词实施的骨干动作,所述骨干动作包括所述目标语句中骨干词之间依存关系的指向。

4.根据权利要求1所述的方法,其特征在于,所述动作预测完整模型采用下述方式训练:获取针对样本语句的完整词序列进行依存句法树标注得到的完整依存树;

将获取到的完整依存树转换成一系列的完整动作序列;

针对所述完整动作序列中的每个当前完整动作,从所述当前完整动作涉及的完整目标词的上下文和所述当前完整动作前所有完整动作中抽取当前完整特征,并将当前完整动作的动作内容确定为与所述当前完整特征对应的当前完整类;

针对大量的样本语句,依据所述完整动作序列中所有完整动作的完整特征和完整类的映射,利用特定的机器学习算法训练得到动作预测完整模型。

5.根据权利要求4所述的方法,其特征在于,所述采用预置的动作预测完整模型确定所述两个目标词之间依存关系的指向,并根据所述指向确定所述两个目标词之间的依存关系,包括:参考所述两个目标词的上下文和所述目标语句的至少一个历史完整动作,采用动作预测完整模型确定所述两个目标词之间的依存关系;其中,所述目标语句的至少一个历史完整动作包括距离当前动作为止对所述目标语句中目标词实施的动作,所述动作包括所述目标语句中目标词之间依存关系的指向。

6.根据权利要求1所述的方法,其特征在于,还包括:

依据所述目标语句的各个目标词之间的依存关系,提取所述目标语句的目标核心产品词。

7.根据权利要求6所述的方法,其特征在于,还包括:

响应于用户输入的关键词,搜索其包含的核心产品词与所述关键词匹配的目标语句;

将所述匹配的目标语句所对应的产品信息发送至客户端进行展现。

8.一种目标语句的依存句法分析装置,其特征在于,该装置包括:

第一获取模块,用于获取待分析的目标语句的目标词序列;

第一确定模块,用于将所述目标词序列中的前两个目标词确定为当前目标词;

判断模块,用于判断所述当前目标词是否都是骨干词,所述骨干词包括产品词以及动词;

第二确定模块,用于在所述判断模块的结果为都是的情况下,采用预置的动作预测骨干模型确定所述两个目标词之间依存关系的指向,并根据所述指向确定所述两个目标词之间的依存关系;

第三确定模块,用于在所述判断模块的结果为有一个不是或者两个都不是的情况下,采用预置的动作预测完整模型确定所述两个目标词之间依存关系的指向,并根据所述指向确定所述两个目标词之间的依存关系;

第二获取模块,用于参考所述目标词序列组成语句的顺序和所述依存关系获取下两个待处理的目标词作为当前目标词;

触发模块,用于触发所述判断模块,直至所述目标词序列中的所有目标词都分析完毕为止。

9.根据权利要求8所述的装置,其特征在于,还包括:骨干模型训练模块,所述骨干模型训练模块包括:提取子模块,用于提取样本语句中的骨干词序列;

第一获取子模块,用于获取针对所述骨干词序列进行依存句法树标注得到的骨干依存树;

第一转换子模块,用于将获取到的骨干依存树转换成一系列的骨干动作序列,所述骨干动作序列中的骨干动作包括所述样本语句中目标词之间依存关系的指向;

第一抽取子模块,用于针对所述骨干动作序列中的每个当前骨干动作,从所述当前骨干动作涉及的目标词的上下文和所述当前骨干动作前所有骨干动作中抽取当前骨干特征;

第一确定子模块,用于将当前骨干动作的动作内容确定为与所述当前骨干特征对应的当前骨干类,其中,所述目标词的上下文为:所述目标词本身及其前后的部分目标词以及所述部分目标词的属性信息;

第一训练子模块,用于针对大量的样本语句,依据所述骨干动作序列中所有骨干动作的骨干特征和骨干类的映射,利用特定的机器学习算法训练得到动作预测骨干模型。

10.根据权利要求9所述的装置,其特征在于,所述第二确定模块具体用于:参考所述两个目标词的上下文和所述目标语句的至少一个历史骨干动作,采用动作预测骨干模型确定所述两个目标词之间的依存关系;其中,所述目标语句的至少一个历史骨干动作包括距离当前动作为止对所述目标语句中骨干词实施的骨干动作,所述骨干动作包括所述目标语句中骨干词之间依存关系的指向。

11.根据权利要求8所述的装置,其特征在于,还包括:完整模型训练模块,所述完整模型训练模块包括:第二获取子模块,用于获取针对样本语句的完整词序列进行依存句法树标注得到的完整依存树;

第二转换子模块,用于将获取到的完整依存树转换成一系列的完整动作序列;

第二抽取子模块,用于针对所述完整动作序列中的每个当前完整动作,从所述当前完整动作涉及的完整目标词的上下文和所述当前完整动作前所有完整动作中抽取当前完整特征;

第二确定子模块,用于将当前完整动作的动作内容确定为与所述当前完整特征对应的当前完整类;

第二训练子模块,用于针对大量的样本语句,依据所述完整动作序列中所有完整动作的完整特征和完整类的映射,利用特定的机器学习算法训练得到动作预测完整模型。

12.根据权利要求11所述的装置,其特征在于,所述第三确定模块具体用于:参考所述两个目标词的上下文和所述目标语句的至少一个历史完整动作,采用动作预测完整模型确定所述两个目标词之间的依存关系;其中,所述目标语句的至少一个历史完整动作包括距离当前动作为止对所述目标语句中目标词实施的动作,所述动作包括所述目标语句中目标词之间依存关系的指向。

13.根据权利要求8所述的装置,其特征在于,还包括:

提取模块,用于依据所述目标语句的各个目标词之间的依存关系,提取所述目标语句的目标核心产品词。

14.根据权利要求13所述的装置,其特征在于,还包括:

搜索模块,用于响应于用户输入的关键词,搜索其包含的核心产品词与所述关键词匹配的目标语句;

发送模块,用于将所述匹配的目标语句所对应的产品信息发送至客户端进行展现。

15.一种服务器,其特征在于,包括权利要求8~14任一项所述的装置。

说明书 :

基于目标语句的依存句法分析方法、装置及服务器

技术领域

[0001] 本申请涉及数据处理技术领域,特别涉及一种目标语句的依存句法分析方法、装置及服务器。

背景技术

[0002] 在互联网越来越发达的今天,使用计算机进行语言识别和处理已经是非常成熟的技术。句法分析就是计算语言学(Computational Linguistics)的一项研究内容,它通过建立形式化的数学模型,设计有效的算法,利用计算机分析和处理句子,将其从词序列形式转换为句法树形式从而捕捉句子内部结构和词语之间的搭配关系。在自然语言处理(NLP,Natural Language Processing)领域,主要分析两种主流的句法体系,分别是短语结构句法体系(Phrase-structure Grammar)和依存结构句法体系(Dependency Grammar)。
[0003] 依存句法是由法国语言学家L.Tesniere于1959年提出,用于分析语言单位内成分之间的依存关系,以揭示其句法结构,其主张句子中核心动词是支配其它成分的中心成分,而它本身却不受其它任何成分的支配,所有受支配成分都以某种依存关系从属于支配者。计算机进行依存句法分析,即是对给定输入句子的词序列,分析各个词之间的搭配关系和整个句子的结构,并得到一棵依存句法分析树。依存句法分析树就是依存句法分析结果的表示形式。在依存句法分析树中,句子的每个词看做一个节点,并在句首插入一个起辅助作用的虚拟节点(记为根节点ROOT),所有节点通过有向弧连接形成一棵树,且满足以下三个条件:第一,除了根节点外,任意节点都有且仅有一条入边;第二,除了叶子节点外,任意节点有至少一条出边,根节点仅有一条出边,对应的弧指向支配整个句子的核心词;第三,所有的弧不能交叉,如果a和b两个节点存在有向弧,则处于他们中间的任意两个节点间的弧在水平方向的投影一定落在a和b的弧的投影上。
[0004] 在依存句法树中,一条弧代表一则依存关系,弧的方向代表支配顺序。有向弧总是从某个父节点出发,指向其孩子节点,这称作父节点支配孩子节点,而孩子节点依存于父节点。常见的依存关系有:定中关系(ATT),表示定语依存于中心语,状中关系(ADV),表示状语依存于中心语,并列关系(COO),表示名词支配(与之并列)名词,主谓关系(SBV),表示主语依存于谓语,动宾关系(VOB),表示谓语支配宾语,核心关系(HED),表示ROOT支配句子核心词,依存分句(DC),表示主句核心词支配分句核心词。依存句法分析树中的一条有向弧就叫依存弧。
[0005] 为了方便计算机处理,还将每个词以及词的若干属性叫做词项,也叫Term。词的属性可以包括单词在句子中的位置、词性和分词粒度等。针对依存句法分析树,需要对词项增加以下额外信息:对Term序列编号,从0开始计数,其中,ROOT用-1表示;针对每个Term,增加一个parent属性和一个relate属性,parent表示当前节点的父节点编号,relate表示父节点指向当前节点的依存弧的类型;如果一个Term的内容是标点符号,则设置parent为-2,relate可以任意设置一个代表孤立节点的字符,例如WP,不参与到依存树的结构中;句子中的核心词的父节点是ROOT,parent为-1,relate为核心关系(HED)。
[0006] 电子商务文本,例如产品标题,是一种专业性强、行业范围广、结构紧凑、信息量大、歧义现象多的自然语言文本。其中包含大量的特定领域专有名词、缩略语、型号词等,且可能存在大量的错别字、标点乱用、无断句、修饰语后置等不规范书写习惯。其覆盖面广,深入涉及各行各业。一般存在字数限制,导致这类文本短小精悍、结构紧凑、信息量大,因而更容易产生理解上的歧义。并且产品标题还存在大量的词性活用现象,例如“批发女包包您满意的礼品”中由于没有标点,无法确定第二个“包”字是指“女包包”还是“包您满意”。另外,还存在大量的产品词作修饰词的现象,如“苹果手机”中的“苹果”。

发明内容

[0007] 在现有技术中,有一种基于转移的对电子商务文本进行依存句法分析的方法,其可以通过一个移进归约转移动作序列构建依存句法树,将依存分析问题建模为寻找最优动作序列的问题。首先构建一个栈和一个队列,分别存放已经处理过的节点和尚未处理的节点,初始时,栈中存放根节点ROOT,队列中存放句子的所有节点,然后分别针对栈顶词(左词)和队首词(右词),每次可以在画左弧、画右弧或者移进(表示将队列的首词移进栈顶)三个动作中选择一个动作,选择动作的方法为:利用训练好的分类器,根据当前左右词的上下文及历史动作列表抽取特征,对当前应该采取的动作进行分类,根据分类的结果执行对应的动作,并对栈和队列进行适当调整,获取下一对左右词,进行类似的动作选择操作。直到队列中只剩最后一个词时,将其挂在ROOT上,从而得到整个句子的依存句法分析树。
[0008] 但是发明人在研究过程中发现,现有技术存在错误级联导致的准确率不高的问题,原因如下:如果前期在画左弧、画右弧或者移进三个动作选择一个动作时的决策错误,后期的所有决策都将受到影响,且越往后执行的动作准确率越低,因为句子中的节点数越多,这种影响被“放大”的程度越高。而电子商务文本中标点符号的使用缺乏规范,句子由于没有明显的边界而导致节点数剧增,因此受错误级联的影响较大。
[0009] 因此,本申请所要解决的技术问题是提供一种目标语句的依存句法分析方法,用以尽量避免现有技术中在对电子商务文本进行依存句法分析时存在的错误级联现象,从而减少错误级联给依存句法分析的准确率上带来的影响,从而提高对电子商务文本进行依存句法分析时的准确率。
[0010] 本申请还提供了一种目标语句的依存句法分析装置及服务器,用以保证上述方法在实际中的实现及应用。
[0011] 为了解决上述问题,本申请公开了一种目标语句的依存句法分析方法,包括:
[0012] 获取待分析的目标语句的目标词序列;
[0013] 将所述目标词序列中的前两个目标词作为当前目标词,判断所述当前目标词是否都是骨干词,如果都是,则采用预置的动作预测骨干模型确定所述两个目标词之间的依存关系,如果有一个不是或者两个都不是,则采用预置的动作预测完整模型确定所述两个目标词之间的依存关系;
[0014] 参考所述目标词序列组成语句的顺序和所述确定的依存关系获取下两个待处理的目标词作为当前目标词,并执行所述判断所述当前目标词是否都是骨干词的步骤,直至所述目标词序列中的所有目标词都分析完毕为止。
[0015] 本申请公开了一种目标语句的依存句法分析装置,包括:
[0016] 第一获取模块,用于获取待分析的目标语句的目标词序列;
[0017] 第一确定模块,用于将所述目标词序列中的前两个目标词确定为当前目标词;
[0018] 判断模块,用于判断所述当前目标词是否都是骨干词;
[0019] 第二确定模块,用于在所述判断模块的结果为都是的情况下,采用预置的动作预测骨干模型确定所述两个目标词之间的依存关系;
[0020] 第三确定模块,用于在所述判断模块的结果为有一个不是或者两个都不是的情况下,采用预置的动作预测完整模型确定所述两个目标词之间的依存关系;
[0021] 第二获取模块,用于参考所述目标词序列组成语句的顺序和所述依存关系获取下两个待处理的目标词作为当前目标词;
[0022] 触发模块,用于触发所述判断模块,直至所述目标词序列中的所有目标词都分析完毕为止。
[0023] 本申请公开了一种目标语句的依存句法分析服务器,包括:前述的依存句法分析装置。
[0024] 与现有技术相比,本申请包括以下优点:
[0025] 在本申请实施例中,基于将词语区分为骨干词和非骨干词的方式,从而可以在针对两个待分析的目标词都是骨干词的情况下,采用动作预测骨干模型进行预测。因为骨干词只是目标语句中相对较少的一部分词,这样将句子骨架结构的选择缩小到一个更小的骨干词集合,避免了不必要且容易出错的非骨干节点处理,通过减少了关键节点的个数来缓解“错误级联”现象的影响,因此就可以大大降低错误级联给准确率带来的影响,从而提升了依存句法分析结果的准确率。进一步的,得到句子的目标核心产品词的准确率也相应地得到了提高,从而可以在用户搜索相关产品的时候,能为用户提供更为匹配的产品信息,从而也提升了用户的产品搜索体验。
[0026] 当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有优点。

附图说明

[0027] 为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0028] 图1是本申请的训练动作预测骨干模型的流程图;
[0029] 图2是本申请的训练动作预测完整模型的流程图;
[0030] 图3是本申请的目标语句的依存句法分析方法实施例的流程图;
[0031] 图4是本申请的具体示例中目标语句的初始状态示意图;
[0032] 图5是本申请具体示例中目标语句执行完第1个动作的状态示意图;
[0033] 图6是本申请具体示例中目标语句执行完第2个动作的状态示意图;
[0034] 图7是本申请具体示例中目标语句执行完第3个动作的状态示意图;
[0035] 图8是本申请具体示例中目标语句执行完第4个动作的状态示意图;
[0036] 图9是本申请具体示例中目标语句执行完第5个动作的状态示意图;
[0037] 图10是本申请具体示例中目标语句执行完第6个动作的状态示意图;
[0038] 图11是本申请具体示例中目标语句执行完第7个动作的状态示意图;
[0039] 图12是本申请具体示例中目标语句执行完第8个动作的状态示意图;
[0040] 图13是本申请具体示例中目标语句执行完第9个动作的状态示意图;
[0041] 图14是本申请具体示例中目标语句执行完第10个动作的状态示意图;
[0042] 图15是本申请具体示例中目标语句执行完第11个动作的状态示意图;
[0043] 图16是本申请具体示例中目标语句执行完第12个动作的状态示意图;
[0044] 图17是本申请具体示例中目标语句执行完第13个动作的状态示意图;
[0045] 图18是本申请具体示例中目标语句执行完第14个动作的状态示意图;
[0046] 图19是本申请具体示例中目标语句的依存句法分析树的结构示意图;
[0047] 图20为本申请的一种目标语句的依存句法分析装置实施例的结构框图;
[0048] 图21为本申请的骨干模型训练模块210的结构示意图;
[0049] 图22为本申请的完整模型训练模块220的结构示意图。

具体实施方式

[0050] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0051] 本申请可用于众多通用或专用的计算装置环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。
[0052] 本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实施本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
[0053] 在本申请实施例中,针对电子商务文本的特点,可以将句子中的词区分为骨干词和非骨干词两种。其中,骨干词指的是所有的产品词、动词和交易意图词(例如产品标题中出现的出售或者转让等),而非骨干词指的是除了骨干词外的其他所有词,包括修饰词、标点符号、型号词、品牌词、机构词、地点词、时间日期词和数字词,等等。而在一般情况下,依存句法分析树中非骨干词离根节点的距离一般都比骨干词离根节点的距离远,并且骨干词之间的弧基本上占据了整棵依存句法分析树的骨架。
[0054] 因此,在本申请实施例中,可以屏蔽目标语句中所有的标点符号,通过对句子中所有词进行人工标注、推导动作历史、特征抽取等一系列处理,利用最大熵分类算法训练出一个动作预测完整模型,用来预测句子的完整依存树。并且,屏蔽句子中所有的非骨干词,使用同样的方法对该句子剩下的骨干词进行处理,利用最大熵分类算法训练出一个动作预测骨干模型,用来预测句子的骨架依存树。针对待分析的句子转换而成的词序列,可以使用动作预测完整模型和动作预测骨干模型交织进行的方式进行依存分析,在使用动作预测骨干模型预测出骨架依存树的同时,同步并受限地使用动作预测完整模型预测出剩余部分。
[0055] 具体的,为了方便本领域技术人员更理解本发明的实现,首先对训练动作预测骨干模型和动作预测完整模型的过程进行详细介绍。
[0056] 参考图1所示,为训练动作预测骨干模型的流程图,训练动作预测骨干模型具体可以包括:
[0057] 步骤101:提取样本语句中的骨干词序列。
[0058] 针对给定的样本语句,首先将该样本语句中的骨干词提取出来,得到骨干词序列。
[0059] 步骤102:获取针对所述骨干词序列进行依存句法树标注得到的骨干依存树。
[0060] 接着针对步骤101得到的骨干词序列采用依存句法分析方法进行人工标注,得到样本语句的骨干依存树。其中,人工标注可以得出当前骨干节点的父节点编号,以及两者的依存关系,从而得到一个骨干词项Term序列。
[0061] 步骤103:将获取到的骨干依存树转换成一系列的骨干动作序列。
[0062] 在本步骤再将人工标注结果的骨干Term序列转换成一系列的骨干动作序列Actions。具体的,即是利用规则对人工标注好的骨干依存句法分析树,结合依存分析算法反向推导出基于转移的依存分析方法的分析过程和动作历史。
[0063] 步骤104:针对所述骨干动作序列中的每个当前骨干动作,从所述当前骨干动作涉及的目标词的上下文和所述当前骨干动作前所有骨干动作中抽取当前骨干特征。
[0064] 针对骨干动作序列中的每个骨干动作,使用特征抽取方法从当前骨干动作涉及的目标词的上下文和当前骨干动作前的所有骨干动作中抽取出当前骨干特征。其中,特征抽取方法,即是对历史中的每一个动作a,利用特征抽取算法从当前动作a、至当前动作为止的动作历史A中已知的动作、当前待处理的左侧节点L和右侧节点R、以及处于L和R附近的上下文中抽取特征。其中,所述目标词的上下文为:所述目标词本身及其前后的部分目标词以及所述部分目标词的属性信息。
[0065] 步骤105:将当前骨干动作的动作内容确定为与所述当前骨干特征对应的当前骨干类。
[0066] 在得到当前骨干特征后,把当前骨干动作的动作内容,即是画弧方向和弧类型(“SHIFT”看做特殊方向,弧类型为“NOT”)作为为当前骨干特征对应的当前骨干类。
[0067] 步骤106:针对大量的样本语句,依据所述骨干动作序列中所有骨干动作的骨干特征和骨干类的映射,利用特定的机器学习算法训练得到动作预测骨干模型。
[0068] 因为训练动作预测骨干模型需要大量的样本语句,所以针对大量的样本语句,都使用最大熵工具包分别训练得到骨干特征和骨干类(画弧方向和弧类型)的映射函数,即是动作预测骨干模型。具体在训练时可以使用gis迭代方法,迭代次数可以设置为80次。
[0069] 参考图2所示,为训练动作预测完整模型的流程图,训练动作预测完整模型具体可以包括:
[0070] 步骤201:获取针对样本语句的完整词序列进行依存句法树标注得到的完整依存树。
[0071] 针对样本语句,对样本语句进行人工标注,得到完整依存树。其中,人工标注可以得出当前完整节点的父节点编号,以及两者的依存关系,从而得到一个完整词项Term序列。
[0072] 步骤202:将获取到的完整依存树转换成一系列的完整动作序列。
[0073] 在本步骤将人工标注结果的完整Term序列转换成一系列的完整动作序列Actions。具体的,即是利用规则对人工标注好的完整依存句法分析树,结合依存分析算法反向推导出基于转移的依存分析方法的分析过程和动作历史。
[0074] 步骤203:针对所述完整动作序列中的每个当前完整动作,从所述当前完整动作涉及的完整目标词的上下文和所述当前完整动作前所有完整动作中抽取当前完整特征。
[0075] 针对完整动作序列中的每个完整动作,使用特征抽取方法从当前完整动作涉及的完整目标词的上下文和当前完整动作前的所有完整动作中抽取出当前完整特征。其中,特征抽取方法,即是对历史中的每一个动作a,利用特征抽取算法从当前动作a、至当前动作为止的动作历史A中已知的动作、当前待处理的左侧节点L和右侧节点R、以及处于L和R附近的上下文中抽取特征。其中,所述完整目标词的上下文为:所述完整目标词前后的部分目标词以及所述部分目标词的属性信息。
[0076] 步骤204:将当前完整动作的动作内容确定为与所述当前完整特征对应的当前完整类。
[0077] 在得到当前完整特征后,把当前完整动作的动作内容,即是画弧方向和弧类型(“SHIFT”看做特殊方向,弧类型为“NOT”)作为为当前完整特征对应的当前完整类。
[0078] 步骤205:针对大量的样本语句,依据所述完整动作序列中所有完整动作的完整特征和完整类的映射,利用特定的机器学习算法训练得到动作预测完整模型。
[0079] 接着使用最大熵工具包分别训练得到完整特征和完整类(画弧方向和弧类型)的映射函数,即是动作预测完整模型。具体在训练时可以使用gis迭代方法,迭代次数也可以设置为80次。
[0080] 在介绍完动作预测骨干模型和动作预测完整模型的训练过程之后,参考图3,示出了本申请一种目标语句的依存句法分析方法实施例的流程图,本实施例可以包括以下步骤:
[0081] 步骤301:获取待分析的目标语句的目标词序列。
[0082] 首先,获取待分析的目标语句,并将该目标语句转换成一系列的目标词序列。
[0083] 步骤302:将所述目标词序列中的前两个目标词确定为当前目标词。
[0084] 将该目标词序列的前两个目标词确定为当前待处理的当前目标词。
[0085] 步骤303:判断所述当前目标词是否都是骨干词,如果都是,则进入步骤304;如果有一个不是或者两个都不是,则进入步骤305。
[0086] 利用骨干词与非骨干词的划分方式,判断这两个当前目标词是否都属于骨干词,例如是产品词,或者交易意图词等。
[0087] 步骤304:采用预置的动作预测骨干模型确定所述两个目标词之间的依存关系。
[0088] 如果这两个当前目标词都是骨干词,则采用预先训练好的动作预测骨干模型确定这两个当前目标词之间的依存关系。具体的,可以参考该两个目标词的上下文和目标语句的骨干历史动作,结合动作预测骨干模型预测出两个目标词之间的依存关系。
[0089] 可以理解的是,在本申请实施例中,确定两个目标词之间的依存关系即是模型预测过程,给定动作历史A、节点L和R以及它们的上下文,利用前述的特征抽取算法抽取特征,并利用最大熵分类器预测出对应的类。
[0090] 步骤305:采用预置的动作预测完整模型确定所述两个目标词之间的依存关系。
[0091] 如果两个当前目标词只有一个是骨干词,或者两个当前目标词都不是骨干词,则采用预置的动作预测完整模型来预测这两个目标词之间的依存关系。具体的,可以参考所述两个目标词的上下文和目标语句的完整历史动作,采用动作预测完整模型确定所述两个目标词之间的依存关系。
[0092] 步骤306:参考目标词序列组成语句的顺序和确定的依存关系获取下两个待处理的目标词作为当前目标词,进入步骤303。
[0093] 接着参考目标词序列组成语句的顺序以及确定的依存关系,来获取下两个待处理的目标词作为当前目标词,并执行步骤303的判断步骤,直至所有的目标词都已经分析完整,或者仅剩下一个目标词的时候,将其挂在根节点ROOT上,从而生成依存句法分析树。
[0094] 可以理解的,在实际应用中,因为在步骤304或者305中预测出的动作有可能是不作任何处理,因此在实际应用中并不是仅仅按照目标词组成语句的顺序来处理目标词的,而是结合了之前确定目标词之间的依存关系时所采取的动作来确定下两个待处理的目标词。
[0095] 为了方便本领域技术人员更清楚的了解本申请的实现过程,下面介绍一个具体实施例。
[0096] 步骤A1:构造一个骨干模型动作历史列表H1,存放所有骨架依存树上的历史动作,初始为空,即H1={}。
[0097] 步骤A2:构造一个完整模型动作历史列表H2,存放所有完整依存树上的历史动作,初始为空,即H2={}。
[0098] 在对句子进行依存句法分析之前,先构造骨干模型动作历史列表和完整模型动作历史列表。
[0099] 步骤A3:对目标语句的目标词序列进行编号。
[0100] 本步骤针对待分析的句子转换成的词序列进行编号。范围为[0,N),其中,N为句子的总词数,对ROOT编号为-1。
[0101] 步骤A4:构建一个栈S。
[0102] 在本步骤中构建的栈S用来存放处理过的(弧的左侧)节点。初始时,栈中存放根节点,记为S={-1}。
[0103] 步骤A5:构建一个队列Q。
[0104] 在本步骤中构建的Q存放当前还没有处理的(弧的右侧)节点。初始时,队列中存放目标词序列的所有节点,Q={0,1,...,N-1}。
[0105] 步骤A5:判断栈和队列是否都不空,如果是,则进入步骤A6,如果队列为空,则结束流程。
[0106] 步骤A6:取出栈顶节点作为左节点L,以及取出队首节点作为右节点R。
[0107] 步骤A7:判断右节点R是否为标点符号,如果是,则进入步骤A8,如果不是,则进入步骤A9。
[0108] 步骤A8:标记右节点R的parent为-2,relate为WP,删除队首元素,进入步骤A5。
[0109] 步骤A9:判断左节点L和右节点R是否都是骨干词,如果是,则进入步骤A10,如果仅L是骨干词,则进入步骤A11,如果仅R是骨干词,则进入步骤A12,如果L和R都不是骨干词,则进入步骤A13。
[0110] 步骤A10:使用动作预测骨干模型、根据骨干动作历史A1、节点L和R以及它们的上下文从以下3种动作中决策出一个动作a,并进入步骤A14。
[0111] 第一个动作为“LEFT_X”,表示画一条由R指向L的左弧,左弧类型“X”可以是{ATT,ADV,SBV}中的任意一种,并在栈中删除栈顶元素,标记L的parent为R,relate为左弧类型“X”的取值。第二个动作为“RIGHT_Y”,表示画一条由L指向R的右弧,右弧类型“Y”可以是{ATT,COO,VOB,HED,DC}中的任意一种,并在队列中删除队首元素,同时将栈顶元素从栈中删除的同时将其放入队首,标记R的parent为L,relate对应为右弧类型“Y”的取值。第三个动作为“SHIFT”,表示不画弧,暂时将右节点R压入栈中,同时在队列中删除队首元素。
[0112] 步骤A11:使用动作预测完整模型、根据完整动作历史A2、节点L和R以及它们的上下文从以下2种动作中决策出一个动作a,并进入步骤A15。
[0113] 第一种动作为“RIGHT_Y”,表示画一条由L指向R的右弧,“Y”为右弧类型,可以是{ATT,VOB,HED,DC}中的同时将其放入队首,标记R的parent为L,relate为右弧类型“Y”的取值。第二种动作为“SHIFT”,表示不画弧,暂时将右节点R压入栈中,同时在队列中删除队首元素。
[0114] 步骤A12:使用动作预测完整模型、根据完整动作历史A2、节点L和R以及它们的上下文从以下2种动作中决策出一个动作a,并进入步骤A15。
[0115] 第一种动作为“LEFT_X”,表示画一条由R指向L的左弧,“X”为左弧类型,可以是{ATT,ADV,SBV}中的任意一种,在栈中删除栈顶元素,标记L的parent为R,relate为左弧类型“X”的取值。第二种动作为“SHIFT”,表示不画弧,暂时将右节点R压入栈中,同时在队列中删除队首元素。
[0116] 步骤A13:使用动作预测完整模型、根据完整动作历史A2、节点L和R以及它们的上下文从以下3种动作中决策出一个动作a,并进入步骤A15。
[0117] 第一种动作为“LEFT_X”,画一条由R指向L的左弧,“X”为左弧类型,可以是“ATT”,在栈中删除栈顶元素,标记L的parent为R,relate为左弧类型“X”的取值。第二种动作为“RIGHT_Y”,表示画一条由L指向R的右弧,“Y”为右弧类型,可以是{ATT,COO,DC}之一,在队列中删除队首元素,将栈顶元素从栈中删除的同时放入队首,标记R的parent为L,relate为右弧类型“Y”的取值。第三种动作为“SHIFT”,不画弧,暂时将右节点R压入栈中,同时在队列中删除队首元素。
[0118] 步骤A14:将采取的动作a加入到骨干动作历史列表A1,返回步骤A5。
[0119] 步骤A15:将采取的动作a加入到完整动作历史列表A2,返回步骤A5。
[0120] 当所有的节点的父节点和依存关系都已经分析出来了,则结束流程。
[0121] 介绍完具体的实施例之后,接着返回图3,在步骤306之后,在不同的实施例中,还可以包括:
[0122] 步骤307:依据所述目标语句的各个目标词之间的依存关系,提取所述目标语句的目标核心产品词。
[0123] 在分析得到目标语句的各个目标词之间的依存关系之后,根据各个目标词之间的依存关系可以提取出目标语句的目标核心产品词,进而可以将该目标核心产品词作为该目标语句对应的搜索关键词。
[0124] 步骤308:响应于用户输入的关键词,搜索其包含的核心产品词与所述关键词匹配的目标语句。
[0125] 后续如果用户输入了某个关键词希望搜索相关产品,那么核心产品词与该用户输入的关键词相匹配的那些产品标题就会被搜索到。
[0126] 步骤309:将所述匹配的目标语句所对应的产品信息发送至客户端进行展现。
[0127] 进而服务器可以将匹配的目标语句对应的产品信息发送至客户端展现给用户。
[0128] 可见,在本申请实施例中,基于将词语区分为骨干词和非骨干词的方式,从而可以在针对两个待分析的目标词都是骨干词的情况下,采用动作预测骨干模型进行预测。因为骨干词只是目标语句中相对较少的一部分词,这样将句子骨架结构的选择缩小到一个更小的骨干词集合,避免了不必要且容易出错的非骨干节点处理,通过减少了关键节点的个数来缓解“错误级联”现象的影响,因此就可以大大降低错误级联给准确率带来的影响,从而提升了依存句法分析结果的准确率。进一步的,得到句子的目标核心产品词的准确率也相应地得到了提高,从而可以在用户搜索相关产品的时候,能为用户提供更为匹配的产品信息,从而也提升了用户的产品搜索体验。
[0129] 为了方便本领域技术人员对本申请在实际应用中的实现过程的理解,下面介绍一个具体的例子。
[0130] 以电子商务场景下的文本“迷你磁力搅拌器,配置1个磁力搅拌子”为目标语句,本申请中的依存句法分析的过程如下:
[0131] 步骤B1:经过对句子进行分词得到初始词序列,插入虚拟节点ROOT,对每个词编号,构建栈和队列。
[0132] 在本步骤中构建的栈顶要对应当前要处理的左词,队列的首部即是队首要对应当前要处理的右词。参考图4所示,为本步骤中目标语句的初始状态示意图。
[0133] 步骤B2:执行第1个动作:由于在当前情况下,仅左词“ROOT”是骨干词,使用动作预测完整模型预测出当前应该采取的动作为:,从而将队首的“迷你”移入栈顶。
[0134] 参考图5所示,为本步骤中目标语句执行完第1个动作的状态示意图。
[0135] 步骤B3:执行第2个动作:在当前情况下,左右词都不是骨干词,使用动作预测完整模型预测出当前应该采取的动作为,从而将队首的“磁力”移入栈顶。
[0136] 参考图6所示,为本步骤中目标语句执行完第2个动作的状态示意图。
[0137] 步骤B4:执行第3个动作:在当前情况下,仅右词“搅拌器”是骨干词,使用完整模型预测出当前应该采取的动作为,画一条左弧,同时删除节点“磁力”。
[0138] 参考图7所示,为本步骤中目标语句执行完第3个动作的状态示意图。
[0139] 步骤B5:执行第4个动作:在当前情况下,仅右词“搅拌器”是骨干词,使用完整模型预测出当前应该采取的动作为,画一条左弧,同时删除节点“迷你”。
[0140] 参考图8所示,为本步骤中目标语句执行完第4个动作的状态示意图。
[0141] 步骤B6:执行第5个动作:在当前情况下,仅左词“ROOT”是骨干词,使用完整模型预测出当前应该采取的动作为,将队首的“搅拌器”移入栈顶。
[0142] 参考图9所示,为本步骤中目标语句执行完第5个动作的状态示意图。可以理解的是,对于目标语句中出现的标点符号,例如图9中的第3个目标词“,”本申请实施例不会对其进行分析,即将目标语句中的标点符号屏蔽,最终得到的依存树中的也不会包含该标点符号的相关弧。
[0143] 步骤B7:执行第6个动作:在当前情况下,左词“搅拌器”和右词“配置”均是骨干词,调用依存分析的骨干模型,预测出当前应该采取的动作为,将队首的“配置”移入栈顶。
[0144] 参考图10所示,为本步骤中目标语句执行完第6个动作的状态示意图。
[0145] 步骤B8:执行第7个动作:在当前情况下,仅左词“配置”是骨干词,使用完整模型预测出当前应该采取的动作为,将队首的“1”移入栈顶。
[0146] 参考图11所示,为本步骤中目标语句执行完第7个动作的状态示意图。
[0147] 步骤B9:执行第8个动作:在当前情况下,左词和右词都不是骨干词,使用完整模型预测出当前应该采取的动作为,画一条左弧,同时删除栈顶节点“1”。
[0148] 参考图12所示,为本步骤中目标语句执行完第8个动作的状态示意图。
[0149] 步骤B10:执行第9个动作:在当前情况下,仅左词是骨干词,使用完整模型预测出当前应该采取的动作为,将队首的“个”移入栈顶。
[0150] 参考图13所示,为本步骤中目标语句执行完第9个动作的状态示意图。
[0151] 步骤B11:执行第10个动作:在当前情况下,左词和右词都不是骨干词,使用完整模型预测出当前应该采取的动作为,将队首的“磁力”移入栈顶。
[0152] 参考图14所示,为本步骤中目标语句执行完第10个动作的状态示意图。
[0153] 步骤B12:执行第11个动作:在当前情况下,仅右词是骨干词,使用完整模型预测出当前应该采取的动作为,画一条左弧,同时删除栈顶节点“磁力”。
[0154] 参考图15所示,为本步骤中目标语句执行完第11个动作的状态示意图。
[0155] 步骤B13:执行第12个动作:在当前情况下,仅右词是骨干词,使用完整模型预测出当前应该采取的动作为,画一条左弧,同时删除栈顶节点“个”。
[0156] 参考图16所示,为本步骤中目标语句执行完第12个动作的状态示意图。
[0157] 步骤B14:执行第13个动作:在当前情况下,左词“配置”和右词“搅拌子”均是骨干词,调用依存分析的骨干模型,预测出当前应该采取的动作为8(搅拌子)>,画一条右弧,删除队首节点“搅拌子”,同时将栈顶节点“配置”移入队首。
[0158] 参考图17所示,为本步骤中目标语句执行完第13个动作的状态示意图。
[0159] 步骤B15:执行第14个动作:在当前情况下,左词“搅拌器”和右词“配置”均是骨干词,调用依存分析的骨干模型,预测出当前应该采取的动作为4(配置)>,画一条右弧,删除队首节点“配置”,同时将栈顶节点“搅拌器”移入队首。
[0160] 参考图18所示,为本步骤中目标语句执行完第14个动作的状态示意图。
[0161] 步骤B16:执行第15个动作:在当前情况下,左词“ROOT”和右词“搅拌器”均是骨干词,且队列中仅剩1词,栈中仅剩ROOT,直接采取动作2(搅拌器)>,画上最后一条右弧。
[0162] 执行完步骤B16之后,依存句法分析过程结束,分析好的依存树可以参考图19所示。
[0163] 上述算法的本质是将句子中的3个骨干词“搅拌器、配置和搅拌子”提取出来利用一个单独的动作预测骨干模型进行依存分析,其他的非骨干词则使用动作预测完整模型进行处理,使非骨干词直接或间接地挂在骨干词上,并使用规则加以约束,以保证三个骨干词最终成为依存句法分析树的骨架。使用这种方法的好处有:(1)和直接处理所有词相比,骨干词的个数较少,单独处理避免了动作预测骨干模型的错误级联问题的放大效应;(2)当左右词中仅有1个骨干词时,由于非骨干词在采取动作时受到了约束,避免了骨干词节点被删除,因此动作预测完整模型的前期可能的错误也不会影响后期动作预测骨干模型的预测结果。
[0164] 根据本申请的实施方式,在实际应用中以200句小规模的人工标注依存树的集合上,对现有技术和本申请的实施效果进行了评测,结果如表1所示:
[0165] 表1
[0166]
[0167] 可以从表1中看出,使用本申请的实施方式,与现有技术相比大幅提高了依存分析结果的正确率。
[0168] 此外需要说明的是,图4~图19的示例仅仅是本申请在实际应用中的一个针对特定样本的特定例子,其中所显示的内容都为了本领域技术人员理解本申请之便,不应将其理解为对本申请的限定。
[0169] 对于前述的方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
[0170] 与上述本申请一种目标语句的依存句法分析方法实施例所提供的方法相对应,参见图20,本申请还提供了一种目标语句的依存句法分析装置实施例,在本实施例中,该装置可以包括:
[0171] 第一获取模块2001,用于获取待分析的目标语句的目标词序列。
[0172] 第一确定模块2002,用于将所述目标词序列中的前两个目标词确定为当前目标词。
[0173] 判断模块2003,用于判断所述当前目标词是否都是骨干词。
[0174] 第二确定模块2004,用于在所述判断模块的结果为都是的情况下,采用预置的动作预测骨干模型确定所述两个目标词之间的依存关系。
[0175] 所述第二确定模块2004具体可以用于:参考所述两个目标词的上下文和所述目标语句的骨干历史动作,采用动作预测骨干模型确定所述两个目标词之间的依存关系。
[0176] 第三确定模块2005,用于在所述判断模块的结果为有一个不是或者两个都不是的情况下,采用预置的动作预测完整模型确定所述两个目标词之间的依存关系。
[0177] 所述第三确定模块2005具体可以用于:参考所述两个目标词的上下文和所述目标语句的骨干词历史动作,采用动作预测完整模型确定所述两个目标词之间的依存关系。第二获取模块,用于参考目标词序列组成语句的顺序和确定的依存关系获取下两个待处理的目标词作为当前目标词。
[0178] 触发模块2006,用于触发所述判断模块,直至所述目标词序列中的所有目标词都分析完毕为止。
[0179] 在实际应用中,本申请实施例的装置还可以包括:
[0180] 提取模块2007,用于依据所述目标语句的各个目标词之间的依存关系,提取所述目标语句的目标核心产品词。
[0181] 以及,搜索模块2008,用于响应于用户输入的搜索关键词,搜索关键词中所包含的核心产品词与所述搜索关键词匹配的目标语句;
[0182] 发送模块2009,用于将所述匹配的目标语句所对应的产品信息发送至客户端进行展现。
[0183] 参考图21所示,所述装置还可以包括:骨干模型训练模块210,所述骨干模型训练模块210具体可以包括:
[0184] 提取子模块2101,用于提取样本语句中的骨干词序列。
[0185] 第一获取子模块2102,用于获取针对所述骨干词序列进行依存句法树标注得到的骨干依存树。
[0186] 第一转换子模块2103,用于将获取到的骨干依存树转换成一系列的骨干动作序列。
[0187] 第一抽取子模块2104,用于针对所述骨干动作序列中的每个当前骨干动作,从所述当前骨干动作涉及的目标词的上下文和所述当前骨干动作前所有骨干动作中抽取当前骨干特征。
[0188] 第一确定子模块2105,用于将当前骨干动作的动作内容确定为与所述当前骨干特征对应的当前骨干类,其中,所述目标词的上下文为:所述目标词本身及其前后的部分目标词以及所述部分目标词的属性信息。
[0189] 第一训练子模块2106,用于针对大量的样本语句,依据所述骨干动作序列中所有骨干动作的骨干特征和骨干类的映射,利用特定的机器学习算法训练得到动作预测骨干模型。
[0190] 参考图22所示,所述装置具体还可以包括:完整模型训练模块220,所述完整模型训练模块220具体可以包括:
[0191] 第二获取子模块2201,用于获取针对样本语句的完整词序列进行依存句法树标注得到的完整依存树。
[0192] 第二转换子模块2202,用于将获取到的完整依存树转换成一系列的完整动作序列。
[0193] 第二抽取子模块2203,用于针对所述完整动作序列中的每个当前完整动作,从所述当前完整动作涉及的完整目标词的上下文和所述当前完整动作前所有完整动作中抽取当前完整特征。
[0194] 第二确定子模块2204,用于将当前完整动作的动作内容确定为与所述当前完整特征对应的当前完整类。
[0195] 第二训练子模块2205,用于针对大量的样本语句,依据所述完整动作序列中所有完整动作的完整特征和完整类的映射,利用特定的机器学习算法训练得到动作预测完整模型。
[0196] 可以理解的是,骨干模型训练模块210和完整模型训练模块220与图20所示的装置可以相互独立,图20所示的装置只需要可以触发骨干模型训练模块210和完整模型训练模块220进行模型预测即可。
[0197] 在本申请实施例中,依存句法分析装置基于将词语区分为骨干词和非骨干词的方式,从而可以在针对两个待分析的目标词都是骨干词的情况下,采用动作预测骨干模型进行预测。因为骨干词只是目标语句中相对较少的一部分词,这样将句子骨架结构的选择缩小到一个更小的骨干词集合,避免了不必要且容易出错的非骨干节点处理,通过减少了关键节点的个数来缓解“错误级联”现象的影响,因此就可以大大降低错误级联给准确率带来的影响,从而提升了依存句法分析结果的准确率。进一步的,得到句子的目标核心产品词的准确率也相应地得到了提高,从而可以在用户搜索相关产品的时候,能为用户提供更为匹配的产品信息,从而也提升了用户的产品搜索体验。
[0198] 本申请实施例还提供了一种服务器,该服务器的CPU上可以集成前述的依存句法分析装置,从而实现前述的依存句法分析装置的功能。
[0199] 需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0200] 最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0201] 以上对本申请所提供的目标语句的依存句法分析方法、装置及服务器进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。