机器学习术语表:语言评估

本页面包含语言评估术语表中的术语。如需查看所有术语表术语,请点击此处

A

注意力层、

#language

神经网络中使用的一种机制,用于指示特定字词或字词的某个部分的重要性。注意机制会压缩模型预测下一个令牌/字词所需的信息量。典型的注意力机制可能由一组输入的加权和组成,其中每个输入的权重由神经网络的另一部分计算得出。

另请参阅自注意力多头自注意力,它们是Transformer 的构成要素。

如需详细了解自注意机制,请参阅机器学习速成课程中的 LLM:什么是大语言模型?

自动编码器

#language
#image

一种系统,可学习从输入中提取最重要的信息。自动编码器是编码器解码器的组合。自动编码器依赖于以下两步流程:

  1. 编码器会将输入映射到(通常)有损的低维度(中间)格式。
  2. 解码器通过将低维格式映射到原始的高维输入格式,构建原始输入的损失版本。

自动编码器是通过让解码器尝试尽可能接近地从编码器的中间格式重构原始输入,从而进行端到端训练的。由于中间格式比原始格式小(维度较低),因此自动编码器被迫学习输入中哪些信息是必不可少的,并且输出不会与输入完全相同。

例如:

  • 如果输入数据是图形,则非完全相同的副本与原始图形相似,但会经过一些修改。非完全匹配的副本可能移除了原始图形中的噪点,或者填充了一些缺失的像素。
  • 如果输入数据是文本,则自动编码器会生成模仿(但不完全相同)原始文本的新文本。

另请参阅变分自编码器

自动评估

#language
#generativeAI

使用软件来判断模型输出的质量。

当模型输出相对简单时,脚本或程序可以将模型的输出与标准答案进行比较。这种类型的自动评估有时称为程序化评估ROUGEBLEU 等指标通常对程序化评估很有用。

当模型输出复杂或没有唯一正确答案时,有时会由一个名为自动评分器的单独机器学习程序执行自动评估。

人工评估相对。

自动评估器评估

#language
#generativeAI
一种混合机制,用于评判生成式 AI 模型输出的质量,它将人工评估自动评估相结合。自动评估器是一种机器学习模型,基于人工评估生成的数据进行训练。理想情况下,自动评估器会学习模仿人类评估者。

您可以使用预构建的自动评分器,但效果最佳的自动评分器是专门针对您要评估的任务进行微调的。

自回归模型

#language
#image
#generativeAI

一种模型,可根据其之前的预测推断出预测结果。例如,自回归语言模型可根据之前预测的令牌预测下一个令牌。所有基于 Transformer大语言模型都是自动回归模型。

相比之下,基于 GAN 的图像模型通常不是自回归模型,因为它们在单次前向传递中生成图像,而不是分步迭代生成。不过,某些图片生成模型自回归模型,因为它们会分步生成图片。

在 k 个结果中的平均精确率

#language

用于汇总模型在生成排名结果(例如编号的图书推荐列表)的单个问题上的表现的指标。k 时的平均精确率是指每个相关结果的 k 时的精确率值的平均值。因此,k 时的平均精确率的计算公式为:

\[{\text{average precision at k}} = \frac{1}{n} \sum_{i=1}^n {\text{precision at k for each relevant item} } \]

其中:

  • \(n\) 是列表中相关项的数量。

k 个样本时的召回率相对。

B

词袋

#language

词组或段落中的字词的表示法,不考虑字词顺序。例如,以下三个词组的词袋完全一样:

  • the dog jumps
  • jumps the dog
  • dog jumps the

每个字词都映射到稀疏向量中的一个索引,其中词汇表中的每个字词都在该向量中有一个索引。例如,词组“the dog jumps”会映射到一个特征向量,该特征向量在字词“the”、“dog”和“jumps”对应的三个索引处包含非零值。非零值可以是以下任一值:

  • 1,表示某个字词存在。
  • 某个字词出现在词袋中的次数。例如,如果词组为“the maroon dog is a dog with maroon fur”,那么“maroon”和“dog”都会表示为 2,其他字词则表示为 1。
  • 其他一些值,例如,某个字词出现在词袋中的次数的对数。

BERT(基于 Transformer 的双向编码器表示法)

#language

一种文本表示模型架构。经过训练的 BERT 模型可以作为大型模型的一部分,用于文本分类或其他机器学习任务。

BERT 具有以下特征:

BERT 的变体包括:

如需简要了解 BERT,请参阅开源 BERT:最先进的自然语言处理预训练

双向

#language

用于描述一种系统,该系统会评估目标文本部分的前文后文。与之相反,单向系统仅评估目标文本部分之前的文本。

例如,假设有一个遮盖语言模型,它必须确定以下问题中代表下划线的字词的概率:

您有什么问题吗?

单向语言模型必须仅根据“What”“is”和“the”这三个字词提供的上下文来确定概率。与之相反,双向语言模型还可以从“with”和“you”中获取上下文,这可能会帮助模型生成更好的预测结果。

双向语言模型

#language

一种语言模型,用于根据前文后文确定给定文本摘录中给定位置出现给定令牌的概率。

二元语法

#seq
#language

一种 N 元语法,其中 N=2。

BLEU(双语替换评测)

#language

一个介于 0.0 到 1.0 之间的指标,用于评估机器翻译,例如西班牙语翻译成日语。

为了计算得分,BLEU 通常会将机器学习模型的翻译(生成的文本)与人类专家的翻译(参考文本)进行比较。生成文本和参考文本中的N 元语法匹配程度决定了 BLEU 得分。

有关此指标的原始论文是 BLEU:一种用于自动评估机器翻译的方法

另请参阅 BLEURT

BLEURT(基于转换器的双语替换评测)

#language

用于评估一种语言翻译成另一种语言的机器翻译的指标,尤其是英语与其他语言之间的翻译。

