Transformer 概览
Transformer 是一种采用自注意力机制 (self-attention) 的深度学习模型架构,这一机制可以按输入数据各部分重要性的不同而分配不同的权重。该模型由 Google 机器翻译团队于 2017 年发表于论文 Attention is all you need 中,为 OpenAI 开发的 ChatGPT、Google 的 Gemini、Meta 的 LLaMA 等大语言模型的核心基础架构。
Transformer 模型是迄今发明出最新且最强大的模型之一。
自然语言处理
什么是自然语言处理 (Natural Language Processing,NLP)?NLP 是语言学和机器学习交叉领域,专注于理解与人类语言相关的一切。NLP 任务的目标不仅是单独理解单个单词,而且是能够理解这些单词的上下文。
以下是常见 NLP 任务的列表,每个任务都有一些示例:
- 对整个句子进行分类:获取评论的情绪,检测电子邮件是否为垃圾邮件,确定句子在语法上是否正确或两个句子在逻辑上是否相关。
- 对句子中的每个词进行分类:识别句子的语法成分 (名词、动词、形容词) 或命名实体 (人、地点、组织)。
- 生成文本内容:用自动生成的文本完成提示,用屏蔽词填充文本中的空白
- 从文本中提取答案:给定问题和上下文,根据上下文中提供的信息提取问题的答案。
- 从输入文本生成新句子:将文本翻译成另一种语言,总结文本。
NLP 不仅限于书面文本。它还解决了语音识别和计算机视觉中的复杂挑战,例如音频生成、图像识别、图像描述等。
在 Transformer 发明之前,机器学习中 NLP 的任务处理基本是通过 RNN 或者其变体 GRU、LSTM 建模的。相比于这些模型,Transformer 具有以下优势:
- 并行计算。RNN 和 LSTM 需要顺序处理序列数据,因此很难进行并行计算。而 Transformer 的自注意力机制允许同时处理整个序列,从而可以充分利用 GPU 的并行计算能力,大大提高模型训练和推理的速度。
- 更好的长期依赖。RNN 在处理长序列时面临梯度消失或梯度爆炸的问题,导致难以建模长期依赖关系。相比之下,Transformer 使用了自注意力机制,能够直接建模序列中不同位置之间的依赖关系,从而更好地捕捉长期依赖关系。
- 灵活性:Transformer 架构具有很高的灵活性,可以很容易地进行修改和扩展。例如,BERT、GPT 等知名模型都是基于 Transformer 架构的,它们在各种自然语言处理任务中取得了前所未有的成绩。
Transformer 概览
我们先将整个模型视为黑盒。
在机器翻译中,接收一种语言的句子作为输入,然后将其翻译成其他语言输出。
Transformer 设计之初就是为了解决 NLP 中的翻译问题。