发布网友 发布时间:2022-04-24 22:42
共1个回答
热心网友 时间:2023-10-13 20:22
噪声信道模型假定,源语言中的句子f(信宿)是由目标语言中的句子e(信源)经过含有噪声的信道编码后得到的。那么,如果已知了信宿f和信道的性质,我们可以得到信源产生信宿的概率,即p(e | f)。而寻找最佳的翻译结果也就等同于寻找:
利用贝耶斯公式,并考虑对给定f,p(f)为常量,上式即等同于
由此,我们得到了两部分概率:
p(f | e),指给定信源,观察到信号的概率。在此称为翻译模型。 p(e),信源发生的概率。在此称为语言模型 可以这样理解翻译模型与语言模型,翻译模型是一种语言到另一种语言的词汇间的对应关系,而语言模型则体现了某种语言本身的性质。翻译模型保证翻译的意义,而语言模型保证翻译的流畅。从中国对翻译的传统要求“信达雅”三点上看,翻译模型体现了信与达,而雅则在语言模型中得到反映。
原则上任何语言模型均可以应用到上述公式中,因此以下讨论集中于翻译模型。在IBM提出的模型中,翻译概率被定义为:
p(f | e) = p(f,a | e)其中的a被定义为隐含变量——词对齐(Word Alignment),所谓词对齐,简而言之就是知道源语言句子中某个词是由目标语言中哪个词翻译而来的。例如右图中,一个词可以被翻译为一个或多个词,甚至不被翻译。于是,获取翻译概率的问题转化为词对齐问题。IBM系列模型及HMM, Model 6都是词对齐的参数化模型。它们之间的区别在于模型参数的数量,类型各不相同。例如IBM Model 1,唯一的参数是词翻译概率,与词在句子中的位置无关。也就是说:
其中(i,j)是词对齐中的一条连接,表示源语言中的第i个词翻译到目标语言中的第j个词。注意这里的翻译概率是词之间而非位置之间的。IBM Model 2的参数中增加了词在句子中的位置,公式为:
其中I,J分别为源、目标语言的句子长度。
HMM模型将IBM Model 2中的绝对位置更改为相对位置,即相对上一个词连接的位置,而IBM Model 3,4,5及Model 6引入了“Fertility Model”,代表一个词翻译为若干词的概率。
在参数估计方面,一般采用最大似然准则进行无监督训练,对于大量的“平行语料”,亦即一些互为翻译的句子(fs,es)
由于并没有直接的符号化最优解,实践中采用EM算法。首先,通过现有模型,对每对句子估计(fs,es)全部可能的(或部分最可能的)词对齐的概率,统计所有参数值发生的加权频次,最后进行归一化。对于IBM Model 1,2,由于不需要Fertility Model,有简化公式可获得全部可能词对齐的统计量,而对于其他模型,遍历所有词对齐是NP难的。因此,只能采取折衷的办法。首先,定义Viterbi对齐为当前模型参数θ下,概率最大的词对齐:
在获取了Viterbi对齐后,可以只统计该对齐结果的相关统计量,亦可以根据该对齐,做少许修改后(即寻找“临近”的对齐)后再计算统计量。IBM 3,4,5及Model 6都是采用这种方法。
目前直接采用噪声信道模型进行完整机器翻译的系统并不多见,然而其副产品——词对齐却成为了各种统计机器翻译系统的基石。时至今日,大部分系统仍然首先使用GIZA++对大量的平行语料进行词对齐。由于所面对的平行语料越来越多,对速度的关注使得MGIZA++,PGIZA++等并行化实现得到应用。噪声信道模型和词对齐仍然是研究的热点,虽然对于印欧语系诸语言,GIZA++的对齐错误率已经很低,在阿拉伯语,中文等语言与印欧语系语言的对齐中错误率仍然很高。特别是中文,错误率常常达到30%以上。所谓九层之台,起于累土,缺乏精确的词对齐是中文机器翻译远远落后于其他语言的原因。虽然目前出现了一些区分性词对齐技术,无监督对齐仍然是其中的重要组成部分。 在这个框架下,M个特征函数
通过参数化公式
其中是每个特征函数的权重,也是模型所要估计的参数集,记为Λ。基于这个模型,获取给定源语言句子f,最佳翻译的决策准则为:
简而言之,就是找到使得特征函数最大的解。
原则上,任何特征函数都可以被置于此框架下,噪声信道模型中的翻译模型、语言模型都可以作为特征函数。并且,在产生式模型中无法使用的“反向翻译模型”,即p(f,e)也可以很容易的被引入这个框架中。目前基于短语的翻译系统中,最常用的特征函数包括:
1.短语翻译概率 2.词翻译概率(短语中每个词的翻译概率) 3.反向短语翻译概率 4.反向词翻译概率 5.语言模型 而一些基于句法的特征也在被加入。 优化准则指的是给定训练语料,如何估计模型参数Λ。一般来说,训练模型参数需要一系列已翻译的文本,每个源语言句子fs拥有Rs个参考翻译。
早期,区分性训练被置于最大熵准则下,即:
这一准则简单快速且由于优化目标是凸的,收敛速度快。然而,一个极大的问题是,“信息熵”本身和翻译质量并无联系,优化信息熵以期获得较好的翻译结果在逻辑上较难说明。借助客观评价准则如BLEU,希望直接针对这些客观准则进行优化能够提升翻译性能。由此而产生最小化错误率训练算法。通过优化系统参数,使得翻译系统在客观评价准则上的得分越来越高,同时,不断改进客观评价准则,使得客观评价准则与主观评价准则越来越接近是目前统计机器翻译的两条主线。
使用这些客观评价准则作为优化目标,即:
的一个主要问题是,无法保证收敛性。并且由于无法得到误差函数(即客观评价准则)的导数,*了可使用的优化方法。目前常用的方法多为改进的Powell法,一般来说训练时间颇长且无法针对大量数据进行训练。 语料预处理阶段,需要搜集或下载平行语料,所谓平行语料,指的是语料中每一行的两个句子互为翻译。目前网络上有大量可供下载的平行语料。搜寻适合目标领域(如医疗、新闻等)的语料是提高特定领域统计机器翻译系统性能的重要方法。
在获取语料后,需要进行一定得文本规范化处理,例如对英语进行词素切分,例如将's独立为一个词,将与词相连的符号隔离开等。而对中文则需要进行分词。同是,尽可能过滤一些包含错误编码的句子,过长的句子或长度不匹配(相差过大)的句子。
获取的语料可分为三部分,第一部分用于词对齐及短语抽取,第二部分用于最小错误率训练,第三部分则用于系统评价。第二第三部分的数据中,每个源语言句子最好能有多条参考翻译。 首先,使用GIZA++对平行语料进行对齐。由于GIZA++是“单向”的词对齐,故而对齐应当进行两次,一次从源到目标,第二次从目标到源。一般来说,GIZA++需要依次进行IBM Model 1, HMM及IBM Model 3,4的对齐,因IBM Model 2对齐效果不佳,而IBM Model 5耗时过长且对性能没有较大贡献。根据平行语料的大小不同及所设置的迭代次数多少,训练时间可能很长。一个参考数据为,1千万句中文-英文平行语料(约3亿词)在Inter Xeon 2.4GHz服务器上运行时间约为6天。如果耗时过长可考虑使用MGIZA++和PGIZA++进行并行对齐(PGIZA++支持分布式对齐)。
其后,对两个方向的GIZA++对齐结果进行合并,供短语抽取之用。 最小化错误率训练通过在所准备的第二部分数据——优化集(Tuning Set)上优化特征权重Λ,使得给定的优化准则最优化。一般常见的优化准则包括信息熵,BLEU,TER等。这一阶段需要使用解码器对优化集进行多次解码,每次解码产生N个得分最高的结果,并调整特征权重。当权重被调整时,N个结果的排序也会发生变化,而得分最高者,即解码结果,将被用于计算BLEU得分或TER。当得到一组新的权重,使得整个优化集的得分得到改进后,将重新进行下一轮解码。如此往复直至不能观察到新的改进。
根据选取的N值的不同,优化集的大小,模型大小及解码器速度,训练时间可能需要数小时或数日。 使用经最小化错误率训练得到的权重,即可进行解码。一般此时即可在测试集上进行系统性能评价。在客观评价基础上,有一些有条件的机构还常常进行主观评价。