อภิธานศัพท์เกี่ยวกับแมชชีนเลิร์นนิง

本术语表定义了机器学习术语。

A

消融

一种评估特征或组件重要性的技术,具体方法是将其从模型中暂时移除。然后,在不使用该特征或组件的情况下重新训练模型,如果重新训练后的模型性能明显下降,则表明移除的特征或组件可能很重要。

例如,假设您根据 10 个特征训练了一个分类模型,并在测试集上实现了 88% 的准确率。如需检查第一个特征的重要性,您可以仅使用其他 9 个特征重新训练模型。如果重新训练后的模型性能明显下降(例如,准确率为 55%),则表明移除的特征可能很重要。反之,如果经过重新训练的模型表现同样出色,则该特征可能不是那么重要。

移除操作还可以帮助确定以下各项的重要性:

  • 较大的组件,例如大型机器学习系统的整个子系统
  • 流程或技术,例如数据预处理步骤

在这两种情况下,您都可以观察移除组件后系统性能的变化(或不变)情况。

A/B 测试

一种比较两种(或更多)技术(AB)的统计方法。通常,A 是现有技术,B 是新技术。A/B 测试不仅可以确定哪种方法的效果更好,还可以确定差异是否具有统计显著性。

A/B 测试通常比较两种方法的单个指标;例如,两种方法的模型准确性如何对比?不过,A/B 测试还可以比较任意数量的有限指标。

加速器芯片

#GoogleCloud

一类专用硬件组件,旨在执行深度学习算法所需的关键计算。

与通用 CPU 相比,加速器芯片(简称加速器)可以显著提高训练和推理任务的速度和效率。它们非常适合训练神经网络和执行类似的计算密集型任务。

加速器芯片的示例包括:

  • Google 的张量处理单元 (TPU),配备专用于深度学习的硬件。
  • NVIDIA 的 GPU 虽然最初是为图形处理而设计的,但其设计支持并行处理,这可以显著提高处理速度。

准确性

#fundamentals

正确分类预测的数量除以预测总数。具体来说:

$$\text{Accuracy} = \frac{\text{correct predictions}} {\text{correct predictions + incorrect predictions }}$$

例如,如果模型做出了 40 次正确预测和 10 次错误预测,则其准确性为:

$$\text{Accuracy} = \frac{\text{40}} {\text{40 + 10}} = \text{80%}$$

二元分类为不同类别的正确预测错误预测提供了特定名称。因此,二元分类的准确率公式如下:

$$\text{Accuracy} = \frac{\text{TP} + \text{TN}} {\text{TP} + \text{TN} + \text{FP} + \text{FN}}$$

其中:

  • TP 是真正例(正确预测)的数量。
  • TN 是真负例(正确预测)的数量。
  • FP 是假正例(错误预测)的数量。
  • FN 是假负例(错误预测)的数量。

比较准确率与精确率召回率

如需了解详情,请参阅机器学习速成课程中的分类:准确率、召回率、精确率和相关指标

action

#rl

强化学习中,代理环境状态之间转换的机制。代理使用政策来选择操作。

激活函数

#fundamentals

一种函数,可让神经网络学习特征与标签之间的非线性(复杂)关系。

常用的激活函数包括:

激活函数的图表绝不是单个直线。例如,ReLU 激活函数的图表由两条直线组成:

两个线条的直角坐标图。第一条线的 y 值为常量 0,沿 x 轴从 -infinity,0 到 0,-0。
          第二行从 0,0 开始。此线条的斜率为 +1,因此其范围为 0,0 到 +infinity,+infinity。

sigmoid 激活函数的图形如下所示:

二维曲线图,x 值介于 -∞ 到 +∞ 之间,而 y 值介于几乎 0 到几乎 1 之间。当 x 为 0 时,y 为 0.5。曲线的斜率始终为正值,在 0,0.5 处斜率最高,随着 x 的绝对值的增加,斜率会逐渐减小。

如需了解详情,请参阅机器学习速成课程中的神经网络:激活函数

主动学习

一种训练方法,采用这种方法时,算法会选择从中学习规律的部分数据。有标签样本稀缺或获取成本高昂时,主动学习尤其有用。主动学习算法会选择性地寻找学习所需的特定范围的样本,而不是盲目地寻找各种各样的有标签样本。

AdaGrad

一种先进的梯度下降法,用于重新调整每个参数的梯度,以便有效地为每个参数指定独立的学习速率。如需查看完整的解释,请参阅 这篇 AdaGrad 论文

代理

#rl

强化学习中,使用策略来最大限度地提高从环境状态之间转换所获得的预期回报的实体。

更广泛地说,代理是指为了实现某个目标而自主规划和执行一系列操作的软件,并且能够适应环境变化。例如,基于 LLM 的代理可能会使用 LLM 来生成方案,而不是应用强化学习政策。

凝聚式层次聚类

#clustering

请参阅层次聚类

异常检测

确定离群值的过程。例如,如果某个特征的平均值为 100,标准差为 10,则异常检测应将值 200 标记为可疑。

AR

增强现实的缩写。

PR 曲线下的面积

请参阅 PR AUC(PR 曲线下面积)

ROC 曲线下面积

请参阅 AUC(ROC 曲线下面积)

人工通用智能

一种非人类机制,能够展示广泛的问题解决能力、创造力和适应能力。例如,演示通用人工智能的程序可以翻译文本、谱写交响曲,并且擅长玩尚未发明的游戏。

人工智能

#fundamentals

能够解决复杂任务的非人类程序或模型。例如,用于翻译文本的程序或模型,或者用于从放射学图像中识别疾病的程序或模型,都具有人工智能特征。

从严格意义上讲,机器学习是人工智能的一个子领域。不过,近年来,一些组织开始将人工智能机器学习术语互换使用。

注意力层、

#language

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

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

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

属性

#fairness

特征的含义相同。

在机器学习公平性方面,属性通常是指与个人相关的特征。

属性采样

#df

一种训练决策森林的策略,其中每个决策树在学习条件时,只考虑可能特征的随机子集。通常,系统会为每个节点采样不同的特征子集。相比之下,在训练不进行属性抽样的决策树时,系统会考虑每个节点的所有可能特征。

AUC(ROC 曲线下面积)

#fundamentals

介于 0.0 到 1.0 之间的数值,表示二元分类模型将正类别负类别区分开的能力。AUC 越接近 1.0,模型区分不同类别的能力就越强。

例如,下图显示了一个分类器模型,该模型可以完美地将正类别(绿色椭圆形)与负类别(紫色矩形)区分开来。这个不切实际的完美模型的 AUC 为 1.0:

一个数轴,一侧有 8 个正例,另一侧有 9 个负例。

相反,下图显示了生成随机结果的分类器模型的结果。此模型的 AUC 为 0.5:

包含 6 个正例和 6 个负例的数轴。
          示例的顺序为正例、负例、正例、负例、正例、负例、正例、负例、正例、负例、正例、负例。

是的,上一个模型的 AUC 为 0.5,而非 0.0。

大多数模型介于这两种极端情况之间。例如,以下模型可以将正例与负例区分开来,因此其 AUC 介于 0.5 到 1.0 之间:

包含 6 个正例和 6 个负例的数轴。
          示例序列为负例、负例、负例、负例、正例、负例、正例、正例、负例、正例、正例、正例。

AUC 会忽略您为分类阈值设置的任何值。相反,AUC 会考虑所有可能的分类阈值。

如需了解详情,请参阅机器学习速成课程中的分类:ROC 和 AUC

增强现实

#image

一种技术,可将计算机生成的图像叠加在用户对真实世界的视图上,从而提供合成视图。

自动编码器

#language
#image

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

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

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

例如:

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

另请参阅变分自编码器

自动评估

#language
#generativeAI

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

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

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

人工评估相对。

自动化偏差

#fairness

是指针对自动化决策系统所给出的建议的偏差,在此偏差范围内,即使系统出现错误,决策者也会优先考虑自动化决策系统给出的建议,而不是非自动化系统给出的建议。

如需了解详情,请参阅机器学习速成课程中的公平性:偏差类型

AutoML

用于构建机器学习 模型的任何自动化流程。AutoML 可以自动执行以下任务:

  • 搜索最合适的模型。
  • 调整超参数
  • 准备数据(包括执行特征工程)。
  • 部署生成的模型。

AutoML 对数据科学家而言非常有用,因为它可以帮助他们节省开发机器学习流水线的时间和精力,并提高预测准确性。它还可以帮助非专家更轻松地完成复杂的机器学习任务。

如需了解详情,请参阅机器学习速成课程中的自动化机器学习 (AutoML)

自动评估器评估

#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 个样本时的召回率相对。

轴对齐条件

#df

决策树中,仅涉及单个特征条件。例如,如果 area 是地图项,则以下是轴对齐条件:

area > 200

斜线条件相对。

B

反向传播算法

#fundamentals

神经网络中实现梯度下降的算法。

训练神经网络涉及对以下两次传递周期进行多次iterations

  1. 前向传递期间,系统会处理示例批量,以生成预测结果。系统会将每个预测结果与每个标签值进行比较。预测值与标签值之间的差异就是该示例的损失。系统会汇总所有示例的损失,以计算当前批次的总损失。
  2. 向后传递(反向传播)期间,系统会通过调整所有隐藏层中的所有神经元的权重来减少损失。

神经网络通常包含多个隐藏层中的许多神经元。这些神经元各自以不同的方式对总体损失做出贡献。反向传播可确定是增加还是减少应用于特定神经元的权重。

学习速率是一个乘数,用于控制每次向后传递增加或减少每个权重的程度。与学习速率较小相比,学习速率较大会使每个权重增加或减少更多。

从微积分角度来看,反向传播实现了微积分中的链式求导法。也就是说,反向传播会计算误差相对于每个参数的偏导数

几年前,机器学习从业者必须编写代码才能实现反向传播。现在,Keras 等新型机器学习 API 可为您实现反向传播。呼!

如需了解详情,请参阅机器学习速成课程中的神经网络部分。

bagging

#df

一种训练集成学习的方法,其中每个组成部分模型都针对按替换抽样的训练示例的随机子集进行训练。例如,随机森林是使用抽样法训练的决策树的集合。

术语“bagging”是“bootstrap aggregating”(自举例集成)的简称。

如需了解详情,请参阅“决策森林”课程中的随机森林部分。

词袋

#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。
  • 其他一些值,例如,某个字词出现在词袋中的次数的对数。

baseline

一种模型,用作比较另一个模型(通常是更复杂的模型)效果时的参考点。例如,逻辑回归模型可以作为深度模型的良好基准。

对于特定问题,基准有助于模型开发者量化新模型必须达到的最低预期性能,以便新模型发挥作用。

批处理

#fundamentals

一次训练迭代中使用的一组示例批量大小决定了批量中的示例数量。

如需了解批次与时段之间的关系,请参阅时段

如需了解详情,请参阅机器学习速成课程中的线性回归:超参数

批量推理

#TensorFlow
#GoogleCloud

对分为较小子集(“批次”)的多个未标记示例进行推理预测的过程。

批量推理可以利用加速器芯片的并行处理功能。也就是说,多个加速器可以同时对不同批量的未标记示例进行推理预测,从而显著提高每秒的推理次数。

如需了解详情,请参阅机器学习速成课程中的生产机器学习系统:静态推理与动态推理

批次归一化

隐藏层中的激活函数的输入或输出进行归一化。批次归一化具有下列优势:

批次大小

#fundamentals

批次中的示例数量。 例如,如果批量大小为 100,则模型会在每次迭代中处理 100 个示例。

以下是常见的批量大小策略:

  • 随机梯度下降法 (SGD),其中批次大小为 1。
  • 完整批次,其中批量大小为整个训练集中的样本数。例如,如果训练集包含 100 万个示例,则批处理大小为 100 万个示例。完整批处理通常是一种低效的策略。
  • 小批次,其中批次大小通常介于 10 到 1000 之间。小批量通常是最有效的策略。

请参阅以下内容了解详细信息:

贝叶斯神经网络

一种概率神经网络,用于解释权重和输出的不确定性。标准神经网络回归模型通常会预测标量值;例如,标准模型预测房价为 853,000。相比之下,贝叶斯神经网络会预测值的分布情况;例如,贝叶斯模型预测房价为 853,000,其中标准偏差为 67200。

贝叶斯神经网络根据 贝叶斯定理计算权重和预测的不确定性。如果需要量化不确定性,例如,在与医药相关的模型中,则贝叶斯神经网络非常有用。贝叶斯神经网络还有助于防止过拟合

贝叶斯优化

一种概率回归模型技术,通过优化使用贝叶斯学习技术量化不确定性的代理函数,来优化计算成本高昂的目标函数。由于贝叶斯优化本身非常耗费资源,因此通常用于优化参数数量较少且评估成本较高的任务,例如选择超参数

Bellman 方程

#rl

在强化学习中,最优 Q 函数满足以下等式:

\[Q(s, a) = r(s, a) + \gamma \mathbb{E}_{s'|s,a} \max_{a'} Q(s', a')\]

强化学习算法会应用此等式,通过以下更新规则创建 Q 学习

\[Q(s,a) \gets Q(s,a) + \alpha \left[r(s,a) + \gamma \displaystyle\max_{\substack{a_1}} Q(s',a') - Q(s,a) \right] \]

除了强化学习之外,贝尔曼方程还可应用于动态规划。请参阅 Wikipedia 中有关贝尔曼方程的条目

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

#language

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

BERT 具有以下特征:

BERT 的变体包括:

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

偏差(道德/公平性)(bias (ethics/fairness))

#fairness
#fundamentals

1. 对某些事物、人或群体有刻板印象、偏见或偏袒。这些偏差会影响数据的收集和解读、系统设计以及用户与系统的互动方式。此类偏差的形式包括:

2. 采样或报告过程中引入的系统错误。此类偏差的形式包括:

请勿与机器学习模型中的偏差项预测偏差混淆。

如需了解详情,请参阅机器学习速成课程中的公平性:偏差类型

偏差(数学概念)或偏差项

#fundamentals

距离原点的截距或偏移。偏差是机器学习模型中的参数,用以下任一符号表示:

  • b
  • w0

例如,在下面的公式中,偏差为 b:

$$y' = b + w_1x_1 + w_2x_2 + … w_nx_n$$

在简单的二维线条中,偏差只是指“y 截距”。例如,下图中线条的偏差为 2。

斜率为 0.5 且偏差(y 截距)为 2 的线条图。

之所以存在偏差,是因为并非所有模型都从原点 (0,0) 开始。例如,假设某个游乐园的入园费用为 2 欧元,每位客户每待一小时需额外支付 0.5 欧元。因此,映射总费用的模型的偏差为 2,因为最低费用为 2 欧元。

偏差不能与道德和公平性偏差预测偏差混淆。

如需了解详情,请参阅机器学习速成课程中的线性回归

双向

#language

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

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

您有什么问题吗?

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

双向语言模型

#language

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

二元语法

#seq
#language

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

二元分类

#fundamentals

一种分类任务,用于预测两个互斥类别中的其中一个:

例如,以下两个机器学习模型都执行二元分类:

  • 用于确定电子邮件是垃圾邮件(正类别)还是非垃圾邮件(负类别)的模型。
  • 一种模型,用于评估医学症状,以确定患者是否患有特定疾病(正类别)或不患有该疾病(负类别)。

多类别分类相对。

另请参阅逻辑回归分类阈值

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

二进制条件

#df

决策树中,只有两个可能结果(通常为“是”或“否”)的条件。例如,以下是二元条件:

temperature >= 100

非二元条件相对。

如需了解详情,请参阅“决策森林”课程中的条件类型

分箱

分桶的含义相同。

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

增强学习

一种机器学习技术,以迭代方式将一组简单但不太准确的分类器(也称为“弱”分类器)合成一个准确率高的分类器(即“强”分类器),具体方法是对模型目前错误分类的样本进行权重上调

如需了解详情,请参阅“决策森林”课程中的梯度提升决策树部分。

边界框

#image

在图片中,围绕感兴趣区域(例如下图中的狗)的矩形的 (x, y) 坐标。

一张照片,显示一只狗坐在沙发上。一个绿色的边界框,左上角坐标为 (275, 1271),右下角坐标为 (2954, 2761),框住了狗的身体

广播

将矩阵数学运算中某个运算数的形状扩展为与该运算兼容的维度。例如,线性代数要求矩阵加法运算中的两个运算数必须具有相同的维度。因此,您无法将形状为 (m, n) 的矩阵与长度为 n 的向量相加。为了使该运算有效,广播会在每列下复制相同的值,将长度为 n 的向量扩展成形状为 (m, n) 的矩阵。

例如,鉴于以下定义,线性代数不支持 A+B 运算,因为 A 和 B 的维度不同。

A = [[7, 10, 4],
     [13, 5, 9]]
B = [2]

不过,广播会将 B 扩展为以下矩阵,从而使 A+B 运算变得有效:

 [[2, 2, 2],
  [2, 2, 2]]

因此,A+B 现为有效运算:

[[7, 10, 4],  +  [[2, 2, 2],  =  [[ 9, 12, 6],
 [13, 5, 9]]      [2, 2, 2]]      [15, 7, 11]]

如需了解详情,请参阅 NumPy 中的广播这篇文章的说明。

分桶

#fundamentals

将单个特征转换成多个二元特征(称为),通常根据值范围进行转换。经过分块处理的特征通常是连续特征

例如,您可以将温度范围划分为离散的分桶,而不是将温度表示为单个连续的浮点特征,例如:

  • 低于 10 摄氏度属于“冷”分桶。
  • 11 到 24 摄氏度属于“温和”分桶。
  • 大于等于 25 摄氏度属于“温暖”分桶。

该模型会对同一分桶中的每个值采用相同的处理方式。例如,值 1322 都属于温和分桶,因此该模型会将这两个值视为相同。

如需了解详情,请参阅机器学习速成课程中的数值数据:分箱

C

校准层

一种预测后调整,通常是为了降低预测偏差的影响。调整后的预测和概率应与观察到的标签集的分布一致。

候选集生成

#recsystems

推荐系统选择的初始推荐集。例如,假设某家书店有 10 万本书。在候选集生成阶段,推荐系统会针对特定用户生成一个小得多的合适书籍列表,比如 500 本。但即使向用户推荐 500 本也太多了。推荐系统的后续阶段(例如评分重排序)会将这 500 本书列表逐渐缩小为一个小得多且更实用的推荐集。

如需了解详情,请参阅推荐系统课程中的候选生成概览

候选采样

一种训练时进行的优化,会使用某种函数(例如 softmax)针对所有正类别标签计算概率,但仅随机抽取一部分负类别标签样本并计算概率。例如,如果某个样本的标签为“小猎犬”和“狗”,则候选采样将针对以下各项计算预测概率和相应的损失项:

  • beagle
  • dog
  • 剩余负类别的随机子集(例如,棒棒糖栅栏)。

其基本思想是,只要正类别始终得到适当的正增强,负类别就可以通过更少的负增强来学习,这确实符合实际观察情况。

与针对所有负类别计算预测结果的训练算法相比,候选采样在计算效率方面更胜一筹,尤其是在负类别数量非常大时。

分类数据

#fundamentals

特征,具有一组特定的可能值。例如,假设有一个名为 traffic-light-state 的分类特征,该特征只能具有以下三个可能值之一:

  • red
  • yellow
  • green

通过将 traffic-light-state 表示为分类特征,模型可以学习 redgreenyellow 对驾驶员行为的不同影响。

分类特征有时称为离散特征

数值数据相对。

如需了解详情,请参阅机器学习速成课程中的处理分类数据

因果语言模型

#language

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

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

形心

#clustering

k-meansk-median 算法确定的集群中心。例如,如果 k 为 3,则 k-means 或 k-median 算法会找出 3 个形心。

如需了解详情,请参阅“聚类”课程中的聚类算法

基于质心的聚类

#clustering

一类聚类算法,用于将数据整理为非分层聚类。k-means 是使用最广泛的基于质心的聚类算法。

层次聚类算法相对。

如需了解详情,请参阅“聚类”课程中的聚类算法

思维链提示

#language
#generativeAI

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

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

LLM 的回答可能:

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

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

聊天

#language
#generativeAI

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

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

检查点

在训练期间或训练完成后捕获模型参数状态的数据。例如,在训练期间,您可以:

  1. 停止训练,可能是有意为之,也可能是由于某些错误。
  2. 捕获检查点。
  3. 稍后,在可能的其他硬件上重新加载检查点。
  4. 重新开始训练。

类别

#fundamentals

标签可属的类别。 例如:

  • 在用于检测垃圾邮件的二元分类模型中,这两个类别可能是垃圾邮件非垃圾邮件
  • 在用于识别狗品种的多类别分类模型中,类别可能是 poodlebeaglepug 等。

分类模型可预测类别。与之相反,回归模型会预测数字,而不是类别。

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

分类模型

#fundamentals

预测结果为模型。例如,以下都是分类模型:

  • 用于预测输入句子的语言(法语?西班牙语? 意大利语?)。
  • 一个用于预测树种(枫树?Oak?Baobab?)。
  • 用于预测特定疾病的正类别或负类别的模型。

相比之下,回归模型预测的是数字,而不是类别。

分类模型有两种常见类型:

分类阈值

#fundamentals

二元分类中,一个介于 0 到 1 之间的数字,用于将逻辑回归模型的原始输出转换为正类别负类别的预测结果。请注意,分类阈值是人为选择的值,而不是模型训练选择的值。

逻辑回归模型会输出介于 0 到 1 之间的原始值。然后,执行以下操作:

  • 如果此原始值大于分类阈值,则系统会预测正类别。
  • 如果此原始值低于分类阈值,则系统会预测负类。

例如,假设分类阈值为 0.8。如果原始值为 0.9,则模型会预测正类别。如果原始值为 0.7,则模型会预测负类别。

分类阈值的选择会极大地影响假正例假负例的数量。

如需了解详情,请参阅机器学习速成课程中的阈值和混淆矩阵

类别不平衡的数据集

#fundamentals

分类问题的数据集,其中每个类的标签总数差异很大。例如,假设一个二元分类数据集,其两个标签的划分如下所示:

  • 100 万个排除性标签
  • 10 个正例标签

负标签与正标签的比率为 10 万比 1,因此这是一个分类不平衡的数据集。

相比之下,以下数据集存在类别不平衡问题,因为负类标签与正类标签的比率相对接近 1:

  • 517 个否定标签
  • 483 个正例标签

多类数据集也可能存在类别不平衡的情况。例如,以下多类分类数据集也存在类不平衡问题,因为其中一个标签的示例数量远远多于另外两个标签:

  • 1,000,000 个类别为“green”的标签
  • 200 个类别为“purple”的标签
  • 350 个类别为“orange”的标签

另请参阅多数类少数类

剪裁

#fundamentals

一种处理离群值的方法,具体方法是执行以下一项或两项操作:

  • 将大于最大阈值的特征值减小到该最大阈值。
  • 将小于最小阈值的特征值增加到该最小阈值。

例如,假设特定特征的 <0.5% 的值不在 40-60 的范围内。在这种情况下,您可以执行以下操作:

  • 将超过 60(上限)的所有值裁剪到正好 60。
  • 将小于 40(最小阈值)的所有值裁剪到正好 40。

离群值可能会损坏模型,有时会导致权重在训练期间溢出。某些离群值还可能会严重影响准确性等指标。剪裁是限制损害的常用技术。

梯度剪裁会在训练期间强制使梯度值位于指定范围内。

如需了解详情,请参阅机器学习速成课程中的数值数据:归一化

Cloud TPU

#TensorFlow
#GoogleCloud

