基于统计方法的短语翻译模型过滤器设计杨攀08-11-28IIM总体框架引言统计方法介绍过滤器设计实验及分析结束语IIM引言基于短语的统计机器翻译的最大特点就是其翻译模型为短语级的,这里的短语并非是语言学意义上的短语,而是连续的语言片段。翻译模型的好坏对于翻译结果的影响举足轻重。翻译模型的生成要经历词对齐,短语对齐,短语评分等不同的阶段,最终生成的翻译模型必含有一些不正确的短语翻译对,本文称之为“噪音”。IIM引言Johnson等(2007)在ACL07上提出的基于Fisher准确检验的方法去除翻译模型噪音的方法是最早利用统计方法对翻译模型进行降噪的文章,但追本溯源,这个方法的真正来源还是早期单语的搭配或双语的词对齐研究中的统计方法的新的应用而已,正所谓老瓶装新醋。本文的着眼点不是提出新的方法进行翻译模型的降噪,而是想站在巨人的肩膀上,既在早期基于统计的搭配,词对齐等研究成果及开源项目NgramStatisticsPackage(NSP)的支持下,设计了一个短语翻译模型过滤器。IIM统计方法介绍本文中用到的几个关键统计值说明:–s为翻译模型中的源短语;–t为目标短语;–c(s)为双语对齐语料库中含有源短语的源句子数;–c(t)为含有目标短语的目标句子数;–c(s,t)为同时含有源短语及目标短语的句子数;–N为语料库中对齐句子数;IIM统计方法介绍假设检验:–假设检验是用来判断样本与样本,样本与总体的差异是由抽样误差引起还是本质差别造成的统计推断方法。利用假设检验处理翻译模型的关键就是用它来评价源短语到目标短语的翻译是偶然的还是必然的,若是偶然,就否定它;若是必然,就肯定它;t检验:2(,)(,)(,)cstpstxNtcstsNNNIIM统计方法介绍列联表:–列联表是观测数据按两个或更多属性(定性变量)分类时所列出的频数表,本文仅使用两个属性的列联表,既2x2表。它直观,简单,方便,并且利于计算机进行统计值的计算。表1是翻译模型过滤器中的设计的列联表:(,)cst()(,)ctcst()ct()(,)cscst()()(,)Ncsctcst()Nct()cs()NcsNIIM统计方法介绍基于列联表计算的三种统计值:–令–似然比:–互信息:–Fisher准确检验值:11(,)Ocst12()(,)Octcst21()(,)Ocscst22()()()ONcsctcs1()Ocs2()ONcs1()Oct2()ONct2,log2ijijijOLLEijijOOEN112211(,)(;)loglog()()NOPstIstPsPtOO121211122122!!!!!!!!OOOOPNOOOOIIM过滤器设计过滤器总体框架IIM实验及分析按ACL07统计机器翻译讨论会(ACL2007SECONDWORKSHOPONSTATISTICALMACHINETRANSLATION)的介绍搭建了Moses测试平台,其核心框架仍是Kohen的基于短语的SMT框架。平台采用GIZA++进行翻译模型的训练,SRILM工具进行语言模型的训练,Moses工具包进行生成模型的训练及解码,mteval工具包对实验结果进行BLEU评分。IIM实验及分析训练语料库来源于内蒙古大学提供的38,000句对日常用语汉蒙平行语料库。由于目前还没有汉蒙机器翻译公共测试平台,我们选用训练集以外的350句(含200句对话,150句日常用语)作为测试集,由以蒙古语为母语的专业人员进行翻译,每个汉语句子对应4种译文。蒙古语部分采用拉丁转写形式。IIM实验及分析似然比的NIST,BLEU评测实验结果:阈值翻译模型行数NISTBLEU0.02355065.52340.28305.02332305.51930.282810.02291815.53870.283515.02184795.50240.280120.01903565.48750.278323.09069148151(62.9%)5.47220.279723.0907133041(14.0%)5.20050.259125.0321775.17950.255930.0292245.19330.252035.0256555.17930.251240.0203005.10010.239345.0159455.06530.233650.0144575.04020.2324IIM实验及分析互信息的NIST,BLEU评测实验结果:阈值翻译模型行数NISTBLEU0.02355065.52340.28300.00022313455.52280.28330.00032236175.54170.28320.00039202279(85.9%)5.51500.28020.0004132801(13.9%)5.19770.25800.0005328015.19770.25800.0006298925.19210.25370.0007259935.18190.25110.0008220945.11170.24060.0009160145.06370.23350.0010144525.04020.23240.002065294.76890.21100.003041804.58580.19800.004030494.35010.17960.005023014.07580.1619IIM实验及分析Fisher值的NIST,BLEU评测实验结果:阈值翻译模型行数NISTBLEU0.02355065.52340.28302.51994564.55060.21925.01988624.56530.22167.51955494.54370.219710.01333234.38650.214110.54529133268(57.1%)4.38900.214310.5453118158(7.7%)3.82030.179712.5178543.80850.179715170533.77490.1783IIM实验及分析结果分析–在三个表中,都有一个明显的阈值“拐点”,依次为10.5453、23.0907、0.0004,这与翻译模型中存在着大量的1-1-1型翻译短语有关。所谓1-1-1型翻译短语,即在语料库中其源短语,目标短语及二者同现的频率仅为1次。我们统计了一下,在本实验的翻译模型中为1-1-1型翻译短语约占了48.9%。阈值“拐点”亦即1-1-1型的相应值,特别,对于fisher值,我们取其值的负对数,按照Moore(2004)的文章的讨论,在Fisher准确检验下其P值为1/N,负对数值为log(N),由于实验中N=38000,log(N)=10.5453,其理论值与实验值完全吻合。IIM实验及分析结果分析–从表中可以看出,阈值拐点左右的NIST、BLEU值跳跃均比较大,这与翻译模型被过滤了一半有极大关系。但是,仔细观察这三个表,我们发现随着阈值的不断升高,似然比、互信息的评分值在拐点前的降低比较理想,其过滤效果比较好,而Fisher准确检验的评分值则有一个明显的下滑,且评分效果不尽如人意。IIM实验及分析结果分析–我们以效果最好的似然比实验结果进一步分析,当阈值设置为10.0时,翻译模型被过滤掉了6352行,但其NIST、BLEU值均有很小幅度的提高,这表明在取得合适的阈值的情况下,机器翻译系统的翻译质量在翻译模型过滤的情况下反而能得到提高。我们又以阈值拐点a左右为例,当阈值为a-e时,过滤后的翻译模型为原翻译模型的62.9%,而其BLEU值仅降低了0.0033,对于一般的机器翻译系统来说,用户对翻译质量的降低感受是不明显的;而当阈值为a+e时,过滤后的翻译模型为原翻译模型的14.0%,BLEU值降低了0.0239,这对于一些对内存占用要求比较高的机器翻译系统来说亦是完全可以接受的。IIM结束语本文利用统计方法设计了短语翻译模型过滤器,并且针对汉蒙统计机器翻译做了三组实验,实验结果表明,如果选用统计方法及阈值得当,翻译模型的过滤效果是非常好的。但是,由于统计机器翻译中语料库的种类、规模、领域的不同,所生成的翻译模型必然有不同的“噪音”,因此,对于不同机器翻译系统,我们必须根据实验来选用合理的统计方法及经验阈值,这有时候是极为繁琐的。所以下一步的工作中,主要考虑的是如何利用这些统计值及其排序输出结果,对其进行综合的评判及阈值设计。另外,引入新的统计方法也是很必要的。IIM谢谢各位专家!