一、总述
在训练阶段,Transformer编码器及解码器均并行处理数据;
在推理阶段,Transformer编码器并行处理数据,解码器顺序处理数据。
二、并行处理的数据
Transformer模型的并行处理主要体现在编码器和解码器中的自注意力机制以及编码器-解码器注意力机制上:
1. 编码器的并行处理
在编码器中,整个源序列可以同时被处理。通过自注意力机制,每个位置的向量都能够同时与序列中的其他位置交互,计算注意力权重并进行加权求和。
所有位置的计算都是并行进行的,因为每个位置的计算仅依赖于输入序列中的其他位置,而不依赖于前一个位置的计算结果。
2. 解码器的并行处理(在训练阶段)
在训练阶段,目标序列的前缀部分(即已生成的部分)可以并行地输入到解码器中,进行自注意力和编码器-解码器注意力的计算。
尽管解码器计算的是每个位置的输出,但是由于使用了“教师强制”(teacher forcing)方法,解码器可以并行计算所有时间步的输出,因为每个时间步的输入(目标序列前缀)都是已知