Seq2Seq
分类: 网络架构
Seq2Seq
定义
Seq2Seq(Sequence-to-Sequence)是一类将可变长度输入序列映射为可变长度输出序列的模型,由 Sutskever et al. (2014) 提出,是机器翻译、对话生成、文本摘要等任务的基础框架
数学形式
编码阶段:,上下文
解码阶段:
训练目标:(Teacher Forcing)
推理策略:贪心解码 或束搜索(Beam Search)
核心要点
Teacher Forcing:训练时使用真实标签作为解码器输入,加速收敛但导致 exposure bias
Beam Search:推理时保留 个最优候选序列,平衡搜索质量与计算开销
反转输入序列(Sutskever 的 trick):将源序列反转后输入编码器,缩短对应词对的距离,显著提升翻译质量
多层堆叠:原始论文使用 4 层 LSTM,深层编码器提取更抽象的语义表示
局限:固定上下文向量 成为瓶颈,Attention 机制应运而生
CS224N 中是理解 NMT 演进和注意力机制的前置知识
代表工作
Sutskever et al., 2014: Sequence to Sequence Learning with Neural Networks
Cho et al., 2014: Learning Phrase Representations using RNN Encoder-Decoder for Statistical Machine Translation
Luong et al., 2015: Effective Approaches to Attention-based Neural Machine Translation