深度学习之Encoder-Decoder架构
一、背景简介
深度学习中Sequence to Sequence (Seq2Seq) 模型的目标是将一个序列转换成另一个序列。包括机器翻译(machine translate)、会话识别(speech recognition)和时间序列预测(time series forcasting)等任务都可以理解成是Seq2Seq任务。RNN(Recurrent Neural Networks)是深度学习中最基本的序列模型。
Seq2Seq最基本的特点是输入数据和输出数据的长度并不是固定的,例如对于翻译来说,中文可能是“很 高兴 见 到 你”,而英文是“Nice to meet you”,这种情况就是输入和输出的长度不一样。同时,换一个例句之后,其输入和输出的长度也会变化。因此,一般的深度学习网络是无法处理这个问题的。
但是,基础RNN模型(以及相关的变种模型如GRU神经网络、LSTM神经网络)虽然可以处理序列数据,然而就精度而言并不是很好(论文的对比试验结论)。为此,在2014年有很多研究者在几乎同一时间都提出了Encoder-Decoder的深度学习架构来处理Seq2Seq的问题。


