机器翻译—统计建模与深度学习方法—3

第三章 基于词的机器翻译模型

1 什么是基于词的机器翻译模型

在翻译一个句子时,可以把其中的每个单词翻译成对应的目标语言单词,然后调整这些目标语言单词的顺序,最后得到翻译结果。
过程分为三个步骤:

  • 分析:将源语言的句子切分成能够处理的最小单元。简单来说就是分词
  • 转换:把每个单词,从源语言单词翻译成目标语言单词
  • 生成:整合句子,变成通顺且合语法的句子

2 构建一个简单的机器翻译系统

2.1 如何进行翻译?

人工翻译流程有两个方面:

  • 翻译知识的学习:首先列出源语言句子中单词的候选翻译有哪些、
  • 运用知识生成译文:运用学习到的翻译知识,得到新句子中每个单词的译文,并处理常见的搭配等问题。

机器翻译流程:

  • 给定计算机一个翻译词典,计算机可以把每个翻译结果看作是对目标语言单词的排列组合。
  • 设计一种统计模型,给每个翻译结果一个可能性,可能性越高的结果作为最终的翻译结果。

2.2 基本框架

系统包括两个步骤:

  • 训练:从双语平行数据中学习翻译模型,记为 P(t|s),其中 s 表示源语言句子,t 表示目标语句子。P(t|s) 表示把 s 翻译为 t 的概率。
  • 解码:尽可能搜索更多的翻译结果,然后用训练好的模型对每个翻译结果进行打分,得分最高的作为结果输出。

单词翻译概率:源语言单词和目标语言译文构成正确翻译的可能性

2.4 句子级翻译模型

P(t|s)表示给出源语言句子s的情况下,译文为t的概率。
词对齐描述了平行句对中单词之间的对应关系,之间用虚线连接成为词对齐连接,可以将这些连接构成集合表示,即A = {(1,1),(2,4),(3,5),(4,2)(5,3)}。
在这里插入图片描述
则g(s,t)被定义为s句中的单词和t句中的单词的翻译概率的乘积,并且这两个单词之间必须有对齐连接。
在这里插入图片描述
因此,词对齐越准确,翻译模型的打分越高。
但上述中没有考虑词序信息的问题,这显然影响我们的翻译质量。为解决这个问题,使用到n-gram语言模型,用来在统计机器翻译中确保流畅的翻译结果。
运用语言模型,将语言模型得到的概率P(t)和g(s,t)相乘,得到新的g(s,t),这样便同时考虑了准确性和流畅度。

2.5 解码

解码:对于新输入的句子,生成最佳译文的过程。
如果是按照对每个单词翻译成若干候选词,翻译结果还会涉及到顺序的调整,如果按照上一节的方法进行搜索,那搜索空间是非常大的。因此需要一个高效的搜索算法。
本节使用一种贪婪的解码算法,将解码分为若干步,每步只翻译一个单词,并且保留当前“最好”的结果,直至所有单词被翻译完。但此方法不能保证搜索到全局最优的结果。

3 基于词的翻译建模

问题:如何处理空翻译?如何对调序问题进行建模?如何用更严密的数学模型描述翻译过程?如何对更加复杂的统计模型进行训练?
针对上述问题,本节关于IBM统计机器翻译模型。

3.1 噪声信道模型

IBM模型的基础是噪声信道模型。
在噪声信道模型中,源语言句子 s 被看作是由目标语言句子 t 经过一个有噪声的信道得到的。若已知 s 和信道,可以通过 P(t|s) 得到 t 的信息,这个求 t 的过程也叫作解码。如下:
在这里插入图片描述
再结合贝叶斯准则,机器翻译的目标被重新定义为:给定源语言句子 s,寻找这样的目标语言译文 t,它使得翻译模型 P(s|t) 【表示给定目标句 t 生成源句 s 的概率】和语言模型 P(t) 【目标句 t 出现的可能性】乘积最大,公式如下:
在这里插入图片描述
IBM模型由翻译模型P(s|t)和语言模型P(t)组成,这样可以很好的对译文的流畅度进行评价。

3.2 统计机器翻译的三个基本问题

  • 建模:如何建立 P(s|t) 和 P(t) 的数学模型。核心。
  • 训练:如何获得 P(s|t) 和 P(t) 所需的参数。即从数据中得到模型的
    最优参数。
  • 解码:如何完成搜索最优解的过程。即完成 argmax。

IBM模型的词对齐有两个特性:

  • 一个源语言单词只能对应一个目标语单词,即源 : 目的=1:1或n:1。这样减少建模的复杂度。
  • 源语言单词可以翻译为空。对应到t0(空对齐)。