对于英语与其他语言之间的翻译,BLEURT 与人工评分结果的一致性高于 BLEU。与 BLEU 不同,BLEURT 强调语义(含义)相似性,并且可以容纳重述。

BLEURT 依赖于预训练的大语言模型(确切地说是 BERT),然后根据人类译者提供的文本对其进行微调

有关此指标的原始论文是 BLEURT: Learning Robust Metrics for Text Generation

C

因果语言模型

#language

单向语言模型的含义相同。

如需对比语言建模中的不同方向方法,请参阅双向语言模型

思维链提示

#language
#generativeAI

一种提示工程技术,可鼓励大语言模型 (LLM) 逐步解释其推理过程。例如,请考虑以下问题,并特别注意第二句话:

如果一辆汽车在 7 秒内从 0 加速到每小时 60 英里,驾驶员会感受到多少 g 力?在回答中,请显示所有相关计算。

LLM 的回答可能:

  • 显示一系列物理公式,并在适当的位置插入值 0、60 和 7。
  • 说明系统为何选择这些公式,以及各种变量的含义。

思维链提示会强制 LLM 执行所有计算,这可能会导致更准确的回答。此外,借助思维链提示,用户可以检查 LLM 的步骤,以确定回答是否合理。

聊天

#language
#generativeAI

与机器学习系统(通常是大语言模型)进行的来回对话内容。对话中的前一次互动(您输入的内容以及大语言模型的回复方式)会成为对话后续部分的上下文。

聊天机器人是大语言模型的一种应用。

虚构

#language

幻觉的含义相同。

与幻觉相比,“虚构”在技术上可能更准确。不过,“幻觉”一词最先流行起来。

选区解析

#language

将句子划分为更小的语法结构(“成分”)。机器学习系统的后续部分(例如自然语言理解模型)比原始句子更容易解析这些成分。例如,请考虑以下句子:

我的朋友收养了两只猫。

词组解析器可以将此句子划分为以下两个词组:

  • 我的朋友是一个名词短语。
  • 收养了两只猫是一个动词短语。

这些成分可以进一步细分为更小的成分。例如,动词短语

收养了两只猫

可进一步细分为:

  • adopted 是一个动词。
  • two cats 是另一个名词短语。

上下文语言嵌入

#language
#generativeAI

嵌入,可像母语为该语言的人类一样“理解”字词和短语。基于上下文的语言嵌入可以理解复杂的语法、语义和上下文。

例如,考虑英语单词 cow 的嵌入。较早的嵌入(例如 word2vec)可以表示英语单词,使得嵌入空间cowbull 的距离与 ewe(母羊)到 ram(公羊)或 femalemale 的距离相似。情境化语言嵌入可以更进一步,因为它能识别出英语使用者有时会随意使用“cow”一词来表示母牛或公牛。

上下文窗口

#language
#generativeAI

模型在给定提示中可以处理的令牌数量。上下文窗口越大,模型可以使用的信息就越多,从而对问题提供连贯一致的回答。

歧义

#language

含义不明确的句子或词组。歧义是自然语言理解的一个重大问题。例如,标题“Red Tape Holds Up Skyscraper”存在歧义,因为 NLU 模型可能会从字面解读该标题,也可能会从象征角度进行解读。

D

解码器

#language

一般来说,任何从经过处理的密集或内部表示法转换为更原始、稀疏或外部表示法的机器学习系统。

解码器通常是大型模型的组件,在其中它们通常与编码器搭配使用。

序列到序列任务中,解码器从编码器生成的内部状态开始预测下一个序列。

如需了解 Transformer 架构中的解码器定义,请参阅 Transformer

如需了解详情,请参阅机器学习速成课程中的大型语言模型

降噪

#language

一种常见的自监督学习方法,其中:

  1. 向数据集中人为添加了噪声
  2. 模型会尝试移除噪声。

去噪功能可让您从无标签示例中学习。原始数据集用作目标或标签,噪声数据用作输入。

某些掩码语言模型会按如下方式进行降噪:

  1. 通过遮盖部分令牌,人为地向未标记的句子添加噪声。
  2. 模型会尝试预测原始令牌。

直接提示

#language
#generativeAI

零样本提示的含义相同。

E

编辑距离

#language

衡量两个文本字符串之间的相似程度。在机器学习中,编辑距离非常有用,原因如下:

  • 修改距离很容易计算。
  • 编辑距离可以比较已知相似的两个字符串。
  • 编辑距离可以确定不同字符串与给定字符串的相似程度。

编辑距离有多个定义,每个定义都使用不同的字符串操作。如需查看示例,请参阅 Levenshtein 距离

嵌入层

#language
#fundamentals

一种特殊的隐藏层,用于对高维分类特征进行训练,以逐步学习低维嵌入矢量。与仅仅基于高维分类特征进行训练相比,嵌入层可让神经网络训练效率提高很多。

例如,地球上目前约有 73,000 种树。假设树种是模型中的特征,因此模型的输入层包含一个长度为 73,000 个元素的独热向量。例如,baobab 可能如下所示:

一个包含 73,000 个元素的数组。前 6,232 个元素的值为 0。下一个元素的值为 1。最后 66,767 个元素的值为零。

73,000 个元素的数组非常长。如果您不向模型添加嵌入层,则由于需要对 72,999 个零进行乘法,训练将非常耗时。假设您选择的嵌入层由 12 个维度组成。因此,嵌入层将逐渐为每种树种学习一个新的嵌入向量。

在某些情况下,哈希是嵌入层的合理替代方案。

如需了解详情,请参阅机器学习速成课程中的嵌入

嵌入空间

#language

更高维度的向量空间中的特征所映射到的 d 维向量空间。理想情况下,嵌入空间包含的结构会生成有意义的数学结果;例如,在理想的嵌入空间中,对嵌入进行加减运算可以处理字词类比任务。