一种专用硬件加速器,旨在加速处理在 Google Cloud 上的机器学习工作负载。

聚类

#clustering

对相关的示例进行分组,尤其是在非监督式学习期间。在所有样本均分组完毕后,相关人员便可选择性地为每个聚类赋予含义。

聚类算法有很多。例如,k-means 算法会根据示例与中心点的接近程度对示例进行聚类,如下图所示:

一个二维图表,其中 x 轴标记为树宽,y 轴标记为树高。该图表包含两个重心和几十个数据点。系统会根据数据点之间的距离对其进行分类。也就是说,距离某个质心最近的数据点被归类为簇 1,而距离另一个质心最近的数据点被归类为簇 2。

之后,研究人员便可查看这些聚类并进行其他操作,例如,将聚类 1 标记为“矮型树”,将聚类 2 标记为“全尺寸树”。

再举一个例子,例如基于样本与中心点距离的聚类算法,如下所示:

数十个数据点呈同心圆形排列,几乎就像是飞镖靶中心周围的孔洞。最内层的数据点环形被归类为集群 1,中间环形被归类为集群 2,最外层环形被归类为集群 3。

如需了解详情,请参阅“聚类”课程

协同适应

是指神经元几乎完全依赖其他特定神经元的输出(而不是依赖该网络的整体行为)来预测训练数据中的模式。如果验证数据中未呈现会导致协同适应的模式,则协同适应会导致过拟合。Dropout 正规化可减少协同适应,因为 dropout 可确保神经元不会完全依赖其他特定神经元。

协同过滤

#recsystems

基于许多其他用户的兴趣,对某个用户的兴趣进行预测。协同过滤通常用在推荐系统中。

如需了解详情,请参阅推荐系统课程中的协同过滤部分。

概念偏移

特征与标签之间关系的变化。 随着时间的推移,概念偏移会降低模型的质量。

在训练过程中,模型会学习训练集中特征与其标签之间的关系。如果训练集中的标签是真实世界的良好代理,那么模型能够做出良好的真实世界预测。不过,由于概念偏移,模型的预测结果往往会随着时间的推移而逐渐降低准确性。

例如,假设有一个二元分类模型,用于预测某款车型是否“省油”。也就是说,这些地图项可以是:

  • 车辆重量
  • 引擎压缩
  • 传输类型

而标签是:

  • 省油
  • 不省油

不过,“节能汽车”的概念一直在变化。1994 年被标为省油的汽车型号,在 2024 年几乎肯定会被标为不省油。概念漂移的模型预测结果的准确性会随着时间的推移而越来越差。

非平稳性进行比较。

condition

#df

决策树中,用于求值的任何节点。例如,决策树的以下部分包含两个条件:

一个由两个条件组成的决策树:(x > 0) 和 (y > 0)。

条件也称为拆分或测试。

对比条件。

另请参阅:

如需了解详情,请参阅“决策森林”课程中的条件类型

虚构

#language

幻觉的含义相同。

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

配置

分配用于训练模型的初始属性值的过程,包括:

在机器学习项目中,可以通过特殊的配置文件或使用以下配置库进行配置:

确认偏差

#fairness

一种以认可已有观念和假设的方式寻找、解读、支持和召回信息的倾向。机器学习开发者可能会无意中以影响到支撑其现有观念的结果的方式收集或标记数据。确认偏差是一种隐性偏差

实验者偏差是一种确认偏差,实验者会不断地训练模型,直到模型的预测结果能证实他们先前的假设为止。

混淆矩阵

#fundamentals

一种 NxN 表格,用于总结分类模型做出的正确和错误预测的数量。例如,请考虑以下二元分类模型的混淆矩阵:

肿瘤(预测) 非肿瘤(预测)
肿瘤(标准答案) 18 (TP) 1 (FN)
非肿瘤(标准答案) 6 (FP) 452 (TN)

上表混淆矩阵显示了以下内容:

  • 在 19 个标准答案为肿瘤的预测中,模型正确分类了 18 个,错误分类了 1 个。
  • 在 458 个标准答案为“非肿瘤”的预测中,模型正确分类了 452 个,错误分类了 6 个。

多类分类问题的混淆矩阵可以帮助您发现错误模式。例如,请考虑以下 3 类多类分类模型的混淆矩阵,该模型对三种不同的鸢尾花类型(维吉尼亚鸢尾、变色鸢尾和山鸢尾)进行分类。当标准答案为 Virginica 时,混淆矩阵显示,模型更有可能错误地预测出 Versicolor,而不是 Setosa:

  Setosa(预测) 变色(预测) Virginica(预测)
Setosa(标准答案) 88 12 0
Versicolor(标准答案) 6 141 7
Virginica(标准答案) 2 27 109

再举一个例子,某个混淆矩阵可以揭示,经过训练以识别手写数字的模型往往会将 4 错误地预测为 9,将 7 错误地预测为 1。

混淆矩阵包含足够的信息来计算各种性能指标,包括精确率召回率

选区解析

#language

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

我的朋友收养了两只猫。

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

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

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

收养了两只猫

可进一步细分为:

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

上下文语言嵌入

#language
#generativeAI

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

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

上下文窗口

#language
#generativeAI

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

连续特征

#fundamentals

浮点特征,可能值范围无限,例如温度或重量。

离散特征相对。

便利抽样

使用未以科学方法收集的数据集,以便快速运行实验。之后,务必改为使用以科学方法收集的数据集。

收敛

#fundamentals

损失值在每次迭代中变化非常小或根本没有变化时达到的状态。例如,以下损失曲线表明在 700 次迭代左右达到收敛:

笛卡尔图。X 轴是损失。Y 轴是训练迭代次数。在前几个迭代中,损失非常高,但会急剧下降。大约 100 次迭代后,损失仍在下降,但下降速度要慢得多。大约 700 次迭代后,损失保持不变。

当进一步训练无法改进模型时,模型就会收敛

深度学习中,损失值有时会在多次迭代后保持不变或几乎不变,然后才最终下降。在长时间内损失值保持不变时,您可能会暂时产生误以为已收敛的感觉。

另请参阅早停法

如需了解详情,请参阅机器学习速成课程中的模型收敛和损失曲线

凸函数

一种函数,函数图像以上的区域为凸集。原型凸函数的形状类似于字母 U。例如,以下函数都是凸函数:

U 形曲线,每个曲线只有一个最低点。

相比之下,以下函数不是凸函数。请注意,图表上方的区域不是凸集:

具有两个不同局部最小值点的 W 形曲线。

严格凸函数只有一个局部最小值点,该点也是全局最小值点。经典的 U 形函数是严格凸函数。不过,有些凸函数(例如直线)则不是 U 形函数。

如需了解详情,请参阅机器学习速成课程中的收敛和凸函数

凸优化

使用梯度下降法等数学方法查找凸函数的最小值的过程。机器学习方面的大量研究都是专注于如何通过公式将各种问题表示成凸优化问题,以及如何更高效地解决这些问题。

如需完整的详细信息,请参阅 Boyd 和 Vandenberghe 合著的 Convex Optimization(《凸优化》)。

凸集

欧几里得空间的子集,使得在该子集中任意两点之间绘制的线段完全位于该子集内。例如,以下两个形状是凸集:

一个矩形插图。椭圆形的另一个示例。

相比之下,以下两个形状不是凸集:

一张插图,显示一个缺少一个切片的饼图。
          极不规则多边形的另一个示例。

卷积

#image

在数学中,粗略地说,就是两个函数的混合。在机器学习中,卷积结合使用卷积过滤器和输入矩阵来训练权重

在机器学习中,“卷积”一词通常是指卷积运算卷积层

如果没有卷积,机器学习算法就需要学习大张量中每个单元各自的权重。例如,在 2K x 2K 图片上训练的机器学习算法将被迫找到 400 万个单独的权重。而使用卷积,机器学习算法只需算出卷积过滤器中每个单元的权重,大大减少了训练模型所需的内存。应用卷积滤波器时,只需将其复制到各个单元格,以便每个单元格都与滤波器相乘。

如需了解详情,请参阅图像分类课程中的卷积神经网络简介

卷积过滤器

#image

卷积运算中的两个参与方之一。(另一个 actor 是输入矩阵的一个 slice。)卷积过滤器是一种矩阵,其与输入矩阵相同,但形状小一些。例如,给定一个 28x28 的输入矩阵,过滤器可以是小于 28x28 的任何二维矩阵。

在照片处理中,卷积滤波中的所有单元通常都设置为 1 和 0 的恒定模式。在机器学习中,卷积过滤器通常使用随机数作为种子,然后网络训练理想值。

如需了解详情,请参阅“图片分类”课程中的卷积

卷积层

#image

深度神经网络的一个层,卷积过滤器会在其中传递输入矩阵。例如,请考虑以下 3x3 卷积过滤器

一个 3x3 矩阵,其中包含以下值:[[0,1,0], [1,0,1], [0,1,0]]

以下动画展示了一个卷积层,该层由 9 个卷积运算组成,其中涉及 5x5 的输入矩阵。请注意,每个卷积运算都针对输入矩阵的不同 3x3 切片进行运算。生成的 3x3 矩阵(在右侧)由 9 次卷积运算的结果组成:

动画:显示两个矩阵。第一个矩阵是 5 x 5 的矩阵:[[128,97,53,201,198], [35,22,25,200,195], [37,24,28,197,182], [33,28,92,195,179], [31,40,100,192,177]].
          第二个矩阵是 3 x 3 矩阵:
          [[181,303,618], [115,338,605], [169,351,560]].
          第二个矩阵是通过对 5x5 矩阵的不同 3x3 子集应用卷积过滤器 [[0, 1, 0], [1, 0, 1], [0, 1, 0]] 计算得出的。

如需了解详情,请参阅“图片分类”课程中的全连接层

卷积神经网络

#image

一种神经网络,其中至少有一层为卷积层。典型的卷积神经网络由以下层的某种组合组成:

卷积神经网络在解决某些类型的问题(例如图像识别)方面取得了巨大成功。

卷积运算

#image

如下所示的两步数学运算:

  1. 卷积过滤器和输入矩阵切片执行元素级乘法。(输入矩阵切片与卷积过滤器具有相同的秩和大小。)
  2. 对生成的积矩阵中的所有值求和。

例如,请考虑以下 5x5 输入矩阵:

5 x 5 矩阵:[[128,97,53,201,198], [35,22,25,200,195],
          [37,24,28,197,182], [33,28,92,195,179], [31,40,100,192,177]].

现在,假设以下 2x2 卷积过滤器:

2x2 矩阵:[[1, 0], [0, 1]]

每个卷积运算都涉及输入矩阵的单个 2x2 切片。例如,假设我们使用输入矩阵左上角的 2x2 切片。因此,对此 slice 执行的卷积运算如下所示:

将卷积滤波 [[1, 0], [0, 1]] 应用于输入矩阵的左上角 2x2 部分,即 [[128,97], [35,22]]。
          卷积滤波会保留 128 和 22,但会将 97 和 35 设为零。因此,卷积运算的结果为 150(128+22)。

卷积层由一系列卷积运算组成,每个卷积运算都针对不同的输入矩阵切片。

费用

损失的含义相同。

协同训练

半监督学习方法在以下所有条件都成立时特别有用:

协同训练本质上是将独立信号放大为更强的信号。例如,假设有一个分类模型,用于将单个二手车分类为良好不良。一组预测特征可能侧重于汽车的年份、品牌和型号等汇总特征;另一组预测特征可能侧重于前车主的驾驶记录和汽车的维护记录。

关于协同训练的开创性论文是 Blum 和 Mitchell 撰写的《Combining Labeled and Unlabeled Data with Co-Training》(通过协同训练组合标记数据和未标记数据)。

反事实公平性

#fairness

一种公平性指标,用于检查分类器是否会对某个个体和与其在一个或多个敏感属性方面相同的另一个个体产生相同的结果。评估分类器的反事实公平性是发现模型中潜在偏差来源的一种方法。

如需了解详情,请参阅以下任一内容:

覆盖偏差

#fairness

请参阅选择性偏差

歧义

#language

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

评论家

#rl

深度 Q 网络的含义相同。

交叉熵

对数损失多类分类问题的泛化。交叉熵可以量化两种概率分布之间的差异。另请参阅困惑度

交叉验证

一种机制,使用从训练集保留的一个或多个不重叠的数据子集测试模型,以估计该模型泛化到新数据的效果。

累积分布函数 (CDF)

用于定义小于或等于目标值的样本的频率的函数。例如,考虑连续值的正态分布。通过 CDF,您可以了解大约 50% 的样本应小于或等于平均值,大约 84% 的样本应小于或等于平均值加一标准差。

D

数据分析

根据样本、测量结果和可视化内容理解数据。数据分析在首次收到数据集时且构建第一个模型之前特别有用。此外,数据分析在理解实验和调试系统问题方面也至关重要。

数据增强

#image

通过转换现有示例创建其他示例,人为地增加训练示例的范围和数量。例如,假设图像是其中一个特征,但数据集包含的图像样本不足以供模型学习有用的关系。理想情况下,您需要向数据集添加足够的有标签图像,才能使模型正常训练。如果不可行,则可以通过数据增强旋转、拉伸和翻转每张图像,以生成原始照片的多个变体,这样可能会生成足够的有标签数据来实现很好的训练效果。

DataFrame

#fundamentals

一种热门的 Pandas 数据类型,用于表示内存中的数据集

DataFrame 类似于表格或电子表格。DataFrame 的每一列都有一个名称(标题),每一行都由一个唯一的数字标识。

DataFrame 中的每一列都像 2D 数组一样进行结构化,但每列可以分配自己的数据类型。

另请参阅官方的 pandas.DataFrame 参考页面

数据并行

一种扩展训练推理的方式,该方式会将整个模型复制到多个设备,然后将部分输入数据传递给每台设备。数据并行性可支持在非常大的批量大小上进行训练和推理;不过,数据并行性要求模型足够小,能够适用于所有设备。

数据并行通常可以加快训练和推理速度。

另请参阅模型并行处理

Dataset API (tf.data)

#TensorFlow

一种高阶 TensorFlow API,用于读取数据并将其转换为机器学习算法所需的格式。tf.data.Dataset 对象表示一系列元素,其中每个元素都包含一个或多个张量tf.data.Iterator 对象可获取 Dataset 中的元素。

数据集(data set 或 dataset)

#fundamentals

一组原始数据,通常(但不限于)采用以下格式之一进行整理:

  • 电子表格
  • 采用 CSV(逗号分隔值)格式的文件

决策边界

模型二元类多类别分类问题中学习的之间的分隔符。例如,在以下表示某个二元分类问题的图片中,决策边界是橙色类别和蓝色类别之间的分界线:

两种类别之间明确定义的边界。

决策森林

#df

由多个决策树创建的模型。决策森林通过汇总其决策树的预测结果来进行预测。常见的决策森林类型包括随机森林梯度提升树

如需了解详情,请参阅“决策森林”课程中的决策森林部分。

决策阈值

分类阈值的含义相同。

决策树

#df

由一组条件组成的监督式学习模型,这些条件和叶按层次结构进行组织。例如,以下是决策树:

一个决策树,由四个条件组成,这些条件以分层方式排列,并分别对应于五个叶子节点。

解码器

#language

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

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

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

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

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

深度模型

#fundamentals

包含多个隐藏层神经网络

深度模型也称为深度神经网络

宽度模型相对。

一种非常流行的深度神经网络

深度模型的含义相同。

深度 Q 网络 (DQN)

#rl

Q 学习中,深度神经网络用于预测 Q 函数

评价器是深度 Q 网络的同义词。

人口统计均等

#fairness

公平性指标:如果模型的分类结果不依赖于给定的敏感属性,则满足此指标。

例如,如果小人国和巨人国的人均申请了格鲁布杜布里大学,那么只要被录取的小人国学生所占的比例与被录取的巨人国学生所占的比例相同,就实现了受众特征均等,无论哪一群体的平均资质高低。

机会均等机会均等相比,该属性允许总体分类结果取决于敏感属性,但不允许特定指定标准答案标签的分类结果取决于敏感属性。如需查看探索在针对受众特征差异进行优化时所需做出的权衡的直观图表,请参阅“通过更智能的机器学习避免歧视”一文。

如需了解详情,请参阅机器学习速成课程中的公平性:人口统计学差异

降噪

#language

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

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

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

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

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

密集特征

#fundamentals

大多数或所有值均不为零的特征,通常是浮点值的张量。例如,以下 10 个元素的张量是稠密的,因为其中 9 个值不为零:

8 3 7 5 2 4 0 4 9 6

稀疏特征相对。

密集层

全连接层的含义相同。

深度

#fundamentals

神经网络中的以下各项之和:

例如,具有 5 个隐藏层和 1 个输出层的神经网络的深度为 6。

请注意,输入层不会影响深度。

深度可分离卷积神经网络 (sepCNN)

#image

一种基于 Inception卷积神经网络架构,但 Inception 模块已替换为深度可分离卷积。也称为 Xception。

深度可分离卷积(也简称为可分离卷积)会将标准 3D 卷积分解为两个计算效率更高的单独卷积运算:第一个是深度卷积,深度为 1(n ✕ n ✕ 1),第二个是点卷积,长度和宽度为 1(1 ✕ 1 ✕ n)。

如需了解详情,请参阅 Xception:使用深度可分离卷积的深度学习

派生标签

代理标签的含义相同。

设备

#TensorFlow
#GoogleCloud

一个具有多重含义的术语,具有以下两种可能的定义:

  1. 一类可运行 TensorFlow 会话的硬件,包括 CPU、GPU 和 TPU
  2. 加速器芯片(GPU 或 TPU)上训练机器学习模型时,系统中实际操控张量嵌入的部分。该设备搭载加速器芯片。相比之下,主机通常在 CPU 上运行。

差分隐私

在机器学习中,一种匿名化方法,用于保护模型训练集中包含的任何敏感数据(例如个人的个人信息)免遭泄露。这种方法可确保模型不会学习或记住有关特定个人的太多信息。为此,我们会在模型训练期间进行抽样并添加噪声,以模糊处理个别数据点,从而降低泄露敏感训练数据的风险。

差分隐私还可用于机器学习以外的领域。例如,在计算不同受众群体的商品使用情况统计信息时,数据科学家有时会使用差分隐私来保护个人隐私。

降维

减少用于表示特征向量中特定特征的维度的数量,通常通过转换为嵌入向量来实现此操作。

维度

一个具有多重含义的术语,包括以下含义:

  • Tensor中的坐标级别数量。例如:

    • 标量有零个维度,如 ["Hello"]
    • 向量有一个维度,如 [3, 5, 7, 11]
    • 矩阵有两个维度,如 [[2, 4, 18], [5, 7, 14]]。您可以使用一个坐标唯一指定一维向量中的特定单元;您需要使用两个坐标唯一指定二维矩阵中的特定单元。
  • 特征向量中的条目数。

  • 嵌入层中的元素数。

直接提示

#language
#generativeAI

零样本提示的含义相同。

离散特征

#fundamentals

一种特征,包含有限个可能值。例如,如果某个特征的值只能是“动物”“蔬菜”或“矿物”,则该特征是离散(或分类)特征。

连续特征相对。

判别模型

一种通过一个或多个特征组成的集合预测标签模型。更正式地讲,判别模型会根据特征和权重定义输出的条件概率;即:

p(output | features, weights)

例如,如果一个模型要通过特征和权重预测某封电子邮件是否是垃圾邮件,那么该模型为判别模型。

绝大多数监督式学习模型(包括分类模型和回归模型)都是判别模型。

生成模型相对。

判别器

一种确定示例是否真实的系统。

或者,生成式对抗网络中的子系统,用于确定生成器创建的示例是否真实。

如需了解详情,请参阅 GAN 课程中的分类器

差别待遇

#fairness

对不同人群做出的决策对不同人口子群体的影响不成比例。这通常是指算法决策流程对某些子群体造成的伤害或利益大于对其他子群体。

例如,假设有一个用于确定小人是否符合申请微型住宅贷款资格的算法,如果小人的邮寄地址包含特定邮政编码,该算法就更有可能将其归类为“不符合条件”。如果大端小人国居民比小端小人国居民更有可能拥有此邮政编码的邮寄地址,那么此算法可能会产生不同的影响。

差别待遇相反,后者侧重于当子群体特征作为算法决策流程的显式输入时产生的差异。

差别待遇

#fairness

将正文的敏感属性纳入算法决策流程,以便对不同的人群采取不同的处理方式。

例如,假设有一个算法,该算法根据小人申请贷款时提供的数据来确定他们是否符合申请微型住宅贷款的条件。如果该算法将小人族的隶属关系(大端序或小端序)用作输入,则会在该维度上实施差别对待。

差别影响相比,后者侧重于算法决策对子群体产生的社会影响差异,而不考虑这些子群体是否是模型的输入。

蒸馏

#generativeAI

将一个模型(称为“教师”)缩减为一个较小的模型(称为“学生”)的过程,该模型尽可能忠实地模拟原始模型的预测。提炼之所以有用,是因为较小的模型比较大的模型(教师模型)具有以下两个主要优势:

  • 推理时间更短
  • 降低了内存和能耗

不过,学生的预测结果通常不如教师的预测结果。

蒸馏会根据学生模型和教师模型预测输出的差异,训练学生模型以最小化损失函数

比较和对比蒸馏与以下术语:

如需了解详情,请参阅机器学习速成课程中的 LLM:微调、提炼和问题工程

内容分发

给定特征标签的不同值的频率和范围。分布可捕获特定值的可能性。

下图显示了两个不同分布的直方图:

  • 左侧显示的是财富的幂律分布与拥有该财富的人数。
  • 右侧显示了身高与拥有相应身高人数的正态分布。

两个直方图。一个直方图显示了幂律分布,x 轴表示财富,y 轴表示拥有该财富的人数。大多数人财富很少,而少数人财富很多。另一个直方图显示了正态分布,其中 x 轴表示身高,y 轴表示具有相应身高的人数。大多数人的分数都集中在平均值附近。

了解每个特征和标签的分布有助于您确定如何归一化值和检测离群值

离群值是指未出现在数据集中或非常罕见的值。例如,对于包含猫图片的数据集,土星的图片会被视为分布不均。

分裂式层次聚类

#clustering

请参阅层次聚类

降采样

#image

一个多含义术语,可以理解为下列两种含义之一:

  • 减少特征中的信息量,以便更高效地训练模型。例如,在训练图像识别模型之前,将高分辨率图像降采样为分辨率较低的格式。
  • 使用占比异常低、得到过度代表的类别样本训练模型,以改进未得到充分代表的类别的模型训练效果。例如,在类别不平衡的数据集中,模型往往会对多数类别有充分的了解,但对少数类别的了解不足。降采样有助于平衡多数类和少数类的训练量。

如需了解详情,请参阅机器学习速成课程中的数据集:不平衡数据集

DQN

#rl

深度 Q 网络的缩写。

dropout 正则化

一种正则化形式,在训练神经网络时非常有用。Dropout 正规化会在一个梯度步中移除从神经网络层中随机选择的固定数量的单元。丢弃的单元越多,正则化就越强。这类似于训练神经网络以模拟较小网络的指数级规模集成学习。如需完整的详细信息,请参阅 Dropout: A Simple Way to Prevent Neural Networks from Overfitting(《Dropout:一种防止神经网络过拟合的简单方法》)。

动态

#fundamentals

经常或持续执行的操作。 在机器学习中,“动态”和“在线”是同义词。以下是机器学习中动态在线的常见用法:

  • 动态模型(或在线模型)是指经常或持续进行再训练的模型。
  • 动态训练(或在线训练)是指频繁或连续训练的过程。
  • 动态推理(或在线推理)是指根据需要生成预测的过程。

