[ THUNLP-MT (4/10) ] Minimum Error Rate Training in Statistical Machine Translation | 最小错误率训练 + SMT

本文介绍最小错误率训练方法,主要是笔者对于论文的理解,希望对你有帮助。
该论文是THUNLP-MT推荐的机器翻译领域必读的十篇论文之一。论文传送门
全文共分为论文内容和本文小结两部分。若有错误的地方,欢迎指出!


论文内容

作者Och Josef在2003年提出了在当时统计机器翻译模型的问题:由于训练时多使用最大似然估计的方法,测试集上模型的输出往往没有较好的翻译质量。也因此,作者提出了根据任务需求的不同评价指标,以及一个根据翻译质量来训练模型的方法。

统计机器翻译 之 log-linear模型

使用log-linear模型对数据的后验概率建模。公式如下,其中:有 M M M个特征, λ m λ_m λm是参数, h m h_m hm是特征函数。通常特征函数的输出值都是0或者1。

p λ m 1 ( e ∣ f ) = e x p [ ∑ m = 1 m λ m h m ( e , f ) ] ∑ e ′ 1 I e x p [ ∑ m = 1 M λ m h m ( e ′ 1 I , f ) ] p_{λ_m^1} (\bf{e} | \bf{f} )= \frac{exp[ \sum_{m=1}^m λ_m h_m ( \bf{e} , \bf{f} ) ]}{\sum_{e{\prime}_1^I} exp[ \sum_{m=1}^M λ_m h_m ( e{\prime}_1^I , \bf{f} ) ]} pλm1(ef)=e1Iexp[m=1Mλmhm(e1I,f)]exp[m=1mλmhm(e,f)]

