编码器–解码器架构是人工神经网络中的一种设计模式,将输入表征与输出生成分离。编码器把输入转换为内部表征,解码器则利用该表征生成或重建输出。在序列到序列学习中,输入和输出的长度可以不同,机器翻译就是一个例子。这种架构规定的是两个组件之间的关系,而非某种特定的神经网络层类型或训练目标。(arxiv.org)
结构与数学表述
设 (x) 表示输入,(z=E_\theta(x)) 表示其编码表征。解码器 (D_\phi) 根据 (z) 产生输出,也可能利用已生成的符号等额外信息。参数 (\theta) 和 (\phi) 通常通过联合训练学习。这种安排支持表征学习:编码器学习有助于解码器完成任务的特征,而不是仅依赖人工指定的表征。在早期的循环序列模型中,(z) 是一个定长向量;基于注意力的模型则向解码器提供一组编码器状态。(arxiv.org)
对于自回归输出序列 (y=(y_1,\ldots,y_T)),其条件概率分布可分解为
[ p(y\mid x)=\prod_{t=1}^{T}p(y_t\mid y_{<t},E_\theta(x)). ]
其中,(y_{<t}) 包含此前的输出符号。解码器以输入表征和输出前缀为条件,预测下一个符号。序列结束符使生成过程能够终止,而不要求目标序列与源序列长度相同。这种概率表述是序列生成的典型形式,并非所有编码器–解码器网络都必须采用。(arxiv.org)
循环模型与注意力
2014 年出现了两种影响深远的实现。Cho 及其同事提出了 RNN 编码器–解码器,对源短语进行编码,再解码生成目标短语,并将模型的评分用于统计翻译系统。Sutskever、Vinyals 和 Le 则展示了一种采用多层长短期记忆网络的端到端翻译模型。这些设计使用循环神经网络依次处理符号,并通过固定维度的表征传递信息。(arxiv.org)
单一定长表征可能成为信息瓶颈,尤其是在输入包含大量细节、而不同输出位置又需要不同细节的情况下。Bahdanau、Cho 和 Bengio 提出了一种注意力机制,使解码器能够在每个生成步骤获取源序列表征的不同加权组合。由此形成的软对齐将目标预测与相关的源序列位置联系起来,无需外部提供词语对齐信息。(arxiv.org)
因此,注意力改变了编码器与解码器之间的接口:解码器不再只接收一个摘要向量,而是可以访问随输入而变化的记忆。这并不要求编码器和解码器具有相同的结构。例如,在语音转写中,Listen, Attend and Spell 将声学编码器与基于注意力的字符解码器结合起来。(arxiv.org)
Transformer 实现
2017 年提出的Transformer架构保留了编码器–解码器的组织形式,同时用注意力和逐位置前馈网络替代循环运算。其编码器使用自注意力将上下文信息融入输入表征。其解码器则将输出前缀上的带掩码自注意力,与面向编码器输出的交叉注意力结合起来。在交叉注意力中,查询来自解码器状态,键和值则来自编码器。(arxiv.org)
多头注意力使每一层能够执行多个通过学习获得的注意力运算,而位置编码提供序列位置信息。因果掩码防止解码器中的某个位置访问其后的目标符号。由于训练时可以获得完整的目标序列,各个目标位置可以在该掩码约束下通过并行计算进行处理;不过,常规的自回归生成仍然每次只推进一个输出步骤。(arxiv.org)
相关术语还区分完整的编码器–解码器 Transformer、仅编码器模型和仅解码器模型。T5 的架构比较明确考察了这些不同方案。“解码器”描述的是组件的作用及其注意力限制,并不一定意味着模型会重建输入,或执行某种数学逆变换。(jmlr.org)
训练与生成
对于成对的输入–输出样本,训练通常采用监督学习和最大似然估计。一种典型的损失函数是正确目标符号的负对数概率之和,等价于以独热编码为目标的词元级交叉熵。编码器和解码器的参数通过反向传播获得梯度,梯度也会经过可微的注意力运算。(arxiv.org)
训练时,通常会向解码器提供正确的先前目标符号,这一过程称为教师强制。推理时无法获得这些符号,因此模型以自己生成的输出为条件。这种差异可能导致预测错误不断累积,通常称为暴露偏差。它是训练与生成之间关系的性质,而非编码器本身的性质。(arxiv.org)
生成还需要搜索或选择过程。贪心解码选择概率最高的下一个符号;束搜索则保留多个候选前缀。这些过程近似求解学习所得模型下的序列选择问题,即使模型参数相同,也可能产生不同的输出。因此,架构设计、训练目标和解码过程是彼此独立的选择。(arxiv.org)
应用与相关架构
在自然语言处理中,编码器–解码器系统可用于翻译、摘要生成和问答。T5 将这些任务及其他任务统一表述为文本到文本的形式,以针对具体任务的文本作为输入,并生成文本输出。因此,同一种整体架构可以用于传统上采用不同输出接口的任务。(jmlr.org)
在语音识别中,编码器对声学观测进行表征,解码器输出语言符号。在计算机视觉中,U-Net网络通过收缩路径捕获上下文,通过扩张路径生成具有空间定位信息的预测。对应分辨率之间的连接保留了细节信息,说明编码器与解码器之间的通信不必完全经过单一的压缩表征。(arxiv.org)