NLP预训练模型【3】 -- seq2seq与LSTM等基础编解码器
NLP预训练模型【3】 – seq2seq模型与RNN、LSTM等基础编解码器
引自:@mantchs
GitHub:https://github.com/NLP-LOVE/ML-NLP
1. 什么是seq2seq?
在⾃然语⾔处理的很多应⽤中,输⼊和输出都可以是不定⻓序列。以机器翻译为例,输⼊可以是⼀段不定⻓的英语⽂本序列,输出可以是⼀段不定⻓的法语⽂本序列,例如:
英语输⼊:“They”、“are”、“watching”、“.”
法语输出:“Ils”、“regardent”、“.”
当输⼊和输出都是不定⻓序列时,可以使⽤编码器—解码器(encoder-decoder)或者seq2seq模型(seq2seq属于encoder-decoder结构的一种)。encoder-decoder结构的基本思想就是利用两个RNN,一个RNN作为encoder,另一个RNN作为decoder。encoder负责将输入序列压缩成指定长度的向量,这个向量就可以看成是输入序列的定长表征(通常被成为背景向量),这个过程称为编码。如下图,获取语义向量最简单的方式就是直接将最后一个输入的隐状态作为语 ...