动态模型

#fundamentals

一种经常(甚至可能连续)重新训练的模型。动态模型是一种“终身学习者”,可不断适应不断变化的数据。动态模型也称为在线模型

静态模型相对。

E

即刻执行

#TensorFlow

一种 TensorFlow 编程环境,操作可在其中立即运行。相比之下,在图执行中调用的操作在得到明确评估之前不会运行。即刻执行是一种命令式接口,就像大多数编程语言中的代码一样。相比图执行程序,调试即刻执行程序通常要容易得多。

早停法

#fundamentals

一种正则化方法,涉及在训练损失完成下降之前结束训练在早停法中,当验证数据集上的损失开始增加时,您会刻意停止训练模型;也就是说,当泛化性能恶化时。

挖掘机距离 (EMD)

衡量两个分布的相对相似程度的指标。Earth Mover 距离越小,分布越相似。

编辑距离

#language

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

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

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

Einsum 表示法

一种高效的符号,用于描述如何组合两个张量。通过将一个张量的元素与另一个张量的元素相乘,然后对乘积求和,即可合并张量。Einsum 表示法使用符号来标识每个张量的轴,并重新排列这些相同的符号以指定生成的新张量的形状。

NumPy 提供了常见的 Einsum 实现。

嵌入层

#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 之间的浮点数。

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

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

经验累积分布函数 (eCDF 或 EDF)

基于真实数据集的经验测量累积分布函数。沿 x 轴的任意一点处的函数值是数据集中小于或等于指定值的观察结果的比例。

经验风险最小化 (ERM)

选择可将训练集上的损失最小化的函数。与结构风险最小化相对。

编码器

#language

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

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

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

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

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

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

集成学习

一组独立训练的模型,其预测结果会被平均或汇总。在许多情况下,与单个模型相比,集成模型的预测结果更准确。例如,随机森林是从多个决策树构建的集成学习模型。请注意,并非所有决策树都是集成模型。

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

#df

信息论中,熵是对概率分布不可预测程度的描述。或者,熵也定义为每个示例包含的信息量。当随机变量的所有值都具有相同的概率时,分布具有可能的最大熵。

具有两个可能值“0”和“1”的集合的熵(例如,二元分类问题中的标签)的公式如下:

  H = -p log p - q log q = -p log p - (1-p) * log (1-p)

其中:

  • H 是熵。
  • p 是“1”示例的比例。
  • q 是“0”示例的比例。请注意,q = (1 - p)
  • log 通常为 log2。在本例中,熵单位为比特。

例如,假设情况如下:

  • 100 个示例包含值“1”
  • 300 个示例包含值“0”

因此,熵值为:

  • p = 0.25
  • q = 0.75
  • H = (-0.25)log2(0.25) - (0.75)log2(0.75) = 每例 0.81 比特

完全平衡的集合(例如,200 个“0”和 200 个“1”)的每个示例的熵为 1.0 位。随着集合的不平衡程度增加,其熵会趋近于 0.0。

决策树中,熵有助于制定信息增益,以帮助分屏器在分类决策树生长过程中选择条件

与以下内容比较熵:

熵通常称为 Shannon 熵

如需了解详情,请参阅“决策森林”课程中的适用于包含数值特征的二元分类的完全分屏器

环境

#rl

在强化学习中,包含代理并允许代理观察该世界的状态的世界。例如,所呈现的世界可以是象棋这样的游戏,也可以是迷宫这样的现实世界。当代理对环境应用操作时,环境会在状态之间转换。

分集

#rl

在强化学习中,代理重复尝试学习环境的次数。

周期数

#fundamentals

在训练时,整个训练集的一次完整遍历,不会漏掉任何一个示例

一个周期表示 N/批量大小 个训练迭代,其中 N 是示例总数。

例如,假设存在以下情况:

  • 该数据集包含 1,000 个示例。
  • 批处理大小为 50 个示例。

因此,一个 epoch 需要 20 次迭代:

1 epoch = (N/batch size) = (1,000 / 50) = 20 iterations

如需了解详情,请参阅机器学习速成课程中的线性回归:超参数

epsilon 贪婪策略

#rl

在强化学习中,一种策略,在概率为 epsilon 时遵循随机策略,否则遵循贪婪策略。例如,如果 epsilon 为 0.9,则该策略在 90% 的时间遵循随机策略,在 10% 的时间遵循贪婪策略。

在连续的多个情景中,算法会降低 epsilon 的值,以便从遵循随机策略转变为遵循贪婪策略。通过切换策略,代理会先随机探索环境,然后贪婪地利用随机探索的结果。

机会均等

#fairness

一种公平性指标,用于评估模型是否能对敏感属性的所有值都同样准确地预测出理想结果。换句话说,如果模型的理想结果是正类别,则目标是让所有组的真正例率相同。

机会均等与均等机会相关,这要求所有群组的真正例率假正例率都相同。

假设 Glubbdubdrib 大学同时招收小人国和巨人国学生,并为他们开设了严格的数学课程。小人国的中学提供丰富的数学课程,绝大多数学生都符合大学课程的资格要求。布罗比冈的中学根本不开设数学课程,因此符合条件的学生要少得多。如果符合条件的学生无论是利立浦特人还是布罗比登人,都同样有可能被录取,则对于“已录取”这一首选标签,在国籍方面(利立浦特人或布罗比登人)满足机会均等。

例如,假设 100 名小人和 100 名巨人申请了 Glubbdubdrib 大学,录取决定如下:

表 1. 小人申请者(90% 符合条件)

  符合资格 不合格
已录取 45 3
已拒绝 45 7
总计 90 10
符合条件且被录取的学生所占百分比:45/90 = 50%
不符合条件且被拒绝的学生所占百分比:7/10 = 70%
被录取的利立浦特学生总所占百分比:(45+3)/100 = 48%

 

表 2. 巨人族申请者(10% 符合条件):

  符合资格 不合格
已录取 5 9
已拒绝 5 81
总计 10 90
被录取的符合条件的学生所占百分比:5/10 = 50%
被拒的不符合条件的学生所占百分比:81/90 = 90%
被录取的 Brobdingnagian 学生总所占百分比:(5+9)/100 = 14%

上述示例满足了对符合条件的学生提供平等录取机会的要求,因为符合条件的利立浦特人和布罗比登人都有 50% 的机会被录取。

虽然机会均等性已满足,但以下两个公平性指标未满足:

  • 人口统计均等:利立浦特人和布罗比登人被大学录取的比例不同;48% 的利立浦特人学生被录取,但只有 14% 的布罗比登人学生被录取。
  • 机会均等:虽然符合条件的利立浦特学生和布罗比登冈学生都有相同的录取机会,但未满足另一个约束条件,即不符合条件的利立浦特学生和布罗比登冈学生都有相同的被拒机会。不符合条件的利立浦特人被拒绝的几率为 70%,而不符合条件的布罗比登人被拒绝的几率为 90%。

如需了解详情,请参阅机器学习速成课程中的公平性:机会均等

平局赔率

#fairness

一种公平性指标,用于评估模型是否针对敏感属性的所有值,对正类负类(而不仅仅是其中一个类)都同样准确地预测了结果。换句话说,所有组的真正例率假负例率都应相同。

机会均等与机会均等相关,后者仅关注单个类别(正例或负例)的错误率。

例如,假设 Glubbdubdrib 大学同时招收小人国和巨人国学生参加一门高难度的数学课程。小人国的中学提供丰富的数学课程,绝大多数学生都符合大学课程的资格要求。布罗比冈的中学根本不开设数学课程,因此符合条件的学生人数要少得多。只要申请人符合条件,无论他们是小人国居民还是巨人国居民,都同样有可能被录取,如果他们不符合条件,也同样有可能被拒绝,就满足机会均等的要求。

假设 100 名小人和 100 名巨人申请了 Glubbdubdrib 大学,录取决定如下:

表 3. 小人申请者(90% 符合条件)

  符合资格 不合格
已录取 45 2
已拒绝 45 8
总计 90 10
被录取的符合条件的学生所占百分比:45/90 = 50%
被拒的不符合条件的学生所占百分比:8/10 = 80%
被录取的利立浦特学生总所占百分比:(45+2)/100 = 47%

 

表 4. 巨人族申请者(10% 符合条件):

  符合资格 不合格
已录取 5 18
已拒绝 5 72
总计 10 90
被录取的符合条件的学生所占百分比:5/10 = 50%
被拒的不符合条件的学生所占百分比:72/90 = 80%
被录取的 Brobdingnagian 学生总所占百分比:(5+18)/100 = 23%

由于符合条件的利立浦特学生和布罗比冈学生都有 50% 的机会被录取,而不符合条件的利立浦特学生和布罗比冈学生都有 80% 的机会被拒绝,因此满足机会均等要求。

“监督学习中的机会均等”一文中对“机会均等”进行了正式定义:“如果 Ŷ 和 A 在条件为 Y 时相互独立,则预测器 Ŷ 相对于受保护属性 A 和结果 Y 满足机会均等。”

Estimator

#TensorFlow

已废弃的 TensorFlow API。使用 tf.keras 而非 Estimator。

evals

#language
#generativeAI

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

evaluation

#language
#generativeAI

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

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

示例

#fundamentals

一行地图项的值,以及可能的标签监督式学习中的示例分为两大类:

  • 有标签样本包含一个或多个特征以及一个标签。在训练期间会使用有标签样本。
  • 无标签示例包含一个或多个特征,但没有标签。在推理期间会使用无标签样本。

例如,假设您正在训练一个模型,以确定天气状况对学生考试成绩的影响。以下是三个带标签的示例:

功能 标签
温度 湿度 压力 测试分数
15 47 998 良好
19 34 1020 极佳
18 92 1012

以下是三个未标记的示例:

温度 湿度 压力  
12 62 1014  
21 47 1017  
19 41 1021  

数据集的行通常是示例的原始来源。 也就是说,示例通常由数据集中的部分列组成。此外,示例中的特征还可以包括合成特征,例如特征交叉

如需了解详情,请参阅“机器学习简介”课程中的监督学习

体验重放

#rl

在强化学习中,一种 DQN 技术,用于减少训练数据中的时间相关性。代理会将状态转换存储在重放缓冲区中,然后从重放缓冲区中抽样转换以创建训练数据。

实验者偏差

#fairness

请参阅确认偏差

梯度爆炸问题

#seq

深度神经网络(尤其是循环神经网络)中的梯度趋于变得出奇地陡峭(高)。陡峭的梯度通常会导致深度神经网络中每个节点权重发生非常大的更新。

存在梯度爆炸问题的模型很难或根本无法训练。梯度剪裁可以缓解此问题。

梯度消失问题相对。

F

F1

一种“汇总”二元分类指标,同时依赖于精确率召回率。公式如下:

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

真实性

#generativeAI

在机器学习领域,一个属性,用于描述输出基于现实的模型。事实性是一种概念,而非指标。例如,假设您向大型语言模型发送以下问题

食盐的化学式是什么?

优化事实性准确性的模型会回答:

NaCl

我们很容易假设所有模型都应基于事实。不过,某些提示(例如以下提示)应该会促使生成式 AI 模型优化创造力,而不是真实性

给我讲一个关于宇航员和毛毛虫的诗歌。

生成的回旋诗不太可能基于现实。

着陆相对。

公平性约束

#fairness
对算法应用约束条件,以确保满足一个或多个公平性定义。公平性约束条件的示例包括:

公平指标

#fairness

对“公平性”的可衡量数学定义。 一些常用的公平性指标包括:

许多公平性指标是互斥的;请参阅公平性指标互不相容

假负例 (FN)

#fundamentals

被模型错误地预测为负类别的样本。例如,模型预测某封电子邮件不是垃圾邮件(负类别),但该电子邮件实际上是垃圾邮件

假负例率

模型错误预测为负类别的实际正例所占比例。以下公式用于计算假正例率:

$$\text{false negative rate} = \frac{\text{false negatives}}{\text{false negatives} + \text{true positives}}$$

如需了解详情,请参阅机器学习速成课程中的阈值和混淆矩阵

假正例 (FP)

#fundamentals

被模型错误地预测为正类别的样本。例如,模型预测某封电子邮件是垃圾邮件(正类别),但该电子邮件实际上不是垃圾邮件

如需了解详情,请参阅机器学习速成课程中的阈值和混淆矩阵

假正例率 (FPR)

#fundamentals

模型错误预测为正类别的实际负例示例所占的比例。以下公式用于计算假正例率:

$$\text{false positive rate} = \frac{\text{false positives}}{\text{false positives} + \text{true negatives}}$$

假正例率是 ROC 曲线的 x 轴。

如需了解详情,请参阅机器学习速成课程中的分类:ROC 和 AUC

功能

#fundamentals

机器学习模型的输入变量。示例包含一个或多个特征。例如,假设您正在训练一个模型,以确定天气状况对学生考试成绩的影响。下表显示了三个示例,每个示例包含三个特征和一个标签:

功能 标签
温度 湿度 压力 测试分数
15 47 998 92
19 34 1020 84
18 92 1012 87

标签相对。

如需了解详情,请参阅“机器学习简介”课程中的监督学习

特征组合

#fundamentals

通过“交叉”分类分桶特征形成的合成特征

例如,假设有一个“情绪预测”模型,用于将温度表示为以下四个分桶之一:

  • freezing
  • chilly
  • temperate
  • warm

表示风速在以下三个范围之一:

  • still
  • light
  • windy

如果不使用特征交叉,线性模型会针对前面七个不同的存储分区分别进行训练。因此,模型在 freezing 上训练时,不会受到 windy 上训练的影响。

或者,您也可以创建温度和风速的特征交叉项。此合成特征将具有以下 12 个可能值:

  • freezing-still
  • freezing-light
  • freezing-windy
  • chilly-still
  • chilly-light
  • chilly-windy
  • temperate-still
  • temperate-light
  • temperate-windy
  • warm-still
  • warm-light
  • warm-windy

得益于特征交叉,模型可以学习 freezing-windy 天和 freezing-still 天之间的情绪差异。

如果您要根据两个各有许多不同分桶的特征创建一个合成特征,那么生成的特征交叉将有大量可能的组合。例如,如果一个特征有 1,000 个存储分区,另一个特征有 2,000 个存储分区,则生成的特征交叉有 2,000,000 个存储分区。

从形式上讲,交叉是笛卡尔积

特征交叉主要用于线性模型,很少用于神经网络。

如需了解详情,请参阅机器学习速成课程中的分类数据:特征交叉

特征工程

#fundamentals
#TensorFlow

一个涉及以下步骤的过程:

  1. 确定哪些特征可能在训练模型方面非常有用。
  2. 将数据集中的原始数据转换为这些特征的高效版本。

例如,您可能会确定 temperature 可能是一项实用的功能。然后,您可以尝试使用分桶来优化模型可以从不同 temperature 范围中学习的内容。

特征工程有时称为特征提取特征化

如需了解详情,请参阅机器学习速成课程中的数值数据:模型如何使用特征向量提取数据

特征提取

一个多含义术语,具有下列两种含义之一:

特征重要性

#df

变量重要性的含义相同。

特征集

#fundamentals

训练机器学习模型时采用的一组特征。例如,邮政编码、房产面积和房产状况可能构成预测房价的模型的简单特征集。

特征规范

#TensorFlow

介绍从 tf.Example 协议缓冲区中提取特征数据所需的信息。由于 tf.Example 协议缓冲区只是数据的容器,因此您必须指定以下内容:

  • 要提取的数据(即地图项的键)
  • 数据类型(例如 float 或 int)
  • 长度(固定或可变)

特征向量

#fundamentals

构成示例特征值数组。特征向量在训练推理期间输入。例如,具有两个离散特征的模型的特征向量可能是:

[0.92, 0.56]

四个层:一个输入层、两个隐藏层和一个输出层。
          输入层包含两个节点,一个节点的值为 0.92,另一个节点的值为 0.56。

每个示例都会为特征向量提供不同的值,因此下一个示例的特征向量可能如下所示:

[0.73, 0.49]

特征工程用于确定如何在特征向量中表示特征。例如,具有五个可能值的二元分类特征可以使用独热编码表示。在本例中,特定示例的特征向量部分将由四个零和第三个位置上的单个 1.0 组成,如下所示:

[0.0, 0.0, 1.0, 0.0, 0.0]

再举一例,假设您的模型由三个特征组成:

  • 一个二元分类特征,具有 5 个可能值,采用独热编码表示;例如:[0.0, 1.0, 0.0, 0.0, 0.0]
  • 另一个二元分类特征,具有 三个可能值,使用 One-Hot 编码表示;例如:[0.0, 0.0, 1.0]
  • 浮点地图项;例如:8.3

在这种情况下,每个示例的特征向量将由 9 个值表示。假设前面的列表中的示例值,特征向量将为:

0.0
1.0
0.0
0.0
0.0
0.0
0.0
1.0
8.3

如需了解详情,请参阅机器学习速成课程中的数值数据:模型如何使用特征向量提取数据

特征化

从输入源(例如文档或视频)中提取特征,并将这些特征映射到特征向量的过程。

有些机器学习专家将特征化用作特征工程特征提取的同义词。

联合学习

是一种分布式机器学习方法,使用驻留在智能手机等设备上的分散示例训练机器学习模型。在联邦学习中,部分设备会从中央协调服务器下载当前模型。设备会使用存储在设备上的示例来改进模型。然后,设备会将模型改进(但不包括训练示例)上传到协调服务器,在那里,这些改进会与其他更新汇总在一起,以生成改进后的全局模型。聚合后,设备计算的模型更新不再需要,可以丢弃。

由于训练示例永远不会上传,因此联邦学习遵循“有针对性地收集数据”和“数据最小化”的隐私保护原则。

如需详细了解联合学习,请参阅此教程

反馈环

#fundamentals

在机器学习中,模型的预测会影响同一模型或其他模型的训练数据的情况。例如,电影推荐模型会影响用户观看的电影,而这会反过来影响后续的电影推荐模型。

如需了解详情,请参阅机器学习速成课程中的生产 ML 系统:需要考虑的问题

前馈神经网络 (FFN)

没有循环或递归连接的神经网络。例如,传统深度神经网络属于前馈神经网络。与循环的循环神经网络相对。

少样本学习

一种机器学习方法,通常用于对象分类,旨在仅使用少量训练示例训练出有效的分类器。

另请参阅单样本学习零样本学习

少样本提示

#language
#generativeAI

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

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

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

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

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

小提琴

#language

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

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

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

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

微调

#language
#image
#generativeAI

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

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

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

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

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

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

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

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

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

亞麻色

#language

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

Flaxformer

#language

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

forget 门

#seq

长期短期记忆细胞中用于调节信息在细胞中流动的那部分。忘记门通过决定要从单元格状态中舍弃哪些信息来维护上下文。

成功比例

#generativeAI

用于评估机器学习模型的生成的文本的指标。 成功率是“成功”的生成文本输出数除以生成文本输出总数。例如,如果大语言模型生成了 10 个代码块,其中 5 个成功,则成功率为 50%。

虽然成功率在统计学中广泛适用,但在机器学习中,此指标主要用于衡量可验证的任务(例如代码生成或数学问题)。

完整 softmax

softmax 同义。

候选采样相对。

如需了解详情,请参阅机器学习速成课程中的神经网络:多类别分类

全连接层

隐藏层,其中每个节点都连接到后续隐藏层中的每个节点。

全连接层也称为密集层

函数转换

一个函数,接受一个函数作为输入,并返回一个转换后的函数作为输出。JAX 使用函数转换。

G

GAN

生成对抗网络的缩写。

Gemini

#language
#image
#generativeAI

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

Gemini 模型

#language
#image
#generativeAI

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

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

泛化

#fundamentals

模型针对以前未见过的新数据做出正确预测的能力。可泛化的模型与过拟合模型相反。

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

泛化曲线

#fundamentals

训练损失验证损失迭代次数的变化情况的图表。

泛化曲线可以帮助您检测可能出现的过拟合。例如,以下泛化曲线表明出现过拟合,因为验证损失最终明显高于训练损失。

直角坐标图,其中 y 轴标记为“损失”,x 轴标记为“迭代次数”。系统会显示两个图。一个图表显示的是训练损失,另一个图表显示的是验证损失。
          这两条图表刚开始相似,但训练损失最终会下降,远低于验证损失。

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

广义线性模型

将基于高斯噪声最小二乘回归模型推广到基于其他类型噪声(例如泊松噪声或分类噪声)的其他类型模型。广义线性模型的示例包括:

可以通过凸优化找到广义线性模型的参数。

广义线性模型具有以下特性:

  • 最优的最小二乘回归模型的平均预测结果等于训练数据的平均标签。
  • 最优的逻辑回归模型预测的平均概率等于训练数据的平均标签。

广义线性模型的能力受其特征的限制。与深度模型不同,广义线性模型无法“学习新特征”。

生成的文本

#language
#generativeAI

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

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

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

生成对抗网络 (GAN)

用于创建新数据的系统,其中生成器负责创建数据,判别器负责确定创建的数据是否有效。

如需了解详情,请参阅“生成式对抗网络”课程

生成式 AI

#language
#image
#generativeAI

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

  • 复杂
  • 连贯
  • 原图

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

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

预测性机器学习相对。

生成模型

实际上是指执行以下任一操作的模型:

  • 从训练数据集创建(生成)新样本。 例如,用诗歌数据集进行训练后,生成模型可以创作诗歌。生成对抗网络生成器部分属于此类别。
  • 确定新样本来自训练集或通过创建训练集的机制创建的概率。例如,用包含英文句子的数据集进行训练后,生成模型可确定新输入是有效英文句子的概率。

从理论上讲,生成模型可以辨别数据集中样本或特定特征的分布情况。具体来说:

p(examples)

非监督式学习模型属于生成模型。

判别模型相对。

generator

生成对抗网络中的子系统,用于创建新的示例

判别模型相对。

基尼不纯度

#df

类似的指标。分屏器使用从基尼不纯度或熵派生的值来组合条件,以便对决策树进行分类。信息增益派生自熵。从基尼不纯度派生出来的指标没有普遍接受的等效术语;不过,这个未命名指标与信息增益一样重要。

Gini 杂质也称为 gini 索引,或简称 gini

黄金数据集

一组手动整理的数据,用于捕获标准答案。团队可以使用一个或多个黄金数据集来评估模型的质量。

某些黄金数据集捕获了标准答案的不同子网域。例如,用于图片分类的黄金数据集可能包含光照条件和图片分辨率。

黄金回复

#language
#generativeAI

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

2 + 2

理想的回答应该是:

4

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

#language

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

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

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

gradient

偏导数相对于所有自变量的向量。在机器学习中,梯度是模型函数偏导数的向量。梯度指向最高速上升的方向。

梯度累积

一种反向传播技术,仅在每个数据集周期(而不是每次迭代)更新一次参数。处理每个小批量后,梯度累积只会更新梯度的累计总和。然后,在处理该时期中的最后一个小批量后,系统最终会根据所有梯度变化的总和更新参数。

批量大小与可用于训练的内存量相比非常大时,梯度累积非常有用。当内存出现问题时,自然而然的做法是减小批处理大小。不过,在正常的反向传播中,减小批处理大小会增加参数更新的次数。通过梯度累积,模型可以避免内存问题,同时仍能高效训练。

梯度提升(决策)树 (GBT)

#df

一种决策森林,其中:

如需了解详情,请参阅“决策森林”课程中的梯度提升决策树

梯度提升

#df

一种训练算法,用于训练弱模型,以迭代改进强模型的质量(降低损失)。例如,弱模型可以是线性模型或小型决策树模型。强模型是之前训练的所有弱模型的总和。

