一种基于滑动语义串匹配的句法分析方法技术

技术编号:9545341 阅读:189 留言:0更新日期:2014-01-08 21:37
本发明专利技术属于计算机自然语言处理领域,涉及一种对人类自然语言句子进行高质量的句法分析的方法,具体是指一种基于滑动语义串匹配的句法分析方法。其特征是在建立规则库时,首先对通常短语句法树进行了层次的扁平化转换,然后对每一层的组块信息进行语义码标注,从而提取N元上下文有关文法的组块规则;在句法分析时,通过滑动语义串匹配模型匹配出最优的组块规则进行层叠组块式分析;通过错误修正模板在高层发现和修正低层中的错误,实现层叠组块式句法分析中的启发式回溯处理;通过在语义模板索引中直接加入模板信息,实现机器对新句法规则的即时学习。本发明专利技术解决了概率上下文无关文法(PCFG)型句法分析水平难进一步提高以及层叠组块型句法分析中难以选择正确的组块规则的难题,提高了现有句法分析水平。

【技术实现步骤摘要】
【专利摘要】本专利技术属于计算机自然语言处理领域,涉及一种对人类自然语言句子进行高质量的句法分析的方法,具体是指。其特征是在建立规则库时,首先对通常短语句法树进行了层次的扁平化转换,然后对每一层的组块信息进行语义码标注,从而提取N元上下文有关文法的组块规则;在句法分析时,通过滑动语义串匹配模型匹配出最优的组块规则进行层叠组块式分析;通过错误修正模板在高层发现和修正低层中的错误,实现层叠组块式句法分析中的启发式回溯处理;通过在语义模板索引中直接加入模板信息,实现机器对新句法规则的即时学习。本专利技术解决了概率上下文无关文法(PCFG)型句法分析水平难进一步提高以及层叠组块型句法分析中难以选择正确的组块规则的难题,提高了现有句法分析水平。【专利说明】
本专利技术属于计算机自然语言处理领域,涉及ー种对人类自然语言句子进行高质量的句法分析的方法,具体是指ー种基于滑动语义串匹配的句法分析方法
技术介绍
句法分析是对自然语言句子进行一系列的解析,主要分析出句子的句法成分以及它们之间的关系,通常的输出结果是以句法树作为表现形式。句法分析是自然语言处理过程中一个至关重要的环节,同时又是一个公认的难点问题。因为它是很多具体应用的基础,比如自动问答系统、语义检索、文本摘要、故事理解,甚至机器翻译等等。如果这个环节不能把给定的句子分析正确,那么,依赖它的后续处理的性能就难以保证。由于人们对高性能的信息处理系统的迫切要求,句法分析的质量问题已经成为了自然语言处理发展道路上的ー个瓶颈问题,句法分析本身也是ー个不可回避的研究课题。句法分析通常都是以词性为基础进行分析,由于词性信息粒度太粗,导致很多岐义发生,因此很难从多个歧义结构中选择到ー个正确的句法树,后来虽有利用概率性信息来优选最終的句法树,并也取得了一定的效果,但是要再进ー步提升性能就很难。考虑到词性信息粒度太粗的问题,以后的句法分析开始把词的信息考虑进来,主要是中心词驱动方法。但是词的信息粒度太细,使得数据稀疏问题严重,因此效果提升不是很大。考虑到词性信息粒度太粗,而词的信息粒度又太细,因此采用语义码来代替词进行句法分析的这种方法已经提出来并被使用(苑春法等1999,曹雁锋等2005,曹海龙2006,张耀中2008,吴玺宏等2009,樊扬2010,代印唐等2011),其中的语义信息来源,有的是基于语义词典,比如知网和同义词词林等;有的是通过聚类的方式获得;有的通过将词性进行次范畴化。但是,这些应用语义码的方法都是基于上下文无关文法的,或者是先采用上下文无关文法的句法分析,然后再用语义信息从多个歧义结果中进行优选。由于上下文无关文法没有很好地考虑上下文信息,而且大多数仅是基于ニ元数据的生成规则,对于自然语言中存在的多元长度的信息关联,甚至超远距离信息关联情况的句法分析,就鞭长莫及。因此,这种考虑语义的上下文无关文法的句法分析的性能虽有提高,但仍然没有达到ー个很好效果。因此,如何解决上下文无关文法所存在的上下文信息覆盖不足的问题,或者转而采用上下文有关文法来进行句法分析,就成为了ー个值得研究的课题。采用面向数据驱动的句法分析(DOP)也有研究,主要是充分利用大規模标注的句法树库,首先分解句法树为若干的子树,建立子树模式库;然后在进行句法分析时,将待分析的句子进行切片,通过特定算法把这些分片的片段与子树模式进行某种匹配,拼凑成完全的句法树(张玥杰等2000,张亮等2007,郭海旭等2009)。该方法目前主要也是使用词性和词的信息,没有使用语义编码信息,会存在一定的数据稀疏问题。另外,这种切片的分界点很难把握,如果句子分段切分得不好,会导致最終的分析结果错误。因此,如何能保证合理地正确切分以及如何减少数据稀疏是该方法要解决的问题。基于层叠组块式句法分析现时被使用(Steven Abneyl996,耿向好2008,陈雪艳等 2008,周国栋等 2009,郑伟发 2009,Qiaoli ZHOU 等 2009,Zhipeng Jiang 等 2010,Zhouqiao Ii等2010)。对于如何获取正确的组块规则,已经进行了很多研究,从最大长度匹配的方法直到机器学习的最大熵方法、层叠隐马尔科夫、层叠条件随机场等方法都有使用。在进行每一层组块操作时,在某种意义上已经考虑一定程度的上下文关联信息,但是由于自然语言会存在长的上下文信息关联的情况,而机器学习方法由于时间和存储空间限制,上下文关联的长度不能很大,而且目前的大部分都是基于词性或词的某种组合的信息,很少使用语义编码信息。因此导致每ー层的组块的正确性也不是很高,而且由于层叠组块方法不具备回溯能力,使得低层的一点错误会在后面高层逐渐地被放大,导致最后的分析结果不理想。因此,如何提高组块分析过程中的每ー层的正确性是该方法亟待解决的问题,特别是如何引入回溯机制进行错误修正是ー个值得研究的课题。由于自然语言是不断发展的,新的语言现象总会不断出现,这样就要求系统能随时吸收新的语法知识到系统的规则库中,以便系统具有的语言知识不至于脱离实际太远,因此机器具有学习能力是不可缺少的。但是现有的基于统计的机器学习方法,学习时间都普遍比较长,有的都是几十小时以上,很不便于机器即时更新信息库,导致了系统性能不能及时同步提高。因此,系统如何快速地获取新语言现象的信息,以便动态提高系统性能,也是句法分析系统ー个需要面对的问题。Steven Abney (1996)【Steven Abney.Partial Parsing via Finite-StateCascades .Proceedings of the ESSLLI’96Robust Parsing Workshop.1996,8-15】提出ー种基于层叠有限状态机的组块式句法分析方法,这也是ー种确定性的句法分析方法。分析时,通过逐层“由底向上”组块的方式实现句法分析。当组块规则出现冲突时,采用最大长度匹配方式来选择最优的规则。苑春法等(1999)【苑春法,黄锦辉,李文捷.基于语义知识的汉语句法结构排歧.中文信息学报,1999,13 (1):1-8.】提出用语义码的形式代替词,可以有更好的适配性,覆盖能力强。考虑使用语义知识进行排歧,需要对所有词进行语义类代码标注是一件エ作量大且又烦琐的工作,因此采用了对不同的歧义模式采用具体的判断方法,回避了语义类代码的标注问题。以现代汉语辞海和同义词词林为主要资源获取了汉语语义类之间的句法关系知识,建立了ー个汉语语义关联网,使用语义类知识排除结构歧义。张玥杰等(2000)【张玥杰,朱靖波,张跃,等.基于DOP的汉语句法分析技术.中文信息学报,2000 (1):13-21】采用面向数据的分析技术D0P,以ー种概率分析策略,为ー个给定句子找到最可能的分析。使用了 Monte Carlo方法做为找到最可能分析的近似分析算法,可在合理的算法时间代价范围内实现,而且在统计上受控,确保所获得的近似解确实对应着分析消歧后的精确解。曹雁锋等(2005)【曹雁鋒,万建成,卢雷.基于二元运算关系的汉语计算语法模型.山东大学学报(工学版),2005,35 (1):88-93.】在二元语义关系基础上,结合汉语句法结构的特征,提出了二元运算关系的概念。提出的二元运算关系还需要进本文档来自技高网...