自动评测指标
  • multi-reference word error rate (mWER)
    顾名思义,衡量的是输出翻译句子与多个参考的译文的错误率。使用Levenshtein distance 来作为衡量句子间距离的标准。

  • multi-reference position independent error rate (mPER)
    即无视句子中词语的出现顺序。

  • BLEU (bilingual evaluation understudy) score
    BLEU 分数的计算方式如下(1)式所示。其中, c c c表示系统译文, c ′ c^{'} c表示参考译文,N表示n-gram中的n, p n p_n pn代表某个n-gram组成的集合在所有候选翻译句子中的出现概率, B P ( ⋅ ) BP(\cdot) BP()则是长度惩罚系数。
    .
    C o u n t c l i p Count_{clip} Countclip表示的是每个单词在所有参考译文中的出现次数的最大值(在下式中用maxReferenceCount表示),以及单词在模型输出译文中的出现次数,两个值中的最小值。这样子做是为了保证模型输出译文中每个单词的个数,不超过该单词在所有参考译文中出现次数的最大值。

(1) BLEU = B P ( ⋅ ) ⋅ e x p ( ∑ n = 1 N l o g p n N ) \text{BLEU} = BP(\cdot)\cdot exp ( \sum_{n=1}^N \frac{ log p_n}{N} ) \tag1 BLEU=BP()exp(n=1NNlogpn)(1)

(2) p n = ∑ c ∈ C a n d i d a t e ∑ n − g r a m ∈ c C o u n t c l i p ( n − g r a m ) ∑ c ′ ∈ C a n d i d a t e ∑ n − g r a m ′ ∈ c ′ C o u n t ( n − g r a m ) p_n = \frac{ \sum_{c∈Candidate} \sum_{n-gram∈c} Count_{clip}(n-gram) } { \sum_{c^{'}∈Candidate} \sum_{n-gram^{'}∈c^{'}} Count(n-gram) } \tag2 pn=cCandidatengramcCount(ngram)cCandidatengramcCountclip(ngram)(2)

(3) C o u n t c l i p = m i n ( c o u n t , m a x R e f e r e n c e C o u n t ) Count_{clip} = min( count, maxReferenceCount ) \tag3 Countclip=min(count,maxReferenceCount)(3)

  • NIST score
    NIST score是上面BLEU score的变种。主要修改了n-gram的权重计算方式,以及长度惩罚系数。(此处先不展开,有兴趣可以先看宗老师的书)

NIST = B P ( ⋅ ) ⋅ e x p ( ∑ n = 1 n w n ) \text{NIST} = BP(\cdot)\cdot exp ( \sum_{n=1}^n { w_n} ) NIST=BP()exp(n=1nwn)

最小错误率的训练目标

公式如下,训练的目标是得到包含最小的错误个数的句子。其中, C s C_s Cs表示候选模型输出句子,并且 ∣ C s ∣ = K |C_s|=K Cs=K,S则表示候选参考翻译句子的个数。(1)式中第一行 r s \bf{r_s} rs表示候选的参考翻译句子, e ^ \bf{\hat{e}} e^表示当前参数下的最优翻译句子,由(2)式中的最大值得到。(1)式中第二行, δ \delta δKronecker函数,即若 e ^ ( f s ; λ 1 m ) 和 e s , k \hat{e} (f_s;λ_1^m)和e_{s,k} e^(fs;λ1m)es,k两个字符串相等,则函数取值为1,否则为零。此处也表示的是在计算错误率时,只包括了K个候选句子中的拥有最大得分的句子。

(1) λ 1 m ^ = argmin ⁡ λ 1 m { ∑ s = 1 S E ( r s , e ^ ( f s ; λ 1 m ) ) } = argmin ⁡ λ 1 m ∑ s = 1 S ∑ k = 1 K E ( r s , e s , k ) δ ( e ^ ( f s ; λ 1 m ) , e s , k ) } \begin{aligned} \hat{λ_1^m} &= \underset{λ_1^m}{\operatorname{ argmin}} \{ \sum_{s=1}^S E(\bf{r_s}, \hat{e}(f_s; λ_1^m) ) \} \\ &= \underset{λ_1^m}{\operatorname{argmin}}\sum_{s=1}^S\sum_{k=1}^K E(\bf{r_s}, e_{s,k} ) \delta ( \hat{e}(f_s; λ_1^m),e_{s,k} )\} \tag1 \end{aligned} λ1m^=λ1margmin{s=1SE(rs,e^(fs;λ1m))}=λ1margmins=1Sk=1KE(rs,es,k)δ(e^(fs;λ1m),es,k)}(1)

(2) e ^ ( f s ; λ 1 m ) = argmax ⁡ e ∈ C s { ∑ m = 1 M λ m h m ( e ∣ f s ) } \hat{e}(f_s; λ_1^m)= \underset{e \in C_s}{\operatorname{ argmax}} \{ \sum_{m=1}^M {\lambda}_m h_m(\bf{e}|\bf{f_s})\} \tag2 e^(fs;λ1m)=eCsargmax{m=1Mλmhm(efs)}(2)

特别的,由于(2)式中的最大化操作,和函数有很多局部最优点所导致优化目标不好处理,论文中也提到(1)式的平滑版本。

论文结论

该论文提出了log-linear模型在统计机器翻译模型中的两个新的优化目标:平滑的错误个数,不平滑的错误个数。并且对于不平滑的错误个数,该论文也提出了优化方法。经过试验该优化目标比MMI优化目标更能得到高质量的翻译结果。最后,作者也提出了两方面问题:

  • 若使用不平滑的最小错误率当做训练目标,多少参数能被有效地估计?经过平滑之后的变种最小错误率训练目标,是否能估计更多的参数?
  • 哪一个自动评测指标更代表了人类的评测结果?
    • 现在多数的机器翻译评测都是使用BLEU评价指标。

本文小结

最小错误率训练目标的方法的提出时间较早,除了在统计机器学习上被使用,由于其能根据翻译评价指标来衡量模型的输出句子,在现今的神经机器翻译模型中也常被使用来重新排序模型输出的n-best列表。

此外,最小错误率训练目标也有进一步的研究工作,如下:

另一方面,如果想要实践,可以尝试统计机器翻译开源工具Moses

参考资料

  1. Franz Josef Och. 2003. Minimum Error Rate Training in Statistical Machine Translation. In Proceedings of ACL 2003. (Citation: 2,982)
  2. 宗成庆《统计自然语言处理》
  3. BLEU: a Method for Automatic Evaluation of Machine Translation
  4. 最小错误率训练(mert)基本原理学习 战辉
  5. 最小错误率训练 warrioR_wx
  6. Discriminative Training and Maximum Entropy Models for Statistical Machine Translation 2002 [该篇论文的先前工作]
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值