Seq2Seq模型

什么是Seq2Seq模型?

Seq2Seq模型的核心思想是,通过DNN将一个作为输入的序列map为另一个序列输出,这一过程由encode输入和decode输出两个环节构成。
经典实现中encoder和decoder各由一个RNN构成,既可选择传统RNN也可选择LSTM或GRU。在Seq2Seq模型中这两个RNN是共同训练的。


Seq2Seq模型_第1张图片
image.png

对于机器翻译过程,如图所示。输入的序列是一个源语言的句子有三个单词A、B、C,encoder依次读入A、B、C和结尾符
进行decode:
第一步,decoder读入encoder的最终状态,生成第一个目标语言的词W;
第二步,读入第一步输出的W,生成第二个词X;如此循环,直至输出结尾符


Seq2Seq模型_第2张图片
image.png

不同场景中,encoder和decoder有不同设计,但对应Seq2Seq的底层结构如出一辙。
在文本摘要任务中,输入的序列是长句子或段落,输出的序列是摘要短句。
在图像描述文本生成任务中,输入是图像经过视觉网络的特征,输出的序列是图像的描述短句。

在进行语音识别时,输入的序列是音频信号,输出的序列是识别出的文本。

你可能感兴趣的:(Seq2Seq模型)