两个嵌入的点积可用于衡量两者之间的相似性。

嵌入向量

#language

一般来说,从任何 隐藏层中提取的浮点数数组,用于描述该隐藏层的输入。通常,嵌入向量是嵌入层中训练出的浮点数数组。例如,假设嵌入层必须为地球上的 73,000 种树的每种树学习一个嵌入向量。以下数组可能是猴面包树的嵌入向量:

一个包含 12 个元素的数组,每个元素都存储一个介于 0.0 和 1.0 之间的浮点数。

嵌入向量不是一堆随机数字。嵌入层通过训练来确定这些值,这与神经网络在训练期间学习其他权重的方式类似。数组中的每个元素都是某种树种的特征评分。哪个元素代表哪种树种的特征?这对人类来说很难确定。

嵌入向量在数学上最值得注意的部分是,相似项具有类似的浮点数集。例如,相似的树种具有比不相似的树种更相似的一组浮点数。红杉和红杉树是近亲树种,因此它们的浮点数集比红杉树和椰子树更相似。每次重新训练模型时,嵌入矢量中的数字都会发生变化,即使您使用相同的输入重新训练模型也是如此。

编码器

#language

一般来说,任何从原始、稀疏或外部表示法转换为经过更多处理、更密集或更内部表示法的机器学习系统。

编码器通常是较大模型的组件,通常与解码器搭配使用。有些 Transformer 会将编码器与解码器配对,但有些 Transformer 只使用编码器或解码器。

有些系统会将编码器的输出用作分类或回归网络的输入。

序列到序列任务中,编码器接受输入序列并返回内部状态(向量)。然后,解码器使用该内部状态来预测下一个序列。

如需了解 Transformer 架构中的编码器定义,请参阅 Transformer

如需了解详情,请参阅机器学习速成课程中的 LLM:什么是大语言模型

evals

#language
#generativeAI

主要用作 LLM 评估的缩写。更广泛地说,evals 是任何形式的评估的缩写。

evaluation

#language
#generativeAI

衡量模型质量或比较不同模型的过程。

如需评估监督式机器学习模型,您通常需要根据验证集测试集对其进行评判。评估 LLM 通常涉及更广泛的质量和安全评估。

F

少样本提示

#language
#generativeAI

包含多个(“少量”)示例的问题,用于演示大语言模型应如何回答。例如,以下长篇幅问题包含两个示例,展示了大型语言模型如何回答查询。

一个问题的各个部分 备注
指定国家/地区的官方货币是什么? 您希望 LLM 回答的问题。
法国:欧元 示例。
英国:英镑 再举一个例子。
印度 实际查询。

零样本提示单样本提示相比,少样本提示通常能产生更理想的结果。不过,少样本提示需要更长的提示。

少样本提示是一种少样本学习,适用于基于提示的学习

如需了解详情,请参阅机器学习速成课程中的问题工程

小提琴

#language

一种以 Python 为先的配置库,可在不使用侵入性代码或基础架构的情况下设置函数和类的值。对于 Pax 和其他机器学习代码库,这些函数和类代表模型训练 超参数

Fiddle 假定机器学习代码库通常分为以下部分:

  • 库代码,用于定义层和优化器。
  • 数据集“粘合”代码,用于调用库并将所有内容连接在一起。

Fiddle 会以未评估且可变的形式捕获粘合代码的调用结构。

微调

#language
#image
#generativeAI

预训练模型执行的第二次特定于任务的训练传递,以针对特定用例优化其参数。例如,某些大型语言模型的完整训练序列如下所示:

  1. 预训练:使用庞大的一般数据集(例如所有英语版维基百科页面)训练大语言模型。
  2. 微调:训练预训练模型以执行特定任务,例如回答医学查询。微调通常涉及数百或数千个专注于特定任务的示例。

再举一个例子,大型图片模型的完整训练序列如下所示:

  1. 预训练:在庞大的一般图片数据集(例如 Wikimedia Commons 中的所有图片)上训练大型图片模型。
  2. 微调:训练预训练模型以执行特定任务,例如生成虎鲸的图片。

微调可以包含以下策略的任意组合:

  • 修改预训练模型的所有现有参数这有时称为完整微调
  • 仅修改预训练模型的部分现有参数(通常是距离输出层最近的层),同时保持其他现有参数不变(通常是距离输入层最近的层)。请参阅参数高效微调
  • 添加更多图层,通常在最靠近输出图层的现有图层之上。

微调是一种迁移学习。因此,与训练预训练模型时使用的损失函数或模型类型相比,微调可能会使用不同的损失函数或模型类型。例如,您可以微调预训练的大型图像模型,以生成一个回归模型,用于返回输入图片中的鸟类数量。

比较和对比微调与以下术语:

如需了解详情,请参阅机器学习速成课程中的微调

亞麻色

#language

一个基于 JAX 构建的高性能开源深度学习。Flax 提供了用于训练 神经网络的函数,以及用于评估其性能的方法。

Flaxformer

#language

一个开源 Transformer ,基于 Flax 构建,主要用于自然语言处理和多模态研究。

G

Gemini

#language
#image
#generativeAI

该生态系统由 Google 最先进的 AI 技术组成。此生态系统的元素包括:

Gemini 模型

#language
#image
#generativeAI

Google 基于 Transformer 的先进多模态模型。Gemini 模型专为与代理集成而设计。

用户可以通过多种方式与 Gemini 模型互动,包括通过交互式对话框界面和 SDK。

生成的文本

#language
#generativeAI

一般来说,机器学习模型输出的文本。评估大语言模型时,某些指标会将生成的文本与参考文本进行比较。例如,假设您正在尝试确定机器学习模型从法语翻译成荷兰语的效果如何。在此示例中:

  • 生成的文本是机器学习模型输出的荷兰语翻译。
  • 参考文本是人工译者(或软件)创建的荷兰语译文。