在最简单的梯度提升形式中,每次迭代都会训练一个弱模型来预测强模型的损失梯度。然后,通过减去预测的梯度来更新强模型的输出,类似于梯度下降

$$F_{0} = 0$$ $$F_{i+1} = F_i - \xi f_i $$

其中:

  • $F_{0}$ 是初始强大模型。
  • $F_{i+1}$ 是下一个强大模型。
  • $F_{i}$ 是当前的强大模型。
  • $\xi$ 是一个介于 0.0 和 1.0 之间的值,称为收缩,类似于梯度下降中的学习率
  • $f_{i}$ 是训练用来预测 $F_{i}$ 的损失梯度的弱模型。

梯度提升的现代变体在计算中还会纳入损失函数的二阶导数 (Hessian)。

决策树通常用作梯度提升中的弱模型。请参阅梯度提升(决策)树

梯度裁剪

#seq

一种常用的机制,用于在使用梯度下降训练模型时人为限制(剪裁)梯度的最大值,以缓解梯度爆炸问题

梯度下降法

#fundamentals

一种用于最大限度降低损失的数学方法。梯度下降法以迭代方式调整权重偏差,逐渐找到最佳组合,从而将损失降至最低。

梯度下降比机器学习早得多。

如需了解详情,请参阅机器学习速成课程中的线性回归:梯度下降

图表

#TensorFlow

TensorFlow 中的一种计算规范。图中的节点表示操作。边缘具有方向,表示将某项操作的结果(一个Tensor)作为一个操作数传递给另一项操作。使用 TensorBoard 可视化图。

图执行

#TensorFlow

一种 TensorFlow 编程环境,在该环境中,图执行程序会先构造一个,然后执行该图的所有部分或某些部分。图执行是 TensorFlow 1.x 中的默认执行模式。

即刻执行相对。

贪婪政策

#rl

在强化学习中,一种始终选择预期回报最高的策略

标准答案关联性

模型的属性,其输出基于(“基于”)特定的来源材料。例如,假设您将一本完整的物理教科书作为输入(“上下文”)提供给大语言模型。然后,您向该大语言模型提问一个物理问题。如果模型的回答反映了该教科书中的信息,则该模型就基于该教科书。

请注意,基于事实的模型并不总是事实模型。例如,输入的物理教科书可能包含错误。

标准答案

#fundamentals

现实。

实际发生的情况。

例如,考虑一个二元分类模型,该模型用于预测大学一年级学生是否会在 6 年内毕业。此模型的标准答案是该学生是否实际在 6 年内毕业。

群体归因偏差

#fairness

假设某个人的真实情况适用于相应群体中的每个人。如果使用便利抽样收集数据,群体归因偏差的影响会加剧。在非代表性样本中,归因可能不会反映现实。

另请参阅群外同质性偏差群内偏差。此外,如需了解详情,请参阅机器学习速成课程中的公平性:偏差类型

H

幻觉

#language

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

哈希技术

机器学习中对分类数据进行分桶的机制,尤其适合以下情形:类别数量庞大,但实际出现在数据集中的类别数量相对较小。

例如,地球上约有 73,000 种树。您可以用 73,000 个单独的分类桶表示所有 73,000 种树中的每一种。或者,如果实际出现在数据集中的树只有 200 种,您可以进行哈希处理,将这些树种划分到约 500 个桶中。

一个存储分区可能包含多个树种。例如,哈希可能会将“猴面包树”和“红枫”这两个基因相异的树种放入同一个桶中。无论如何,哈希仍然是将大型分类集合映射到所选数量的桶的好方法。通过以确定的方式对值进行分组,哈希将具有大量可能值的分类特征变为更少数量的值。

如需了解详情,请参阅机器学习速成课程中的分类数据:词汇表和独热编码

启发词语

一种简单且可快速实现的问题解决方案。例如,“采用启发法,我们实现了 86% 准确率。当我们改为使用深度神经网络时,准确率上升到 98%。”

隐藏层

#fundamentals

神经网络中的一层,位于输入层(特征)和输出层(预测)之间。每个隐藏层都由一个或多个神经元组成。例如,以下神经网络包含两个隐藏层,第一个隐藏层包含三个神经元,第二个隐藏层包含两个神经元:

四层。第一个层是包含两个特征的输入层。第二层是包含三个神经元的隐藏层。第三层是包含两个神经元的隐藏层。第四层是输出层。每个特征包含三个边,每个边都指向第二层中的不同神经元。第二层中的每个神经元都包含两个边,每个边都指向第三层中的不同神经元。第三层中的每个神经元都包含一条边,每个边都指向输出层。

深度神经网络包含多个隐藏层。例如,上图是一个深度神经网络,因为该模型包含两个隐藏层。

如需了解详情,请参阅机器学习速成课程中的神经网络:节点和隐藏层

层次聚类

#clustering

一类聚类算法,用于创建聚类树。层次聚类非常适合分层数据,例如植物分类。层次聚类算法有两种类型:

  • 凝聚式层次聚类首先将每个样本分配到其自己的聚类,然后以迭代方式合并最近的聚类,以创建层次树。
  • 分裂式层次聚类首先将所有样本分组到一个聚类,然后以迭代方式将该聚类划分为一个层次树。

基于中心点的聚类相对。

如需了解详情,请参阅“聚类”课程中的聚类算法

上坡

一种算法,用于迭代改进(“向上攀登”)机器学习模型,直到模型停止改进(“到达山顶”)。该算法的一般形式如下:

  1. 构建起始模型。
  2. 通过对训练微调方式进行微调,创建新的候选模型。这可能需要使用略有不同的训练集或不同的超参数。
  3. 评估新的候选模型,然后执行以下操作之一:
    • 如果某个候选模型的效果优于起始模型,则该候选模型会成为新的起始模型。在这种情况下,请重复第 1、2 和 3 步。
    • 如果没有模型的效果优于起始模型,则表示已达到性能峰值,应停止迭代。

如需有关超参数调节的指导,请参阅深度学习调优手册。如需有关特征工程的指导,请参阅机器学习速成课程的数据模块。

合页损失函数

用于分类的一类损失函数,旨在找到与每个训练示例距离尽可能远的决策边界,从而使示例与边界之间的裕度最大化。核支持向量机使用合页损失函数(或相关函数,例如平方合页损失函数)。对于二元分类,hinge 损失函数的定义如下:

