Transformer架构构建大型语言模型(Large Language Models)的过程,以及这种架构如何显著提升了自然语言任务的表现,并引发了再生能力的爆发:
- 使用Transformer架构构建大型语言模型相较于早期的RNNs大幅提高了自然语言任务的表现,并引发了再生能力的爆发。Transformer架构的力量在于其学习一个句子中所有词语的相关性和上下文的能力。这不仅是每个词与其邻词的相关性,而且是每个词与句子中的每个其他词的相关性。
- Transformer模型使用注意力权重(attention weights)来处理这些词语之间的关系,让模型学习每个词语对输入中每个其他词语的相关性,无论它们在输入中的位置如何。
- 这使得算法能够学习“谁拥有书,谁可能拥有书”(这是一个句子举例),以及它是否与文档的更广泛上下文相关。
- 这些注意力权重在大型语言模型训练期间学习
2. Transformer架构的关键属性之一是自我注意力(self-attention)。
-
- 在这个例子中,你可以看到"book"这个词强烈地与"teacher"和"student"这两个词相连,或者说,它正在关注这两个词。这就是自我注意力。
- 学习以这种方式在整个输入中关注的能力显著提高了模型编码语言的能力。
3. Transformer架构的工作原理。
-
- Transformer架构被分为两个独特的部分,编码器(encoder)和解码器(decoder)。这两个组件协同工作,并且它们之间有许多相似之处。
- 注意,你看到的图来自原始的"Attention is All You Need"论文。模型的输入在底部,输出在顶部,我们将尽可能保持这种方式。
4. 机器学习模型只是大型的统计计算器,它们处理的是数字,而不是词语。所以,在将文本传入模型进行处理之前,你必须首先对词语进行标记化(tokenization)。
-
- 简单地说,这就是将词语转换为数字,每个数字代表一个词典中所有可能的词语的位置。
- 你可以选择多种标记化方法。例如,使用标记ID来匹配两个完整的词,或者使用标记ID来表示词的部分。这一点在这里很重要,一旦你选择了一个标记器来训练模型,你在生成文本时必须使用相同的标记器。
5. 当你的输入被表示为数字,你可以将其传递给嵌入层(embedding layer)。
-
- 这一层是一个可训练的向量嵌入空间,一个高维空间,其中每个标记都被表示为一个向量,并在该空间内占据一个独特的位置。
- 词汇中的每个标记ID都匹配到一个多维向量,这些向量学会了编码输入序列中的每个标记的含义和上下文。
- 嵌入向量空间在自然语言处理中已经使用了一段时间,像Word2vec这样的早期语言算法就使用了这个概念。
6. 在原始的Transformer论文中,向量的大小实际上是512,这比我们能够在这个图像上容纳的要大得多。
-
- 你现在可以看到你是如何关联那些在嵌入空间中彼此接近的词,以及你是如何计算词之间的距离作为一个角度,这给了模型数学理解语言的能力。
- 当你将标记向量添加到编码器或解码器的基础中时,你还添加了位置编码(positional encoding)。模型并行处理每个输入标记。所以,通过添加位置编码,你保留了关于词序的信息,不会丧失词在句子中位置的相关性。
7. Transformer架构实际上具有多头自我注意力(multi-headed self-attention)。
-
- 这意味着在自我注意力权重或头部中,有多组是独立并行学习的。在注意力层中包含的注意力头的数量因模型而异,但常见的数量在12-100之间。
- 每个自我注意力头将学习语言的不同方面。例如,一个头可能看到我们句子中人的关系,而另一个头可能专注于句子的活动,还有其他的头可能专注于其他属性,比如词是否押韵。
8. 在所有的注意力权重被应用到你的输入数据后,输出会通过一个全连接前馈网络(fully-connected feed-forward network)进行处理。
-
- 这一层的输出是一个与词典中每个标记的概率得分成比例的logits向量。
- 你可以将这些logits传递给最后的softmax层,它们被归一化为每个词的概率得分。
- 这个输出包含了词汇表中每个单词的概率,所以这里可能有数千个得分。
- 有一个单一的标记会有一个比其他所有标记更高的得分,这就是最可能预测的标记。但是,如你将在本课程后期看到的,有许多方法可以用来变化最终的选择从这个概率向量中。
- 这一层的输出是logits向量,与词典中每个标记的概率得分成比例。
- 可以将这些logits传递给最后的softmax层,它们被归一化为每个词的概率得分。
- 输出概率:这个输出包含了词汇表中每个单词的概率,所以这里可能有数千个得分。有一个单一的标记会有一个比其他所有标记更高的得分,这就是最可能预测的标记。有许多方法可以用来变化最终的选择从这个概率向量中。
引用:
1. Cousera, Aeeplearning.ai & Amazon Web Services, Generative AI with Large Language Models
Coursera | Online Courses & Credentials From Top Educators. Join for Free | Coursera