请注意,某些评估策略不涉及参考文本。

生成式 AI

#language
#image
#generativeAI

尚无正式定义的全新变革领域。 尽管如此,大多数专家都认为,生成式 AI 模型可以创作(“生成”)符合以下所有条件的内容:

  • 复杂
  • 连贯
  • 原图

例如,生成式 AI 模型可以创作复杂的散文或图片。

一些早期技术(包括 LSTMRNN)也可以生成原创且连贯的内容。一些专家认为这些早期技术属于生成式 AI,而另一些人则认为,真正的生成式 AI 需要生成比这些早期技术能生成的更复杂的输出。

预测性机器学习相对。

黄金回复

#language
#generativeAI

已知正确的答案。例如,假设存在以下提示

2 + 2

理想的回答应该是:

4

GPT(生成式预训练转换器)

#language

OpenAI 开发的一系列基于 Transformer大语言模型

GPT 变体可应用于多种模态,包括:

  • 图片生成(例如 ImageGPT)
  • 文本到图像生成(例如 DALL-E)。

H

幻觉

#language

生成式 AI 模型声称对现实世界做出断言,但生成的输出看似合理但实际上不正确。例如,如果生成式 AI 模型声称奥巴马于 1865 年去世,则表示该模型产生了幻觉

人工评估

#language
#generativeAI

来判断机器学习模型输出质量的过程;例如,让双语人士来判断机器学习翻译模型的质量。人工评估对于评判没有唯一正确答案的模型特别有用。

自动评估自动评分器评估相对。

I

情境学习

#language
#generativeAI

少样本提示的含义相同。

L

LaMDA(对话应用语言模型)

#language

由 Google 开发的基于 Transformer大型语言模型,该模型基于大型对话数据集进行训练,可以生成逼真的对话回答。

如需了解详情,请参阅 LaMDA:我们富有突破性的对话技术

语言模型

#language

一种模型,用于估算某个令牌或令牌序列在较长的令牌序列中出现的概率。

大语言模型

#language

至少包含大量参数语言模型。更非正式地说,任何基于 Transformer 的语言模型,例如 GeminiGPT

潜在空间

#language

嵌入空间的含义相同。

Levenshtein 距离

#language
#metric

修改距离指标,用于计算将一个字词更改为另一个字词所需的最少删除、插入和替换操作。例如,“heart”和“darts”之间的 Levenshtein 距离为 3,因为将一个词转换为另一个词所需的更改次数最少,只需进行以下三项修改即可:

  1. heart → deart(将“h”替换为“d”)
  2. deart → dart(删除“e”)
  3. dart → darts(插入“s”)

请注意,上述序列并不是三次修改的唯一路径。

LLM

#language
#generativeAI

大语言模型的缩写。

LLM 评估 (eval)

#language
#generativeAI

一组用于评估大语言模型 (LLM) 性能的指标和基准。概括来讲,大语言模型评估:

  • 帮助研究人员确定 LLM 需要改进的方面。
  • 对比不同 LLM 并确定特定任务的最佳 LLM 非常有用。
  • 帮助确保 LLM 的使用安全且合乎道德。

LoRA

#language
#generativeAI

低秩自适应的缩写。

低秩自适应 (LoRA)

#language
#generativeAI

一种参数高效微调方法,它会“冻结”模型的预训练权重(使其无法再修改),然后在模型中插入一小组可训练权重。这组可训练的权重(也称为“更新矩阵”)比基准模型小得多,因此训练速度要快得多。

LoRA 具有以下优势:

  • 提高模型针对应用了微调的领域的预测质量。
  • 与需要微调模型所有参数的技术相比,微调速度更快。
  • 通过支持同时提供共享相同基础模型的多个专用模型,降低推理的计算成本。

M

掩码语言模型

#language

一种语言模型,用于预测候选令牌填充序列中空白的概率。例如,带遮盖语言模型可以计算候选字词的概率,以替换以下句子中的下划线:

帽子上的 ____ 回来了。

文献通常使用字符串“MASK”而非下划线。 例如:

帽子上的“MASK”又出现了。

大多数现代蒙版语言模型都是双向的。

在 k 个预测结果时的平均精确率均值 (mAP@k)

#language
#generativeAI

验证数据集中所有k 个预测结果的平均精确率得分的统计平均值。在 k 处的平均平均精确率的一个用途是评判推荐系统生成的推荐的质量。

虽然“平均平均值”这个词组听起来很冗余,但指标的名称是恰当的。毕竟,此指标会计算多个k 个预测结果的平均精确率值的平均值。

元学习

#language

机器学习的一个子集,用于发现或改进学习算法。元学习系统还可以训练模型,以便从少量数据或从之前任务中获得的经验中快速学习新任务。元学习算法通常会尝试实现以下目标:

  • 改进或学习手动设计的特征(例如初始化程序或优化器)。
  • 提高数据效率和计算效率。
  • 提高泛化能力。

元学习与少样本学习相关。

专家组合

#language
#generativeAI

一种方法,通过仅使用神经网络的一部分参数(称为专家)来处理给定的输入令牌示例,从而提高效率。决策网络会将每个输入令牌或示例路由到适当的专家。

如需了解详情,请参阅以下任一论文:

MMIT

#language
#image
#generativeAI

多模态指令调优的缩写。

modality

#language

一个高级数据类别。例如,数字、文本、图片、视频和音频是五种不同的模态。

模型并行处理

#language

一种扩展训练或推理的方法,可将一个模型的不同部分放置在不同的设备上。借助模型并行处理,您可以使用太大而无法在单个设备上运行的模型。

为了实现模型并行处理,系统通常会执行以下操作:

  1. 将模型分片(划分)成较小的部分。
  2. 将这些较小部分的训练分配到多个处理器。 每个处理器都会训练模型的各个部分。
  3. 将结果组合起来创建单个模型。

