前言
nlp实验室肖桐老师、朱靖波老师主编的《机器翻译-统计建模与深度学习方法(第二版)》前些天已经略读了一遍(自然是跳过了统计机器翻译那两章#手动狗头),再回头看时发现有很多知识又已经忘了,现打算再次精读此书,将遇到的所有重要的、需要推导或记忆的知识记录在本篇blog里,防止遗忘!
1 一句话神经机器翻译
深度学习神经网络推动下产生的第三代机器翻译技术,无需设计规则、先验假设和特征工程,使用Encoder-Decoder框架对分布式表示的语言进行端对端映射,已成为时代主流。
注:在SMT时代,会对翻译过程进行假设(称为隐藏结构假设),比如:源语言和目标语言的词或短语序列间存在某种对齐关系
另外:这句话是我读完这本书之后总结的,之后也会在重复的阅读过程中不断修改
2 机器翻译的评价指标
分为有参考答案评价(人工打分、BLEU)和无参考答案评价
2.1 BLEU(Bilingual Evaluation Understudy)
采用$n$-$gram$匹配+短句惩罚的方式:
\[\begin{aligned} \mathrm{BLEU}&=\mathrm{BP}\cdot\mathrm{exp}(\sum_{i=1}^Nw_n\cdot\mathrm{logP}_n)\\ \mathrm{BP}&= \end{aligned}\]3 统计机器翻译部分
4 零碎的深度学习知识
4.1 稳定性训练
4.1.1 归一化
- 批量归一化(Batch Normalization):沿着批次方向进行均值为0,方差为1的归一化。
- 层归一化(Layer Normalization):归一化操作沿着序列方向进行,为避免序列上不同位置输出结果的不可比性。
4.1.2 残差网络(Residual Networks)
采用跨层连接的结构,有$\bm{x_{l+1}}=F(\bm{x_l})+\bm{x_l}$。在反向传播时,在$\bm{x_l}$处的梯度为:
\[\begin{aligned} \frac{\partial L}{\partial \bm{x_l}}&=\frac{\partial L}{\partial \bm{x_{l+1}}}\cdot\frac{\partial \bm{x_{l+1}}}{\partial \bm{x_l}}\\ &=\frac{\partial L}{\partial \bm{x_{l+1}}}(1+\frac{\partial F(\bm{x_l})}{\partial \bm{x_l}})\\ &=\frac{\partial L}{\partial \bm{x_{l+1}}}+\frac{\partial L}{\partial \bm{x_{l+1}}}\cdot\frac{\partial F(\bm{x_l})}{\partial \bm{x_l}} \end{aligned}\]将后一层的梯度直接传递到前一层中,从而缓解了梯度经多层多次累乘造成的梯度消失问题。