$$\text{loss} = \text{max}(0, 1 - (y * y'))$$

其中 y 是真实标签(-1 或 +1),y' 是分类器模型的原始输出:

$$y' = b + w_1x_1 + w_2x_2 + … w_nx_n$$

因此,将 hinge 损失与 (y * y') 的图形绘制出来,如下所示:

由两个相连的线段组成的直角坐标系图。第一个线段从 (-3, 4) 开始,到 (1, 0) 结束。第二条线段从 (1, 0) 开始,以 0 的斜率无限延伸。

历史偏差

#fairness

一种已经存在于现实世界中并已渗透到数据集中的偏见。这些偏见往往反映了现有的文化刻板印象、人口统计学差异以及对某些社会群体的偏见。

例如,假设有一个分类模型,用于预测贷款申请人是否会出现贷款违约,该模型是根据两个不同社区当地银行上世纪 80 年代的贷款违约历史数据训练得出的。如果社区 A 的过往申请人违约的可能性是社区 B 申请人的 6 倍,那么模型可能会学习到历史偏差,导致该模型不太可能批准社区 A 的贷款,即使导致该社区违约率较高的历史条件已不再相关。

如需了解详情,请参阅机器学习速成课程中的公平性:偏差类型

留出数据

训练期间故意不使用(“留出”)的样本验证数据集测试数据集都属于留出数据。留出数据有助于评估模型向训练时所用数据之外的数据进行泛化的能力。与基于训练数据集的损失相比,基于留出数据集的损失有助于更好地估算基于未见过的数据集的损失。

主机

#TensorFlow
#GoogleCloud

加速器芯片(GPU 或 TPU)上训练机器学习模型时,系统的以下部分会同时控制这两项:

  • 代码的整体流程。
  • 输入流水线的提取和转换。

主机通常在 CPU 上运行,而不是在加速器芯片上运行;设备在加速器芯片上操控张量

人工评估

#language
#generativeAI

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

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

人机协同 (HITL)

#generativeAI

一个定义较为宽泛的惯用语,可以理解为下列两种含义之一:

  • 一种政策,旨在以批判或怀疑的态度看待生成式 AI 的输出。 例如,撰写这本机器学习术语表的人类对大语言模型的功能感到惊叹,但也注意到大语言模型会犯错。
  • 一种策略或系统,用于确保用户帮助塑造、评估和优化模型的行为。通过人机协同,AI 可以同时受益于机器智能和人类智能。例如,在某个系统中,AI 生成代码,然后软件工程师进行审核,这是一个人参与的循环系统。

超参数

#fundamentals

您或超参数调优服务在连续运行模型训练作业期间调整的变量。例如,学习速率就是一种超参数。您可以在一次训练之前将学习率设置为 0.01。如果您确定 0.01 太高,则可以将学习率设为下一个训练时段的 0.003。

与之相反,参数是模型在训练期间学习的各种权重偏差

如需了解详情,请参阅机器学习速成课程中的线性回归:超参数

超平面

将空间分隔为两个子空间的边界。例如,线是二维中的超平面,而平面是三维中的超平面。在机器学习中,超平面更常被用作分隔高维空间的边界。核支持向量机利用超平面将正类别和负类别区分开来(通常是在极高维度空间中)。

I

i.i.d.

独立同分布的缩写。

图像识别

#image

对图像中的物体、图案或概念进行分类的过程。 图像识别也称为图像分类

如需了解详情,请参阅机器学习实践课程:图像分类

如需了解详情,请参阅机器学习实践课程:图像分类

不平衡数据集

分类不平衡的数据集的含义相同。

隐性偏差

#fairness

根据一个人的心智模式和记忆自动建立关联或做出假设。隐性偏见会影响以下方面:

  • 数据的收集和分类方式。
  • 设计和开发机器学习系统的方式。

例如,构建可识别婚礼照片的分类器时,工程师可能会将照片中的白色裙子用作一个特征。不过,白色裙子只在某些时代和某些文化中是一种婚礼习俗。

另请参阅确认偏差

插补

值插值的简写形式。

公平指标互不相容

#fairness

某些公平性概念互不兼容,无法同时满足。因此,没有任何单一的通用指标可用于量化所有 ML 问题的公平性。

虽然这可能令人沮丧,但公平指标互不相容并不意味着公平性方面的努力没有成效。相反,它建议必须根据特定机器学习问题的具体情况来定义公平性,以防止特定于其用例的伤害。

如需详细了解此主题,请参阅“On the (im)possibility of fairness”

情境学习

#language
#generativeAI

少样本提示的含义相同。

独立同分布 (i.i.d)

#fundamentals

从不变的分布中提取的数据,其中每个提取的值都不依赖于之前提取的值。独立同分布是机器学习的理想情况 - 一种实用的数学结构,但在现实世界中几乎从未发现过。例如,某个网页的访问者在短时间内的分布可能为 i.i.d.,即分布在该短时间内没有变化,且一位用户的访问行为通常与另一位用户的访问行为无关。不过,如果您扩大该时间范围,网页的访问者可能会出现季节性差异。

另请参阅非平稳性

个体公平

#fairness

一项公平性指标,用于检查类似的个人是否获得了类似的分类结果。例如,Brobdingnagian Academy 可能希望通过确保成绩和标准化考试成绩完全相同的两名学生获得入学机会的几率相同,来实现个人公平。

请注意,个体公平性完全取决于您如何定义“相似性”(在本例中,是指成绩和考试分数),如果您的相似性指标遗漏了重要信息(例如学生课程的严苛程度),则可能会引入新的公平性问题。

如需详细了解个体公平性,请参阅“通过认知实现公平性”

推理

#fundamentals

在机器学习中,推断是指通过将训练过的模型应用于无标签样本做出预测的过程。

在统计学中,“推断”的含义略有不同。 如需了解详情,请参阅 维基百科中有关统计学推断的文章

如需了解推理在监督式学习系统中的作用,请参阅“机器学习简介”课程中的监督式学习部分。

推理路径

#df

决策树中,在推理期间,特定示例到其他条件的路径,以结尾。例如,在以下决策树中,较粗的箭头显示了具有以下特征值的示例的推理路径:

  • x = 7
  • y = 12
  • z = -3

下图中的推理路径会经过三个条件,然后到达叶子节点 (Zeta)。

一个由四个条件和五个叶子组成的决策树。
          根条件为 (x > 0)。由于答案为“是”,推理路径会从根节点前往下一个条件 (y > 0)。
          由于答案为“是”,推理路径会转到下一个条件 (z > 0)。由于答案为“否”,推理路径会前往其终端节点,即叶节点 (Zeta)。

三个粗箭头表示推理路径。

如需了解详情,请参阅“决策森林”课程中的决策树部分。

信息增益

#df

决策森林中,节点的与其子节点熵的加权(按示例数)和之间的差值。节点的熵是该节点中示例的熵。

例如,请考虑以下熵值:

  • 父节点的熵 = 0.6
  • 具有 16 个相关示例的一个子节点的熵 = 0.2
  • 另一个子节点的熵(24 个相关示例)= 0.1

因此,40% 的示例位于一个子节点中,60% 的示例位于另一个子节点中。因此:

  • 子节点的加权熵总和 = (0.4 * 0.2) + (0.6 * 0.1) = 0.14

因此,信息增益为:

  • 信息增益 = 父节点的熵 - 子节点的加权熵和
  • 信息增益 = 0.6 - 0.14 = 0.46

大多数分屏器都试图创建能最大限度提高信息增益的条件

群内偏差

#fairness

对自己所属的群组或特征表现出偏向。 如果测试人员或评分者由机器学习开发者的好友、家人或同事组成,那么群内偏差可能会导致产品测试或数据集无效。

群内偏差是一种群体归因偏差。另请参阅群外同质性偏差

如需了解详情,请参阅机器学习速成课程中的公平性:偏差类型

输入生成器

将数据加载到神经网络中的机制。

输入生成器可被视为一个组件,负责将原始数据处理为张量,这些张量会被迭代以生成用于训练、评估和推理的批处理。

输入层

#fundamentals

神经网络,用于存储特征向量。也就是说,输入层会提供示例,以便进行训练推理。例如,以下神经网络中的输入层由两个特征组成:

四个层:输入层、两个隐藏层和输出层。

在组合中的条件

#df

决策树中,用于测试一组项中是否存在某个项的条件。例如,以下是集合内条件:

  house-style in [tudor, colonial, cape]

在推理过程中,如果住宅风格特征的值为 tudorcolonialcape,则此条件的计算结果为“是”。如果“house-style”地图项的值为其他值(例如 ranch),则此条件的计算结果为“否”。

与测试独热编码特征的条件相比,集合内条件通常会生成更高效的决策树。

实例

示例的含义相同。

指令调优

#generativeAI

一种微调形式,可提高生成式 AI 模型遵循指令的能力。指令调优涉及对一系列指令提示训练模型,通常涵盖各种任务。然后,经过指令调整的模型往往会针对各种任务生成对零次学习提示的实用回答。

与以下内容进行比较和对比:

可解释性

#fundamentals

能够用人类能够理解的方式向人类解释或呈现机器学习模型的推理过程。

例如,大多数线性回归模型的可解释性都很高。(您只需查看每个特征的训练权重即可。)决策森林还具有高度可解释性。不过,某些模型需要进行复杂的可视化处理,才能变得可解释。

您可以使用 Learning Interpretability Tool (LIT) 来解释机器学习模型。

评分者间一致性信度

衡量人工标注者在执行任务时达成一致意见的频率。 如果评分者意见不一致,则可能需要改进任务说明。有时也称为注释者间一致性信度评分者间可靠性信度。另请参阅 Cohen's kappa(最热门的评分者间一致性信度衡量指标之一)。

如需了解详情,请参阅机器学习速成课程中的分类数据:常见问题

交并比 (IoU)

#image

两个集合的交集除以它们的合集。在机器学习图片检测任务中,IoU 用于衡量模型预测的边界框相对于标准答案边界框的准确性。在这种情况下,两个框的 IoU 是重叠面积与总面积的比率,其值介于 0(预测边界框与标准答案边界框不重叠)到 1(预测边界框与标准答案边界框具有完全相同的坐标)之间。

例如,在下图中:

  • 预测的边界框(即模型预测画作中床头柜所在位置的坐标)用紫色勾勒出来。
  • 标准答案边界框(限定画作中夜桌实际位置的坐标)用绿色勾勒。

梵高画作《文森特在阿尔勒的卧室》,床边床头柜周围有两个不同的边界框。标准答案边界框(以绿色显示)完美地包含了床头柜。预测的边界框(紫色)向下偏移了 50%,并位于真实边界框的右侧;它包含了床头柜的右下角四分之一,但漏掉了床头柜的其余部分。

在这里,预测边界框与标准答案边界框的交集(左下)为 1,预测边界框与标准答案边界框的并集(右下)为 7,因此 IoU 为 \(\frac{1}{7}\)。

与上图相同的图片,但每个边界框都被划分为四个象限。由于标准答案边界框的右下象限与预测边界框的左上象限相互重叠,因此共有七个象限。此重叠部分(用绿色突出显示)表示相交区域,面积为 1。 与上图相同的图片,但每个边界框都被划分为四个象限。由于标准答案边界框的右下象限与预测边界框的左上象限相互重叠,因此共有七个象限。
          由这两个边界框(用绿色突出显示)围成的整个内部区域表示并集,面积为 7。

IoU

并交比的缩写。

项矩阵

#recsystems

推荐系统中,由矩阵分解生成的嵌入向量矩阵,其中包含有关每个的潜在信号。项矩阵的每一行都包含所有项的单个潜在特征的值。以影片推荐系统为例。项矩阵中的每一列表示一部电影。潜在信号可能表示类型,也可能是更难以解读的信号,其中涉及类型、明星、影片年代或其他因素之间的复杂互动关系。

项矩阵与要进行分解的目标矩阵具有相同的列数。例如,假设某个影片推荐系统要评估 10,000 部影片,则项矩阵会有 10,000 个列。

项目

#recsystems

推荐系统中系统推荐的实体。例如,视频是音像店推荐的推荐项,而书籍是书店推荐的推荐项。

迭代

#fundamentals

训练期间对模型参数(即模型的权重偏差)进行一次更新。批处理大小决定了模型在单次迭代中处理的示例数量。例如,如果批量大小为 20,则模型会先处理 20 个示例,然后再调整参数。

训练神经网络时,单次迭代涉及以下两个传递:

  1. 向前传递,用于评估单个批次的损失。
  2. 向后传递(反向传播),以根据损失和学习速率调整模型的参数。

J

JAX

一个数组计算库,将 XLA(加速线性代数) 和自动微分集成在一起,以实现高性能数值计算。JAX 提供了一个简单而强大的 API,可用于使用可组合转换编写加速的数值代码。JAX 提供以下功能:

  • grad(自动微分)
  • jit(即时编译)
  • vmap(自动向量化或批处理)
  • pmap(并行化)

JAX 是一种用于表达和组合数值代码转换的语言,类似于 Python 的 NumPy 库,但范围更广。(事实上,JAX 下的 .numpy 库在功能上与 Python NumPy 库等效,但完全重写。)

JAX 特别适合通过将模型和数据转换为适合在 GPU 和 TPU 加速器芯片之间实现并行的形式,从而加快许多机器学习任务的速度。

FlaxOptaxPax 和许多其他库都是基于 JAX 基础架构构建的。

K

Keras

一种热门的 Python 机器学习 API。 Keras 能够在多种深度学习框架上运行,其中包括 TensorFlow(在该框架上,Keras 作为 tf.keras 提供)。

核支持向量机 (KSVM)

一种分类算法,旨在通过将输入数据向量映射到更高维度的空间,最大限度地扩大正类负类之间的裕度。以某个输入数据集包含一百个特征的分类问题为例。为了最大化正类别和负类别之间的裕度,核支持向量机可以在内部将这些特征映射到百万维度的空间。核支持向量机使用合页损失函数

关键点

#image

图片中特定地图项的坐标。例如,对于用于区分花种的图片识别模型,关键点可能是每个花瓣的中心、花茎、花药等。

K 折交叉验证

一种用于预测模型对新数据的泛化能力的算法。k 折法中的 k 是指您将数据集的示例划分为等分组的数量;也就是说,您将模型训练和测试 k 次。对于每轮训练和测试,一个不同的组是测试集,所有其余组都成为训练集。经过 k 轮训练和测试后,您可以计算所选测试指标的均值和标准差。

例如,假设您的数据集包含 120 个示例。假设您决定将 k 设置为 4。因此,在对示例进行洗牌后,您需要将数据集划分为四个包含 30 个示例的等分组,并进行四轮训练和测试:

一个数据集被拆分为四个大小相等的示例组。在第 1 轮中,前 3 组用于训练,最后一组用于测试。在第 2 轮中,前两个组和最后一个组用于训练,第三个组用于测试。在第 3 轮中,第一个组和最后两个组用于训练,第二个组用于测试。
          在第 4 轮中,第一个组用于测试,最后三个组用于训练。

例如,对于线性回归模型,均方误差 (MSE) 可能是最有意义的指标。因此,您将找到四轮测试的 MSE 的平均值和标准差。

k-means

#clustering

一种热门的聚类算法,用于对非监督式学习中的样本进行分组。k-means 算法基本上会执行以下操作:

  • 以迭代方式确定最佳的 k 中心点(称为形心)。
  • 将每个样本分配到最近的形心。与同一个形心距离最近的样本属于同一个组。

k-means 算法会挑选形心位置,以最大限度地减小每个样本与其最接近形心之间的距离的累积平方。

例如,请考虑以下狗的高度与宽度图表:

包含数十个数据点的直角坐标图。

如果 k=3,k-means 算法将确定三个中心点。每个示例都会分配给其最近的质心,从而产生三个组:

与上图相同的笛卡尔图,但添加了三个质心。
          之前的数据点会聚类到三个不同的组中,每个组都代表最接近特定质心的那些数据点。

假设某制造商想要确定小型、中型和大型狗狗毛衣的理想尺寸。这三个重心确定了该群组中每只狗的平均高度和平均宽度。因此,制造商应该根据这三个质心点确定毛衣尺码。请注意,集群的重心通常不是集群中的示例。

上图显示了仅包含两个特征(高度和宽度)的示例的 K 均值。请注意,k-means 可以对许多特征中的示例进行分组。

k-median

#clustering

k-means 紧密相关的聚类算法。两者的实际区别如下:

  • 对于 k-means,确定形心的方法是,最大限度地减小候选形心与它的每个样本之间的距离平方和。
  • 对于 k-median,确定形心的方法是,最大限度地减小候选形心与它的每个样本之间的距离总和。

请注意,距离的定义也有所不同:

  • k-means 采用从形心到样本的欧几里得距离。(在二维空间中,欧几里得距离即使用勾股定理计算斜边。)例如,(2,2) 与 (5,-2) 之间的 k-means 距离为:
$$ {\text{Euclidean distance}} = {\sqrt {(2-5)^2 + (2--2)^2}} = 5 $$
  • k-median 采用从形心到样本的 曼哈顿距离。这个距离是每个维度中绝对差值的总和。例如,(2,2) 与 (5,-2) 之间的 k-median 距离为:
$$ {\text{Manhattan distance}} = \lvert 2-5 \rvert + \lvert 2--2 \rvert = 7 $$

L

L0 正则化

#fundamentals

一种正则化,用于惩罚模型中非零权重总数。例如,权重为 11 个的模型会比权重为 10 个的类似模型受到更严厉的惩罚。

L0 正则化有时也称为 L0 范数正则化

L1 损失

#fundamentals

一种损失函数,用于计算实际标签值与模型预测的值之间的差异的绝对值。例如,下面是 5 个示例批量的 L1 损失的计算方式:

示例的实际值 模型的预测值 增量的绝对值
7 6 1
5 4 1
8 11 3
4 6 2
9 8 1
  8 = L1 损失

L2 损失相比,L1 损失对离群值的敏感性较弱。

平均绝对误差是每个示例的平均 L1 损失。

L1 正则化

#fundamentals

一种正则化,根据权重的绝对值的总和惩罚权重。L1 正则化有助于使不相关或几乎不相关的特征的权重正好为 0。权重为 0 的特征会从模型中被有效移除。

L2 正则化相对。

L2 损失

#fundamentals

一种损失函数,用于计算实际标签值与模型预测的值之间的差异的平方。例如,下面是 5 个示例批量的 L2 损失的计算方式:

示例的实际值 模型的预测值 增量的平方
7 6 1
5 4 1
8 11 9
4 6 4
9 8 1
  16 = L2 损失

由于取平方值,因此 L2 损失会放大离群值的影响。也就是说,与 L1 损失相比,L2 损失对错误预测的反应更强烈。例如,上一个批次的 L1 损失为 8,而不是 16。请注意,其中 16 个异常值中有 9 个是由单个异常值造成的。

回归模型通常使用 L2 损失作为损失函数。

均方误差是每个示例的平均 L2 损失。平方损失是 L2 损失的另一种说法。

L2 正则化

#fundamentals

一种正则化,根据权重的平方总和按比例惩罚权重。L2 正则化有助于使离群值权重(具有较大正值或较小负值)接近 0,但又不正好为 0。值非常接近 0 的特征会保留在模型中,但对模型的预测影响不大。

L2 正则化始终可以提高线性模型的泛化能力。

L1 正则化相对。

标签

#fundamentals

监督式机器学习中,标签指示例的“答案”或“结果”部分。

每个有标签样本都包含一个或多个特征和一个标签。例如,在垃圾邮件检测数据集中,标签可能是“垃圾邮件”或“非垃圾邮件”。在降雨数据集中,标签可能是特定时间段内的降雨量。

有标签样本

#fundamentals

包含一个或多个特征标签的示例。例如,下表显示了房屋估价模型中的三个标记示例,每个示例包含三个特征和一个标签:

卧室数量 浴室数量 房屋年龄 房价(标签)
3 2 15 345,000 美元
2 1 72 179,000 美元
4 2 34 392,000 美元

监督式机器学习中,模型基于带标签的示例进行训练,并针对无标签示例做出预测。

将有标签示例与无标签示例进行对比。

标签泄露

模型设计缺陷,其中特征标签的代理。例如,假设有一个二元分类模型,用于预测潜在客户是否会购买特定产品。假设模型的一个特征是名为 SpokeToCustomerAgent 的布尔值。假设客户只会在潜在客户实际购买产品分配客户服务人员。在训练期间,模型会快速学习 SpokeToCustomerAgent 与标签之间的关联。

lambda

#fundamentals

正则化率的含义相同。

Lambda 是一个过载术语。我们在此关注的是该术语在正则化中的定义。

LaMDA(对话应用语言模型)

#language

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

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

landmarks

#image

关键点的含义相同。

语言模型

#language

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

大语言模型

#language

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

潜在空间

#language

嵌入空间的含义相同。

图层

#fundamentals

神经网络中的一组神经元。三种常见的图层类型如下:

例如,下图显示了一个包含一个输入层、两个隐藏层和一个输出层的神经网络:

一个包含一个输入层、两个隐藏层和一个输出层的神经网络。输入层由两个特征组成。第一个隐藏层由三个神经元组成,第二个隐藏层由两个神经元组成。输出层由单个节点组成。

TensorFlow 中,也是 Python 函数,以张量和配置选项作为输入,然后生成其他张量作为输出。

Layers API (tf.layers)

#TensorFlow

一种 TensorFlow API,用于以层组合的方式构建深度神经网络。借助 Layers API,您可以构建不同类型的,例如:

  • tf.layers.Dense(用于全连接层)。
  • tf.layers.Conv2D(适用于卷积层)。

Layers API 遵循 Keras Layers API 规范。也就是说,除了前缀不同之外,Layers API 中的所有函数与 Keras Layers API 中的同类函数具有相同的名称和签名。

#df

决策树中的任何端点。与条件不同,叶子不会执行测试。而是叶子是可能的预测结果。叶节点也是推理路径的终端节点

例如,以下决策树包含三个叶子:

一个决策树,其中两个条件分别对应三个叶子节点。

Learning Interpretability Tool (LIT)

一种直观、交互式的模型理解和数据可视化工具。

您可以使用开源 LIT解释模型,或可视化文本、图片和表格数据。

学习速率

#fundamentals

一个浮点数,用于告知梯度下降法算法在每次迭代中调整权重和偏差的幅度。例如,学习速率为 0.3 时,调整权重和偏差的效果是学习速率为 0.1 时的 3 倍。

学习速率是一个重要的超参数。如果您将学习速率设置得过低,训练将会耗时过长。如果您将学习速率设置得过高,梯度下降法通常会难以达到收敛

最小二乘回归

一种通过最小化 L2 损失训练出的线性回归模型。

Levenshtein 距离

#language
#metric

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

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

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

线性

#fundamentals

两个或多个变量之间的关系,可以仅通过加法和乘法表示。

线性关系的图表是一条线。

非线性相对。

线性模型

#fundamentals

一种模型,它会为每个特征分配一个权重,以进行预测。(线性模型还会包含偏差。)相比之下,深度模型中特征与预测之间的关系通常是非线性的。

与深度模型相比,线性模型通常更易于训练,并且具有更高的可解释性。不过,深度模型可以学习特征之间的复杂关系。

线性回归逻辑回归是两种线性模型。

线性回归

#fundamentals

一种机器学习模型,具有以下两个特点:

  • 该模型是一种线性模型
  • 预测结果为浮点值。(这是线性回归回归部分。)

将线性回归与逻辑回归进行对比。此外,请将回归与分类进行对比。

LIT

Learning Interpretability Tool (LIT) 的缩写,以前称为 Language Interpretability Tool。

LLM

#language
#generativeAI

大语言模型的缩写。

LLM 评估 (eval)

#language
#generativeAI

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

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

逻辑回归

#fundamentals

一种可预测概率的回归模型。逻辑回归模型具有以下特点:

  • 标签为分类。“逻辑回归”一词通常是指二元逻辑回归,即用于计算具有两个可能值的标签的概率的模型。一种不太常见的变体是多元逻辑回归,用于计算具有两个以上可能值的标签的概率。
  • 训练期间的损失函数是对数损失函数。(对于可能值超过 2 个的标签,可以并行放置多个 Log Loss 单元。)
  • 该模型采用线性架构,而非深度神经网络。不过,本定义的其余部分也适用于预测分类标签概率的深度模型

例如,假设有一个逻辑回归模型,用于计算输入电子邮件是垃圾邮件还是非垃圾邮件的概率。假设在推理过程中,模型预测值为 0.72。因此,该模型估算的是:

  • 该电子邮件有 72% 的概率是垃圾邮件。
  • 该电子邮件不属于垃圾邮件的概率为 28%。

逻辑回归模型采用以下两步架构:

  1. 该模型通过对输入特征应用线性函数来生成原始预测 (y')。
  2. 该模型将原始预测结果用作 sigmoid 函数的输入,该函数会将原始预测结果转换为介于 0 到 1 之间的值(不包括 0 和 1)。

与任何回归模型一样,逻辑回归模型也会预测一个数字。不过,此数值通常会成为二元分类模型的一部分,如下所示:

  • 如果预测值大于分类阈值,二元分类模型会预测正类别。
  • 如果预测值低于分类阈值,二元分类模型会预测负类别。

logits

分类模型生成的原始(未归一化)预测的向量,通常会传递给归一化函数。如果模型要解决多类分类问题,logit 通常会成为 softmax 函数的输入。然后,Softmax 函数会生成一个(归一化)概率向量,其中每个可能类别对应一个值。

对数损失函数

#fundamentals

二元逻辑回归中使用的损失函数

对数几率

#fundamentals

某个事件的几率对数。

长短期记忆 (LSTM)

#seq

循环神经网络中的一种单元,用于处理手写识别、机器翻译和图片说明等应用中的数据序列。LSTM 通过根据 RNN 中先前单元的新输入和上下文,在内部存储状态中保留历史记录,从而解决因数据序列较长而导致的训练 RNN 时出现的梯度消失问题

LoRA

#language
#generativeAI

低秩自适应的缩写。

#fundamentals

监督式模型训练期间,用于衡量模型的预测与其标签之间的差距。

损失函数用于计算损失。

损失汇总器

一种机器学习算法,通过组合多个模型的预测并使用这些预测进行单个预测,从而改进模型效果。因此,损失汇总器可以降低预测的方差,并提高预测的准确性

损失曲线

#fundamentals

损失与训练迭代次数的关系图。下图显示了典型的损失曲线:

损失与训练迭代次数的笛卡尔图,显示初始迭代中的损失快速下降,然后逐渐下降,最后在最后的迭代中保持平缓的斜率。

损失函数曲线可以帮助您确定模型何时收敛过拟合

损失曲线可以绘制以下所有类型的损失:

另请参阅泛化曲线

损失函数

#fundamentals

训练或测试期间,用于计算批量示例的损失的数学函数。损失函数会针对做出准确预测的模型返回较低的损失,而针对做出不准确预测的模型返回较高的损失。

训练的目标通常是尽量降低损失函数返回的损失。

损失函数有很多种。为您要构建的模型类型选择合适的损失函数。例如:

损失曲面

权重与损失的图表。梯度下降法旨在找到损失曲面在局部最低点时的权重。

低秩自适应 (LoRA)

#language
#generativeAI

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

LoRA 具有以下优势:

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

LSTM

#seq

长短期记忆的缩写。

M

机器学习

#fundamentals

一种通过输入数据来训练模型的程序或系统。经过训练的模型可以根据与训练模型时所用分布相同的新数据(从未见过的数据)做出有用的预测。

机器学习还指与这些程序或系统相关的研究领域。

机器翻译

#generativeAI

使用软件(通常是机器学习模型)将文本从一种人类语言转换为另一种人类语言,例如从英语转换为日语。

多数类

#fundamentals

分类不平衡的数据集内更为常见的标签。例如,假设一个数据集内包含 99% 的负类标签和 1% 的正类标签,那么负类标签为多数类。

少数类相对。

马尔可夫决策过程 (MDP)

#rl

表示决策模型的图,其中假定马尔可夫性质成立,系统会根据决策(或操作)来浏览一系列状态。在强化学习中,这些状态之间的转换会返回数值奖励

马尔可夫属性

#rl

某些环境的属性,其中状态转换完全由当前状态和代理的操作中隐含的信息决定。

掩码语言模型

#language

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

帽子上的 ____ 回来了。

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

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

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

matplotlib

一个开源 Python 2D 绘制库。matplotlib 可以帮助您可视化机器学习的各个不同方面。

矩阵分解

#recsystems

在数学中,矩阵分解是一种寻找其点积近似目标矩阵的矩阵的机制。

推荐系统中,目标矩阵通常包含用户对的评分。例如,影片推荐系统的目标矩阵可能如下所示,其中正整数表示用户评分,0 表示用户未对该影片进行评分:

  卡萨布兰卡 《旧欢新宠:费城故事》 Black Panther 神奇女侠 《低俗小说》
用户 1 5.0 3.0 0.0 2.0 0.0
用户 2 4.0 0.0 0.0 1.0 5.0
用户 3 3.0 1.0 4.0 5.0 0.0

影片推荐系统旨在预测无评分影片的用户评分。例如,用户 1 会喜欢《黑豹》吗?

推荐系统采用的一种方法是,使用矩阵分解生成以下两个矩阵:

  • 用户矩阵,形状为用户数量 X 嵌入维度数量。
  • 项矩阵,形状为嵌入维度数量 X 项数量。

例如,对我们的三名用户和五个推荐项进行矩阵分解,会得到以下用户矩阵和项矩阵:

User Matrix                 Item Matrix

1.1   2.3           0.9   0.2   1.4    2.0   1.2
0.6   2.0           1.7   1.2   1.2   -0.1   2.1
2.5   0.5

用户矩阵和项矩阵的点积会得到一个推荐矩阵,其中不仅包含原始用户评分,还包含对每位用户未观看影片的预测。例如,假设用户 1 对《卡萨布兰卡》的评分为 5.0。Casablanca对应于推荐矩阵中该单元格的点积应该在 5.0 左右,计算方式如下:

(1.1 * 0.9) + (2.3 * 1.7) = 4.9

更重要的是,用户 1 会喜欢《黑豹》吗?计算第一行和第三列所对应的点积,得到的预测评分为 4.3:

(1.1 * 1.4) + (2.3 * 1.2) = 4.3

矩阵分解通常会生成用户矩阵和项矩阵,这两个矩阵合在一起明显比目标矩阵更为紧凑。

平均绝对误差 (MAE)

使用 L1 损失函数时,每个示例的平均损失。按如下方式计算平均绝对误差:

  1. 计算批处理的 L1 损失。
  2. 将 L1 损失除以批次中的样本数。

例如,请考虑以下五个示例批次的 L1 损失计算:

示例的实际值 模型的预测值 损失(实际值与预测值之间的差值)
7 6 1
5 4 1
8 11 3
4 6 2
9 8 1
  8 = L1 损失

因此,L1 损失为 8,示例数量为 5。因此,平均绝对误差为:

Mean Absolute Error = L1 loss / Number of Examples
Mean Absolute Error = 8/5 = 1.6

将平均绝对误差与均方误差均方根误差进行对比。

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

#language
#generativeAI

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

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

均方误差 (MSE)

使用 L2 损失时,每个示例的平均损失。按如下方式计算均方误差:

  1. 计算批处理的 L2 损失。
  2. 将 L2 损失除以批次中的示例数。

例如,考虑以下五个示例的批量损失:

实际值 模型的预测结果 损失 平方损失函数
7 6 1 1
5 4 1 1
8 11 3 9
4 6 2 4
9 8 1 1
16 = L2 损失

因此,均方误差为:

Mean Squared Error = L2 loss / Number of Examples
Mean Squared Error = 16/5 = 3.2

均方误差是一种常用的训练优化器,尤其是对于线性回归

将均方误差与平均绝对误差均方根误差进行对比。

TensorFlow Playground 使用均方误差来计算损失值。

网格

#TensorFlow
#GoogleCloud

在机器学习并行编程中,与将数据和模型分配给 TPU 芯片以及定义这些值的分片或复制方式相关的术语。

“网格”是一个多含义术语,可以理解为下列两种含义之一:

  • TPU 芯片的物理布局。
  • 用于将数据和模型映射到 TPU 芯片的抽象逻辑结构。

无论是哪种情况,网格都指定为形状

元学习

#language

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

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

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

指标

#TensorFlow

您关注的统计信息。

目标是机器学习系统尝试优化的指标。

Metrics API (tf.metrics)

用于评估模型的 TensorFlow API。例如,tf.metrics.accuracy 用于确定模型预测与标签匹配的频率。

小批次

#fundamentals

在一次迭代中处理的批量中的一小部分随机选取的样本。小批次的批次大小通常介于 10 到 1,000 个示例之间。

例如,假设整个训练集(完整批次)包含 1,000 个示例。假设您将每个小批量的批处理大小设置为 20。因此,在每次迭代中,系统都会对 1,000 个示例中的 20 个随机示例确定损失,然后相应地调整权重偏差

计算小批量数据集的损失比计算整个批次中所有示例的损失要高效得多。

小批次随机梯度下降法

一种使用小批次梯度下降法算法。也就是说,小批量随机梯度下降法会根据一小部分训练数据估算梯度。常规的随机梯度下降法使用大小为 1 的小批次。

最小最大损失

生成式对抗网络的损失函数,基于生成数据和真实数据分布之间的交叉熵

第一篇论文中使用了极小极大损失来描述生成式对抗网络。

少数类

#fundamentals

分类不平衡的数据集内不常见的标签。例如,假设一个数据集内包含 99% 的负类别标签和 1% 的正类别标签,那么正类别标签为少数类。

多数类相对。

专家组合

#language
#generativeAI

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

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

机器学习

机器学习的缩写。

MMIT

#language
#image
#generativeAI

多模态指令调优的缩写。

MNIST

#image

由 LeCun、Cortes 和 Burges 编译的公用数据集,其中包含 60,000 张图像,每张图像显示人类如何手动写下从 0 到 9 的特定数字。每张图像存储为 28x28 的整数数组,其中每个整数是 0 到 255(含边界值)之间的灰度值。

MNIST 是机器学习的标准数据集,通常用于测试新的机器学习方法。如需了解详情,请参阅 MNIST 手写数字数据库

modality

#language

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

模型

#fundamentals

一般来说,任何用于处理输入数据并返回输出的数学结构。换句话说,模型是系统进行预测所需的一组参数和结构。在监督式机器学习中,模型将示例作为输入,并推断出预测作为输出。在监督式机器学习中,模型略有不同。例如:

  • 线性回归模型由一组权重和一个偏差组成。
  • 神经网络模型由以下部分组成:
    • 一组隐藏层,每个层包含一个或多个神经元
    • 与每个神经元关联的权重和偏差。
  • 决策树模型由以下部分组成:
    • 树的形状;即条件和叶子之间的连接模式。
    • 条件和叶子。

您可以保存、恢复或复制模型。

非监督式机器学习也会生成模型,通常是指可将输入示例映射到最合适的聚类的函数。

模型能力

模型可以学习的问题的复杂性。模型可以学习的问题越复杂,模型的能力就越高。模型能力通常会随着模型参数数量的增加而增强。如需了解分类器容量的正式定义,请参阅 VC 维度

模型级联

#generativeAI

一种系统,用于为特定推理查询选择理想的模型

假设有一组模型,从非常大(参数很多)到更小(参数少得多)不等。与较小的模型相比,非常大的模型在推理时会消耗更多计算资源。不过,与较小的模型相比,非常大的模型通常可以推理出更复杂的请求。模型级联会确定推理查询的复杂性,然后选择合适的模型来执行推理。采用模型级联的主要动机是,通常选择较小的模型,仅在处理更复杂的查询时选择较大的模型,从而降低推理费用。

假设一个小型模型在手机上运行,而该模型的较大版本在远程服务器上运行。良好的模型级联可让较小的模型处理简单请求,仅调用远程模型来处理复杂请求,从而降低费用并缩短延迟时间。

另请参阅模型路由器

模型并行处理

#language

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

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

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

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

另请参阅数据并行

模型路由器

#generativeAI

用于确定模型级联推理的理想模型的算法。模型路由器本身通常也是一个机器学习模型,它会逐渐学习如何为给定输入选择最佳模型。不过,模型路由器有时可以是更简单的非机器学习算法。

模型训练

确定最佳模型的过程。

MOE

#language
#image
#generativeAI

专家组合的缩写。

造势

一种先进的梯度下降法,其中学习步骤不仅取决于当前步骤的导数,还取决于紧随其后的步骤的导数。动量涉及计算梯度随时间的对数加权移动平均值,类似于物理学中的动量。动量有时可以防止学习陷入局部极小值。

MT

#generativeAI

机器翻译的缩写。

多类别分类

#fundamentals

在监督式学习中,分类问题,其中数据集包含两个以上 类别标签。例如,鸢尾花数据集中的标签必须属于以下三个类别之一:

  • Iris setosa
  • 鸢尾属
  • Iris versicolor

使用 Iris 数据集训练的模型可对新示例预测鸢尾花类型,即执行多类别分类。

与之相反,仅区分两个类别的分类问题属于二元分类模型。例如,如果一个电子邮件模型要预测某封电子邮件是垃圾邮件还是非垃圾邮件,那么该模型为二元分类模型。

在聚类问题中,多类分类是指超过两个类别。

多类别逻辑回归

多类别分类问题中使用逻辑回归

多头自注意力

#language

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

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

多模态指令调优

#language

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

多模态模型

#language

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

多项分类

多类别分类的含义相同。

多项回归

多类别逻辑回归的含义相同。

多任务处理

一种机器学习技术,其中单个模型会经过训练来执行多项任务

多任务模型的创建方式是,使用适用于每项不同任务的数据进行训练。这样一来,模型便可学习如何在任务之间共享信息,从而更有效地学习。

针对多项任务训练的模型通常具有更强的泛化能力,并且在处理不同类型的数据时更为稳健。

NaN 陷阱

模型中的一个数字在训练期间变成 NaN,这会导致模型中的很多或所有其他数字最终也会变成 NaN。

NaN 是“非数字”的缩写。

自然语言处理

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

自然语言理解

#language

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

负类别

#fundamentals

二元分类中,一种类别称为正类别,另一种类别称为负类别。正类别是模型要测试的对象或事件,负类别则是另一种可能性。例如:

  • 在医学检查中,负类别可以是“非肿瘤”。
  • 在电子邮件分类器中,负类别可以是“非垃圾邮件”。

正类相对。

负抽样

候选采样的含义相同。

神经架构搜索 (NAS)

一种自动设计神经网络架构的技术。NAS 算法可以缩短训练神经网络所需的时间和资源。

NAS 通常使用:

  • 搜索空间,即一组可能的架构。
  • 适应度函数,用于衡量特定架构在执行给定任务时的表现。

NAS 算法通常从一小组可能的架构开始,随着算法对哪些架构有效的了解越来越深入,搜索空间也会逐渐扩大。适应度函数通常基于架构在训练集上的表现,并且算法通常使用强化学习技术进行训练。

事实证明,NAS 算法在为各种任务(包括图像分类、文本分类和机器翻译)寻找高性能架构方面非常有效。

输出表示

#fundamentals

包含至少一个隐藏层模型深度神经网络是一种包含多个隐藏层的神经网络。例如,下图显示了一个包含两个隐藏层的深度神经网络。

一个包含输入层、两个隐藏层和输出层的神经网络。

神经网络中的每个神经元都连接到下一层的所有节点。例如,在上图中,请注意第一个隐藏层中的三个神经元分别连接到第二个隐藏层中的两个神经元。

在计算机上实现的神经网络有时被称为人工神经网络,以将其与大脑和其他神经系统中的神经网络区分开来。

某些神经网络可以模拟不同特征与标签之间极其复杂的非线性关系。

另请参阅卷积神经网络循环神经网络

神经元

#fundamentals

在机器学习中,神经网络隐藏层中的独特单元。每个神经元都会执行以下两步操作:

  1. 计算输入值乘以其对应权重的加权和
  2. 将加权和作为输入传递给激活函数

第一个隐藏层中的神经元接受来自输入层中特征值的输入。第一个隐藏层之外的任何隐藏层中的神经元都会接受来自前一隐藏层中的神经元的输入。例如,第二个隐藏层中的神经元接受来自第一个隐藏层中的神经元的输入。

下图突出显示了两个神经元及其输入。

一个包含输入层、两个隐藏层和输出层的神经网络。其中突出显示了两个神经元:一个位于第一个隐藏层,另一个位于第二个隐藏层。第一个隐藏层中突出显示的神经元会从输入层中的两个特征接收输入。第二个隐藏层中突出显示的神经元会接收来自第一个隐藏层中的三个神经元中的每一个的输入。

神经网络中的神经元模仿大脑和神经系统其他部分中的神经元的行为。

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

自然语言理解的缩写。

节点(决策树)

#df

决策树中,任何条件

一个包含两个条件和三个叶子的决策树。

节点(神经网络)(node (neural network))

#fundamentals

隐藏层中的神经元

节点(TensorFlow 图)(node (TensorFlow graph))

#TensorFlow

TensorFlow 中的操作。

噪声

一般来说,噪声是指数据集中掩盖信号的所有内容。将噪声引入数据中的方式各种各样。例如:

  • 人工评分者在添加标签时出错。
  • 人类和仪器错误记录或忽略特征值。

非二元性别

#df

包含多于两种可能结果的条件。例如,以下非二元条件包含三个可能的结果:

一个条件(number_of_legs = ?),会导致三种可能的结果。其中一个结果(number_of_legs = 8)会导致名为 spider 的叶子。第二个结果(number_of_legs = 4)会导致名为 dog 的叶子。第三个结果(number_of_legs = 2)会导致一个名为 penguin 的叶子。

非线性

#fundamentals

两个或多个变量之间的关系,不能仅通过加法和乘法表示。线性关系可以表示为线条;非线性关系无法表示为线条。例如,假设有两个模型,每个模型都将一个特征与一个标签相关联。左侧的模型是线性的,右侧的模型是非线性的:

两个图表。其中一个图表是一条线,因此这是一种线性关系。
          另一个图表是曲线,因此这是一种非线性关系。

无反应偏差

#fairness

请参阅选择性偏差

非平稳性

#fundamentals

值会随一个或多个维度(通常是时间)而变化的特征。例如,请考虑以下非平稳示例:

  • 特定商店销售的泳衣数量会随季节而变化。
  • 特定地区收获的特定水果的数量在一年中的大部分时间为零,但在短时间内会大量收获。
  • 由于气候变化,年平均温度正在发生变化。

平稳性相对。

没有唯一正确答案 (NORA)

#language
#generativeAI

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

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

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

NORA

#language
#generativeAI

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

标准化

#fundamentals

广义而言,将变量的实际值范围转换为标准值范围的过程,例如:

  • -1 到 +1
  • 0 至 1
  • Z 得分(大致介于 -3 到 +3 之间)

例如,假设某个特征的实际值范围为 800 到 2,400。在特征工程过程中,您可以将实际值归一化为标准范围,例如 -1 到 +1。

标准化是特征工程中的一项常见任务。当特征矢量中的每个数值特征大致具有相同的范围时,模型通常会更快地训练(并生成更准确的预测结果)。

如需了解详情,请参阅机器学习速成课程的“处理数值数据”模块。另请参阅Z 分统计量标准化

新颖性检测

确定新(新颖)示例是否来自与训练集相同的分布的过程。换句话说,在对训练集中的数据进行训练后,新颖性检测会确定示例(在推理期间或在额外训练期间)是否为离群值

离群值检测相对。

数值数据

#fundamentals

用整数或实数表示的特征。 例如,房屋估价模型可能会将房屋面积(以平方英尺或平方米为单位)表示为数值数据。将特征表示为数值数据表示特征的值与标签之间存在数学关系。也就是说,房子的面积可能与房子的价值存在某种数学关系。

并非所有整数数据都应表示为数值数据。例如,世界某些地方的邮政编码是整数;不过,整数邮政编码不应在模型中表示为数值数据。这是因为邮政编码 20000 的效果并非是邮政编码 10000 的两倍(或一半)。此外,虽然不同的邮政编码确实与不同的房地产价值相关,但我们不能假定邮政编码为 20000 的房地产价值是邮政编码为 10000 的房地产价值的两倍。邮政编码应表示成分类数据

数值特征有时称为连续特征

NumPy

一个 开源数学库,在 Python 中提供高效的数组操作。Pandas 是基于 NumPy 构建的。

O

目标

算法尝试优化的指标。

目标函数

模型旨在优化的数学公式或指标。 例如,线性回归的目标函数通常为均方误差。因此,在训练线性回归模型时,训练目标是尽量降低均方误差。

在某些情况下,目标是最大化目标函数。例如,如果目标函数是准确性,则目标是最大限度地提高准确性。

另请参阅损失

斜视

#df

决策树中,涉及多个特征条件。例如,如果“height”和“width”都是特征,则以下是斜向条件:

  height > width

与轴对齐的条件相对。

离线

#fundamentals

静态的含义相同。

离线推理

#fundamentals

模型生成一批预测,然后缓存(保存)这些预测的过程。然后,应用可以从缓存中访问推理出的预测结果,而无需重新运行模型。

例如,假设有一个模型每 4 小时生成一次本地天气预报(预测)。每次运行模型后,系统都会缓存所有本地天气预报。天气应用会从缓存中检索预报。

离线推理也称为静态推理

在线推理相对。

独热编码

#fundamentals

将分类数据表示为矢量,其中:

  • 一个元素设置为 1。
  • 所有其他元素均设为 0。

独热编码常用于表示拥有有限个可能值的字符串或标识符。例如,假设某个名为 Scandinavia 的分类特征有五个可能值:

  • “Denmark”
  • “Sweden”
  • “Norway”
  • “芬兰”
  • “冰岛”

热编码可以将这五个值分别表示为:

country 向量
“Denmark” 1 0 0 0 0
“Sweden” 0 1 0 0 0
“Norway” 0 0 1 0 0
“芬兰” 0 0 0 1 0
“冰岛” 0 0 0 0 1

得益于独热编码,模型可以根据这五个国家/地区分别学习不同的关联。

将特征表示为数值数据是独热编码的替代方案。很遗憾,以数字表示斯堪地纳维亚国家/地区不是一个好主意。例如,请考虑以下数字表示法:

  • “Denmark”为 0
  • “瑞典”为 1
  • “挪威”为 2
  • “芬兰”为 3
  • “冰岛”为 4

使用数字编码时,模型会以数学方式解读原始数字,并尝试根据这些数字进行训练。不过,冰岛的某些数据实际上并非是挪威的两倍(或一半),因此该模型会得出一些奇怪的结论。

单样本学习

一种机器学习方法,通常用于对象分类,旨在从单个训练示例中学习有效的分类器。

另请参阅少样本学习零样本学习

单样本提示

#language
#generativeAI

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

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

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

一对多

#fundamentals

假设某个分类问题有 N 个类别,解决方案将包含 N 个单独的二元分类器 - 一个二元分类器对应一种可能的结果。例如,假设有一个模型会将示例分类为动物、蔬菜或矿物,一对多解决方案将提供以下三个单独的二元分类器:

  • 动物与非动物
  • 蔬菜与非蔬菜
  • 矿物与非矿物

在线

#fundamentals

动态的含义相同。

在线推理

#fundamentals

根据需求生成预测。例如,假设某个应用将输入传递给模型,并发出预测请求。使用在线推理的系统会通过运行模型(并将预测结果返回给应用)来响应请求。

离线推理相对。

操作 (op)

#TensorFlow

在 TensorFlow 中,任何创建、操纵或销毁Tensor的过程都属于操作。例如,矩阵乘法是一种将两个张量作为输入并生成一个张量作为输出的操作。

Optax

适用于 JAX 的梯度处理和优化库。 Optax 提供了可通过自定义方式重新组合以优化参数化模型(例如深度神经网络)的构建块,从而为研究工作提供便利。其他目标包括:

  • 提供可读、经过充分测试且高效的核心组件实现。
  • 通过允许将低级组件组合到自定义优化器(或其他梯度处理组件)中,提高工作效率。
  • 让所有人都能轻松贡献自己的想法,从而加快新想法的采用速度。

optimizer

梯度下降法的一种具体实现。常用优化器包括:

  • AdaGrad,表示 ADAptive GRADient descent。
  • Adam,代表 ADAptive with Momentum。

群外同质性偏差

#fairness

在比较态度、价值观、性格特质和其他特征时,倾向于认为群外成员之间比群内成员更为相似。群内成员是指您经常与之互动的人员;群外成员是指您不经常与之互动的人员。如果您通过让参与者提供有关群外成员的特性来创建数据集,相比参与者列出的群内成员的特性,群外成员的这些特性可能不太细微且更加刻板。

例如,小人国居民可以详细描述其他小人国居民的房屋,指出建筑风格、窗户、门和大小之间的细微差异。但是,同样的小人国居民可能直接声称大人国居民住的房屋完全一样。

群外同质性偏差是一种群体归因偏差

另请参阅群内偏差

离群值检测

训练集中识别离群值的过程。

新颖点检测相对。

离群数据

与大多数其他值相差甚远的值。在机器学习中,以下任何情况都属于离群值:

  • 值比平均值高大约 3 个标准偏差的输入数据。
  • 绝对值很高的权重
  • 与实际值相差很大的预测值。

例如,假设 widget-price 是某个模型的特征。假设均值 widget-price 为 7 欧元,标准差为 1 欧元。因此,如果示例的 widget-price 为 12 欧元或 2 欧元,则会被视为离群值,因为这两个价格都与均值相差 5 个标准差。

离群值通常是由拼写错误或其他输入错误造成的。在其他情况下,离群值并非错误;毕竟,离平均值相差 5 个标准差的值虽然很少见,但并非不可能。

离群值常常会导致模型训练出现问题。剪裁是管理离群值的一种方法。

袋外评估 (OOB 评估)

#df

一种机制,用于通过对每个决策树示例在该决策树的训练期间使用)进行测试来评估决策森林的质量。例如,在下图中,请注意系统会使用大约三分之二的示例训练每个决策树,然后使用剩余三分之一的示例进行评估。

由三个决策树组成的决策森林。
          一个决策树使用三分之二的示例进行训练,然后使用剩余三分之一的示例进行 OOB 评估。
          第二个决策树使用与前一个决策树不同的三分之二示例进行训练,然后使用与前一个决策树不同的三分之一示例进行 OOB 评估。

离群值评估是对交叉验证机制的计算高效且保守的近似值。在交叉验证中,每个交叉验证轮都会训练一个模型(例如,在 10 折交叉验证中,会训练 10 个模型)。使用 OOB 评估时,系统会训练单个模型。由于抽样法会在训练期间从每个树中保留一些数据,因此 OOB 评估可以使用这些数据来近似于交叉验证。

输出层

#fundamentals

神经网络的“最终”层。输出层包含预测结果。

下图显示了一个小型深度神经网络,其中包含一个输入层、两个隐藏层和一个输出层:

一个包含一个输入层、两个隐藏层和一个输出层的神经网络。输入层由两个特征组成。第一个隐藏层由三个神经元组成,第二个隐藏层由两个神经元组成。输出层由单个节点组成。

过拟合

#fundamentals

创建的模型训练数据过于匹配,以致于模型无法根据新数据做出正确的预测。

正则化可以减少过拟合。在庞大且多样化的训练集上进行训练也可以减少过拟合。

过采样

分类不平衡的数据集中重复使用少数类示例,以创建更平衡的训练集

例如,考虑一个二元分类问题,其中多数类与少数类的比例为 5,000:1。如果数据集包含 100 万个示例,则少数类仅包含约 200 个示例,这可能过少,无法进行有效的训练。为了克服这一缺点,您可以多次过采样(重复使用)这 200 个示例,从而可能获得足够的示例来进行有用的训练。

在过采样时,您需要注意过度过拟合

抽样不足相对。

P

已打包的数据

一种更高效地存储数据的方法。

压缩数据可以使用压缩格式存储数据,也可以使用其他方式存储数据,以便更高效地访问数据。压缩数据可最大限度地减少访问数据所需的内存和计算量,从而加快训练速度并提高模型推理效率。

压缩数据通常与其他技术(例如数据增强正则化)搭配使用,以进一步提升模型的性能。

pandas

#fundamentals

基于 numpy 构建的面向列的数据分析 API。 许多机器学习框架(包括 TensorFlow)都支持将 Pandas 数据结构作为输入。如需了解详情,请参阅 Pandas 文档

参数

#fundamentals

模型在训练期间学习到的权重偏差。例如,在线性回归模型中,参数包括以下公式中的偏差 (b) 和所有权重 (w1w2 等):

$$y' = b + w_1x_1 + w_2x_2 + … w_nx_n$$

与之相反,超参数(或超参数调节服务)向模型提供的值。例如,学习速率就是一种超参数。

参数高效微调

#language
#generativeAI

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

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

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

参数服务器 (PS)

#TensorFlow

一种作业,负责在分布式环境中跟踪模型的参数

参数更新

在训练期间调整模型参数的操作,通常在单次梯度下降迭代内完成。

偏导数

在这种导数中,除一个变量外,所有其他变量都被视为常量。例如,f(x, y)x 的偏导数是将 f 视为仅与 x 相关的函数(即将 y 保持不变)的导数。f 对 x 的偏导数仅关注 x 如何变化,而忽略公式中的所有其他变量。

参与偏差

#fairness

与未回答偏差的含义相同。请参阅选择性偏差

分区策略

参数服务器间分割变量的算法。

在 k 处通过 (pass@k)

用于确定大语言模型生成的代码(例如 Python)质量的指标。更具体地说,在 k 个生成的代码块中,至少有一个代码块通过所有单元测试的可能性为“pass at k”。

大语言模型通常很难针对复杂的编程问题生成优质代码。软件工程师通过提示大语言模型为同一问题生成多个 (k) 解法来适应这一问题。然后,软件工程师会针对单元测试对每个解决方案进行测试。在 k 处通过的计算取决于单元测试的结果:

  • 如果一个或多个解决方案通过了单元测试,则 LLM 通过该代码生成挑战。
  • 如果所有解决方案都未通过单元测试,则 LLM 失败该代码生成挑战。

k 处通过的公式如下:

$$\text{pass at k} = \frac{\text{total number of passes}} {\text{total number of challenges}}$$

一般来说,k 值越高,k 分数越高;不过,k 值越高,就需要更多的大型语言模型和单元测试资源。

Pax

一种编程框架,专为训练大规模神经网络 模型而设计,这些模型规模如此之大,以至于跨多个 TPU 加速器芯片 切片Pod

Pax 基于 Flax 构建而成,而 Flax 基于 JAX 构建而成。

显示 Pax 在软件堆栈中的位置的示意图。
          Pax 基于 JAX 构建而成。Pax 本身由三个层组成。底部层包含 TensorStore 和 Flax。
          中间层包含 Optax 和 Flaxformer。顶层包含 Praxis 建模库。Fiddle 基于 Pax 构建而成。

感知机

一种系统(硬件或软件),该系统先获取一个或多个输入值,接着对这些输入的加权和运行函数,然后计算单个输出值。在机器学习中,该函数通常是非线性的,例如 ReLUsigmoidtanh。例如,以下感知机依赖 S 型函数来处理三个输入值:

$$f(x_1, x_2, x_3) = \text{sigmoid}(w_1 x_1 + w_2 x_2 + w_3 x_3)$$

在下图中,感知机先获取三个输入,每个输入本身会经过权重的修改,然后才进入感知机:

采用 3 个输入值的感知机,每个输入值与单独的权重相乘。感知机输出单个值。

感知器是神经网络中的神经元

performance

一个多含义术语,具有以下含义:

  • 在软件工程中的标准含义。即:软件的运行速度有多快(或有多高效)?
  • 在机器学习中的含义。在机器学习领域,性能旨在回答以下问题:模型的准确度有多高?即模型在预测方面的表现有多好?

排列变量重要性

#df

一种变量重要性,用于评估在对特征值进行排列后模型的预测误差增加情况。排列变量重要性是一个与模型无关的指标。

困惑度

一种衡量指标,用于衡量模型能够多好地完成任务。 例如,假设您的任务是读取用户在手机键盘上输入的字词的前几个字母,并提供可能的补全字词列表。此任务的困惑度 P 大致等于您需要提供的猜测次数,以便列表中包含用户尝试输入的实际字词。

困惑度与交叉熵的关系如下:

$$P= 2^{-\text{cross entropy}}$$

管道

围绕机器学习算法的基础架构。流水线包括收集数据、将数据放入训练数据文件、训练一个或多个模型,以及将模型导出到生产环境。

流水线

#language

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

另请参阅分阶段训练

pjit

一个 JAX 函数,用于拆分代码以跨多个加速器芯片运行。用户将函数传递给 pjit,后者会返回一个具有等效语义但已编译为在多个设备(例如 GPU 或 TPU 核心)上运行的 XLA 计算的函数。

借助 pjit,用户可以使用 SPMD 分区器对计算进行分片,而无需重写计算。

自 2023 年 3 月起,pjit 已与 jit 合并。如需了解详情,请参阅分布式数组和自动并行处理

PLM

#language
#generativeAI

预训练语言模型的缩写。

pmap

一个 JAX 函数,用于在多个底层硬件设备(CPU、GPU 或 TPU)上使用不同的输入值执行输入函数的副本。pmap 依赖于 SPMD

政策

#rl

在强化学习中,代理状态操作的概率映射。

池化

#image

将一个或多个由前面的卷积层创建的矩阵压缩为较小的矩阵。池化通常涉及取池化区域内的最大值或平均值。例如,假设我们有以下 3x3 矩阵:

3 x 3 矩阵 [[5,3,1], [8,2,5], [9,4,3]]。

池化运算与卷积运算类似:将矩阵分割为多个切片,然后按步长逐个运行卷积运算。例如,假设池化运算将卷积矩阵分割为 2x2 个切片,步长为 1x1。如下图所示,系统会执行四个池化操作。假设每个池化操作都会选择该 slice 中四个值中的最大值:

输入矩阵为 3x3,值为:[[5,3,1], [8,2,5], [9,4,3]]。
          输入矩阵的左上角 2x2 子矩阵为 [[5,3], [8,2]],因此左上角池化运算的结果为 8(即 5、3、8 和 2 中的最大值)。输入矩阵的右上角 2x2 子矩阵为 [[3,1], [2,5]],因此右上角池化运算的结果为 5。输入矩阵的左下角 2x2 子矩阵为 [[8,2], [9,4]],因此左下角池化运算的结果为 9。输入矩阵的右下角 2x2 子矩阵为 [[2,5], [4,3]],因此右下角池化运算的结果为 5。总而言之,池化运算会生成 2x2 矩阵 [[8,5], [9,5]]。

池化有助于在输入矩阵中实现平移不变性

用于视觉应用的池化更正式地称为空间池化。时间序列应用通常将池化称为时间池化。在非正式场合,池化通常称为抽样下采样

位置编码

#language

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

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

正类别

#fundamentals

您要测试的类。

例如,癌症模型中的正类别可以是“肿瘤”。 在电子邮件分类器中,正类别可以是“垃圾邮件”。

负类别相对。

后处理

#fairness
#fundamentals

在模型运行调整模型的输出。后处理可用于强制执行公平性约束条件,而无需修改模型本身。

例如,您可以通过设置分类阈值,对二元分类器应用后处理,以便通过检查某个属性的所有值的真正正例率是否相同,从而确保该属性的机会均等

后期训练的模型

#language
#image
#generativeAI

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

PR AUC(PR 曲线下面积)

插值精确率/召回率曲线下的面积,通过为不同分类阈值值绘制(召回率、精确率)点来获得。

Praxis

Pax 的核心高性能机器学习库。Praxis 通常称为“图层库”。

Praxis 不仅包含 Layer 类的定义,还包含其大多数支持组件,包括:

Praxis 提供了 Model 类的定义。

精确度

一种分类模型指标,可为您提供以下信息:

当模型预测正类别时,正确预测结果所占的百分比是多少?

公式如下:

$$\text{Precision} = \frac{\text{true positives}} {\text{true positives} + \text{false positives}}$$

其中:

  • 真正例是指模型正确预测了正类别。
  • 假正例是指模型错误地预测了正类别。

例如,假设某个模型做出了 200 次正例预测。在这 200 个正例预测中:

  • 其中 150 个是真正例。
  • 其中 50 个是假正例。

在此示例中:

$$\text{Precision} = \frac{\text{150}} {\text{150} + \text{50}} = 0.75$$

准确率召回率相对。

如需了解详情,请参阅分类:准确率、召回率、精确率和相关指标

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

#language

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

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

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

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

比较对象:

精确率与召回率曲线

在不同分类阈值下,精确率召回率的曲线。

预测

#fundamentals

模型的输出。例如:

  • 二元分类模型的预测结果是正类别或负类别。
  • 多类分类模型的预测结果是单个类别。
  • 线性回归模型的预测结果为数字。

预测偏差

一个值,表示数据集中预测的平均值与标签的平均值之间的距离。

请勿与机器学习模型中的偏差项道德和公平性偏差混淆。

预测性机器学习

任何标准(“传统”)机器学习系统。

预测性机器学习一词没有正式定义。 相反,该术语用于区分一类基于生成式 AI 的机器学习系统。

预测性一致性

#fairness

一种公平性指标,用于检查对于给定分类器,考虑的子群组的精确率是否等同。

例如,如果一个用于预测大学录取情况的模型在预测利立浦特人和布罗卜丁根人录取情况的精确率相同,则该模型在预测国民身份方面满足预测平权。

预测一致性有时也称为预测性费率一致性

如需详细了解预测一致性,请参阅“公平性定义说明”(第 3.2.1 节)。

预测性费率一致性

#fairness

预测一致性的另一个名称。

预处理

#fairness
在使用数据训练模型之前对其进行处理。预处理可以很简单,例如从英语文本语料库中移除英语字典中不存在的字词;也可以很复杂,例如以某种方式重新表达数据点,以尽可能消除与敏感属性相关的许多属性。预处理有助于满足公平性约束条件

预训练模型

#language
#image
#generativeAI

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

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

预训练

#language
#image
#generativeAI

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

先验信念

在开始用数据进行训练之前,您对这些数据抱有的信念。例如,L2 正则化依赖于先验假设,即权重应该很小且以 0 为中心呈正态分布。

概率回归模型

一种回归模型,不仅使用每个特征权重,还使用这些权重的不确定性。概率回归模型会生成预测结果及其不确定性。例如,概率回归模型可能会预测 325,标准差为 12。如需详细了解概率回归模型,请参阅 tensorflow.org 上的 Colab

概率密度函数

用于确定数据样本确切具有特定值的频率的函数。如果数据集的值是连续的浮点数,则很少出现完全匹配的情况。不过,从值 x 到值 y 积分概率密度函数会得到 xy 之间数据样本的预期频率。

例如,假设一个正态分布的均值为 200,标准差为 30。如需确定数据样本在 211.4 到 218.7 范围内的预期频率,您可以对从 211.4 到 218.7 的正态分布概率密度函数进行积分。

提示符

#language
#generativeAI

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

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

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

基于提示的学习

#language
#generativeAI

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

总结牛顿第三运动定律。

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

提示设计

#language
#generativeAI

提示工程的含义相同。

提示工程

#language
#generativeAI

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

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

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

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

提示调优

#language
#generativeAI

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

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

代理(敏感属性)

#fairness
用于替代敏感属性的属性。例如,个人的邮政编码可能会用作其收入、种族或民族的替代指标。

代理标签

#fundamentals

用于逼近未在数据集内直接提供的标签的数据。

例如,假设您必须训练一个模型来预测员工的压力水平。您的数据集包含许多预测特征,但不包含名为压力水平的标签。您毫不畏惧,选择“工作场所事故”作为压力水平的代理标签。毕竟,压力较大的员工比平静的员工更容易发生事故。还是有?也许工作场所事故的上升和下降实际上是由多种原因造成的。

再举一个例子,假设您希望将是否下雨设为数据集的布尔型标签,但该数据集不包含下雨数据。如果有照片,您能够以人们带着雨伞的照片作为“在下雨吗?”的代理标签。这个代理标签合适吗?有可能,但某些文化背景的人可能更倾向于带伞防晒,而不是防雨。

代理标签通常并不完美。尽可能选择实际标签,而不是代理标签。尽管如此,如果没有实际标签,请务必仔细选择代理标签,选择最不糟糕的代理标签候选项。

纯函数

输出仅基于其输入且没有任何副作用的函数。具体而言,纯函数不会使用或更改任何全局状态,例如文件内容或函数外部变量的值。

纯函数可用于创建线程安全的代码,这在跨多个加速器芯片模型代码进行分片时非常有用。

JAX 的函数转换方法要求输入函数是纯函数。

Q

Q 函数

#rl

强化学习中,用于预测在状态中执行操作,然后遵循给定策略的预期回报的函数。

Q 函数也称为状态-动作价值函数

Q 学习

#rl

强化学习中,该算法允许代理通过应用贝尔曼方程来学习马尔可夫决策过程的最佳 Q 函数。马尔可夫决策过程可对环境进行建模。

分位数

分位数分桶中的每个桶。

分位数分桶

将一个特征的值分发到中,使每个桶包含的样本数量相同(或几乎相同)。例如,下图将 44 个点分到 4 个桶中,每个桶包含 11 个点。为使图中每个桶包含的点数相同,有些桶对应的 x 值的跨度不同。

44 个数据点分为 4 个桶,每个桶包含 11 个数据点。
          虽然每个分桶包含的数据点数量相同,但有些分桶包含的特征值范围更广。

量化

一个多含义术语,可用于以下任一方式:

  • 对特定特征实现分位数分桶
  • 将数据转换为 0 和 1,以便更快地存储、训练和推理。与其他格式相比,布尔值数据对噪声和错误更具鲁棒性,因此量化可以提高模型的正确性。量化技术包括舍入、截断和分箱
  • 减少用于存储模型参数的位数。例如,假设模型的参数存储为 32 位浮点数。量化会将这些参数从 32 位转换为 4 位、8 位或 16 位。量化可减少以下内容:

    • 计算、内存、磁盘和网络用量
    • 推断预测的时间
    • 功耗

    不过,量化有时会降低模型预测的准确性。

队列

#TensorFlow

一种实现队列数据结构的 TensorFlow 操作。通常用于 I/O。

R

RAG

#fundamentals

检索增强生成的缩写。

随机森林

#df

决策树集成,其中每个决策树都使用特定的随机噪声进行训练,例如bagging

随机森林是一种决策森林

随机政策

#rl

强化学习中,一种随机选择操作政策

排序(序数)(rank (ordinality))

在将类别从最高到最低进行排序的机器学习问题中,类别的顺序位置。例如,行为排序系统可以将狗狗的奖励从最高(牛排)到最低(枯萎的羽衣甘蓝)进行排序。

秩(张量)(rank (Tensor))

#TensorFlow

Tensor中的维数。例如,标量的秩为 0,向量的秩为 1,矩阵的秩为 2。

请勿与排序(序数)混淆。

排名

一种监督式学习,其目标是对项列表进行排序。

评分者

#fundamentals

示例提供标签的人员。“注释者”是评分者的另一种称呼。

召回

一种分类模型指标,可为您提供以下信息:

标准答案正类别时,有多少预测结果被模型正确识别为正类别?

公式如下:

\[\text{Recall} = \frac{\text{true positives}} {\text{true positives} + \text{false negatives}} \]

其中:

  • 真正例是指模型正确预测了正类别。
  • 假负例是指模型错误地预测了负类别

例如,假设您的模型对标准答案为正类别的 200 个示例做出了预测。在这 200 个预测中:

  • 其中 180 个是真正例。
  • 20 个是假负例。

在此示例中:

\[\text{Recall} = \frac{\text{180}} {\text{180} + \text{20}} = 0.9 \]

如需了解详情,请参阅分类:准确率、召回率、精确率和相关指标

召回率(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 个预测结果中的准确率相对。

推荐系统

#recsystems

一种系统,从大型语料库为每位用户选择相对较小的所需推荐项集合。例如,视频推荐系统可能会从包含 100000 部视频的语料库推荐两部视频,为一位用户选择《卡萨布兰卡》和《旧欢新宠:费城故事》,而为另一位用户选择《神奇女侠》和《黑豹》。视频推荐系统可能会根据以下因素进行推荐:

  • 类似用户评过分或观看过的影片。
  • 类型、导演、演员、目标受众…

修正线性单元 (ReLU)

#fundamentals

一种激活函数,具有以下行为:

  • 如果输入为负数或零,则输出为 0。
  • 如果输入为正数,则输出等于输入。

例如:

  • 如果输入为 -3,则输出为 0。
  • 如果输入为 +3,则输出为 3.0。

下面是 ReLU 的图表:

两个线条的直角坐标图。第一条线的 y 值为常量 0,沿 x 轴从 -infinity,0 到 0,-0。
          第二行从 0,0 开始。此线条的斜率为 +1,因此其范围为 0,0 到 +infinity,+infinity。

ReLU 是一种非常流行的激活函数。尽管行为简单,ReLU 仍可让神经网络学习特征标签之间的非线性关系。

循环神经网络

#seq

特意运行多次的神经网络,其中每次运行的部分结果会馈送到下一次运行。具体来说,上一次运行时隐藏层中的结果会作为下一次运行时相同隐藏层的部分输入。循环神经网络在评估序列时尤其有用,因此隐藏层可以根据神经网络在序列的前几部分上的前几次运行进行学习。

例如,下图显示了运行四次的循环神经网络。请注意,第一次运行时在隐藏层中学习的值将成为第二次运行时相同隐藏层的部分输入。同样,第二次运行时在隐藏层中学习的值将成为第三次运行时相同隐藏层的部分输入。通过这种方式,循环神经网络逐步训练和预测整个序列的含义,而不只是各个字词的含义。

运行四次以处理四个输入字词的 RNN。

参考文本

#language
#generativeAI

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

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

专家的回答可能如下:

Comment vous appelez-vous?

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

回归模型

#fundamentals

非正式地讲,生成数值预测的模型。(相比之下,分类模型会生成类预测。)例如,以下所有模型都是回归模型:

  • 一个模型,用于预测某栋房屋的价值(以欧元为单位),例如 423,000。
  • 一个模型,用于预测某棵树的预期寿命(以年为单位),例如 23.2 年。
  • 一个模型,用于预测某个城市在接下来 6 小时内降雨量(以英寸为单位),例如 0.18。

回归模型有两种常见类型:

  • 线性回归,用于查找最能将标签值与特征相匹配的线。
  • 逻辑回归,该方法会生成一个介于 0.0 到 1.0 之间的概率值,系统通常会将该值映射到类预测。

并非输出数值预测的每个模型都是回归模型。在某些情况下,数值预测实际上只是一个恰好具有数值类别名称的分类模型。例如,用于预测邮政编码的模型属于分类模型,而非回归模型。

正则化

#fundamentals

任何可减少过拟合的机制。常见的正则化类型包括:

正则化也可以定义为对模型复杂性的惩罚。

正则化率

#fundamentals

一个数字,用于指定训练期间正则化的相对重要性。提高正则化率可降低过拟合,但可能会降低模型的预测能力。反之,如果减少或省略正则化率,则会增加过拟合。

强化学习 (RL)

#rl

一系列用于学习最佳政策的算法,其目标是在与环境互动时最大限度地提高回报。例如,大多数游戏的最终奖励是胜利。通过对最终带来胜利前的游戏走法序列和最终导致失败的序列进行评估,强化学习系统会变得擅长玩复杂的游戏。

基于人类反馈的强化学习 (RLHF)

#generativeAI
#rl

使用人工评分员的反馈来提高模型回答的质量。 例如,RLHF 机制可以要求用户使用 👍? 或 👎? 表情符号对模型回答的质量进行评分。然后,系统可以根据这些反馈调整日后的回答。

ReLU

#fundamentals

修正线性单元的缩写。

重放缓冲区

#rl

在类似 DQN 的算法中,代理用于存储状态转换的内存,以便在经验重放中使用。

副本

训练集模型的副本,通常位于其他机器上。例如,系统可以使用以下策略实现数据并行

  1. 将现有模型的副本放置在多台机器上。
  2. 向每个副本发送训练集的不同子集。
  3. 汇总参数更新。

报告偏差

#fairness

一种事实,即人们对操作、结果或属性进行描述的频率不能反映这些内容实际出现的频率或者某个属性在多大程度上是某类个体的特征。报告偏差可以影响机器学习系统从中学习规律的数据的构成。

例如,在书中,“laughed”比“breathed”更普遍。机器学习模型对书籍语料库中的“laughing”和“breathing”的相对频率进行评估后,可能会确定“laughing”比“breathing”更常见。

相同的矢量表示。

将数据映射到实用特征的过程。

重排序

#recsystems

推荐系统的最后阶段,在此期间,可能会根据其他(通常是非机器学习)算法,对已获得评分的推荐项重新评分。重排序会对在打分阶段生成的推荐项列表进行评估,然后采取以下操作:

  • 消除用户已购买的推荐项。
  • 提高较新推荐项的得分。

检索增强生成 (RAG)

#fundamentals

一种技术,用于通过在模型训练后检索知识来源来为大语言模型 (LLM) 输出提供依据,从而提高输出质量。RAG 通过向训练好的 LLM 提供从可信知识库或文档中检索到的信息,提高 LLM 回答的准确性。

使用检索增强生成的常见动机包括:

  • 提高模型生成的回答的事实准确性。
  • 让模型能够访问它未在训练过程中获得的知识。
  • 更改模型使用的知识。
  • 让模型引用来源。

例如,假设一款化学应用使用 PaLM API 生成与用户查询相关的摘要。当应用的后端收到查询时,后端会执行以下操作:

  1. 搜索(“检索”)与用户查询相关的数据。
  2. 将相关化学数据附加(“增强”)到用户的查询中。
  3. 指示 LLM 根据附加的数据创建摘要。

回车键

#rl

在强化学习中,给定某种策略和某种状态,回报是代理状态遵循策略情节结束时预计会收到的所有奖励的总和。代理会根据获得奖励所需的状态转换来折扣奖励,以考虑预期奖励的延迟性质。

因此,如果折扣系数为 \(\gamma\),且 \(r_0, \ldots, r_{N}\)表示剧集结束前的奖励,则收益计算如下:

$$\text{Return} = r_0 + \gamma r_1 + \gamma^2 r_2 + \ldots + \gamma^{N-1} r_{N-1}$$

奖励

#rl

在强化学习中,在状态(由环境定义)中执行操作的数值结果。

岭正则化

L2 正则化的含义相同。岭正则化一词更常用于纯粹的统计学领域,而 L2 正则化更常用于机器学习中。

RNN

#seq

循环神经网络的缩写。

受试者工作特征曲线(receiver operating characteristic,简称 ROC 曲线)

#fundamentals

二元分类中不同分类阈值真正例率假正例率对比图。

ROC 曲线的形状表明二元分类模型将正类别与负类别区分开的能力。例如,假设二元分类模型可以完美地将所有负类别与所有正类别区分开来:

一个数轴,右侧有 8 个正例,左侧有 7 个负例。

上述模型的 ROC 曲线如下所示:

ROC 曲线。x 轴是假正例率,y 轴是真正例率。曲线呈倒 L 形。曲线从 (0.0,0.0) 开始,一直向上到 (0.0,1.0)。然后,曲线从 (0.0,1.0) 到 (1.0,1.0)。

相比之下,下图绘制了完全无法将负类别与正类别区分开来的糟糕模型的原始逻辑回归值:

一个数轴,其中正例和负类别完全混合。

此模型的 ROC 曲线如下所示:

ROC 曲线,实际上是一条从 (0.0,0.0) 到 (1.0,1.0) 的直线。

与此同时,在现实世界中,大多数二元分类模型在一定程度上可以将正类别和负类别区分开来,但通常无法做到完全区分。因此,典型的 ROC 曲线介于这两种极端情况之间:

ROC 曲线。x 轴是假正例率,y 轴是真正例率。ROC 曲线近似于从西向北穿过罗盘指针的抖动弧线。

理论上,ROC 曲线上最接近 (0.0,1.0) 的点可确定理想的分类阈值。不过,还有一些其他现实问题会影响理想分类阈值的选择。例如,假负例可能比假正例造成的痛苦要多得多。

一个名为 AUC 的数值指标可将 ROC 曲线汇总为单个浮点值。

角色提示

#language
#generativeAI

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

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

root

#df

决策树中的起始节点(第一个条件)。按照惯例,图表会将根放在决策树的顶部。例如:

一个包含两个条件和三个叶子的决策树。起始条件 (x > 2) 是根。

根目录

#TensorFlow

您指定的目录,用于托管多个模型的 TensorFlow 检查点和事件文件的子目录。

均方根误差 (RMSE)

#fundamentals

均方误差的平方根。

旋转不变性

#image

在图片分类问题中,算法即使在图片的方向发生变化时也能成功分类图片的能力。例如,无论网球拍朝上、朝侧还是朝下,该算法仍然可以识别它。请注意,并非总是希望旋转不变;例如,倒置的“9”不应分类为“9”。

另请参阅平移不变性尺寸不变性

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 时,白云白色翻滚的云是匹配的。

R 平方

回归指标,用于指示标签的变化程度是由于单个特征还是特征集所致。决定系数 R 平方值介于 0 到 1 之间,您可以按如下方式对其进行解读:

  • R 平方值为 0 表示标签的任何变化都不是由特征集引起的。
  • R 平方值为 1 表示标签的所有变化都归因于特征集。
  • 介于 0 和 1 之间的 R 平方值表示可以从特定特征或特征集预测标签变化的程度。例如,如果 R 平方值为 0.10,则表示标签中 10% 的方差归因于特征集;如果 R 平方值为 0.20,则表示 20% 的方差归因于特征集,以此类推。

R 平方是模型预测的值与标准答案之间的皮尔逊相关系数的平方。

S

采样偏差

#fairness

请参阅选择性偏差

有放回的抽样

#df

从一组候选项中选择项的方法,其中可以多次选择同一项。“有放回”是指每次选择后,所选项都会返回到候选项池。相反的方法是不放回抽样,这意味着候选项只能被选取一次。

例如,请考虑以下水果集:

fruit = {kiwi, apple, pear, fig, cherry, lime, mango}

假设系统随机选择 fig 作为第一个项。如果使用有放回的抽样,系统会从以下集合中选择第二个项:

fruit = {kiwi, apple, pear, fig, cherry, lime, mango}

是的,这与之前的集合相同,因此系统可能会再次选择 fig

如果使用无替换抽样,则选取的样本将无法再次被选中。例如,如果系统随机选择 fig 作为第一个样本,则无法再次选择 fig。因此,系统会从以下(经过缩减)集合中选择第二个样本:

fruit = {kiwi, apple, pear, cherry, lime, mango}

SavedModel

#TensorFlow

保存和恢复 TensorFlow 模型时建议使用的格式。SavedModel 是一种独立于语言且可恢复的序列化格式,使较高级别的系统和工具可以创建、使用和转换 TensorFlow 模型。

如需完整的详细信息,请参阅《TensorFlow 编程人员指南》中的“保存和恢复”部分

实惠

#TensorFlow

一种 TensorFlow 对象,负责保存模型检查点。

标量

一个数字或一个字符串,可以表示为为 0 的张量。例如,以下代码行在 TensorFlow 中各自创建一个标量:

breed = tf.Variable("poodle", tf.string)
temperature = tf.Variable(27, tf.int16)
precision = tf.Variable(0.982375101275, tf.float64)

调节

用于调整标签和/或特征值范围的任何数学转换或方法。某些形式的缩放对于标准化等转换非常有用。

在机器学习中常用的扩缩形式包括:

  • 线性缩放,通常结合使用减法和除法将原始值替换为介于 -1 和 +1 之间或 0 和 1 之间的数字。
  • 对数缩放,即将原始值替换为其对数。
  • Z 得分标准化,该方法会将原始值替换为一个浮点值,表示与该特征的平均值之间的标准差数量。

scikit-learn

一个广受欢迎的开源机器学习平台。请访问 scikit-learn.org

评分

#recsystems

推荐系统的一部分,用于为候选项生成阶段生成的每个项提供值或排名。

选择性偏差

#fairness

由于在选择过程中在数据中观察到的样本和未观察到的样本之间产生系统差异,因此根据采样数据得出的结论存在误差。存在以下形式的选择偏差:

  • 覆盖偏差:在数据集内表示的群体与机器学习模型要进行预测的群体不符。
  • 采样偏差:数据不是从目标群体中随机收集的。
  • 未回答偏差(也称为参与偏差):某些群体中的用户以不同于其他群体中的用户的比率选择不参加调查问卷。

例如,假设您要创建一个机器学习模型来预测人们对电影的满意程度。为了收集训练数据,您向上映该电影的影院第一排的每个人发一份调查问卷。不假思索地话,这听起来像是收集数据集的合理方式,但是,这种数据收集方式可能会引入以下形式的选择偏差:

  • 覆盖偏差:通过从选择观看电影的人群中采样,您的模型预测可能不会泛化到那些对电影的兴趣尚未到达观看地步的人。
  • 采样偏差:您仅对第一排的观众进行采样,而不是从预期群体(影院中的所有观众)进行随机采样。坐在第一排的观众可能比坐在其他排的观众对电影更感兴趣。
  • 未回答偏差:通常,相比具有温和观点的人,具有强烈观点的人倾向于更频繁地回答可选调查问卷。由于电影调查问卷是可选的,因此回复更有可能形成双峰分布,而不是正态(钟形)分布。

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

#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 次单独的转换,在序列中的每个位置进行一次转换。

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

自监督学习

一系列技术,用于通过从无标签示例创建替代标签,将非监督式机器学习问题转换为监督式机器学习问题。

一些基于 Transformer 的模型(例如 BERT)使用自监督学习。

自监督式训练是一种半监督式学习方法。

自行训练

自监督学习的变体,在满足以下所有条件时尤其有用:

自学习的运作方式是迭代执行以下两个步骤,直到模型不再改进:

  1. 使用监督式机器学习对有标签示例训练模型。
  2. 使用第 1 步中创建的模型对无标签示例生成预测(标签),并将预测置信度较高的示例移至带有预测标签的有标签示例中。

请注意,第 2 步的每次迭代都会为第 1 步添加更多标记示例以供训练。

半监督式学习

使用部分训练示例带有标签、部分训练示例不带标签的数据训练模型。半监督式学习的一种方法是推断无标签示例的标签,然后根据推断出的标签进行训练以创建新模型。如果获得有标签样本需要高昂的成本,而无标签样本则有很多,那么半监督式学习将非常有用。

自我训练是半监督式学习的一种技术。

敏感属性

#fairness
由于法律、道德、社会或个人原因,可能会受到特别关注的人类属性。

情感分析

#language

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

序列模型

#seq

输入具有序列依赖性的模型。例如,根据之前观看过的一系列视频对观看的下一个视频进行预测。

序列到序列任务

#language

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

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

人份

使经过训练的模型能够通过在线推理离线推理提供预测的过程。

形状(张量)

张量每个维度中的元素数。形状表示为整数列表。例如,以下二维张量的形状为 [3,4]:

[[5, 7, 6, 4],
 [2, 9, 4, 8],
 [3, 6, 5, 1]]

TensorFlow 使用行主序(C 语言风格)格式来表示维度的顺序,因此 TensorFlow 中的形状为 [3,4],而不是 [4,3]。换句话说,在二维 TensorFlow 张量中,形状为 [行数列数]

静态形状是指在编译时已知的张量形状。

动态形状在编译时为未知,因此取决于运行时数据。在 TensorFlow 中,此张量可以用占位符维度表示,如 [3, ?] 所示。

分片

#TensorFlow
#GoogleCloud

训练集模型的逻辑划分。通常,某些进程会通过将示例参数划分为(通常)大小相同的块来创建分片。然后,每个分片都会分配到不同的机器。

对模型进行分片称为模型并行处理;对数据进行分片称为数据并行处理

收缩

#df

梯度提升中的超参数,用于控制过拟合。梯度提升中的收缩类似于梯度下降法中的学习速率。收缩率是一个介于 0.0 到 1.0 之间的小数值。与较大的收缩值相比,较小的收缩值可更好地减少过拟合。

S 型函数

#fundamentals

一种数学函数,用于将输入值“压缩”到受限范围内(通常为 0 到 1 或 -1 到 +1)。也就是说,您可以将任何数字(2、100 万、负十亿等)传递给 Sigmoid 函数,输出结果仍会在受限范围内。sigmoid 激活函数的图形如下所示:

二维曲线图,x 值介于 -∞ 到 +∞ 之间,而 y 值介于几乎 0 到几乎 1 之间。当 x 为 0 时,y 为 0.5。曲线的斜率始终为正值,在 0,0.5 处斜率最高,随着 x 的绝对值的增加,斜率会逐渐减小。

在机器学习中,sigmoid 函数有几种用途,包括:

相似度度量

#clustering

聚类算法中,用于确定任何两种样本相似程度的指标。

单程序 / 多数据 (SPMD)

一种并行处理技术,用于在不同设备上对不同的输入数据并行运行相同的计算。SPMD 的目标是更快地获得结果。这是最常见的并行编程方式。

缩放不变性

#image

在图片分类问题中,算法即使在图片大小发生变化的情况下也能成功分类的能力。例如,无论猫占用 200 万像素还是 20 万像素,该算法仍然可以识别它。请注意,即使是最好的图像分类算法,在尺寸不变方面也仍然存在实际限制。例如,对于仅以 20 像素呈现的猫图像,算法(或人)不可能正确对其进行分类。

另请参阅平移不变性旋转不变性

粗略分析

#clustering

非监督式机器学习中的一类算法,针对样本执行初步相似性分析。粗略分析算法使用 局部敏感哈希函数确定有可能相似的点,然后将这些点分组到桶中。

粗略分析减少了计算大型数据集相似性所需的计算量。我们仅计算每个桶中的每对点的相似性,而不是计算数据集内每对样本的相似性。

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 组中则不相关联。

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

softmax

#fundamentals

一种函数,可确定多类别分类模型中每个可能类别的概率。这些概率的总和恰好为 1.0。例如,下表显示了 softmax 如何分配各种概率:

图片是... Probability
.85
.13
.02

Softmax 也称为完整 Softmax

候选采样相对。

软提示调优

#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

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

稀疏向量

#fundamentals

值大部分为零的向量。另请参阅稀疏特征稀疏

稀疏性

向量或矩阵中设为零(或 null)的元素数除以该向量或矩阵中的条目总数。例如,假设有一个 100 个元素的矩阵,其中 98 个单元格包含零。稀疏度的计算方式如下:

$$ {\text{sparsity}} = \frac{\text{98}} {\text{100}} = {\text{0.98}} $$

特征稀疏性是指特征矢量的稀疏性;模型稀疏性是指模型权重的稀疏性。

空间 pooling

#image

请参阅共享

分屏

#df

决策树中,条件的另一个名称。

分屏器

#df

在训练决策树时,负责在每个节点中查找最佳条件的例程(和算法)。

SPMD

单个计划 / 多项数据的缩写。

平方合页损失函数

合页损失函数的平方。与常规合页损失函数相比,平方合页损失函数对离群值的惩罚更为严厉。

平方损失函数

#fundamentals

L2 损失的同义词。

分阶段训练

#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 层。

另请参阅流水线

#rl

在强化学习中,描述环境当前配置的参数值,代理使用这些值来选择操作

状态-动作价值函数

#rl

Q 函数同义。

静态

#fundamentals

一次性完成的操作,而不是持续性操作。 静态离线是同义词。以下是机器学习中静态离线的常见用法:

  • 静态模型(或离线模型)是指训练一次后便会使用一段时间的模型。
  • 静态训练(或离线训练)是训练静态模型的过程。
  • 静态推理(或离线推理)是一种流程,模型会一次生成一批预测结果。

动态相对。

静态推理

#fundamentals

离线推理的含义相同。

平稳性

#fundamentals

在一个或多个维度(通常是时间)上值不变的特征。 例如,如果某个特征在 2021 年和 2023 年的值大致相同,则该特征具有平稳性。

在现实世界中,很少有特征表现出平稳性。即使与稳定性同义的特征(例如海平面)也会随时间推移而发生变化。

非平稳性相对。

步骤

一个批次的前向传递和向后传递。

如需详细了解正向传递和反向传递,请参阅反向传播

步长

学习速率的含义相同。

随机梯度下降法 (SGD)

#fundamentals

批次大小为 1 的一种梯度下降法算法。换句话说,SGD 会根据从训练集内随机均匀选择的单个示例进行训练。

步长

#image

在卷积运算或池化操作中,下一系列输入切片的每个维度的增量。例如,以下动画演示了卷积运算期间的 (1,1) 步长。因此,下一个输入 slice 的起始位置在前一个输入 slice 的右侧。当操作到达右边缘时,下一个 slice 会一直向左移动,但会向下移动一个位置。

输入 5x5 矩阵和 3x3 卷积过滤器。由于步长为 (1,1),因此卷积过滤器将应用 9 次。第一个卷积 slice 会评估输入矩阵的左上角 3x3 子矩阵。第二个 slice 会评估顶部中间的 3x3 子矩阵。第三个卷积 slice 会评估右上角的 3x3 子矩阵。第四个 slice 会评估左中 3x3 子矩阵。
     第五个 slice 会评估中间的 3x3 子矩阵。第六个 slice 会评估右中间的 3x3 子矩阵。第七个 slice 会评估左下角的 3x3 子矩阵。第八个 slice 会评估底部中间的 3x3 子矩阵。第九个 slice 会评估右下角的 3x3 子矩阵。

上面的示例演示了二维步长。如果输入矩阵为三维,那么步长也将是三维。

结构风险最小化 (SRM)

一种平衡两个目标的算法:

  • 需要构建最具预测性的模型(例如损失最低)。
  • 需要使模型尽可能简单(例如强大的正则化)。

例如,旨在将基于训练集的损失和正则化降至最低的函数就是一种结构风险最小化算法。

经验风险最小化相对。

下采样

#image

请参阅共享

子词令牌

#language

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

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

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

摘要

#TensorFlow

在 TensorFlow 中的某一计算出的一个值或一组值,通常用于在训练期间跟踪模型指标。

监督式机器学习

#fundamentals

使用特征及其对应的标签训练模型。监督式机器学习类似于通过研究一系列问题及其对应的答案来学习某个知识。掌握题目与答案之间的映射后,学生便可以回答同一主题的新问题(从未见过的问题)。

非监督式机器学习相对。

合成特征

#fundamentals

一种特征,不在输入特征之列,而是从一个或多个输入特征组合而来。创建合成特征的方法包括:

  • 对连续特征进行分桶,以分为多个区间分箱。
  • 创建特征组合
  • 将一个特征值与其他特征值或其本身相乘(或相除)。例如,如果 ab 是输入特征,则以下是合成特征的示例:
    • ab
    • a2
  • 对地图项值应用超越函数。例如,如果 c 是输入特征,则以下是合成特征的示例:
    • sin(c)
    • ln(c)

仅通过标准化缩放创建的特征不属于合成特征。

T

T5

#language

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

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

T5X

#language

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

表格化 Q 学习

#rl

强化学习中,通过使用表格存储状态操作的每个组合的 Q 函数来实现 Q 学习

目标

标签的含义相同。

目标广告网络

#rl

深度 Q 学习中,此神经网络是对主神经网络的稳定近似,其中主神经网络实现了 Q 函数策略。然后,您可以根据目标网络预测的 Q 值训练主网络。因此,您可以防止在主网络根据自身预测的 Q 值进行训练时出现的反馈环。通过避免这种反馈,可以提高训练稳定性。

任务

可使用机器学习技术解决的问题,例如:

温度

#language
#image
#generativeAI

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

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

温度通常与softmax 一起使用。

时态数据

在不同时间点记录的数据。例如,记录一年中每一天的冬季外套销售情况就是时间序列数据。

张量

#TensorFlow

TensorFlow 程序中的主要数据结构。张量是 N 维(其中 N 可以非常大)的数据结构,最常见的是标量、矢量或矩阵。张量的元素可以包含整数值、浮点值或字符串值。

TensorBoard

#TensorFlow

一个信息中心,用于显示在执行一个或多个 TensorFlow 程序期间保存的总结信息。

TensorFlow

#TensorFlow

一个大型的分布式机器学习平台。该术语还指 TensorFlow 堆栈中的基准 API 层,该层支持对数据流图进行一般计算。

虽然 TensorFlow 主要用于机器学习,但您也可以将 TensorFlow 用于需要使用数据流图进行数值计算的非机器学习任务。

TensorFlow Playground

#TensorFlow

一款程序,用于可视化不同的超参数对模型(主要是神经网络)训练的影响。如需试用 TensorFlow Playground,请前往 http://playground.tensorflow.org

TensorFlow Serving

#TensorFlow

一个平台,用于将训练过的模型部署到生产环境。

张量处理单元 (TPU)

#TensorFlow
#GoogleCloud

一种应用专用集成电路 (ASIC),用于优化机器学习工作负载的性能。这些 ASIC 会作为多个 TPU 芯片部署在 TPU 设备上。

张量的阶

#TensorFlow

请参阅秩(张量)

张量形状

#TensorFlow

Tensor在各种维度中包含的元素数。例如,[5, 10] 张量在一个维度上的形状为 5,在另一个维度上的形状为 10。

张量大小

#TensorFlow

Tensor包含的标量总数。例如,[5, 10] 张量的大小为 50。

TensorStore

用于高效读取和写入大型多维数组的

终止条件

#rl

强化学习中,用于确定情节何时结束的条件,例如代理达到特定状态或超出状态转换阈值数量时。例如,在井字游戏(也称为“填空游戏”)中,当玩家标记三个连续的空格或所有空格时,游戏会结束。

test

#df

决策树中,条件的另一个名称。

测试丢失

#fundamentals

一个指标,表示模型在测试集上的损失。构建模型时,您通常会尝试最大限度地减少测试损失。这是因为,与训练损失验证损失较低相比,测试损失较低是更强的质量信号。

测试损失与训练损失或验证损失之间存在较大差距有时表示您需要提高正则化率

测试集

数据集的一部分,专门用于测试训练好的模型

传统上,您可以将数据集中的示例划分为以下三个不同的子集:

数据集中的每个示例都应仅属于上述子集之一。例如,单个示例不应同时属于训练集和测试集。

训练集和验证集都与模型训练密切相关。由于测试集仅与训练间接相关,因此与训练损失验证损失相比,测试损失 的偏差更小,质量更高。

文本 span

#language

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

tf.Example

#TensorFlow

一种标准 协议缓冲区,旨在描述用于机器学习模型训练或推断的输入数据。

tf.keras

#TensorFlow

集成到 TensorFlow 中的 Keras 实现。

阈值(适用于决策树)

#df

与轴对齐的条件中,地图项的比较值。例如,75 是以下条件中的阈值:

grade >= 75

时间序列分析

#clustering

机器学习和统计学的一个子领域,旨在分析时态数据。许多类型的机器学习问题都需要进行时间序列分析,包括分类、聚类、预测和异常检测。例如,您可以利用时间序列分析根据历史销量数据预测未来每月的冬外套销量。

时间步

#seq

循环神经网络中的“展开”单元格。例如,下图显示了三个时间步(用下标 t-1、t 和 t+1 标记):

循环神经网络中的三个时间步。第一个时间步的输出将成为第二个时间步的输入。第二个时间步的输出将成为第三个时间步的输入。

token

#language

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

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

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

前 k 个结果的准确性

#language

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

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

深度神经网络的组成部分,本身就是一个深度神经网络。在某些情况下,每个塔都会从独立的数据源读取数据,并且这些塔会保持独立状态,直到其输出在最终层中合并为止。在其他情况下(例如,在许多 Transformer编码器解码器塔中),塔之间会相互连接。

恶意

#language

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

TPU

#TensorFlow
#GoogleCloud

张量处理单元的缩写。

TPU 芯片

#TensorFlow
#GoogleCloud

一种可编程的线性代数加速器,具有针对机器学习工作负载进行了优化的片上高带宽内存。多个 TPU 芯片部署在 TPU 设备上。

TPU 设备

#TensorFlow
#GoogleCloud

包含多个 TPU 芯片、高带宽网络接口和系统冷却硬件的印刷电路板 (PCB)。

TPU 主进程

#TensorFlow
#GoogleCloud

在主机上运行的中央协调进程,用于接收数据、结果、程序、性能和系统运行状况信息,并将其发送给 TPU 工作进程。TPU 主进程还管理 TPU 设备的设置和关闭。

TPU 节点

#TensorFlow
#GoogleCloud

Google Cloud 上具有特定 TPU 类型的 TPU 资源。TPU 节点从对等 VPC 网络连接到您的 VPC 网络。TPU 节点是 Cloud TPU API 中定义的资源。

TPU Pod

#TensorFlow
#GoogleCloud

Google 数据中心中 TPU 设备的特定配置。TPU Pod 中的所有设备都通过专用高速网络互相连接。TPU Pod 是特定 TPU 版本可用的 TPU 设备配置的最大值。

TPU 资源

#TensorFlow
#GoogleCloud

您在 Google Cloud 上创建、管理或使用的 TPU 实体。例如,TPU 节点TPU 类型是 TPU 资源。

TPU 切片

#TensorFlow
#GoogleCloud

TPU 切片是 TPU PodTPU 设备的一部分。TPU 切片中的所有设备都通过专用高速网络互相连接。

TPU 类型

#TensorFlow
#GoogleCloud

一个或多个具有特定 TPU 硬件版本的 TPU 设备的配置。您可以在 Google Cloud 上创建 TPU 节点时选择 TPU 类型。例如,v2-8 TPU 类型是具有 8 个核心的单个 TPU v2 设备。v3-2048 TPU 类型具有 256 个联网的 TPU v3 设备,总共 2048 个核心。TPU 类型是 Cloud TPU API 中定义的资源。

TPU 工作进程

#TensorFlow
#GoogleCloud

在宿主机上运行的进程,用于在 TPU 设备上执行机器学习程序。

训练

#fundamentals

确定构成模型的理想参数(权重和偏差)的过程。在训练期间,系统会读取示例并逐步调整参数。在训练过程中,每个示例的使用次数可能从几次到数十亿次不等。

训练损失

#fundamentals

一个指标,表示模型在特定训练迭代期间的损失。例如,假设损失函数为均方误差。假设第 10 次迭代的训练损失(均方误差)为 2.2,第 100 次迭代的训练损失为 1.9。

损失曲线会绘制训练损失与迭代次数的关系图。损失曲线可提供有关训练的以下提示:

  • 向下倾斜表示模型在不断改进。
  • 向上的斜率表示模型效果越来越差。
  • 平缓的斜率表示模型已达到收敛

例如,以下经过一定理想化的损失曲线显示:

  • 初始迭代期间的下降斜率较陡,这意味着模型在快速改进。
  • 在接近训练结束时,斜率逐渐变平(但仍向下),这意味着模型会继续改进,但速度比初始迭代期间略慢。
  • 训练结束时斜率变平,这表明模型已收敛。

训练损失与迭代次数的图表。此损失曲线从陡峭的向下斜坡开始。斜率会逐渐变平,直到斜率变为零。

虽然训练损失很重要,但另请参阅泛化

训练-应用偏差

#fundamentals

模型在训练期间的性能与在应用期间的性能之间的差异。

训练集

#fundamentals

用于训练模型数据集子集。

传统上,数据集中的示例会分为以下三个不同的子集:

理想情况下,数据集中的每个示例都应仅属于上述子集之一。例如,单个示例不应同时属于训练集和验证集。

轨迹

#rl

强化学习中,一系列元组,表示一系列状态转换,其中每个元组对应于给定状态转换的状态、操作奖励和下一个状态。

迁移学习

将信息从一项机器学习任务传输到另一项机器学习任务。 例如,在多任务学习中,一个模型可以完成多项任务,例如针对不同任务具有不同输出节点的深度模型。迁移学习可能涉及将知识从更简单任务的解决方案转移到更复杂的任务,或者将知识从数据量较多的任务转移到数据量较少的任务。

大多数机器学习系统只会解决一项任务。迁移学习是迈向人工智能的初步步骤,在这种情况下,单个程序可以解决多项任务。

Transformer

#language

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

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

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

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

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

平移不变性

#image

在图像分类问题中,算法即使在图像中对象的位置发生变化时也能成功分类的能力。例如,无论一只狗位于画面正中央还是画面左侧,该算法仍然可以识别它。

另请参阅缩放不变性旋转不变性

三元语法

#seq
#language

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

真负例 (TN)

#fundamentals

模型正确预测负类别的示例。例如,模型推断出某封电子邮件不是垃圾邮件,而该电子邮件确实不是垃圾邮件

真正例 (TP)

#fundamentals

模型正确预测为正类别的示例。例如,模型推断出某封电子邮件是垃圾邮件,而该电子邮件确实是垃圾邮件。

真正例率 (TPR)

#fundamentals

召回率的含义相同。具体来说:

$$\text{true positive rate} = \frac{\text{true positives}} {\text{true positives} + \text{false negatives}}$$

真正例率是 ROC 曲线的 y 轴。

U

不了解(敏感属性)

#fairness

存在敏感属性,但未包含在训练数据中的情况。由于敏感属性通常与数据的其他属性相关,因此在训练过程中未知晓敏感属性的模型可能仍会对该属性产生差别影响,或者违反其他公平性约束条件

欠拟合

#fundamentals

生成具有较差预测能力的模型,因为模型未完全捕获训练数据的复杂性。许多问题都可能导致欠拟合,包括:

欠采样

分类不平衡的数据集多数类中移除示例,以创建更平衡的训练集

例如,假设某个数据集中多数类与少数类的比率为 20:1。为了解决这种类不平衡问题,您可以创建一个训练集,其中包含所有少数类示例,但只有十分之一的多数类示例,这样训练集类比率将为 2:1。得益于过采样,这个更平衡的训练集可能会生成更好的模型。或者,这个更平衡的训练集可能包含的示例不足,无法训练出有效的模型。

过采样相对。

单向

#language

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

单向语言模型

#language

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

无标签样本

#fundamentals

包含特征但不包含标签的示例。 例如,下表显示了房价估算模型中的三个未标记示例,每个示例都具有三个特征,但没有房价:

卧室数量 浴室数量 房屋年龄
3 2 15
2 1 72
4 2 34

监督式机器学习中,模型基于带标签的示例进行训练,并针对无标签示例做出预测。

半监督式非监督式学习中,在训练期间会使用无标签样本。

将无标签示例与有标签示例进行对比。

非监督式机器学习

#clustering
#fundamentals

训练模型,以找出数据集(通常是无标签数据集)内的规律。

非监督式机器学习最常见的用途是将数据分为不同的聚类,使相似的样本位于同一组中。例如,无监督机器学习算法可以根据音乐的各种属性对歌曲进行分组。生成的集群可以成为其他机器学习算法(例如音乐推荐服务)的输入。当缺少实用标签或没有实用标签时,聚类功能会很有帮助。例如,在反滥用和反欺诈等领域,聚类有助于人们更好地了解数据。

监督式机器学习相对。

效果提升建模

一种在营销中常用的建模技术,用于对“治疗”对“个体”的“因果效应”(也称为“增量影响”)进行建模。以下是两个示例:

  • 医生可能会使用效果提升模型来预测某项医疗程序(治疗)降低患者死亡率的效果(因果效应),具体取决于患者的年龄和病史。
  • 营销者可以使用效果提升模型来预测广告(实验组)对个人(个体)的购买概率提升幅度(因果效应)。

效果提升模型与分类回归不同,因为效果提升模型中始终缺少一些标签(例如,二元治疗组中的一半标签)。例如,患者可以接受治疗,也可以不接受治疗;因此,我们只能在上述两种情况下观察患者是否会痊愈(但不能同时观察这两种情况)。效果提升模型的主要优势在于,它可以针对未观察到的情况(假设情况)生成预测结果,并使用这些结果计算因果效应。

权重上调

降采样的类别应用一个权重,该权重等于降采样所依据的因子。

用户矩阵

#recsystems

推荐系统中,由矩阵分解生成的嵌入向量,用于存储与用户偏好相关的潜在信号。用户矩阵的每一行都包含关于单个用户的各种潜在信号的相对强度的信息。以影片推荐系统为例。在该系统中,用户矩阵中的潜在信号可能表示每个用户对特定类型的兴趣,也可能是更难以解读的信号,其中涉及多个因素之间的复杂互动关系。

用户矩阵包含的列和行分别对应每个潜在特征和每位用户。也就是说,用户矩阵与要进行分解的目标矩阵具有相同的行数。例如,假设某个影片推荐系统要为 1000000 名用户推荐影片,则用户矩阵有 1000000 行。

V

验证

#fundamentals

对模型质量的初始评估。验证是指根据验证集检查模型预测结果的质量。

由于验证集不同于训练集,因此验证有助于防范过拟合

您可以将针对验证集评估模型视为第一轮测试,将针对测试集评估模型视为第二轮测试。

验证损失

#fundamentals

一个指标,表示在训练的特定迭代期间,模型在验证集上的损失

另请参阅泛化曲线

验证集

#fundamentals

数据集的子集,用于对经过训练的模型进行初始评估。通常,您需要先针对验证集对经过训练的模型进行多次评估,然后再针对测试集对模型进行评估。

传统上,您可以将数据集中的示例划分为以下三个不同的子集:

理想情况下,数据集中的每个示例都应仅属于上述子集之一。例如,单个示例不应同时属于训练集和验证集。

值插补

将缺失的值替换为可接受的替代值的过程。如果缺少值,您可以舍弃整个示例,也可以使用值插值来挽救示例。

例如,假设有一个数据集包含一个应每小时记录一次的 temperature 特征。不过,某个小时的温度读数不可用。下面是数据集的一部分:

时间戳 温度
1680561000 10
1680564600 12
1680568200 缺失
1680571800 20
1680575400 21
1680579000 21

系统可以删除缺失的示例,也可以根据插值算法将缺失的温度值插值为 12、16、18 或 20。

梯度消失问题

#seq

某些深度神经网络的早期隐藏层的梯度往往会出乎意料地变得平坦(低)。梯度越来越小会导致深度神经网络中节点的权重变化越来越小,从而导致学习效果不佳或根本无法学习。存在梯度消失问题的模型很难或无法训练。长短期记忆单元格可解决此问题。

梯度爆炸问题相对。

变量重要性

#df

一组得分,用于指示每个特征对模型的相对重要性。

例如,假设有一个用于估算房价的决策树。假设此决策树使用三个特征:尺寸、年龄和款式。如果计算出的这三个特征的一组变量重要性为 {size=5.8, age=2.5, style=4.7},则对于决策树而言,size 比 age 或 style 更重要。

存在不同的变量重要性指标,可让机器学习专家了解模型的不同方面。

变分自编码器 (VAE)

#language

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

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

vector

这个术语非常多义,在不同的数学和科学领域中具有不同的含义。在机器学习中,向量具有两个属性:

  • 数据类型:机器学习中的向量通常包含浮点数。
  • 元素数量:这是向量的长度或维度。

例如,假设有一个包含八个浮点数的特征向量。此特征向量的长度或维度为 8。 请注意,机器学习矢量通常具有大量维度。

您可以将许多不同类型的信息表示为向量。例如:

  • 地球表面上的任何位置都可以表示为二维矢量,其中一个维度是纬度,另一个维度是经度。
  • 500 只股票中的每只股票的当前价格可以表示为一个 500 维的向量。
  • 在有限数量的类别上的概率分布可以表示为向量。例如,预测三种输出颜色(红色、绿色或黄色)之一的多类别分类系统可以输出矢量 (0.3, 0.2, 0.5),表示 P[red]=0.3, P[green]=0.2, P[yellow]=0.5

矢量可以串联,因此各种不同的媒体可以表示为单个矢量。某些模型直接对许多独热编码的串联进行运算。

TPU 等专用处理器经过优化,可对矢量执行数学运算。

向量是为 1 的张量

W

Wasserstein 损失

生成式对抗网络中常用的损失函数之一,基于生成数据和真实数据分布之间的地球移动距离

重量

#fundamentals

模型要与另一个值相乘的值。 训练是确定模型理想权重的过程;推理是使用这些学习到的权重进行预测的过程。

加权交替最小二乘 (WALS)

#recsystems

一种算法,用于在推荐系统中执行矩阵分解期间最小化目标函数,以便对缺失的样本进行权重下调。WALS 交替修复行分解和列分解,以尽可能减小原始矩阵和重构矩阵之间的加权平方误差。这些优化皆可通过最小二乘凸优化实现。如需了解详情,请参阅推荐系统课程

加权和

#fundamentals

所有相关输入值的总和乘以其对应的权重。例如,假设相关输入包括以下内容:

输入值 输入权重
2 -1.3
-1 0.6
3 0.4

因此,加权和为:

weighted sum = (2)(-1.3) + (-1)(0.6) + (3)(0.4) = -2.0

加权和是激活函数的输入参数。

宽度模型

一种线性模型,通常有很多稀疏输入特征。我们之所以称之为“宽度模型”,是因为这是一种特殊类型的神经网络,其大量输入均直接与输出节点相连。与深度模型相比,宽度模型通常更易于调试和检查。虽然宽广模型无法通过隐藏层来表达非线性关系,但宽广模型可以使用特征交叉分桶等转换以不同的方式为非线性关系建模。

深度模型相对。

width

神经网络的特定中的神经元数量。

众人之智

#df

该理论认为,对一组人(“群众”)的意见或估算值进行平均处理,通常会产生出乎意料的好结果。例如,假设有一款游戏,玩家需要猜测一个大罐子中装有多少果冻豆。虽然大多数单个猜测结果都会不准确,但经验表明,所有猜测结果的平均值与罐子中实际的果冻豆数出奇地接近。

集成是群体智慧的软件模拟。即使单个模型的预测结果非常不准确,平均多个模型的预测结果通常也会产生出乎意料的准确预测。例如,虽然单个决策树的预测结果可能不准确,但决策森林的预测结果通常非常准确。

词嵌入

#language

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

X

XLA(加速线性代数)

适用于 GPU、CPU 和机器学习加速器的开源机器学习编译器。

XLA 编译器会从 PyTorchTensorFlowJAX 等热门机器学习框架中获取模型,并对其进行优化,以便在不同的硬件平台(包括 GPU、CPU 和机器学习加速器)上高性能执行。

Z

零样本学习

一种机器学习训练,其中模型会针对尚未专门针对其进行训练的任务推断预测。换句话说,模型没有获得任何特定于任务的训练示例,但需要对该任务执行推理

零样本提示

#language
#generativeAI

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

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

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

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

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

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

Z 分数归一化

#fundamentals

一种缩放技术,用于将原始特征值替换为一个浮点值,该值表示与该特征均值的标准差数量。例如,假设某个特征的均值为 800,标准差为 100。下表显示了 Z 分位数标准化如何将原始值映射到其 Z 分位数:

原始值 Z 分数
800 0
950 +1.5
575 -2.25

然后,机器学习模型会根据该特征的 Z 得分(而不是原始值)进行训练。