模型并行会减慢训练速度。

另请参阅数据并行

MOE

#language
#image
#generativeAI

专家组合的缩写。

多头自注意力

#language

自注意力的扩展,它会对输入序列中的每个位置多次应用自注意力机制。

Transformer 引入了多头自注意力机制。

多模态指令调优

#language

按指令调整的模型,可处理文本以外的输入,例如图片、视频和音频。

多模态模型

#language

输入和/或输出包含多个模态的模型。例如,假设有一个模型,它将图片和文字说明(两种模态)作为特征,并输出一个得分,表示文字说明与图片的契合度。因此,此模型的输入是多模态的,输出是单模态的。

自然语言处理

#language
教会计算机使用语言规则处理用户所说或所输入内容的学科。几乎所有现代自然语言处理都依赖于机器学习。

自然语言理解

#language

自然语言处理的子集,用于确定说出或输入的内容的意图。自然语言理解不仅仅局限于自然语言处理,还可以考虑语言的复杂方面,例如上下文、讽刺和情感。

N 元语法

#seq
#language

N 个字词的有序序列。例如,“truly madly”属于二元语法。由于顺序很重要,因此“madly truly”和“truly madly”是不同的二元语法。

此类 N 元语法的名称 示例
2 二元语法 to go、go to、eat lunch、eat dinner
3 三元语法 ate too much、three blind mice、the bell tolls
4 四元语法 walk in the park, dust in the wind, the boy ate lentils

很多自然语言理解模型依赖 N 元语法来预测用户将输入或说出的下一个字词。例如,假设用户输入了“three blind”。基于三元语法的 NLU 模型可能会预测该用户接下来将输入“mice”。

N 元语法与词袋(无序字词集)相对。

NLP

#language

自然语言处理的缩写。

NLU

#language

自然语言理解的缩写。

没有唯一正确答案 (NORA)

#language
#generativeAI

具有多个适当回答的提示。 例如,以下问题没有唯一正确答案:

给我讲个关于大象的笑话。

评估没有标准答案的问题可能很有挑战性。

NORA

#language
#generativeAI

是“无正确答案”的缩写。

O

单样本提示

#language
#generativeAI

问题,其中包含一个示例,演示大语言模型应如何回答。例如,以下问题包含一个示例,展示了大型语言模型应如何回答查询。

一个问题的各个部分 备注
指定国家/地区的官方货币是什么? 您希望 LLM 回答的问题。
法国:欧元 示例。
印度 实际查询。

一次性提示与以下术语进行比较和对比:

P

参数高效微调

#language
#generativeAI

一系列技术,可比完整微调更高效地微调大型预训练语言模型 (PLM)。与完全微调相比,参数高效调优通常微调的参数要少得多,但通常会生成与通过完全微调构建的大型语言模型一样出色(或几乎一样出色)的大型语言模型

比较参数高效微调与以下方法:

参数高效调优也称为参数高效微调

流水线

#language

一种模型并行形式,其中模型的处理分为连续的阶段,每个阶段在不同的设备上执行。当某个阶段处理一个批次时,上一个阶段可以处理下一个批次。

另请参阅分阶段训练

PLM

#language
#generativeAI

预训练语言模型的缩写。

位置编码

#language

一种将有关词法单元在序列中的位置的信息添加到词法单元嵌入的技术。Transformer 模型使用位置编码来更好地了解序列不同部分之间的关系。

位置编码的常见实现使用正弦函数。(具体而言,正弦函数的频率和振幅取决于令牌在序列中的位置。)借助此技术,Transformer 模型可以学习根据序列的不同位置来关注序列的不同部分。

后期训练的模型

#language
#image
#generativeAI

这个术语的定义比较宽泛,通常是指经过一些后处理(例如以下一项或多项)的预训练模型

在 k 个样本时的准确率 (precision@k)

#language

用于评估排名(有序)项列表的指标。 k 精确度表示该列表中前 k 项中“相关”项所占的比例。具体来说:

\[\text{precision at k} = \frac{\text{relevant items in first k items of the list}} {\text{k}}\]

k 的值必须小于或等于返回列表的长度。请注意,返回列表的长度不包含在计算范围内。

相关性通常是主观的;即使是专家人工评估员,对于哪些内容是相关的,也往往存在分歧。

比较对象:

预训练模型

#language
#image
#generativeAI

通常是指已经训练好的模型。该术语还可以指之前训练的嵌入向量

预训练语言模型一词通常是指已训练的大型语言模型

预训练

#language
#image
#generativeAI

在大型数据集上对模型进行初始训练。有些预训练模型是笨拙的巨人,通常需要通过额外训练进行优化。例如,机器学习专家可能会使用庞大的文本数据集(例如维基百科中的所有英语页面)预训练大语言模型。预训练后,可以通过以下任一技术进一步优化生成的模型:

提示符

#language
#generativeAI

输入到大语言模型的任何文本,用于让模型以特定方式运作。提示可以短至一个短语,也可以任意长(例如,一部小说的完整文本)。提示分为多个类别,包括下表中所示的类别:

提示类别 示例 备注
问题 鸽子能飞多快?
指令 写一首关于套利的幽默诗。 提示,用于指示大语言模型执行某项操作。
示例 将 Markdown 代码转换为 HTML。例如:
Markdown:* 列表项
HTML:<ul> <li>列表项</li> </ul>
此示例提示中的第一句话是一条指令。 提示的其余部分是示例。
角色 向物理学博士解释为什么在机器学习训练中使用梯度下降法。 该句子的第一个部分是一条指令;“物理学博士”是角色部分。
供模型补全的部分输入 英国首相的住址是 不完整输入提示可以突然结束(如本示例所示),也可以以下划线结尾。

生成式 AI 模型可以使用文本、代码、图片、嵌入、视频等几乎任何内容来回答问题。

基于提示的学习

#language
#generativeAI

