一种较新的技术 大语言模型 (LLM) 可以预测一个词元或词元序列, 预测词元。请注意,词元可以是单词、子词( 也可以是单个字符。LLM 能够做出更好的预测 与 N-gram 语言模型或循环神经网络相比,这是因为:
- LLM 包含的参数要多得多 生成新模型。
- LLM 会收集更多上下文。
本部分介绍了最成功、使用最广泛的架构 是构建 LLM 的基础:Transformer。
什么是 Transformer?
Transformer 是适用于各种模型 语言模型应用,例如翻译:
![图 1. 输入的内容是:我是一只好狗。基于 Transformer
转换函数将该输入转换为输出:J suis un bon
“chien”是翻译成法语的同一句话。](https://developers.google.cn/static/machine-learning/crash-course/images/Iamagooddog.png?authuser=0&hl=el)
完整转换器由编码器和解码器组成:
例如,在翻译器中:
- 编码器处理输入文本(例如一个英文句子) 一些中间表示法。
- 解码器将该中间表示法转换为输出文本( 对应的法语句子)。
![图 2. 基于 Transformer 的翻译器从编码器开始,
它可生成英文单词的中间表示法,
句子。解码器将该中间表示法转换为
一个法语输出句子。](https://developers.google.cn/static/machine-learning/crash-course/images/TransformerBasedTranslator.png?authuser=0&hl=el)
什么是自注意力?
为了增强上下文,Transformer 在很大程度上依赖于 自注意力。 自注意力层代表输入的每个词元, 以下问题:
“输入的每个词元对解释该词元的解释 令牌?”
“自我”在“自注意力”中,指的是输入序列。需要注意 机制在输出序列中对输入词元与词元之间的关系进行加权, 翻译或以某种其他序列的形式进行标记。但只有自注意力层 用于为输入序列中的词元之间的关系重要性。
为简单起见,假设每个词元都是一个单词, 只是一个句子。请思考以下句子:
The animal didn't cross the street because it was too tired.
前一句话包含十一个单词。这 11 个单词中的每一个都是 并仔细观察这十个字词,想知道这十个字词中 对自身至关重要。例如,请注意句子中包含代词 it。人称代词往往模棱两可。人称代词 it 通常是指 但在例句中, 具体指的是动物还是街道?
自注意力机制确定附近每个字词与 代词 it。图 3 显示了结果:线条越蓝,越多 这个词与代词无关。也就是说,动物 比“街道”更重要。
![图 3. 句子中 11 个字词中每个字词的相关性:
“动物没有过马路,因为它太累了”
代词“it”的含义。“动物”一词相关性最高
代词“it”](https://developers.google.cn/static/machine-learning/crash-course/images/Theanimaldidntcrossthestreet.png?authuser=0&hl=el)
相反,假设句子中最后一个单词的变化如下:
The animal didn't cross the street because it was too wide.
在这个修订过的句子中,自注意力机制有望将街道评为 与代词“it”的相关性高于“动物”。
一些自注意力机制是双向的,这意味着它们 计算字词之前和之后的词元的相关性得分 出席了活动例如,在图 3 中,请注意,字词两侧 。因此,双向自注意力机制可以收集 与所执行单词的任意一侧的单词相关。相比之下, 单向自注意力机制只能从字词收集上下文 字词的一侧。双向自注意力层 在生成整个序列的表示法时尤其有用,而 逐个令牌生成序列的应用需要单向 自注意力机制。因此,编码器使用双向自注意力机制, 而解码器使用单向。
什么是多头自注意力?
每个自注意力层通常由 层的输出是一项数学运算, (例如,加权平均值或点积), 不同人头。
由于每个自注意力层都初始化为随机值, 学习每个单词与单词的 。例如,上一张幻灯片中介绍的自注意力层 部分着重介绍“它指的是哪个名词”。 然而,其他自注意力层可能会学习 或者了解其他相互作用。
为什么 Transformer 这么大?
转换器包含数千亿甚至数万亿的 parameters。 本课程通常建议 可以减少参数数量。 毕竟,参数数量较少的模型使用的资源也更少 与拥有大量参数的模型相比,它能够进行预测。 不过,研究表明,具有更多参数的 Transformer 始终优于参数较少的 Transformer。
但是 LLM 如何生成文本?
你已经了解了研究人员如何训练 LLM 来预测一两个缺失的单词, 你可能对此毫无印象毕竟,预测一两个单词本质上 各种文本、电子邮件和创作软件中内置的自动补全功能。 您可能想知道 LLM 如何生成句子或段落, 关于套利的俳句诗。
事实上,LLM 本质上是一种自动补全机制, 预测(完成)数千个词元。例如,假设有一个句子 后跟一个蒙版语句:
My dog, Max, knows how to perform many traditional dog tricks. ___ (masked sentence)
LLM 可以生成被遮盖句子的概率,包括:
Probability | 字词 |
---|---|
3.1% | 例如,他可以坐着、待在那儿, 。 |
2.9% | 例如,他知道如何坐下、待在、 。 |
足够大的 LLM 可以生成段落和整个段落的概率 论文。您可以将用户向 LLM 提出的问题视为句子 后跟一个虚构的面具。例如:
User's question: What is the easiest trick to teach a dog? LLM's response: ___
LLM 会针对各种可能的回答生成概率。
再举一个例子,一个 LLM 使用大量的 问题”看起来像是进行复杂的数学推理。 然而,这些 LLM 基本上只是自动填充单词题提示。
使用 LLM 的好处
LLM 可以针对广泛的语言生成清晰易懂的文本, 各种目标受众群体。LLM 可以对正在执行的任务做出预测 明确训练。一些研究人员认为,LLM 也可以 针对未明确进行训练的输入预测, 但研究人员却反驳了这一说法。
与 LLM 相关的问题
训练 LLM 涉及许多问题,包括:
- 正在收集庞大的训练集。
- 需要花费数月和大量计算资源, 电流。
- 解决并行处理难题。
使用 LLM 来推断预测会带来以下问题:
- LLM 会解释 这表示它们的预测常常包含错误。
- LLM 会消耗大量的计算资源和电力。 使用较大的数据集训练 LLM 通常可减少 尽管训练规模较大,但推理所需的资源量 会产生更多训练资源。
- 与所有机器学习模型一样,LLM 可能会出现各种偏见。