一、机器翻译及相关技术
机器翻译:将一段文本从一种语言自动翻译为另一种语言,用神经网络解决这个问题通常称为神经机器翻译。
1、数据预处理
分词、建立词典、得到数据生成器
2、Encoder、Decoder简介
encoder:输入到隐藏状态
decoder:隐藏状态到输出
3、Sequence to Sequence模型
4、Beam Search(集束搜索)
结合了greedy search 和为比特算法的优点
二、注意力机制与Seq2Seq模型
1、注意力机制
在“编码器—解码器(seq2seq)”⼀节⾥,解码器在各个时间步依赖相同的背景变量(context vector)来获取输⼊序列信息。当编码器为循环神经⽹络时,背景变量来⾃它最终时间步的隐藏状态。将源序列输入信息以循环单位状态编码,然后将其传递给解码器以生成目标序列。然而这种结构存在着问题,尤其是RNN机制实际中存在长程梯度消失的问题,对于较长的句子,我们很难寄希望于将输入的序列转化为定长的向量而保存所有的有效信息,所以随着所需翻译句子的长度的增加,这种结构的效果会显著下降。
分类有 点积注意力、多层感知机注意力
2、引入注意力机制的Seq2seq模型
三、Transformer
为了整合CNN和RNN的优势,[Vaswani et al., 2017] 创新性地使用注意力机制设计了Transformer模型。该模型利用attention机制实现了并行化捕捉序列依赖,并且同时处理序列的每个位置的tokens,上述优势使得Transformer模型在性能优异的同时大大减少了训练时间。