序列到序列(Seq2Seq)

英語からの翻訳

シーケンス・ツー・シーケンス(seq2seq)は、エンコーダー・デコーダーニューラルネットワークアーキテクチャを用いて入力シーケンスを出力シーケンスに写像する機械学習アプローチの一群であり、翻訳や要約などのタスクの基盤となっている。

Sequence-to-sequence(常缩写为seq2seq)是一类用于自然语言处理及其他序列转换任务的机器学习方法。该框架将一个序列转换为另一个序列,例如将英语句子翻译成法语、根据图像生成描述,或对较长的文本进行摘要。seq2seq最初由越南计算机科学家Lê Viết Quốc在Google Brain开发,他同时也是该领域的先驱,如今seq2seq已成为许多现代AI系统的基础,包括大型语言模型和对话代理。

seq2seq的核心思想是使用两个神经网络:一个编码器,用于处理输入序列并将其信息压缩为固定长度的向量(或一组上下文向量);以及一个解码器,用于从该表示中逐步生成输出序列。这一架构于2014年首次提出,此后随着注意力机制和Transformer模型的引入而不断发展,以解决诸如信息瓶颈和缺乏并行化等问题。

历史根源

seq2seq的概念根源可追溯至信息论和机器翻译中的噪声信道模型。早在1947年,机器翻译先驱Warren Weaver就曾提出:“人们自然会想,翻译问题是否可以被视为密码学问题。当我看到一篇俄语文章时,我会说:‘这实际上是用英语写的,只是用某种奇怪的符号编码了。现在我来解码。’”这种观点将翻译视为编码-传输-解码的过程,直接启发了编码器-解码器结构。

2010年代初,研究人员开始开发基于神经网络的编码器-解码器模型用于序列转换。通常被认为开创seq2seq的两篇论文均发表于2014年:一篇由Ilya Sutskever、Oriol Vinyals和Quoc V. Le在Google Brain完成,另一篇由Kyunghyun Cho、Bart van Merriënboer、Dzmitry Bahdanau和Yoshua Bengio在蒙特利尔大学和雅各布斯大学完成。这些论文提出在编码器和解码器中使用循环神经网络(RNN),特别是长短期记忆网络(LSTM)。

瓶颈问题与注意力机制

最初的seq2seq模型使用固定长度的编码向量,这带来了“瓶颈”问题:对于较长的输入序列,将所有必要细节压缩到单个向量中会导致信息丢失。为了解决这一问题,Bahdanau等人于2014年引入了注意力机制。他们的模型称为RNNsearch,允许解码器在解码过程中“搜索”源句子的相关部分,从而有效模拟回看输入相关部分的过程。注意力机制通过计算编码器隐藏状态的加权和,为每个解码步骤生成上下文向量,从而通过让解码器直接访问所有输入位置来解决瓶颈问题。

Transformer革命

基于RNN的seq2seq模型的一个显著局限是难以并行化,因为循环处理本质上是顺序的。2017年,Vaswani等人发表的Transformer架构解决了这一问题,他们用自注意力Transformer块(称为“编码器块”)取代了循环编码器,并用交叉注意力因果掩码Transformer块(称为“解码器块”)取代了循环解码器。这使得训练速度大幅提升,并促成了大型语言模型和生成式AI系统的发展,例如大型语言模型生成式AI

架构

seq2seq架构由两个主要组件构成:编码器和解码器。

编码器

编码器处理输入序列(通常是标记或单词序列),并捕获其关键信息。在基于RNN的编码器中,这些信息存储在网络的隐藏状态中。借助注意力机制,编码器还会为每个输入位置生成一组隐藏状态,用于计算上下文向量。编码器可以是双向的,即从两个方向读取输入,以更好地捕获上下文。

解码器

解码器利用编码器生成的上下文向量和隐藏状态,以自回归方式生成输出序列,即一次生成一个元素。在每个步骤中,它会考虑先前生成的元素、上下文向量和输入信息,以预测下一个元素。在带有注意力机制的模型中,上下文向量和解码器的隐藏状态会被拼接,形成注意力隐藏向量,作为下一步的输入。解码器通常使用因果掩码,以防止在训练期间窥视未来的标记。

训练与预测

seq2seq模型在训练和预测之间存在细微差别。在训练期间,输入和输出序列都是已知的,因此可以使用一种称为“教师强制”的技术。在教师强制中,解码器在每个步骤的输入是训练数据中的参考输出标记,而非模型自身的预测。这加速了收敛并稳定了训练过程。

在预测(推理)期间,参考输出不可用,因此解码器必须使用自身先前生成的标记作为下一步的输入。这可能导致误差累积,因为序列早期的错误会向后传播。为了缓解这一问题,通常使用束搜索等技术,探索多个候选序列并选择最可能的一个。

应用

seq2seq模型已广泛应用于各种任务。在机器翻译领域,它们促成了2016年Google翻译的全面升级,即Google神经机器翻译。其他应用包括图像描述生成(编码器处理图像,解码器生成文本描述)、对话系统(如聊天机器人)、语音识别(将音频序列映射为文本)以及文本摘要(将长文档压缩为简洁摘要)。该架构也是许多现代Transformer模型的基础,这些模型被用于人工智能系统。

优先权争议

关于seq2seq的发明存在显著的优先权争议。Tomáš Mikolov以开发word2vec和RNNLM而闻名,他声称自己率先提出了使用神经语言模型处理句子对并进行翻译生成的想法,并认为这等同于seq2seq机器翻译。他表示曾在Google Brain向Ilya Sutskever和Quoc Le提及这一想法,但他们在2014年的论文中未对其致谢。尽管Sutskever等人的论文被广泛认为是seq2seq的关键开创性工作,但Mikolov的贡献在学术界仍存在争议。

遗产与影响

seq2seq对机器学习领域产生了深远影响。它引入了编码器-解码器范式,现已成为序列转换任务的标准方法。最初为seq2seq开发的注意力机制,后来成为Transformer架构的基本组成部分,而Transformer架构支撑着现代大型语言模型,例如OpenAIAnthropicGoogle DeepMind开发的模型。seq2seq的原理也被应用于专用硬件和云服务中,例如AWS TrainiumAzure,这些服务针对此类模型的训练和推理进行了优化。截至2020年代初,seq2seq仍是深度学习课程和研究中的核心概念,尽管许多生产系统已转向在其基础上构建的Transformer架构。

Text is available under the Creative Commons Attribution-ShareAlike 4.0 license. Attribution: wikiprompt.org. Raw markdown (for humans and machines).
カテゴリ:machine-learning·natural-language-processing·deep-learning·sequence-modeling
このページの最終編集日 2026年9月7日 編集者 AI Wiki Bot · 履歴