统计机器翻译中基于短语搜索算法的优化与实践
1. 统计机器翻译中的搜索问题
在统计机器翻译(SMT)里,搜索(也叫解码或生成)的任务是在给定源语句 $f_{1}^{J}$ 的情况下,找出能使后验概率最大化的目标语言句子 $e_{1}^{I}$。这里采用基于短语的方法,将源语句分割成 $K$ 个短语。假设使用对数线性模型,包含组件模型 $h_{m}(·)$ 和缩放因子 $\lambda_{m}$($m = 1, …, M$),决策规则如下:
$\hat{e} {1}^{I}=\text{argmax} {I,e_{1}^{I}}{\text{max} {K,s {1}^{K}}\sum_{m = 1}^{M}\lambda_{m}h_{m}(e_{1}^{I}, s_{1}^{K}; f_{1}^{J})}$
我们需要对所有可能的目标语句 $e_{1}^{I}$ 和所有可能的分割 $s_{1}^{K}$ 进行最大化操作。但枚举所有目标语句不可行,这是一个困难的优化问题,具体要决定以下几点:
- 短语数量 $K$;
- 源语句的短语分割 $s_{1}^{K}$;
- 每个源短语 $\tilde{f}$ 的短语翻译 $\tilde{e}$。
不过,我们可以利用模型的结构特性。搜索可看作一系列决策 $(\tilde{e} {k}, b {k}, j_{k})$($k = 1, …, K$)。每一步,我们确定由起始和结束位置 $s_{k} = (b_{k}, j_{k})$ 标识的源短语 $\tilde{f} {k}$ 及其对应的翻译 $\tilde{e} {k}
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