【技术保护点】
一种基于滑动语义串匹配的句法分析方法,其特征在于以下步骤:?一、扁平分层的短语结构句法树表示?采用层叠组块分析方法,句法分析的结果采用短语结构二叉树表示,在表示时,对通常的短语句法树进行了层次的扁平化转换;?二、N元上下文有关文法的规则提取?第一,按照语义词典,对用于训练的句法树库中句子的词标注对应的语义码;对于单义词,由机器按照语义词典中词的语义码一一对应实现自动标注;对于多义词,根据词所在上下文中的信息,由人从语义词典中选定最适合的语义码进行标注,由n个词构成的句子的语义码的标注为S1,S2,S3,…,Sn;?第二,按照扁平层次化的短语结构句法树的层次,对每层两两组合成的一个组块Chunk进行语义标注;该组块的语义码按照组块的中心词位置,从前一层的词或组块的语义码继承下来,作为当前新组块的语义码;组块的语义标注从第0层开始,自底向上逐层进行,直到完成最后层的根组块的语义标注,即完成对整个句法树的语义标注;组块语义码的格式为:“组块名XPx:语义码Sx”;?第三,对每一层所有基元,按每移动一个基元位置,以N个基元长度进行切分分组,一个基元是指一个词的语义码或者一个组块的语义码;即以“长度为N的窗口”从每一层的前端开始滑动,每滑过一个基元位置,就从该窗口中抽取构成组块的规则;该规则是指,当前窗口中的N元基元信息,如何进行组块而成为下一层中的信息;把所有层的所有的每N长度的模板及其对应的组块信息都提取出来;对于每层的结尾部分不足N长度划分的,则采用实际长度进行提取,直到模板长度为1为止;?对用于训练的句法树库以外的句子的组块规则,采用机器即时学习的方法获得;?三、基于滑动语义串匹配的句法分析模型?采用滑动语义串匹配方法,即SMOSS模型,进行句法分析,工作过程参见表1;?表1:基于SMOSS模型的句法分析的基本过程表?(一)N元语义码串与模板库模板的匹配操作?a.首先将待匹配的N元长度的语义码串与模板库中N元长度的语义模板,从开始基元到结尾基元逐个进行对应匹配;?b.每个N元待匹配语义码串上的语义码与模板对应位置的语义码的匹配,是按照语义词典的编码格式由大类到小类顺序逐次进行匹配,若某类匹配失败则不进行余下类别的匹配;在匹配过程中,每个类级匹配成功一次,就得到该语义码在该类级的得分,将语义码在各个匹配类级上的得分进行累计,就是该语义码的匹配得分;?c.当对N元语义码串中的N个语义码都匹配成功后,将这N个语义码的各个匹配得分按照权重进行汇总,就是该N元语义码串匹配到的模板的得分;同时将该模板的匹配得分直接传递到模板所对应的组块信息上,用于后续操作;?(二)一个N元语义码串匹配出0个模板的处理?如果一个N元语义串匹配模板的结果是0,即没有相匹配的模板,则采用降元的方式处理;?当在N元长度上的语义码串匹配结果是0,则降元到N?1元的语义码串长度上进行匹配,如果匹配结果还是0,则再降元到N?2元的语义码串长度上进行匹配;以此类推,直到语义码串长度降元到2为止;每降元一次,语义码串匹配的模板的权重也相应降低;?(三)一个N元语义码串匹配出多个不同模板的处理?对于一个语义码串匹配出多个模板的结果;则将该语义码串所对应的多个不同的模板都取出来,供随后的对这些模板分别取对应组块信息的操作;?(四)一个N元模板对应到多个不同组块信息的处理?对于一个模板对应多种不同的组块结果,则将同一模板所对应的多个不同组块的信息都取出来,供随后的对组块信息进行汇总的操作;?(五)一个N元语义串中未知语义码的处理?一个句子中如果有些未知词并不在语义词典中,那么这些未知词对应的就是未知语义码;对于未知语义码采用通配符“?????”方式进行模板匹配;未知语义码的匹配得分按语义码匹配计算时全匹配的满分来计算;整个匹配模板的得分是模板中各个已知语义码的匹配得分之和,加上模板中各个未知语义码的匹配满分之和。?(六)组块信息统计汇总的操作?当在某一层所有的通过滑动移位获取的N元语义码串都匹配完后,对这些模板所对应的组块信息进行汇总;在汇总时,首先在每一个基元位置上,统计与其相关的N元模板对应的组块信息对该位置上的各种信息的投票,然后根据该位置上这些相关的组块信息的匹配得分,这个得分是在模板匹配时传递过来的,将投票结果和组块信息的匹配得分按照汇总算法得到汇总得分;选择汇总得分最大的前p个作为候选的组块信息;然后从中选择第一最大得分的组块信息,作为组块成下一层的信息;?若汇总结果中有并列最大得分的,先顺序选择第一个作为选定,并暂假定这种选定的结果是对的,接着向下执行;若执行到下一层或下几层发现错了,则通过回溯处理,启发式地指定候选中的某一个,直到或者能有正确结果,或者全部候选都试完为止。?FDA0000398055070000021.jpg...

【技术特征摘要】

【专利技术属性】
技术研发人员:王伟黄德根
申请(专利权)人:大连理工大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1