IBM模型将句子翻译的概率转化成为词对齐生成的概率。即在这里插入图片描述
将上式进一步分解,使用链式法则得到如下:
在这里插入图片描述
m:源句子s的长度
s1^(j-1)表示前j-1个源语言单词
a1^(j-1)表示前j-1个源语言的词对齐

4 IBM模型1-2

3中把翻译问题定义为对译文和词对齐同时进行生成的问题。其中存在两个问题:

  • 如何遍历所有的词对齐【解决:数学或工程技巧】
  • 如何计算P(aj | a1^(j-1), s1^(j-1), m, t)复杂概率值。【解决:假设化简】

为解决上述问题,IBM模型1假设:

  • P(m|t) ≡ ε。即源句长度的声称该来服从均匀分布
  • P(aj | a1^(j-1), s1^(j-1), m, t) ≡ 1/(length+1)。length为译文长度。即每个词对齐概率服从均匀分布
  • P(sj | a1^(j-1), s1^(j-1), m, t) ≡ f(sj | taj)【词汇翻译概率】。即源单词sj的生成概率依赖与其对齐的译文单词。

IBM模型2假设:

  • P(m|t) ≡ ε。即源句长度的声称该来服从均匀分布
  • P(sj | a1^(j-1), s1^(j-1), m, t) ≡ f(sj | taj)【词汇翻译概率】。即源单词sj的生成概率依赖与其对齐的译文单词。
  • 词对齐有倾向性。要与源语单词的位置和目标语单词的位置有关。

训练:在给定的数据集上调整参数,使得目标函数的值达到最大或最小。
此时的参数,是该模型在该目标函数下的最优解。

5 IBM模型3-5及隐马尔可夫模型

5.1 基于产出率的翻译模型

由于模型1/2不能对多个源语言单词对齐到同一个目标语单词的情况很好的描述。

基于产出率的翻译模型将译文生成源文的过程分解为:

  • 确定每个目标语言单词生成源语言单词的个数。即产出率或繁衍率。
  • 决定译文中每个单词生成的源语言单词都是什么。形成一个源语言单词列表。
  • 把各组源语言单词列表中的每个单词放到合适的位置。完成译文到源语言句子的生成。
    实例如下:
    在这里插入图片描述

5.2 隐马尔可夫模型(HMM)

本质为一个概率模型,用来描述一个含有隐含参数的马尔可夫过程。即是用来描述一个系统,它隐含状态的转移和可见状态的概率。
隐含状态和可见状态之间存在着输出,隐含状态间存在着转移。
例子:假设有三枚质地不同的硬币 A、B、C,这三个硬币抛出正面的概率分别为 0.3、0.5、0.7。之后开始抛硬币,随机从三个硬币里挑一个,挑到每一个硬币的概率都是 1/3。不停的重复上述过程,会得到一串硬币的正反序列,如:抛硬币 6 次,得到:正正反反正反。
则“正正反反正反”为可见状态链,所用硬币的序列如CBABCA为隐含状态链。隐马尔可夫模型示意图如下:
在这里插入图片描述
HMM包含三个问题:

  • 估计:给定模型(硬币种类和转移概率),根据可见状态链(抛硬币的结果),计算在该模型下得到这个结果的概率(涉及前后向算法)。
  • 参数学习:给定硬币种类(隐含状态数量),根据多个可见状态链(抛硬币
    的结果),估计模型的参数(转移概率)。
  • 解码问题:即给定模型(硬币种类和转移概率)和可见状态链(抛硬币的结果),计算在可见状态链的情况下,最可能出现的对应的状态序列。

HMM词对齐模型认为,词语之间的对齐概率取决于对齐位置的差异,而不是本身词语所在位置。HMM词对齐模型的数据描述为:
在这里插入图片描述
其中HMM的对齐概率为:
在这里插入图片描述

5.3 IBM模型问题

  • 词对齐及对称化:一个汉语单词对应多个英语单词的翻译情况。
    方法一:反向训练,合并源语言单词,再正向训练。反向训练即把英语当做待翻译语言,汉语当做目标语言训练。
    方法二:双向对齐后进行词对齐对称化。正向反向同时训练。
  • Deficiency:翻译模型会把一部分概率分配给一些根本不存在的源语言字符串。
  • 句子长度:IBM模型更倾向于选择长度短的目标语言句子。
    这是一种系统偏置,为消除偏置,可以通过在模型中增加一个短句子惩罚引子,在抵消掉模型对短句子的倾向性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值