某些模型的一种能力,可让它们根据任意文本输入(提示)调整行为。在典型的基于提示的学习范式中,大语言模型通过生成文本来回答提示。例如,假设用户输入以下提示:

总结牛顿第三运动定律。

能够根据提示进行学习的模型并未经过专门训练来回答上一条提示。相反,该模型“知道”很多关于物理学的事实、很多关于一般语言规则的知识,以及很多关于什么构成一般实用回答的知识。这些知识足以提供(希望是)有用的答案。通过额外的人类反馈(例如“这个答案太复杂了”或“有什么反应?”),一些基于提示的学习系统可以逐渐改进其回答的实用性。

提示设计

#language
#generativeAI

提示工程的含义相同。

提示工程

#language
#generativeAI

创建提示的艺术,以从大语言模型中引出所需回答。人工执行问题设计。编写结构化良好的提示是确保从大语言模型获得有用回答的重要环节。提示工程取决于许多因素,包括:

  • 用于预训练和可能微调大语言模型的数据集。
  • 温度和模型用于生成回答的其他解码参数。

如需详细了解如何撰写有用的提示,请参阅提示设计简介

提示设计与提示工程同义。

提示调优

#language
#generativeAI

一种参数高效调优机制,用于学习系统要附加到实际提示的前缀。

提示调整的一种变体(有时称为前缀调整)是,在每个层前面附加前缀。与之相反,大多数问题优化只会向输入层添加前缀。

R

召回率(recall@k)

#language

用于评估输出排名(有序)项列表的系统的指标。k 召回率是指该列表中前 k 项中的相关项占返回的相关项总数的比例。

\[\text{recall at k} = \frac{\text{relevant items in first k items of the list}} {\text{total number of relevant items in the list}}\]

k 个预测结果中的准确率相对。

参考文本

#language
#generativeAI

专家对问题的回答。例如,假设存在以下提示:

将问题“What is your name?”从英语翻译成法语。

专家的回答可能如下:

Comment vous appelez-vous?

各种指标(例如 ROUGE)可衡量参考文本与机器学习模型的生成文本之间的匹配程度。

角色提示

#language
#generativeAI

提示的可选部分,用于为生成式 AI 模型的回答确定目标受众群体。如果没有角色提示,大语言模型提供的答案对提问者来说可能有用,也可能没有用。借助角色提示,大型语言模型可以以更适合特定目标受众群体且更有帮助的方式进行回答。例如,以下提示的角色提示部分采用了粗体显示:

  • 针对经济学博士总结这篇文章。
  • 向 10 岁的孩子描述潮汐的运作方式。
  • 解释 2008 年金融危机。像对小孩子或金毛寻回犬说话一样说话。

ROUGE(以召回率为导向的摘要评估研究)

#language

用于评估自动摘要和机器翻译模型的一组指标。ROUGE 指标用于确定参考文本与机器学习模型的生成文本之间的重叠程度。ROUGE 系列的每个成员都会以不同的方式衡量重叠。ROUGE 得分越高,则表示参考文本与生成文本之间的相似度越高。

每个 ROUGE 家族成员通常会生成以下指标:

  • 精确率
  • 召回率
  • F1

如需了解详情和示例,请参阅:

ROUGE-L

#language

ROUGE 家族的一员,侧重于 参考文本生成的文本中的最长公共子序列的长度。以下公式用于计算 ROUGE-L 的召回率和精确率:

$$\text{ROUGE-L recall} = \frac{\text{longest common sequence}} {\text{number of words in the reference text} }$$
$$\text{ROUGE-L precision} = \frac{\text{longest common sequence}} {\text{number of words in the generated text} }$$

然后,您可以使用 F1 将 ROUGE-L 召回率和 ROUGE-L 精确率汇总为单个指标:

$$\text{ROUGE-L F} {_1} = \frac{\text{2} * \text{ROUGE-L recall} * \text{ROUGE-L precision}} {\text{ROUGE-L recall} + \text{ROUGE-L precision} }$$

ROUGE-L 会忽略参考文本和生成文本中的所有换行符,因此最长公共子序列可能会跨越多句话。当参考文本和生成的文本涉及多句话时,通常最好使用一种名为 ROUGE-Lsum 的 ROUGE-L 变体指标。ROUGE-Lsum 会确定段落中每个句子的最长公共子序列,然后计算这些最长公共子序列的平均值。

ROUGE-N

#language

ROUGE 家族中的一组指标,用于比较参考文本生成的文本中特定大小的共享 N 元语词。例如:

  • ROUGE-1 用于衡量参考文本和生成文本中共享的令牌数。
  • ROUGE-2 用于衡量参考文本和生成文本中共享的双元语法(2-gram)的数量。
  • ROUGE-3 用于衡量参考文本和生成文本中共享的三元语法 (3-gram) 的数量。

您可以使用以下公式计算 ROUGE-N 家族中的任何成员的 ROUGE-N 召回率和 ROUGE-N 精确率:

$$\text{ROUGE-N recall} = \frac{\text{number of matching N-grams}} {\text{number of N-grams in the reference text} }$$
$$\text{ROUGE-N precision} = \frac{\text{number of matching N-grams}} {\text{number of N-grams in the generated text} }$$

然后,您可以使用 F1 将 ROUGE-N 召回率和 ROUGE-N 精确率汇总为单个指标:

$$\text{ROUGE-N F}{_1} = \frac{\text{2} * \text{ROUGE-N recall} * \text{ROUGE-N precision}} {\text{ROUGE-N recall} + \text{ROUGE-N precision} }$$

ROUGE-S

#language

一种宽容的 ROUGE-N 形式,支持 skip-gram 匹配。也就是说,ROUGE-N 仅统计完全匹配的 N 元语法,但 ROUGE-S 还会统计由一个或多个字词分隔的 N 元语法。例如,应该考虑以下事项:

