您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 咨询培训 > 8件基于trigger对的长距离蒙古语语言模型0625
基于trigger对的长距离蒙古语语言模型*刘志文1,侯宏旭1,李沙茹拉2,柳林1(1.内蒙古大学计算机学院,内蒙古呼和浩特010021;2.内蒙古大学电子信息工程学院,内蒙古呼和浩特010021)摘要:为了克服在蒙古语语言模型建模过程中n-gram缺乏长距离信息的弱点,本文在统计语言模型的基础上,提出了一种基于trigger对的长距离蒙古语语言模型,该模型采用统计方法进行自然语言建模。本文简要介绍了基于trigger对的长距离蒙古语语言模型,并给出了句长补偿、参数估计和数据平滑方法,并在汉语-蒙古语机器翻译系统实现了该方法,实验结果表明该技术克服了n元文法语言模型描述距离小于n的缺点,并提高了翻译效果,该模型也为自然语言建模提供了一定的参考。关键词:trigger对;蒙古语;语言模型;平滑中图分类号:TP391文献标识码:ALong-DistanceMongoliaLanguageModelBasedonTriggerPairLiuZhiwen1,HouHongxu1,LiSaragul2,LiuLin1(1.CollegeofComputerScience,InnerMongoliaUniversity,Hohhot010021,China;2.CollegeofElectronicInformationEngineering,InnerMongoliaUniversity,Hohhot010021,China;)Abstract:Toovercomethen-gram’slackoflong-distanceinformationinMongolianlanguagemodelingprocess,thispaperputsforwardtolong-distanceMongolialanguagemodelbasedontriggerpairtonaturallanguagemodelingprocess.Long-distanceMongolialanguagemodeladoptsthestatisticalmethodtosettingupthenaturallanguagemodels.Thispaperintroducesthelong-distanceMongolialanguagemodel,givesmethodsofsentencecompensation,parametersestimateanddatasmoothing.Theexperimentalresultsshowthatthismodelcanovercometheshortcomingofn-grammodelthatitonlycandescribethewordpairsbeinglessthennwordsapart,improvesthetranslationresults,andalsoprovidesomereferenceforsettingupthenaturallanguagemodels.Keywords:Triggerpair;Mongolian;Languagemodel;Smoothing1引言统计语言模型[1]在机器翻译、文字处理、文字检索等领域有着广阔的应用。作为机器翻译的一项基础性工作,蒙古语语言模型的建立不能照搬汉语、英语等语言中使用的语言模型方法[2]。本文作者针对蒙古语语言的特点提出了一种新的蒙古文统计语言模型,即基于trigger*基金项目:内蒙古自然基金项目“蒙古语文本语言模型的构建研究”(200607010805)资助作者简介:刘志文(1982~),男,硕士研究生,主要研究方向:信息处理。通讯作者:侯宏旭(1972~),男,副教授,主要研究方向:中文信息处理。对的长距离蒙古语语言模型,并应用于汉-蒙机器翻译系统[3]。蒙古语属于黏着型语言。蒙古语的构词,构形都是通过在词干后缀接不同的词尾而实现的,并且它们还可以层层缀接,这使得蒙古语词法形态变化丰富且复杂[4]。蒙古语的构形附加成分负载着非常丰富的语法信息,所以如果只对整词(即词干+构形附加成分)或者词干进行统计,就会丢失大量语法信息,而这些信息对蒙古语语言模型的构建有着举足轻重的意义。所以有必要对蒙古语词干、词缀进行统计来得到语言模型信息。但是,在对蒙古语词干、词缀切分后进行统计,又会带来新的问题。以下面这句“工厂里工人们在工作”为例:名词“工人们”可以切分为一个词干和两个词缀,这会带来问题:如果用常用的n-gram来分析,分析的结果常常会是某个字内部的词干词缀的关系,而没有反应出两个或更多文字之间的联系。以常用的3-gram为例[5],语言模型信息可以反映出3个字之间的关系,而蒙古语在进行了词干、词缀切分后,如果依然使用3-gram,那么反映出的可能是2个字甚至1个字的关系,而连3-gram可以反应3个字的长度都不足了。为了能够反映出更长距离的相关信息,作者使用了trigger对来描述更长距离上的关联信息[6]。如果词A的出现使得后文中词B出现,则称(AB)为一个trigger对[7]。其中A称作触发者(trigger),B称作被触发者(triggerword)。在自然语言中,这种情况是非常普遍的,也就是通常所说的词的习惯搭配现象。例如:如果词“奥运会”在文中出现,那么在后文中“2008”、“北京”等词出现的可能性将大大增加,因此可以分别称(奥运会2008)、(奥运会北京)为trigger对。2基于trigger对的长距离蒙古语语言模型从trigger对的定义及选取标准可以看到,trigger对能够表达长距离的词之间的相关程度,而这种对距离限制很少的词之间的搭配是非常符合人们的语言习惯的,这恰好弥补了传统N元文法语言模型描述距离小于N的缺点。因此如能恰当地将基于trigger的语言模型与N元文法语言模型结合起来必将有助于更好地描述语言的统计特性,进而提高机器翻译系统的性能。但这并非是一件易事,trigger对是一种比较灵活的表达方式,如何利用trigger对提供的信息实现基于trigger对的模型还是一项新的研究工作。构建基于trigger对的语言模型都需要选择一个合适的度量标准并据此保留所需数目的trigger对。一个最简单的控制trigger对数目的方法就是给历史加窗,即限制trigger对的最长约束距离。一般说来,这个参数并无精确要求,可以根据经验在合适范围内选取。大量文献认为:在历史中最近的六个词已包含了绝大部分信息。文中在选择trigger对的实验中,由于一个蒙古语文字可能切分为多部分,故窗长限制取为9,即只考虑当前词的前9个词作为历史。trigger对选取的距离由于trigram的存在,最短距离从4开始,最长距离用9。基于trigger对的长距离蒙古语语言模型认为第i个符号的出现是由于第i个符号做为被触发者所构成的trigger对来决定的,而一个句子第i个符号做为被触发者可能会与前面多个符号构成trigger对,这时则认为强度由其中最强的来决定。基于trigger对的长距离蒙古语语言模型的得分标准采用如下方法:niiLiiintriggerwwPwwPMAX)]|(),...,|([log)...(log其中表示的是句子的trigger对得分;表示iw出现条件下3iw出现的条件概率;L表示trigger对窗口的最大距离,本文中即为9。3基于trigger对的长距离蒙古语语言模型的句长补偿如果源蒙古语句子A可以通过我们的汉-蒙机器翻译系统得到不同的翻译结果:A1、A2、…An,我们希望通过语言模型来找到最好的翻译结果。通过上步的处理后我们可以发现由于trigger对得分要远远小于1,从翻译结果中看,得分高的句子明显倾向于短的句子。简单来说小于1的小数相乘,乘的越多值当然越小。在这种情况下,我们必须做出句长补偿。基于trigger对的长距离蒙古语语言模型的得分经补偿后,如下:SLC即句长补偿值(SentenceLengthCompensation),具体值为:其中C为补偿通用基数,SL为句长。4基于trigger对的长距离蒙古语语言模型的改进Katz平滑技术在实际应用中,笔者发现了新的问题:trigger对稀疏问题严重。笔者分别在翻译节点为300和1000上进行了实验,对不可查找到的trigger对数目与可查找到的trigger对数目进行了统计,结果如下:表1可查找到的trigger对与不可查找到的trigger对对比翻译节点数可查找到的trigger对数目、不可查找到的trigger对数目可查找到的trigger对数目、与不可查找到的trigger对数目的比例300486815、34173159:4110001702177、124625958:42其中翻译节点数是指在所用的汉-蒙机器翻译系统中在翻译过程中由汉语句子所生成的最多节点数。由上表可知,在不作平滑的情况下,不可查找到的trigger对数目与可查找到的trigger对数目比例几乎为4:6,可以说如此高的“不可查找比例”将直接导致语言模型效果很差,或者说几乎不能使用。所以必须进行平滑来保证语言模型的性能。基于trigger对的改进Katz平滑仍然是对Good-Turing的改进[8],其基本思想是,对出现次数介于0和k之间的trigger对,将其按折扣率dr,扣除一些频度,分配给次数为0的trigger对。折扣率基干Good-Turing估计中的r*/r确定,折扣出的数值,根据低阶的(n-1)阶trigger对模型分配[9][10]。对于trigger对(AB),基于trigger对的改进Katz平滑的具体公式如下:)(ˆ)(ˆBAPBAPMLztriggerKazifrk)(ˆ)(ˆBAPdBAPMLrztriggerKazif0rk)(ˆ)()(ˆBPABAPMLztriggerKazifr=0其中:SLCSLC)...(log21ntrigger)|(3iiwwPSLCwwPwwPMAX)]|(),...,|([log)...(log1321*)()()(ˆAcBAcBAPML)(BAc表示trigger对(AB)的出现次数,*)(Ac表示以A为触发者的所有trigger对的出现次数,)(ˆBAPML表示trigger对(AB)的最大似然概率。11*1)1(11)1(nnknnkrrdkkr)(ˆ1)(ˆ1)(0)(:0)(:BAPBAPAMLBAcBztriggerKatBAcB折扣系数dr按着下面的方法计算:出现次数大于5(k取5)的trigger对次数保持不变,对于drk的trigger对,dr=1;对于r=k,dr产生的折扣数量与Good-Turing估计预测的折扣数量成正比,并且所有的trigger对折扣出来的数量总和等于根据Good-Turing估计赋予零概率的数量总和。5基于trigger对的长距离蒙古语语言模型特点基于trigger对的长距离蒙古语语言模型是因为蒙古语具有词干、词缀的特点,所以有必要对蒙古语语料进行词干、词缀切分后再进行语言模型建模。但这会使传统使用的n-gram建模方法缺乏长距离信息的缺点凸显。而基于trigger对的长距离蒙古语语言模型很好的利用了词干、词缀的特点,也解决了缺乏长距离信息的缺点,从而使得机器翻译准确性得到很好的提高。w1表示词1,w11、w12表示由w1按词干词缀分解出的第1、2部分。图1传统trigram模型图2切分词干词缀的蒙古语trigram模型图3基于trigger对的长距离蒙古语语言模型6实验6.1平台简介我们在一个汉-蒙机器翻译系统[11]上实验了基于trigger对的长距离蒙古语语言模型技术。这个汉蒙机器翻译系统是一个基于实例的汉蒙机器翻译系统[12][13]。在这个系统中,语言模型用于评价候选翻译的
本文标题:8件基于trigger对的长距离蒙古语语言模型0625
链接地址:https://www.777doc.com/doc-2898105 .html