一、Encoder-Decoder 框架的结构
Encoder-Decoder 框架可以看作是一种深度学习领域的研究模式,应用场景异常广泛。下
图是文本处理领域里常用的 Encoder-Decoder 框架最抽象的一种表示。
令:
注意:Source和Target可以是同一种语言也可以是不同种语言
Encoder 就是对输入句子 Source 进行编码,将输入句子通过非线性变换转化为中
间语义表示 C:
对于解码器 Decoder 来说,其任务是根据句子 Source 的中间语义表示 C 和之前已经生成
的历史信息
来生成 i 时刻要生成的单词
二、Encoder-Decoder框架应用
- 翻译
-
文本摘要
-
问答系统和对话机器人
-
语言识别
-
看图说话
三、问题
输入句子比较长,此时
所有语义完全通过一个中间语义向量来表示,单词自身的信息已经消失,可想而知会丢失很
多细节信息
Encoder-Decoder模型最后生成的是i时刻要生成的单词
不论 生成哪个单词,它们使用的输入句子 Source 的语义编码 C 都是一样的,没有任何区别。
而语义编码 C 是由句子 Source 的每个单词经过 Encoder 编码产生的,这意味着不论是生
成哪个单词,y1,y2 还是 y3,其实句子 Source 中任意单词对生成某个目标单词 yi 来说影
响力都是相同的