计算 ROUGE-N 时,2 元语法“白云”与“白色翻滚的云”不匹配。不过,在计算 ROUGE-S 时,白云白色翻滚的云是匹配的。

S

自注意力(也称为自注意力层)

#language

一种神经网络层,用于将一序列嵌入(例如令牌嵌入)转换为另一序列嵌入。输出序列中的每个嵌入都是通过注意力机制整合输入序列元素中的信息而构建的。

自注意力自我部分是指对自身(而非其他上下文)进行注意的序列。自注意力是 Transformer 的主要构建块之一,使用字典查找术语,例如“查询”“键”和“值”。

自注意力层从一系列输入表示开始,每个字词对应一个表示。字词的输入表示法可以是简单的嵌入。对于输入序列中的每个字词,该网络都会为该字词与整个字词序列中的每个元素之间的相关性评分。相关性得分决定了该字词的最终表示法中包含其他字词的表示法的程度。

例如,请考虑以下句子:

动物太累了,没能过马路。

下图(摘自 Transformer:语言理解领域的新型神经网络架构)显示了自注意层对人称代词 it 的注意力模式,其中每条线条的深浅表示每个词对表示法的贡献程度:

以下句子出现了两次:“The animal didn&#39;t cross the street because it was too tired. ”线条将一个句子中的人称代词“it”与另一个句子中的五个令牌(“The”“animal”“street”“it”和“the period”)连接起来。代词“it”与“animal”之间的线条最粗。

自注意力层会突出显示与“it”相关的字词。在本例中,注意力层学会了突出显示可能提及的字词,并为动物分配了最高权重。

对于包含 n令牌的序列,自注意机制会对嵌入序列进行 n 次单独的转换,在序列中的每个位置进行一次转换。

另请参阅注意力多头自注意力

情感分析

#language

使用统计算法或机器学习算法确定群体对某个服务、产品、组织或主题的整体态度(积极或消极)。例如,使用自然语言理解,这种算法会通过对某大学课程的文字反馈进行情感分析,从而确定学生在多大程度上普遍喜欢或不喜欢该课程。

序列到序列任务

#language

用于将令牌输入序列转换为令牌输出序列的任务。例如,两种常见的序列到序列任务如下:

  • 译者:
    • 示例输入序列:“我爱你。”
    • 示例输出序列:“Je t'aime。”
  • 问答:
    • 示例输入序列:“我需要在纽约市使用汽车吗?”
    • 示例输出序列:“不行。请将车辆停在家里。”

skip-gram

#language

一种N 元语法,可能会省略(或“跳过”)原始上下文中的字词,这意味着这 N 个字词可能原本并不相邻。更具体地说,“k 跳跃 n 元语法”是指最多跳过了 k 个字词的 n 元语法。

例如,“the quick brown fox”有以下可能的 2 元词组:

  • “the quick”
  • “quick brown”
  • “brown fox”

“1-skip-2-gram”是指一对字词,它们之间最多相隔 1 个字词。因此,“the quick brown fox”有以下 1 跳 2 元语法:

  • “the brown”
  • “quick fox”

此外,所有 2 元词组是 1 跳 2 元词组,因为跳过的单词可能少于 1 个。

跳字词语对更好地了解某个字词的周围上下文很有帮助。在该示例中,“fox”在 1-skip-2-gram 组中与“quick”直接相关联,但在 2-gram 组中则不相关联。

跳字词语可帮助训练词嵌入模型。

软提示调优

#language
#generativeAI

一种用于针对特定任务调整大型语言模型的技术,无需进行耗费大量资源的微调。软提示调优不会重新训练模型中的所有权重,而是会自动调整提示以实现相同的目标。

给定文本提示时,软提示调优通常会将其他令牌嵌入附加到提示中,并使用反向传播来优化输入。

“硬”提示包含实际令牌,而不是令牌嵌入。

稀疏特征

#language
#fundamentals

一种特征,其中的大多数值都为 0 或为空。例如,包含一个 1 值和一百万个 0 值的特征就是稀疏特征。与之相反,稠密特征的值大多不是零或空值。

在机器学习中,有相当多的特征是稀疏特征。分类特征通常是稀疏特征。例如,在森林中的 300 种可能的树种中,单个示例可能只会识别出枫树。或者,在视频库中可能包含数百万个视频,但单个示例可能只会识别出“Casablanca”。

在模型中,您通常使用独热编码来表示稀疏特征。如果独热编码很大,您可以在独热编码上方放置嵌入层,以提高效率。

稀疏表示法

#language
#fundamentals

仅存储稀疏特征中非零元素的位置

例如,假设名为 species 的分类特征用于标识特定森林中的 36 种树木。进一步假设每个示例仅标识单个物种。

您可以使用一对一热编码向量来表示每个示例中的树种。独热向量将包含一个 1(表示该示例中的特定树种)和 35 个 0(表示该示例中属于的 35 种树)。因此,maple 的独热表示法可能如下所示:

一个矢量,其中位置 0 到 23 的值为 0,位置 24 的值为 1,位置 25 到 35 的值为 0。

或者,稀疏表示法只会标识特定物种的位置。如果 maple 位于 24 号位置,则 maple 的稀疏表示法将非常简单:

24

请注意,稀疏表示法比独热表示法要紧凑得多。

分阶段训练

#language

一种在一系列离散阶段训练模型的策略。目标可以是加快训练过程,也可以是实现更高的模型质量。

下面显示了渐进堆叠方法的示意图:

  • 第 1 阶段包含 3 个隐藏层,第 2 阶段包含 6 个隐藏层,第 3 阶段包含 12 个隐藏层。
  • 第 2 阶段会使用第 1 阶段的 3 个隐藏层中学习到的权重开始训练。第 3 阶段会使用第 2 阶段的 6 个隐藏层中学习到的权重开始训练。

三个阶段,分别标记为第 1 阶段、第 2 阶段和第 3 阶段。
          每个阶段包含的层数不同:第 1 阶段包含 3 层,第 2 阶段包含 6 层,第 3 阶段包含 12 层。
          第 1 阶段的 3 个层成为第 2 阶段的前 3 个层。
          同样,第 2 阶段的 6 层会成为第 3 阶段的前 6 层。

另请参阅流水线

子词令牌

#language

语言模型中,令牌是指字词的子字符串,也可能是整个字词。

例如,“itemize”一词可能会被拆分为“item”(词根)和“ize”(后缀)这两个部分,每个部分都由自己的令牌表示。将不常见的字词拆分成此类部分(称为子词),可让语言模型对字词的常见组成部分(例如前缀和后缀)进行操作。

反之,“going”等常用词可能不会拆分,而是由单个令牌表示。

T

T5

#language

Google AI 在 2020 年推出的一种文本到文本转移学习 模型。T5 是一种基于 Transformer 架构的编码器-解码器模型,在大规模数据集上进行训练。它非常适用于各种自然语言处理任务,例如生成文本、翻译语言以及以对话方式回答问题。

T5 的名称源自“文本到文本转换转换器”中的五个 T。

T5X

#language

一个开源机器学习框架,旨在构建和训练大型自然语言处理 (NLP) 模型。T5 基于 T5X 代码库(该代码库基于 JAXFlax 构建)实现。

温度

#language
#image
#generativeAI

一种超参数,用于控制模型输出的随机程度。温度越高,输出内容的随机性就越大;温度越低,输出内容的随机性就越小。

选择最佳温度取决于具体应用以及模型输出的首选属性。例如,在创建用于生成富有创意输出的应用时,您可能会提高温度。相反,在构建用于分类图片或文本的模型时,您可能需要降低温度,以提高模型的准确性和一致性。

温度通常与softmax 一起使用。

文本 span

#language

与文本字符串的特定子部分相关联的数组索引跨度。例如,Python 字符串 s="Be good now" 中的 good 一词占据了 3 到 6 之间的文本范围。

token

#language

语言模型中,是模型训练和进行预测的原子单元。令牌通常是以下各项之一:

  • 一个字词 - 例如,“dogs like cats”这个词组由三个字词令牌组成:“dogs”“like”和“cats”。
  • 字符 - 例如,“bike fish”这个词组由 9 个字符令牌组成。(请注意,空格也算作一个令牌。)
  • 子词,其中单个字词可以是单个令牌或多个令牌。子词由词根、前缀或后缀组成。例如,使用子词作为令牌的语言模型可能会将“dogs”视为两个令牌(根词“dog”和复数词尾“s”)。同样的语言模型可能会将单个词“taller”视为两个子词(词根“tall”和词尾“er”)。

在语言模型之外的网域中,令牌可以表示其他类型的原子单元。例如,在计算机视觉中,令牌可能是图片的一部分。

前 k 个结果的准确性

#language

“目标标签”在生成的列表的前 k 个位置中出现的次数所占的百分比。列表可以是个性化推荐,也可以是按 softmax 排序的项列表。

前 k 个结果的准确率也称为 k 个结果的准确率

恶意

#language

内容的侮辱性、威胁性或冒犯性程度。许多机器学习模型都可以识别和衡量毒性。大多数此类模型会根据多种参数(例如辱骂性语言的程度和威胁性语言的程度)来识别毒性内容。

Transformer

#language

一种由 Google 开发的神经网络架构,它依赖于自注意力机制将一系列输入嵌入转换为一系列输出嵌入,而无需依赖于卷积循环神经网络。Transformer 可以视为堆叠的自注意力层。

转换器可以包含以下任一项:

编码器会将一组嵌入转换为长度相同的新序列。编码器包含 N 个相同的层,每个层包含两个子层。这两个子层会应用于输入嵌入序列的每个位置,将序列的每个元素转换为新的嵌入。第一个编码器子层会汇总来自整个输入序列的信息。第二个编码器子层将汇总的信息转换为输出嵌入。

解码器会将一组输入嵌入转换为一组输出嵌入,长度可能不同。解码器还包含 N 个相同的层,每个层包含三个子层,其中两个子层与编码器子层类似。第三个解码器子层会接受编码器的输出,并应用自注意力机制从中收集信息。

博文 Transformer:语言理解领域的新型神经网络架构对 Transformer 进行了简要介绍。

三元语法

#seq
#language

一种 N 元语法,其中 N=3。

U

单向

#language

仅评估目标文本部分前面的文本的系统。与之相反,双向系统会同时评估目标文本部分的前文后文。如需了解详情,请参阅双向

单向语言模型

#language

一种语言模型,其概率仅基于目标令牌前(而非后)出现的令牌双向语言模型相对。

V

变分自编码器 (VAE)

#language

一种自动编码器,可利用输入和输出之间的差异来生成输入的修改版本。变分自编码器对生成式 AI 非常有用。

VAE 基于变分推理:一种用于估计概率模型参数的技术。

W

词嵌入

#language

表示词集中每个单词的嵌入向量;即,将每个单词表示为介于 0.0 和 1.0 之间的浮点值向量。与具有不同含义的字词相比,具有相似含义的字词具有更相似的表示法。例如,胡萝卜芹菜黄瓜的表示形式都相对相似,这与飞机太阳镜牙膏的表示形式截然不同。

Z

零样本提示

#language
#generativeAI

提示提供大语言模型应如何回答的示例。例如:

一个问题的各个部分 备注
指定国家/地区的官方货币是什么? 您希望 LLM 回答的问题。
印度 实际查询。

大语言模型可能会做出以下任一回答:

  • 卢比符号
  • INR
  • 印度卢比
  • 卢比
  • 印度卢比

所有答案都是正确的,但您可能更喜欢特定格式。

比较和对比零次提示与以下术语: