机器学习术语表

本术语表定义了常见的机器学习术语,以及 TensorFlow 专用术语。

A

消融

一种用于评估特征或组件重要性的方法,该方法通过将特征或组件暂时移除模型中来评估其重要性。然后,在没有该特征或组件的情况下重新训练模型,如果重新训练的模型表现明显变差,则移除的特征或组件可能很重要。

例如,假设您使用 10 个特征训练分类模型,并在测试集上实现了 88% 的精确率 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

强化学习中,代理环境状态之间过渡的机制。代理 (Agent) 会使用政策来选择操作。

激活函数

#fundamentals

使神经网络能够学习特征与标签之间的非线性(复杂)关系的函数。

常用的激活函数包括:

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

两条直线的笛卡尔图。第一行的 y 常量值为 0,沿着 x 轴运行,其范围为 -无穷大 0 到 0 - 0。第二行从 0,0 开始。此直线的斜率为 +1,因此它的范围为 0,0 到 +无穷大,+无穷大。

S 型激活函数的曲线图如下所示:

一个二维曲线图,其 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

可以解决复杂任务的非人类程序或model。 例如,翻译文本的程序或模型,或者通过放射学图像识别疾病的程序或模型,都具有人工智能。

正式地说,机器学习是人工智能的一个子领域。但是,近年来,一些组织开始开始交替使用“人工智能”和“机器学习”这两个术语。

注意力层、

#language

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

另请参阅自注意力多头自注意力,它们是 Transformer 的构建块。

属性

#fairness

feature 的含义相同。

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

属性抽样

#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 会忽略您为分类阈值设置的任何值。而是考虑所有可能的分类阈值。

增强现实

#image

一种将计算机生成的图像叠加到用户的真实视角上,从而提供复合视图的技术。

自编码器

#language
#image

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

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

自编码器进行端到端训练,方法是让解码器尽可能接近于编码器的中间格式重建原始输入。由于中间格式比原始格式小(较低维度),因此自动编码器被迫了解输入中的哪些信息是必不可少的,这样输出就不会与输入完全相同。

例如:

  • 如果输入数据是图形,则非精确副本将与原始图形类似,但会有所修改。非精确副本或许会消除原始图形中的噪声或填充一些缺失的像素。
  • 如果输入数据是文本,自动编码器将生成与原始文本模拟(但并不完全相同)的新文本。

另请参阅变体自动编码器

自动化偏差

#fairness

人类决策者更倾向于自动化决策系统给出的建议,而不是非自动化系统给出的建议,即使自动化决策系统出错也是如此。

AutoML

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

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

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

自回归模型

#language
#image
#生成式 AI

一种model,用于根据自己之前的预测来推断预测。例如,自动回归语言模型会根据之前预测的词元来预测下一个词元。所有基于 Transformer大语言模型都是自动回归的。

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

辅助损失

损失函数(与神经网络 模型的主损失函数结合使用),有助于在早期迭代期间(权重随机初始化时)加快训练

辅助损失函数会将有效梯度推到前面的通过解决梯度消失问题,这有助于在训练期间实现收敛

平均精确率

用于对经过排序的结果序列的表现进行汇总的指标。平均精确率的计算方法是取每个相关结果(召回率相对于上一个结果有所增加的已排名列表中的每条结果)精确率值的平均值。

另请参阅 PR 曲线下的面积

轴对齐条件

#df

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

area > 200

倾斜条件相对。

B

反向传播算法

#fundamentals

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

训练神经网络涉及以下两遍循环的多次迭代

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

神经网络通常包含跨多个隐藏层的多个神经元。其中每个神经元以不同的方式影响整体损失。反向传播算法确定是增加还是减少应用于特定神经元的权重。

学习速率是一个调节系数,用于控制每次反向传递每个权重增加或减少的程度。学习速率较大时,每个权重增加或减少的幅度将大于小学习速率。

在微积分术语中,反向传播算法会实现微积分的链式法则。也就是说,反向传播算法会根据每个参数计算误差的偏导数

几年前,机器学习从业者必须编写代码来实现反向传播算法。 现在,TensorFlow 等现代机器学习 API 可为您实现反向传播算法。哎呀!

Bagging

#df

一种训练集成的方法,其中每个组件均基于替换抽样的随机训练样本子集进行训练。例如,随机森林是通过装箱方法训练的一组决策树

“bagging”一词是 bootstrap aggregat 的缩写。

词袋

#language

短语或段落中字词的表示法,不考虑字词顺序。例如,以下三个短语的词袋完全相同:

  • 狗跳跃
  • 跳狗
  • 小狗跳跃

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

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

baseline

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

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

批处理

#fundamentals

在一次训练迭代中使用的一组样本批次大小决定了批次中的样本数。

如需了解批次与周期之间的关系,请参阅 epoch

批量推理

#TensorFlow
#GoogleCloud

对划分为较小子集(“批量”)的多个无标签样本进行推断预测的过程。

批量推理可以利用加速器芯片的并行化功能。也就是说,多个加速器可以同时推断不同批次的无标签样本的预测,大大增加了每秒的推断数量。

批次归一化

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

批次大小

#fundamentals

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

下面是常用的批量大小策略:

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

贝叶斯神经网络

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

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

贝叶斯优化

概率回归模型,用于优化计算开销大的目标函数,改为优化使用贝叶斯学习技术量化不确定性的代理。由于贝叶斯优化本身的代价非常高昂,因此通常用于优化具有少量参数且评估开销很高的任务,例如选择超参数

贝尔曼方程

#rl

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

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

强化学习算法会应用此身份,通过以下更新规则创建 Q-learning

\[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] \]

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

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

#language

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

BERT 具有以下特征:

BERT 的变体包括:

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

偏见(道德/公平性)

#fairness
#fundamentals

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

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

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

偏差(数学)或偏差项

#fundamentals

相对于原点的截距或偏移。偏差是机器学习模型中的一个参数,由以下任一项进行符号化处理:

  • b
  • w0

例如,在下面的公式中,偏差为 b: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

一个术语,用于描述评估文本目标部分之前和之后的文本的系统。相比之下,单向系统仅评估文本的目标部分前面的文本。

例如,假设有一个掩码语言模型,该模型必须确定下面这个问题中表示下划线的单词的概率:

和你一起的_____是什么?

单向语言模型只能根据“内容”“是”和“此”这几个词提供的上下文来确定其概率。相比之下,双向语言模型也可以从“与”和“您”中获取上下文,这可能有助于模型生成更好的预测。

双向语言模型

#language

一种语言模型,根据前置后置文本确定给定词元在文本摘录中的给定位置存在的概率。

二元语法

#seq
#language

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

二元分类

#fundamentals

一种分类任务,用于预测两种互斥类之一:

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

  • 一个用于确定电子邮件是垃圾邮件(正类别)还是非垃圾邮件(负类别)的模型。
  • 一种评估医疗症状的模型,以确定一个人是患有某种特定疾病(正类别)还是没有患有该疾病(负类别)。

多类别分类相对。

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

二元条件

#df

决策树中,一个只有两种可能结果(通常是 yes [是]no [否])的条件。例如,下面是一个二元条件:

temperature >= 100

非二元条件相对。

分箱

分桶的含义相同。

BLEU(双语评估研究)

#language

介于 0.0 和 1.0(含)之间的分数,表示两种人类语言(例如英语和俄语)之间的翻译质量。BLEU 得分为 1.0 表示翻译完美;BLEU 得分为 0.0 表示翻译质量很差。

增强学习

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

边界框

#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 等方法计算所有正类别标签的概率,但仅针对负类别标签的随机样本计算概率。例如,假设有一个标签为 beagledog 的样本,候选采样会计算以下各项的预测概率和对应的损失项:

  • 小猎犬
  • 其余负类别(例如 catlollipopfence)的随机子集。

其想法是,只要正类别始终获得适当的正增强,负类别就可以从频率较低的负强化中学习,并且这确实根据经验观察到。

与计算所有负类别预测的训练算法相比,候选采样的计算效率更高,尤其是在负类别数量非常大时。

分类数据

#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
#生成式 AI

一种提示工程方法,可鼓励大语言模型 (LLM) 逐步解释其原因。以下面的提示为例,请特别注意第二个句子:

如果汽车行驶 7 秒内能从 0 到 60 英里,驾驶员会体验多少重力?在答案中显示所有相关计算。

LLM 的回答可能是:

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

思维链提示会强制 LLM 执行所有计算,这可能会获得更正确的答案。此外,思维链提示可让用户检查 LLM 的步骤,以确定答案是否有意义。

聊天

#language
#生成式 AI

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

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

checkpoint

在特定训练迭代中捕获模型参数状态的数据。借助检查点,可以导出模型权重,或跨多个会话执行训练此外,借助检查点,训练可以继续完成错误(例如作业抢占)。

微调时,训练模型的起点是预训练模型的特定检查点。

类别

#fundamentals

标签可所属的类别。例如:

  • 在检测垃圾邮件的二元分类模型中,这两类可能是垃圾邮件和非垃圾邮件。
  • 在识别狗品种的多类别分类模型中,类别可能是贵宾犬、小猎犬、哈巴狗等。

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

分类模型

#fundamentals

一种model,其预测结果是一个model。例如,以下都是分类模型:

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

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

两种常见的分类模型是:

分类阈值

#fundamentals

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

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

  • 如果此原始值大于分类阈值,则预测为正类别。
  • 如果此原始值小于分类阈值,则预测为负类别。

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

分类阈值的选择对假正例假负例的数量有很大影响。

分类不平衡的数据集

#fundamentals

用于解决某个分类问题的数据集,其中每个类别的标签总数各不相同。例如,假设一个二元分类数据集,其两个标签按以下方式划分:

  • 100 万个排除标签
  • 10 个肯定标签

负例标签的比率为 100,000:1,因此这是一个分类不平衡的数据集。

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

  • 517 个排除标签
  • 483 个肯定标签

多类别数据集也有可能是类别不平衡的。例如,以下多类别分类数据集也是类别不平衡的,因为一个标签的样本比另外两个标签多:

  • 100 万个类别为“green”的标签
  • 200 个类别为“purple”的标签
  • 350 个类别为“orange”的标签

另请参阅大多数类少数类

裁剪

#fundamentals

一种通过执行以下任何一项或两项操作来处理离群值的技术:

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

例如,假设特定特征的值小于 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)。

条件也称为拆分或测试。

使用 leaf 对比条件。

另请参阅:

谈话

#language

光照的含义相同。

从技术上来说,“幻想”可能比“幻觉”更为准确。 然而,幻觉最初流行起来。

配置

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

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

确认偏差

#fairness

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

实验者偏差是一种确认偏差,实验者会不断地训练模型,直到对现有假设进行确认为止。

混淆矩阵

#fundamentals

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

肿瘤(预测) 非肿瘤(预测)
肿瘤(标准答案) 18 (TP) 1(FN)
非肿瘤(标准答案) 6 (FP) 452(田纳西州)

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

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

多类别分类问题的混淆矩阵可帮助您识别错误模式。例如,假设某个 3 类别多类别分类模型的以下混淆矩阵对三种不同的鸢尾类型(维吉尼亚鸢尾、变色鸢尾和山鸢尾)进行了分类。当标准答案是维吉尼卡时,混淆矩阵显示,与山鸢尾相比,该模型错误预测变色的几率要高得多:

  山鸢尾(预测) 变色(预测) 维吉尼卡(预测)
山鸢尾(标准答案) 88 12 0
变色(标准答案) 6 141 7
维吉尼卡(标准答案) 2 27 109

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

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

选区解析

#language

将句子拆分为较小的语法结构(“组成部分”)。 机器学习系统的后期部分(例如自然语言理解模型)可以比原始句子更轻松地解析组成部分。例如,请考虑以下句子:

我的朋友领养了两只猫。

组成部分解析器可以将这个句子分成以下两个组成部分:

  • 我的朋友是一个名词短语。
  • adopted two cats 是一个动词短语。

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

领养了两只猫

可进一步细分为:

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

上下文化语言嵌入

#language
#生成式 AI

一种嵌入,接近于母语人士可以“理解”字词和短语。上下文化语言嵌入可以理解复杂的语法、语义和上下文。

以英语单词 cow 为例,较旧的嵌入(如 word2vec)可以表示英语单词,这样嵌入空间中从公牛的距离类似于从ewe(母羊)到ram(雄羊)或者从female雄性的距离。内容相关语言嵌入可以更进一步,认识到英语用户有时会使用 cow 一词来表示 cow 或 bull。

上下文窗口

#language
#生成式 AI

模型可以在给定提示中处理的词元数量。上下文窗口越大,模型可用于为提示提供连贯且一致的回答的信息就越多。

连续特征

#fundamentals

一种浮点特征,其可能值的范围不受限制,例如温度或权重。

离散特征相对。

便利抽样

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

收敛

#fundamentals

loss 值在每次迭代中变化很小或根本没有变化时达到的状态。例如,下面的损失曲线表明,在大约 700 次迭代时收敛:

笛卡尔图。X 轴表示损失。Y 轴是训练迭代次数。在前几次迭代期间,损失非常高,但会急剧下降。经过大约 100 次迭代后,损失仍然呈下降趋势,但要慢得多。经过大约 700 次迭代后,损失保持不变。

如果后续训练无法改善模型,则模型会收敛

深度学习中,损失值有时会在多次迭代中保持不变或几乎保持不变,然后才最终下降。在长时间的恒定损失值中,您可能会暂时产生收敛的假象。

另请参阅早停法

凸函数

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

U 形曲线,每条曲线上都有一个最低点。

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

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

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

凸优化

使用梯度下降法等数学方法找到凸函数的最小值的过程。机器学习方面的大量研究都侧重于将各种问题表示为凸优化问题,以及更有效地解决这些问题。

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

凸集

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

一张矩形插图。又是一张椭圆形的插图。

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

一张插图,显示缺少切片的饼图。
          另一个插图展示了非常不规则的多边形。

卷积

#image

简单来说,在数学中,是两个函数的组合。在机器学习中,卷积会混合卷积过滤器和输入矩阵,以训练权重

机器学习中的“卷积”一词通常是卷积运算卷积层的简写形式。

如果没有卷积,机器学习算法就必须为大型张量中的每个单元格学习单独的权重。例如,在 2K x 2K 图像上进行训练的机器学习算法将被迫找出 400 万个不同的权重。得益于卷积,机器学习算法只需找到卷积过滤器中每个单元的权重,大大减少了训练模型所需的内存。应用卷积过滤器后,它只需在单元之间进行复制,每个单元都会与过滤器相乘。

卷积过滤器

#image

卷积运算中的两个演员之一。(另一个参与方是输入矩阵切片。)卷积过滤器是一种矩阵,其与输入矩阵相同,但形状较小。例如,假设一个 28x28 的输入矩阵,过滤器可以是小于 28x28 的任何 2D 矩阵。

在摄影操作中,卷积过滤器中的所有单元格通常设置为 1 和 0 的恒定模式。在机器学习中,卷积过滤器通常会以随机数字为种子,然后由网络训练理想的值。

卷积层

#image

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

一个 3x3 矩阵,其值如下:[[0,1,0], [1,0,1], [0,1,0]]

以下动画显示了一个由 9 个卷积运算(涉及 5x5 输入矩阵)组成的卷积层。请注意,每个卷积运算都作用于输入矩阵的不同 3x3 切片。生成的 3x3 矩阵(右侧)包含 9 个卷积运算的结果:

动画演示:两个矩阵。第一个矩阵是 5x5 矩阵:[[128,97,53,201,198], [35,22,25,200,195], [37,24,28,197,182], [33,28,92,195,179],第二个矩阵是 3x3 矩阵:[[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 输入矩阵为例:

5x5 矩阵:[[128,97,53,201,198], [35,22,25,200,195], [37,24,28,197,182], [33,28,92,195,179], [31,10

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

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

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

将卷积过滤器 [[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 网络的含义相同。

交叉熵

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

交叉验证

一种机制,用于估算模型model泛化到新数据的效果,方法是使用训练集model中保留的一个或多个不重叠的数据子集测试模型。

累积分布函数 (CDF)

用于定义小于或等于目标值的样本频率的函数。例如,假设连续值的正态分布。 CDF 表示大约 50% 的样本应小于或等于平均值,大约 84% 的样本应小于或等于高于平均值的一个标准差。

D

数据分析

通过考虑样本、测量结果和可视化结果来了解数据。数据分析在首次接收数据集时、构建第一个模型之前特别有用。model此外,它对于理解实验和调试系统问题也至关重要。

数据增强

#image

通过转换现有样本来创建更多样本,人为增加训练样本的范围和数量。例如,假设图片是您的某个特征,但您的数据集不包含足够的图片样本供模型学习有用关联。理想情况下,您应向数据集添加足够的已加标签的图片,以使模型能够正确训练。如果无法做到这一点,数据增强可以旋转、拉伸和反射每张图像,以生成原始照片的多个变体,从而产生足够的标记数据,实现出色的训练效果。

DataFrame

#fundamentals

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

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

DataFrame 中的每一列都采用类似于二维数组的结构,不同之处在于可以为每一列分配自己的数据类型。

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

数据并行处理

一种扩缩训练推理的方法,将整个模型复制到多个设备,然后将一部分输入数据传递给每个设备。数据并行处理可以实现对非常大的批次大小的训练和推理;但是,数据并行处理需要模型足够小,能够适应所有设备。

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

另请参阅模型并行处理

数据集或数据集

#fundamentals

原始数据的集合,通常(但并非专门)采用以下某种格式进行组织:

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

Dataset API (tf.data)

#TensorFlow

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

如需详细了解 Dataset API,请参阅《TensorFlow 编程人员指南》中的 tf.data:构建 TensorFlow 输入流水线

决策边界

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

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

决策森林

#df

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

判定阈值

分类阈值的含义相同。

决策树

#df

一种监督式学习模型,由一组以分层方式组织的条件conditions离子组成。conditions例如,下面是一个决策树:

一棵决策树,由四个条件构成,按层级结构排列,有 5 个叶子。

解码器

#language

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

解码器通常是较大模型的一个组件,通常与编码器搭配使用。

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

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

深度模型

#fundamentals

包含多个隐藏层神经网络

深度模型也称为“深度神经网络”。

宽度模型相对。

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

深度模型的含义相同。

深度 Q 网络 (DQN)

#rl

Q 学习:一种可预测 Q 函数的深度神经网络

评价是深度 Q-网络 (Deep Q-Network) 的同义词。

受众特征对等

#fairness

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

例如,如果小人人民和大人小人都申请了格鲁布达比大学,则只要允许小人人民和大人小人民众的比例相同,就可以达到人口统计学平等水平,无论其中一个群体是否平均比另一个人更符合条件。

均衡几率机会均等相对,后者允许汇总结果取决于敏感属性,但不允许某些指定标准答案标签的分类结果取决于敏感属性。请参阅“利用更智能的机器学习解决歧视问题”部分,查看可视化内容,了解针对受众特征对等进行优化时的权衡。

去噪

#language

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

  1. 噪声是人为添加到数据集中的一种。
  2. 模型会尝试移除噪声。model

通过去噪功能,可以从无标签样本中学习。原始数据集作为目标或标签,将噪声数据作为输入。

一些遮盖语言模型会按如下方式使用去噪功能:

  1. 通过遮盖部分词元,人为地向无标签句子添加噪声。
  2. 模型会尝试预测原始词元。

密集特征

#fundamentals

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

8 3 7 5 2 4 0 4 9 6

稀疏特征相对。

密集层

全连接层的含义相同。

深度

#fundamentals

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

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

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

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

#image

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

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

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

派生标签

代理标签的含义相同。

设备

#TensorFlow
#GoogleCloud

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

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

差分隐私

机器学习中采用匿名化方法,用于防止模型训练集中包含的任何敏感数据(例如,个人的个人信息)被泄露。此方法可确保模型model不会学习或记住有关特定个体的太多信息。这是通过在模型训练期间采样并添加噪声来实现的,以遮盖个别数据点,从而降低泄露敏感训练数据的风险。

差分隐私也用于机器学习之外。例如,数据科学家在计算不同受众特征的产品使用情况统计信息时,有时会使用差分隐私来保护个人隐私。

降维

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

尺寸

一个多含义术语,具有以下任一定义:

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

    • 标量的维度为零;例如 ["Hello"]
    • 向量有一个维度,例如 [3, 5, 7, 11]
    • 矩阵有两个维度,例如 [[2, 4, 18], [5, 7, 14]]

    您可以使用一个坐标唯一地指定一维矢量中的特定单元;您需要使用两个坐标唯一地指定二维矩阵中的特定单元。

  • 特征向量中的条目数量。

  • 嵌入层中的元素数量。

直接提示

#language
#生成式 AI

零样本提示的含义相同。

离散特征

#fundamentals

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

连续特征相对。

判别模型

一种模型,用于根据一组model来预测标签model更正式地说,判别模型会根据特征和权重定义输出的条件概率,即:

p(output | features, weights)

例如,根据特征和权重预测电子邮件是否为垃圾邮件的模型就属于判别模型。

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

生成模型相对。

判别器

一种系统,用于确定样本是真实还是虚假。

或者,生成对抗网络中的子系统,用于确定生成器创建的样本是真实的还是虚假的。

不同的影响

#fairness

在决策时关注对不同群体产生不成比例影响的人群。这通常是指算法决策过程对某些子群组的危害或好处多于其他子群组。

例如,假设某种算法确定小国民众是否有资格申请微型房贷,如果其邮寄地址包含特定的邮政编码,则更有可能将其归类为“不符合条件”。如果与小端小端模式的小人国相比,大端小端小人区更有可能具有具有此邮政编码的邮寄地址,则此算法可能会产生不同的影响。

不同处理方式相对,后者侧重于当子群组特征是算法决策过程的显式输入时导致的差异。

不同处理

#fairness

将正文的敏感属性融入算法决策过程中,以便以不同方式对待不同的子群体。

例如,设想一种算法,该算法根据小人民在其贷款申请中提供的数据,确定他们是否符合小屋贷款的条件。如果算法使用小端子从属关系作为大端字节或小端子作为输入,则会对该维度采取不同的处理方式。

差异化影响相对,后者侧重于算法决策对子群体的社会影响方面的差异,无论这些子群体是否为模型的输入。

蒸馏

#生成式 AI

将一个模型model(称为教师model)的大小缩减为较小模型(称为学生model),以尽可能如实地模拟原始模型的预测结果。蒸馏非常有用,因为与较大模型(老师)相比,较小的模型具有两个主要优势:

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

但是,学生的预测通常不如老师的预测好。

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

使用以下术语比较和对比蒸馏:

内容分发

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

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

  • 左侧是财富与拥有该财富的人数之间的幂律分配关系。
  • 右侧是身高与拥有该身高的人数的正态分布。

两个直方图。一个直方图显示以下幂定律分布:x 轴表示财富,y 轴表示拥有该财富的人数。大多数人的财富非常少,少数人富有。另一个直方图显示身高在 x 轴上的人数,y 轴上的人数是正态分布。大多数人都集中在某个接近平均水平的位置。

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

短语“失分”是指数据集中未显示的值或非常罕见的值。例如,在由猫的图片组成的数据集中,土星的图片会被视为不在分布范围内。

分裂式层次聚类

#clustering

请参阅层次聚类

降采样

#image

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

  • 减少特征中的信息量,以便更高效地训练模型。例如,在训练图片识别模型之前,将高分辨率图片降采样为低分辨率格式。
  • 使用比例异常低的高代表类别样本进行训练,以改进使用代表性不足的类别进行的模型训练。例如,在类别不平衡的数据集中,模型往往能了解关于多数类别的信息很多,而对少数类却没有足够的信息。降采样有助于平衡多数类别和少数类的训练量。

邓氏编码

#rl

深度 Q-网络 的缩写。

丢弃正则化

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

动态

#fundamentals

频繁或持续执行的某些操作。 术语“动态”和“在线”是机器学习中的同义词。 以下是动态在线在机器学习中的常见用途:

  • 动态模型(或在线模型)是指频繁或持续重新训练的模型。
  • 动态训练(或在线训练)是频繁或连续进行训练的过程。
  • 动态推理(即在线推理)是按需生成预测的过程。

动态模型

#fundamentals

频繁(可能持续)重新训练的model。动态模型是一个“终身学习器”,能够不断适应不断变化的数据。动态模型也称为在线模型

静态模型相对。

E

即刻执行

#TensorFlow

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

早停法

#fundamentals

一种正则化方法,其涉及在训练损失减少之前结束训练在早停法中,当验证数据集的损失开始增加(即泛化性能变差)时,您有意停止训练模型。

土地玩家的距离 (EMD)

衡量两个分布的相对相似性的度量。 土地玩家的距离越小,分布越相似。

修改距离

#language

用于衡量两个文本字符串彼此相似度的指标。 在机器学习中,编辑距离非常有用,因为它易于计算,并且是比较已知相似的两个字符串或查找与给定字符串相似的字符串的有效方法。

修改距离有多种定义,每种定义使用不同的字符串操作。例如, Levenshtein 距离考虑使用最少的删除、插入和替换操作。

例如,单词“heart”和“darts”之间的 Levenshtein 距离为 3,因为以下 3 次修改是将一个单词转换为另一个单词所需的最少更改:

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

Einsum 表示法

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

NumPy 提供常见的 Einsum 实现。

嵌入层

#language
#fundamentals

一个特殊的隐藏层,用于对高维度分类特征进行训练,以学习更低维度的嵌入向量。与仅使用高维分类特征进行训练相比,嵌入层使神经网络的训练效率更高。

例如,Google 地球目前支持约 73,000 种树种。假设树种是模型中的特征,因此您模型的输入层包含一个长度为 73000 的独热矢量例如,baobab 的表示形式如下:

包含 73,000 个元素的数组。前 6232 个元素的值是 0。下一个元素的值是 1。最后 66767 个元素的值为零。

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

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

嵌入空间

#language

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

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

嵌入向量

#language

从广义上讲,从描述该隐藏层输入的任何隐藏层获取的浮点数数组。通常,嵌入矢量是在嵌入层中训练的浮点数数组。例如,假设嵌入层必须学习地球上 73000 个树种的嵌入向量。也许以下数组是猴面包树的嵌入向量:

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

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

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

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

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

经验风险最小化 (ERM)

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

编码器

#language

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

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

某些系统使用编码器的输出作为分类或回归网络的输入。

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

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

集成学习

独立训练的模型集合,其预测结果经过平均或汇总。在许多情况下,集成学习的预测效果优于单个模型。例如,随机森林是由多个决策树构建的集成学习。请注意,并非所有决策森林都是集成学习。

#df

信息论中, 描述概率分布的不可预测程度。或者,熵也定义为每个样本包含的信息量。如果一个随机变量的所有值的可能性都相同,则分布具有最高可能的熵。

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

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

其中:

  • H 是熵。
  • p 是样本数“1”所占的比例。p
  • 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。

决策树中,熵有助于实现信息增益,以帮助拆分器在分类决策树成长过程中选择条件

将熵与以下各项进行比较:

熵通常称为香农熵。

环境

#rl

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

分集

#rl

在强化学习中,代理在每次尝试学习环境时都反复尝试。

周期数

#fundamentals

对整个训练集进行一次完整训练,使每个样本都只处理一次。

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

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

  • 该数据集包含 1000 个样本。
  • 批次大小为 50 个样本。

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

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

艾普西隆贪欲政策

#rl

在强化学习中,这种政策要么遵循具有 epsilon 概率的随机政策,要么遵循贪心政策例如,如果 Epsilon 值为 0.9,则该政策在 90% 的时间内遵循随机政策,10% 遵循贪心政策。

在连续的剧集中,该算法会降低 Epsilon 值,以便从遵循随机政策转为遵循贪心政策。通过转换政策,代理会先随机探索环境,然后贪心地利用随机探索的结果。

机会平等

#fairness

一种公平性指标,用于评估模型对敏感属性的所有值是否同样很好地预测了预期结果。换句话说,如果模型的预期结果是正类别,那么目标是使所有组的真正例率相同。

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

假设格鲁布达比大学允许小人国人和大人民报名参加严格的数学课程。小人国的中学提供丰富的数学课程,并且绝大多数学生都有资格攻读大学课程。Brobdingnagians 的中学根本不提供数学课,因此符合条件的学生大大减少。如果符合条件的学生无论是小人国还是布伯丁纳吉人,入学概率均等,就能够满足就国籍(小国人或布罗布丁纳吉人)首选的“已录取”标签,从而满足就业机会平等要求。

例如,假设有 100 名小人人民和 100 名小牛队申请参加格鲁布达比大学的录取,则录取决定如下:

表 1. 小人国申请者(90% 合格)

  符合资格 不合格
已获准 45 3
已遭拒 45 7
总计 90 10
被录取的合格学生所占百分比:45/90 = 50%
被拒的不合格学生所占百分比:7/10 = 70%
被录取的 Lilliputian 学生总数所占百分比:(45+3)/100 = 48%

 

表 2. Brobdingnagian 申请者(10% 符合条件):

  符合资格 不合格
已获准 5 9
已遭拒 5 81
总计 10 90
成功录取的学生所占百分比:5/10 = 50%
被拒的不合格学生所占百分比:81/90 = 90%
布罗布丁纳吉学生录取的学生总数所占百分比:(5+9)/100 = 14%

上述示例满足了接受合格学生的机会均等,因为符合条件的小人国人和小布丁县人都有 50% 的被录取机会。

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

  • 人口统计学平等:小人国居民和小布丁纳吉人民众的录取率各不相同;小人国学生有 48% 的录取率,但仅有 14% 的小人国学生可以录取。
  • 平等几率:虽然符合条件的小人国学生和布罗布丁纳吉人都有机会被录取,但不符合条件的小人国学生和小人国学生同样有被拒绝的机率这一额外限制并不满足。不合格的小人国的拒绝率为 70%,而不合格的小人国的拒绝率为 90%。

如需详细了解机会平等的讨论,请参阅监督式学习中的机会平等。另请参阅“利用更智能的机器学习解决歧视问题”,查看可视化图表,了解在针对机会均等进行优化时如何权衡利弊。

均等几率

#fairness

一个公平性指标,用于评估模型是否针对敏感属性的所有值(包括正类别负类别,而不仅仅是一个类别或其他类别)预测结果。换句话说,所有组的真正例率假负例率均应相同。

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

例如,假设格鲁布达比大学允许小人国人和小布丁纳吉人参加严格的数学课程。小人国的中学提供完善的数学课程,而且绝大多数学生都符合入读大学课程的条件。Brobdingnagians 的中学根本不提供数学课,因此符合条件的学生大大减少。只要申请者是小人国还是大布丁纳吉人,只要符合条件,就有机会被录取,不合格,被拒绝的可能性则平等。

假设 100 名小人人和 100 名大人人报名参加格鲁布达比大学,录取决定如下:

表 3. 小人国申请者(90% 合格)

  符合资格 不合格
已获准 45 2
已遭拒 45 8
总计 90 10
成功录取的学生所占百分比:45/90 = 50%
被拒的不合格学生所占百分比:8/10 = 80%
被录取的利立普特学生占总学生所占百分比:(45+2)/100 = 47%

 

表 4. Brobdingnagian 申请者(10% 符合条件):

  符合资格 不合格
已获准 5 18
已遭拒 5 72
总计 10 90
成功录取的学生所占百分比:5/10 = 50%
被拒录取的不合格学生所占百分比:72/90 = 80%
布罗布丁纳吉亚州学生中被录取的学生所占百分比总计:(5+18)/100 = 23%

平等的胜率得到满足,因为符合条件的小人国学生和大布丁纳吉人学生都有机会被录取,而不符合条件的学生有 80% 的被录取概率。

“均等几率”在“监督式学习中的机会平等”中正式定义如下:“预测项 ❖ 满足受保护属性 A 和结果 Y 的均等几率(如果 HIDL 和 A 是独立的,有条件限制,取决于 Y)。”

Estimator

#TensorFlow

已弃用的 TensorFlow API。使用 tf.keras 而不是 Estimator。

评估版

衡量机器学习模型预测质量的过程。在开发模型时,您通常不仅在训练集上应用评估指标,对验证集测试集应用评估指标。您还可以使用评估指标来相互比较不同的模型。

示例

#fundamentals

一行 features 的值,也可能是 label 的值。监督式学习中的示例分为两大类:

  • 有标签样本由一个或多个特征和一个标签组成。有标签样本会在训练期间使用。
  • 无标签样本由一个或多个特征组成,但没有标签。推理期间会使用无标签样本。

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

特性 标签
温度 湿度 压力 测试分数
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}}$$

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

  • 精确率 = 0.6
  • 召回率 = 0.4
$$F{_1} = \frac{\text{2 * 0.6 * 0.4}} {\text{0.6 + 0.4}} = 0.48$$

当精确率和召回率非常相似(如上例所示)时,F1 接近其平均值。当精确率和召回率存在显著差异时,F1 更接近较小的值。例如:

  • 精确率 = 0.9
  • 召回率 = 0.1
$$F{_1} = \frac{\text{2 * 0.9 * 0.1}} {\text{0.9 + 0.1}} = 0.18$$

公平性约束

#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 轴。

功能

#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 天之间的情绪差异。

如果您根据两个特征创建合成特征,而这两个特征分别具有许多不同的分桶,则产生的特征组合将有大量可能的组合。例如,如果一个特征有 1000 个分桶,而另一个特征有 2000 个分桶,则生成的特征组合有 2000000 个分桶。

正式地说,十字是笛卡尔积

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

特征工程

#fundamentals
#TensorFlow

此过程涉及以下步骤:

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

例如,您可以确定 temperature 可能是一个有用的功能。然后,您可以尝试进行分桶,以优化模型可以从不同 temperature 范围中学到的内容。

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

特征提取

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

特征重要性

#df

变量重要性的含义相同。

特征集

#fundamentals

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

特征规范

#TensorFlow

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

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

特征向量

#fundamentals

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

[0.92, 0.56]

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

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

[0.73, 0.49]

特征工程决定了如何表示特征向量中的特征。例如,具有五个可能值的二元分类特征可以用独热编码表示。在这种情况下,特定样本的特征向量部分将由四个 0 和第三个位置一个 1.0 组成,如下所示:

[0.0, 0.0, 1.0, 0.0, 0.0]

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

  • 二元分类特征,具有五个可能值,以独热编码表示;例如:[0.0, 1.0, 0.0, 0.0, 0.0]
  • 另一个二元分类特征,其三个可能值以独热编码表示;例如:[0.0, 0.0, 1.0]
  • 浮点特征;例如:8.3

在这种情况下,每个样本的特征向量将由九个值表示。根据上述列表中的示例值,特征向量为:

0.0
1.0
0.0
0.0
0.0
0.0
0.0
1.0
8.3

特征化

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

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

联合学习

一种分布式机器学习方法,使用位于智能手机等设备上的分散式样本训练机器学习模型。在联邦学习中,一部分设备从中央协调服务器下载当前模型。设备使用存储在设备上的示例来改进模型。然后,设备将模型改进内容(而不是训练示例)上传到协调服务器,在那里与其他更新汇总以生成改进的全局模型。汇总后,不再需要由设备计算的模型更新,并且可以将其舍弃。

由于训练样本从不上传,因此联邦学习遵循集中数据收集和数据最小化的隐私权原则。

如需详细了解联邦学习,请参阅本教程

反馈环

#fundamentals

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

前馈神经网络 (FFN)

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

少样本学习

一种机器学习方法,通常用于对象分类,旨在仅通过少量训练样本来训练有效的分类器。

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

少样本提示

#language
#生成式 AI

包含多个(“几个”)示例的提示,演示大语言模型应如何响应。例如,以下冗长的提示包含两个示例,显示了大型语言模型如何回答查询。

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

零样本提示单样本提示相比,少样本提示通常可以生成更理想的结果。然而,少样本提示需要更长的提示。

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

小提琴

#language

一个 Python 优先的 configuration 库,可在没有侵入性代码或基础架构的情况下设置函数和类的值。对于 Pax 和其他机器学习代码库,这些函数和类代表模型训练超参数

Fiddle 假设机器学习代码库通常分为以下几类:

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

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

微调

#language
#image
#生成式 AI

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

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

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

  1. 预训练:利用庞大的常规图片数据集(如维基共享资源中的所有图片)训练大型图片模型。
  2. 微调:训练预训练模型以执行特定任务,例如生成虎鲸的图片。

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

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

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

使用以下术语比较和对比微调:

亚麻

#language

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

毛发素

#language

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

忘记关口

#seq

长短期记忆 (Long-Short-Term Memory) 单元格中调节信息流动通过该单元格的部分。忽略门控通过决定要从单元状态舍弃哪些信息来维护上下文。

完整 softmax

softmax 的含义相同。

候选采样相对。

全连接层

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

全连接层又称为密集层

函数转换

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

G

GAN

生成对抗网络的缩写。

泛化

#fundamentals

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

泛化曲线

#fundamentals

训练损失验证损失作为迭代次数的函数的图。

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

笛卡尔图,其中 y 轴标记为损失,x 轴标记为迭代。系统会显示两个图表。一个图显示的是训练损失,另一个显示了验证损失。
这两个图的起点类似,但训练损失最终下降得远低于验证损失。

广义线性模型

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

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

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

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

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

生成对抗网络 (GAN)

一个创建新数据的系统,其中生成器创建数据,判别器判断数据是否有效。

生成式 AI

#language
#image
#生成式 AI

一个新兴的变革性领域,没有正式定义。 尽管如此,大多数专家都认同生成式 AI 模型可以创建(“生成”)以下所有内容:

  • 复杂
  • 连贯
  • 原图

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

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

预测性机器学习相对。

生成模型

实际上,一个可以执行以下任一操作的模型:

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

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

p(examples)

非监督式学习模型是生成式的。

判别模型相对。

generator

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

判别模型相对。

基尼杂质

#df

一个与类似的指标。拆分器使用衍生自基尼杂质或熵的值来构成分类决策树条件信息增益由熵得出。对于衍生自基尼杂质的指标,没有公认的等效术语;但是,这个未命名的指标与信息增益一样重要。

基尼杂质也称为 gini 索引,或简称为 gini

golden 数据集

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

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

GPT(生成式预训练 Transformer)

#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}$ 的损失梯度。

梯度提升的现代变体在计算中也包括损失的二阶导数(海森)。

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

梯度裁剪

#seq

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

梯度下降法

#fundamentals

用于最小化损失的数学技术。梯度下降法以迭代方式调整权重偏差,逐步找到最佳组合以最大限度降低损失。

梯度下降法的年代比机器学习晚得多。

图表

#TensorFlow

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

图执行 (图执行)

#TensorFlow

一种 TensorFlow 编程环境,在该环境中,程序首先构建一个,然后执行该图的全部或部分内容。图执行是 TensorFlow 1.x 中的默认执行模式。

即刻执行相对。

贪婪政策

#rl

在强化学习中,一种政策始终会选择预期 return 最高的操作。

标准答案

#fundamentals

真人秀。

实际发生的事情。

例如,假设有一个二元分类模型,该模型预测大学一年级学生是否会在六年内毕业。该模型的标准答案是该学生是否真的在六年内毕业。

群体归因偏差

#fairness

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

另请参阅群外同质性偏差群内偏差

H

幻觉

#language

声称对现实世界做出断言的生成式 AI 模型生成看似合理但实际上不正确的输出。例如,某个生成式 AI 模型声称 Barack Obama 于 1865 年去世,是制造幻觉的。

哈希技术

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

例如,地球上约有 73,000 种树木。您可以在 73000 个单独的分类分桶中代表 73000 个树种中的每一种。或者,如果实际上只有 200 个树种出现在数据集中,您可以使用哈希技术将树种划分到大约 500 个分桶中。

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

启发法

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

隐藏层

#fundamentals

神经网络输入层(特征)与输出层(预测)之间的层。每个隐藏层都包含一个或多个神经元例如,下面的神经网络包含两个隐藏层,第一个层包含三个神经元,第二个包含两个神经元:

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

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

层次聚类

#clustering

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

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

形心聚类相对。

合页损失函数 (hinge loss)

一系列用于分类损失函数,旨在查找距离每个训练样本尽可能远的决策边界,从而最大化样本与边界之间的边距。KSVM 使用合页损失函数(或相关函数,例如平方合页损失函数)。对于二元分类,合页损失函数的定义如下:

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

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

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

因此,合页损失与 (y * y') 的关系图如下所示:

由两个相连的线段组成的笛卡尔图。第一个线段从 (-3, 4) 开始,以 (1, 0) 结束。第二条线段从 (1, 0) 开始,以 0 的斜率一直延续。

历史偏差

#fairness

一种偏差已经存在于现实世界中,并且已进入数据集。这些偏见往往反映了现有的文化成见、受众特征不平等以及对某些社会群体的偏见。

以一个分类模型为例,该模型用于预测贷款申请人是否会拖欠贷款,该模型使用两个不同社区的当地银行 20 世纪 80 年代的历史贷款违约数据进行训练。如果社区 A 的过往申请者拖欠贷款的可能性比社区 B 的申请者高 6 倍,则该模型可能会学习历史偏见,导致模型在社区 A 中批准贷款的可能性较低,即使导致该社区较高违约率的历史条件不再适用。

留出数据

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

主办方

#TensorFlow
#GoogleCloud

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

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

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

超参数

#fundamentals

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

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

超平面

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

I

i.i.d

独立同分布的缩写。

图像识别

#image

对图片中的对象、模式或概念进行分类的过程。 图像识别也称为图像分类

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

不平衡的数据集

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

隐性偏差

#fairness

根据思维模型和记忆自动建立关联或假设。隐性偏差会影响以下方面:

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

例如,在构建识别婚礼照片的分类器时,工程师可以将照片中出现的白色连衣裙作为一个特征。不过,白色裙子仅在某些时代和某些文化中才是一种习俗。

另请参阅确认偏差

插补

简短形式的价值插补

公平性指标不兼容

#fairness

某些公平概念是互不相容的,不能同时得到满足。因此,没有一个通用的指标可应用于所有机器学习问题,用于量化公平性。

虽然这似乎令人沮丧,但公平性指标的不兼容并不意味着公平性工作毫无成效。相反,它建议必须针对给定机器学习问题根据上下文定义公平性,以防止其用例特有的危害。

如需详细了解此主题,请参阅“关于(不)公平性”

情境学习

#language
#生成式 AI

相当于少样本提示

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

#fundamentals

从不会变化的分布中提取的数据,其中绘制的每个值不依赖于之前绘制的值。i.i.d. 是机器学习的理想气体,这是一种有用的数学结构,但在现实世界中几乎从未发现过。例如,网页的访问者在短时间内的分布可能为 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

决策树中,一种条件,用于测试一组项目是否存在某个项目。例如,以下是 in-set 条件:

  house-style in [tudor, colonial, cape]

在推理期间,如果房屋样式 feature 的值为 tudorcolonialcape,则此条件的评估结果为“是”。如果房屋式地图项的值是其他值(例如 ranch),则此条件的评估结果为“否”。

与测试独热编码特征的条件相比,使用内嵌条件通常有助于提升决策树效率。

实例

样本的含义相同。

指令调优

#生成式 AI

一种微调形式,可提高生成式 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

intersection over union 的缩写。

项矩阵

#recsystems

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

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

items

#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)

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

关键点

#image

图片中特定特征的坐标。例如,对于区分花卉种类的图像识别模型,关键点可能是每个花瓣的中心、茎、花柱等。

k-fold 交叉验证

一种算法,用于预测模型对新数据进行泛化的能力。以 k-fold 为单位的 k 表示您将数据集样本分成的相等组的数量;也就是说,训练和测试模型 k 次。对于每轮训练和测试,不同的组是测试集,其余的组都成为训练集。经过 k 轮训练和测试后,您计算所选测试指标的平均值和标准差。

例如,假设您的数据集包含 120 个样本。再假设您决定将 k 设置为 4。因此,在重排样本后,您将数据集分成四个相等的组,每组 30 个样本,然后进行四轮训练/测试:

一个数据集,分成四个相同的样本组。在第 1 轮中,前三组用于训练,最后三组用于测试。在第 2 轮中,前两组和最后一组用于训练,而第三组用于测试。在第 3 轮中,第一组和最后两组用于训练,而第二组用于测试。在第 4 轮中,第一组用于测试,而后三组用于训练。

例如,均方误差 (MSE) 可能是线性回归模型最有意义的指标。因此,您会发现 MSE 在所有四轮中的平均值和标准差。

k-means

#clustering

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

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

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

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

包含数十个数据点的笛卡尔曲线图。

如果 k=3,则 k-means 算法将确定三个形心。每个样本都会被分配到与其最接近的形心,从而产生三个组:

除了添加了三个形心外,与上图中的笛卡尔图相同。
之前的数据点被划分为三个不同的组,每组代表最接近特定形心的数据点。

假设制造商想要确定小号、中号和大号狗毛衣的理想尺寸。三个形心分别标识该集群中每只狗的平均高度和平均宽度。因此,制造商可能应该根据这三个形心确定毛衣尺寸。请注意,聚类的形心通常不是聚类中的样本。

上图显示了 k-means 适用于仅具有两个特征(高度和宽度)的样本。请注意,k-means 可以跨多个特征对样本进行分组。

k 中位数

#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

损失函数,用于计算实际标签值与模型预测的值之差的绝对值。例如,下面是一个包含五个样本的批次的 L1 损失计算方法:

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

L1 损失对离群值的敏感度不如 L2 损失

平均绝对误差是每个样本的平均 L1 损失。

L1 正则化

#fundamentals

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

L2 正则化相对。

L2 损失

#fundamentals

损失函数,用于计算实际标签值与模型预测的值之差的平方。例如,下面是一个包含五个样本的批次的 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

一种model,用于估算某个词元model或词元序列出现在较长词元序列中的概率。

大语言模型

#language

没有严格定义的非正式术语,通常是指具有大量参数语言模型某些大型语言模型包含超过 1000 亿个参数。

潜在空间

#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 中的所有函数均与 Keraslayers API 中的对应函数具有相同的名称和签名。

叶子

#df

决策树中的任何端点。与条件不同,叶项不执行测试。更确切地说,叶项是一种可能的预测。叶节点也是推理路径的终端节点。

例如,下面的决策树包含三叶树:

一棵决策树,包含两个条件,分别指向三片叶子。

Learning Interpretability Tool (LIT)

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

您可以使用开源 LIT 解释模型或直观呈现文本、图片和表格数据。

学习速率

#fundamentals

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

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

最小二乘回归

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

线性

#fundamentals

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

线性关系的曲线图是一条直线。

非线性相对。

线性模型

#fundamentals

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

与深度模型相比,线性模型通常更易于训练和可解释。但是,深度模型可以学习特征之间的复杂关系。

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

线性回归

#fundamentals

一种同时满足以下两个条件的机器学习模型:

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

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

LIT

Learning Interpretability Tool (LIT)(以前称为“语言可解释性工具”)的缩写。

LLM

#language

大语言模型的缩写。

逻辑回归

#fundamentals

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

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

以某个逻辑回归模型为例,该模型会计算输入电子邮件是垃圾邮件或非垃圾邮件的概率。在推理期间,假设模型预测值为 0.72。因此,模型估算如下:

  • 有 72% 的电子邮件是垃圾邮件。
  • 电子邮件不是垃圾邮件的可能性为 28%。

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

  1. 模型通过应用输入特征的线性函数来生成原始预测 (y')。
  2. 模型使用该原始预测作为 S 型函数的输入,该函数将原始预测转换为 0 到 1 之间的值(不含 0 和 1)。

与任何回归模型一样,逻辑回归模型可以预测数字。但是,这个数字通常成为二元分类模型的一部分,如下所示:

  • 如果预测数量大于分类阈值,则二元分类模型会预测正类别。
  • 如果预测数字小于分类阈值,则二元分类模型会预测负类别。

logits

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

对数损失函数

#fundamentals

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

对数几率

#fundamentals

某些事件的发生几率的对数。

长/短期记忆 (LSTM)

#seq

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

LoRA

#language
#生成式 AI

低排名自适应的缩写。

#fundamentals

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

损失函数计算损失。

损失聚合器

一种机器学习算法,可合并多个模型的预测结果并使用这些预测结果进行单个预测,从而提高模型性能因此,损失聚合器可以减少预测的方差并提高预测的准确率

损失曲线

#fundamentals

损失作为训练迭代次数的函数。下图显示了典型的损失曲线:

损失与训练迭代的笛卡尔图,显示初始迭代的损失快速下降,然后逐渐下降,然后在最后一次迭代期间呈平斜下降趋势。

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

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

另请参阅泛化曲线

损失函数

#fundamentals

训练或测试期间,用于计算一批样本的损失的数学函数。与预测不佳的模型相比,损失函数为做出良好预测的模型返回的损失更低。

训练的目标通常在于最大限度降低损失函数返回的损失。

存在许多不同类型的损失函数。为您正在构建的模型类型选择合适的损失函数。例如:

损失曲面

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

低排名自适应 (LoRA)

#language
#生成式 AI

用于执行参数高效微调的算法,仅对大语言模型参数的子集进行微调LoRA 具有以下优势:

  • 与需要微调所有模型参数的技术相比,这种方法的微调速度更快。
  • 降低微调模型中推理的计算开销。

使用 LoRA 调优的模型可以维持或提升其预测质量。

LoRA 支持模型的多个专用版本。

LSTM

#seq

Long Short-Term Memory 的缩写。

M

机器学习

#fundamentals

一种程序或系统,用于根据输入数据训练模型。经过训练的模型可以根据从用于训练模型的同一分布中提取的新数据(以前从未见过的数据)进行有用的预测。

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

多数类

#fundamentals

分类不平衡的数据集中较为常见的标签。例如,假设某个数据集包含 99% 的负类别标签和 1% 的正类别标签,则负类别标签为多数类别。

少数类相对。

马尔可夫决策过程 (MDP)

#rl

一个表示决策模型的图,在该图中,决策(或操作)在马尔可夫属性持有的假设条件下,在一系列状态中导航。强化学习中,状态之间的这些转换会返回一个数字形式的奖励

马尔可夫属性

#rl

某些环境的属性,其中状态转换完全由当前状态中隐含的信息和代理的操作决定。

遮盖语言模型

#language

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

帽子里的 ____ 回来了。

文献通常使用字符串“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 项数量。

例如,对 3 个用户和 5 个项使用矩阵因式分解可得到以下用户矩阵和项矩阵:

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,与推荐矩阵中该单元格对应的点积有望在 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 损失除以该批次中的样本数。

例如,请考虑在下面这批 5 个样本中计算 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

将平均绝对误差与均方误差均方根误差进行对比。

均方误差 (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 到 1000 个样本之间。

例如,假设整个训练集(全批量)包含 1000 个样本。进一步假设您将每个小批次的批次大小设置为 20。因此,每次迭代都会从 1000 个样本中随机选择 20 个来决定损失,然后相应地调整权重偏差

计算小批量的损失要比计算全批量中所有样本的损失效率得多。

小批次随机梯度下降法

使用小批次梯度下降法换句话说,小批量随机梯度下降法会根据一小部分训练数据估算梯度。常规随机梯度下降法使用大小为 1 的小批次。

极小损失函数 (minimax loss)

生成对抗网络的损失函数,基于所生成数据分布与真实数据分布之间的交叉熵

第一篇论文使用了 minmax 损失来描述生成对抗网络。

少数类

#fundamentals

分类不平衡的数据集中不太常见的标签。例如,假设某个数据集包含 99% 负类别标签和 1% 正类别标签,则正类别标签为少数类。

大多数类别相对。

机器学习

机器学习的缩写。

MNIST

#image

由 LeCun、Cortes 和 Burges 编译的公共领域数据集,包含 60000 张图像,每张图像显示人类如何手动书写从 0 到 9 的特定数字。每张图片都存储为一个 28x28 的整数数组,其中每个整数都是 0 到 255(含)之间的灰度值。

MNIST 是机器学习的规范数据集,通常用于测试新的机器学习方法。如需了解详情,请参阅 MNIST 手写数字数据库

modality

#language

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

model

#fundamentals

通常,处理输入数据并返回输出的任何数学结构。换句话说,模型是系统进行预测所需的一组参数和结构。在监督式机器学习中,模型将样本作为输入,并推断出预测结果作为输出。在监督式机器学习中,模型会有所不同。例如:

  • 线性回归模型由一组权重偏差组成。
  • 神经网络模型由以下部分组成:
    • 一组隐藏层,每个隐藏层包含一个或多个神经元
    • 与每个神经元相关的权重和偏差。
  • 决策树模型由以下部分组成:
    • 树的形状;即条件和树叶相连的模式。
    • 条件开,叶子。

您可以保存、恢复模型或制作模型副本。

非监督式机器学习还会生成模型,通常是可将输入样本映射到最合适的集群的函数。

模型能力

模型可以学习的问题的复杂性。模型可以学习的问题越复杂,模型的能力就越高。模型的容量通常随着模型参数的数量而增加。有关分类器能力的正式定义,请参阅 VC 维度

模型级联

#生成式 AI

为特定推理查询选择理想model的系统。

假设有一组模型,规模从非常大(参数很多)到小得多(参数少得多)不一而足。与较小模型相比,超大型模型在推理时消耗的计算资源更多。但是,与较小的模型相比,非常大的模型通常可以推断出更复杂的请求。模型级联会确定推理查询的复杂程度,然后选择合适的模型来执行推理。模型级联的主要目的是降低推理费用,方法是选择较小的模型,并且仅选择较大的模型来处理更复杂的查询。

假设一个小型模型在手机上运行,而该模型的较大版本在远程服务器上运行。良好的模型级联可让较小的模型处理简单的请求,而仅调用远程模型来处理复杂的请求,从而降低费用和延迟时间。

另请参阅型号路由器

模型并行处理

#language

一种扩缩训练或推理的方法,将一个模型model的不同部分放在不同的model上。模型并行处理可以实现因过大而无法适应单台设备的模型。

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

  1. 将模型分片(划分)为更小的部分。
  2. 将这些较小部分的训练分布到多个处理器。 每个处理器都会训练自己的模型部分。
  3. 组合结果以创建一个模型。

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

另请参阅数据并行处理

型号路由器

#生成式 AI

用于确定在模型级联中用于推理的理想model的算法。modelmodel模型路由器本身通常是机器学习模型,可以逐步学习如何为给定输入选择最佳模型。但是,模型路由器有时可能是一种更简单的非机器学习算法。

模型训练

确定最佳model的过程。

造势

一种复杂的梯度下降法,其中学习步长不仅取决于当前步长的导数,还取决于紧接其前一步的步长的导数。动量涉及计算梯度随时间的指数加权移动平均值,类似于物理学中的动量。动量有时可以防止学习卡在局部最小值。

多类别分类

#fundamentals

在监督式学习中,一种分类问题,即数据集包含两个以上的类别例如,Iris 数据集中的标签必须是以下三类之一:

  • 山鸢尾
  • 维吉尼亚鸢尾
  • 变色鸢尾

使用 Iris 数据集进行训练且根据新样本预测鸢尾花类型的模型正在执行多类别分类。

相比之下,区分两个类别的分类问题则是二元分类模型例如,预测“垃圾邮件”或“非垃圾邮件”的电子邮件模型就是一种二元分类模型。

在聚类问题中,多类别分类是指两个以上的聚类。

多类别逻辑回归

多类别分类问题中使用逻辑回归

多头自注意力

#language

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

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

多模态模型

#language

其输入和/或输出包含多个模态的模型。例如,假设某个模型将图片和文本说明(两种模态)都作为特征,并输出一个分数来指示文本说明对于图片有多合适。因此,该模型的输入是多模态,而输出是单模态。

多项分类

多类别分类的含义相同。

多项回归

多类别逻辑回归的含义相同。

多任务

一种机器学习技术,是指对单个模型model进行训练以执行多项任务model

多任务模型通过对适合每项不同任务的数据进行训练来创建。这样,模型就能学习在任务之间共享信息,这有助于模型更有效地学习。

针对多个任务训练的模型通常具有提高的泛化能力,并且在处理不同类型的数据方面可能更稳健。

NaN 陷阱

模型中的一个数字在训练期间变为 NaN,这会导致模型中的许多或所有其他数字最终变为 NaN。

NaN 是“N”(数字)的缩写。

自然语言理解

#language

根据用户输入或说出的内容确定用户的意图。 例如,搜索引擎会使用自然语言理解来根据用户输入或说出的内容确定用户正在搜索的内容。

负类别

#fundamentals

二元分类中,一种类别称为“正类别”,另一种类别称为“负类别”。正类别是模型要测试的事物或事件,负类别则是另一种可能性。例如:

  • 在医学检查中,负类别可以是“非肿瘤”。
  • 电子邮件分类器中的负类别可能是“非垃圾邮件”。

正类别相对。

负采样

候选采样的含义相同。

神经架构搜索 (NAS)

一种自动设计神经网络架构的技术。NAS 算法可以减少训练神经网络所需的时间和资源。

NAS 通常使用:

  • 搜索空间,即一组可能的架构。
  • 一种健身函数,用于衡量特定架构在给定任务上的表现。

NAS 算法通常从一小部分可能的架构开始,随着算法详细了解哪些架构是有效的,这些算法会逐渐扩大搜索空间。健身函数通常基于架构在训练集上的表现,并且算法通常使用强化学习技术进行训练。

经证实,NAS 算法在为各种任务(包括图像分类、文本分类和机器翻译)寻找高性能架构方面非常有效。

输出表示

#fundamentals

至少包含一个隐藏层modelmodel深度神经网络是一种包含多个隐藏层的神经网络。例如,下图显示了包含两个隐藏层的深度神经网络。

具有一个输入层、两个隐藏层和一个输出层的神经网络。

神经网络中的每个神经元都连接到下一层中的所有节点。 例如,在上图中,请注意,第一个隐藏层中的三个神经元分别连接到第二个隐藏层中的两个神经元。

在计算机上实现的神经网络有时称为人工神经网络,以便与大脑和其他神经系统中的神经网络区分开来。

一些神经网络可以模拟不同特征和标签之间极其复杂的非线性关系。

另请参阅卷积神经网络循环神经网络

神经元

#fundamentals

在机器学习中,是指神经网络隐藏层中的不同单元。每个神经元执行以下两步操作:

  1. 计算输入值乘以相应权重的加权和
  2. 将加权和作为输入传递给激活函数

第一个隐藏层中的神经元接受来自输入层中特征值的输入。第一个隐藏层之外的任何隐藏层中的神经元都接受来自前一个隐藏层中神经元的输入。例如,第二个隐藏层中的神经元接受来自第一个隐藏层中神经元的输入。

下图突出显示了两个神经元及其输入。

具有一个输入层、两个隐藏层和一个输出层的神经网络。突出显示两个神经元:一个位于第一个隐藏层,另一个位于第二个隐藏层。第一个隐藏层中突出显示的神经元可接收来自输入层中两个特征的输入。第二个隐藏层中突出显示的神经元接收来自第一个隐藏层中三个神经元的每一个的输入。

神经网络中的神经元会模拟大脑和神经系统的其他部分神经元的行为。

N 元语法

#seq
#language

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

此类 N 元语法的名称 示例
2 二元语法 去、去、吃午餐、吃晚餐
3 三元语法 ate too more、three blind mice、the bell tolls
4 四元语法 公园漫步,风中的尘土,男孩吃扁豆

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

将 N 元语法与词袋进行比较,词袋是无序的单词集。

NLU

#language

自然语言理解的缩写。

节点(决策树)

#df

决策树中,任何条件叶子

一棵有两个条件和三叶树的决策树。

节点(神经网络)

#fundamentals

隐藏层中的神经元

节点(TensorFlow 图)

#TensorFlow

TensorFlow 中的操作。

噪音

一般来说,是指对数据集中的信号进行模糊处理的任何项目。噪声可通过多种方式引入数据。例如:

  • 人工审核者在添加标签时出错。
  • 人类和仪器错误记录或省略特征值。

非二元条件

#df

包含两种以上可能结果的条件。 例如,以下非二元条件包含三种可能的结果:

导致三种可能结果的条件 (number_of_legs = ?)。一个结果 (number_of_legs = 8) 指向一个名为“蜘蛛”程序的叶子。第二个结果 (number_of_legs = 4) 引出一片名为狗的叶子。第三个结果 (number_of_legs = 2) 会带来一片名为企鹅的叶片。

非线性

#fundamentals

不能仅通过加法和乘法来表示两个或多个变量之间的关系。线性关系可以表示为一条线;非线性关系不能表示为一条线。例如,假设有两个模型,每个模型都将单个特征与单个标签相关联。左侧模型为线性模型,右侧模型为非线性模型:

两个曲线图。一个曲线图是一条直线,因此这是线性关系。
          另一个曲线图是曲线,因此这是非线性关系。

未回答偏差

#fairness

请参阅选择偏差

非平稳性

#fundamentals

其值在一个或多个维度(通常是时间)会发生变化的特征。以下面的非平稳性示例为例:

  • 特定商店销售的泳衣数量因季节而异。
  • 在一年的大部分时间里,特定地区某种水果的采收量在一年的大部分时间里是零,但在短期内会收获很多。
  • 由于气候变化,年度平均气温正在发生变化。

平稳性相对。

归一化

#fundamentals

从广义上讲,将变量的实际值范围转换为标准值范围的过程,例如:

  • -1 至 +1
  • 0 至 1
  • 正态分布

例如,假设某个特征的值的实际范围是 800 到 2400。在特征工程过程中,您可以将实际值归一化为标准范围,例如 -1 到 +1。

归一化是特征工程中的一项常见任务。当特征向量中的每个数值特征具有大致相同的范围时,模型通常训练速度更快(并且预测效果更好)。

新奇性检测

确定新(新)样本是否来自与训练集相同的分布的过程。换句话说,在训练集上进行训练后,新奇性检测会确定新样本(在推理过程中或额外训练期间)是否为离群值

离群值检测相对。

数值数据

#fundamentals

用整数或实数表示的特征。 例如,房屋估价模型可能会用数值数据表示房屋的大小(以平方英尺或平方米为单位)。如果将特征表示为数值数据,则表示特征的值与标签具有数学关系。也就是说,房屋的平方米数可能与房屋价值存在某种数学关系。

并非所有整数数据都应表示为数值数据。例如,世界上某些地区的邮政编码是整数;但是,在模型中,不应将整数邮政编码表示为数值数据。这是因为邮政编码 20000 的效果不是邮政编码 10000 的两倍(或一半)。此外,虽然不同的邮政编码确实与不同的房地产价值相关,但我们不能假设邮政编码为 20000 的房地产价值是邮政编码为 10000 的房地产的两倍。邮政编码应表示为分类数据

数值特征有时称为连续特征

NumPy

一个 开源数学库,在 Python 中提供高效的数组操作。Pandas 是基于 NumPy 构建的。

O

目标

算法尝试优化的指标。

目标函数

模型旨在优化的数学公式或指标。 例如,线性回归的目标函数通常是均方损失函数因此,在训练线性回归模型时,训练的目的是最大限度地降低均方损失。

在某些情况下,目标是最大化目标函数。例如,如果目标函数是准确率,则目标是尽可能提高准确率。

另请参阅损失

斜面

#df

决策树中,一种涉及多个特征条件例如,如果高度和宽度都是特征,则以下便是倾斜条件:

  height > width

轴对齐条件相对。

离线

#fundamentals

相当于 static

离线推理

#fundamentals

模型生成一批预测然后缓存(保存)这些预测的过程。然后,应用可以从缓存访问推断的预测结果,而无需重新运行模型。

例如,假设某个模型每四小时生成一次本地天气预报(预测)。每个模型运行后,系统会缓存所有本地天气预报。天气应用会从缓存中检索预报。

离线推理也称为静态推理

在线推理相对。

独热编码

#fundamentals

将分类数据表示为向量,其中:

  • 一个元素设置为 1。
  • 所有其他元素均设为 0。

独热编码通常用于表示具有一组有限可能值的字符串或标识符。例如,假设名为 Scandinavia 的特定分类特征有五个可能值:

  • “丹麦”
  • “瑞典”
  • “挪威”
  • “芬兰”
  • “冰岛”

独热编码可以表示这五个值中的每个值,如下所示:

country 矢量
“丹麦” 1 0 0 0 0
“瑞典” 0 1 0 0 0
“挪威” 0 0 1 0 0
“芬兰” 0 0 0 1 0
“冰岛” 0 0 0 0 1

得益于独热编码,模型可以根据这五个国家/地区中的每个国家/地区学习不同的连接。

将特征表示为数值数据是独热编码的替代方法。遗憾的是,用数字表示斯堪的纳维亚国家/地区并不是一个好的选择。例如,请考虑使用以下数字表示形式:

  • “Denmark”为 0
  • “Sweden”是 1
  • 《Norway》为 2
  • 《Finland》发行 3 分
  • 《Iceland》发行 4 分

使用数字编码时,模型将从数学角度解释原始数字,并会尝试根据这些数字进行训练。但是,冰岛实际上并不是挪威的两倍(或一半),因此模型会得出一些奇怪的结论。

单样本学习

一种机器学习方法,通常用于对象分类,旨在通过单个训练样本学习有效的分类器。

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

单样本提示

#language
#生成式 AI

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

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

单样本提示与以下术语进行比较和对比:

一对多

#fundamentals

假设有一个包含 N 个类别的分类问题,一个由 N 个单独的二元分类器组成的解决方案 - 一个二元分类器对应一种可能的结果。例如,假设某个模型将样本分类为动物、蔬菜或矿物,一对多解决方案将提供以下三个单独的二元分类器:

  • 动物和非动物
  • 蔬菜和非蔬菜
  • 矿物和非矿物

online

#fundamentals

动态的含义相同。

在线推理

#fundamentals

根据需求生成预测。例如,假设某个应用将输入传递给模型并发出预测请求。 使用在线推理的系统通过运行模型并将预测结果返回给应用来响应请求。

离线推理相对。

操作 (op)

#TensorFlow

在 TensorFlow 中,任何创建、操纵或销毁张量的过程。例如,矩阵乘法就是将两个张量作为输入并生成一个张量作为输出的操作。

运营商税

适用于 JAX 的梯度处理和优化库。Optax 提供的构建基块能够以自定义方式重组来优化参数模型(例如深度神经网络),从而为研究提供便利。其他目标包括:

  • 提供可读、经过充分测试且高效的核心组件实现。
  • 将低级元素组合到自定义优化器(或其他梯度处理组件)中,从而提高效率。
  • 让所有人都能轻松做出贡献,加快新想法的采用。

优化器

梯度下降法的一种具体实现。热门优化器包括:

  • 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 评估时,只会训练单个模型。由于 bagging 在训练期间保留了每个树中的一些数据,因此 OOB 评估可以使用这些数据来近似交叉验证。

输出层

#fundamentals

神经网络的“最后一层”输出层包含预测结果。

下图显示了一个小型深度神经网络,其中包含一个输入层、两个隐藏层和一个输出层:

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

过拟合

#fundamentals

创建一个与训练数据紧密匹配的model,以致模型无法根据新数据做出正确的预测。modelmodel

正则化可以减少过拟合。 使用庞大而多样的训练集进行训练也可以减少过拟合。

过采样

分类不平衡的数据集中重复使用少数类样本,以创建更平衡的训练集

例如,假设一个二元分类问题,多数类别与少数类别的比率为 5,000:1。如果数据集包含 100 万个样本,则数据集仅包含约 200 个少数类的样本,这对于有效训练来说可能过少。为了克服这一缺陷,您可以对这 200 个样本进行多次超采样(重复使用)多次,这样可能会获得足够的样本用于有用的训练。

在过采样时,您需要注意过过拟合

欠采样相对。

P

打包数据

一种更高效地存储数据的方法。

封装数据使用压缩格式或可通过其他方式更高效地访问数据,以此来存储数据。打包数据可以最大限度地减少访问数据所需的内存和计算量,从而提高训练速度和更高的模型推断效率。

打包数据通常与其他技术一起使用,例如数据增强正则化,可以进一步提高模型的性能。

pandas

#fundamentals

基于 numpy 构建的面向列的数据分析 API。包括 TensorFlow 在内的许多机器学习框架都支持将 Pandas 数据结构作为输入。如需了解详情,请参阅 Pandas 文档

参数

#fundamentals

模型在训练期间学习的权重偏差。例如,在线性回归模型中,参数由以下公式中的偏差 (b) 和所有权重(w 1 和 w 2 等)组成:b

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

相比之下,超参数(或超参数调节服务)提供给模型的值。例如,学习速率就是一种超参数。

参数高效微调

#language
#生成式 AI

一组技术,用于对大型预训练语言模型 (PLM) 进行比完全微调更高效地微调的技术。参数高效调优通常微调的参数比完全微调少得多,但生成的大语言模型的表现与基于完全微调构建的大语言模型相当(或几乎相同)。

将参数高效调优与以下各项进行比较和对比:

参数高效微调也称为“参数高效微调”

参数服务器 (PS)

#TensorFlow

一种作业,负责在分布式环境中跟踪模型参数

参数更新

在训练期间调整模型的参数的操作,通常在梯度下降法的单次迭代中进行。

偏导数

一种导数,除一个变量之外的所有变量都被视为常数。 例如,f(x, y) 对 x 的偏导数是 f 的导数,f 是 x 本身的函数(即使 y 保持不变)。f 对 x 的偏导数仅关注 x 如何变化,而忽略方程中的所有其他变量。fff

参与偏差

#fairness

与未回答偏差的含义相同。请参阅选择偏差

划分策略

参数服务器之间划分变量的算法。

帕克斯

一个编程框架,用于训练大规模神经网络 模型,这种模型大到可跨多个 TPU 加速器芯片 切片Pod

Pax 基于 Flax 构建,而后者基于 JAX 构建。

指示 Pax 在软件堆栈中位置的图表。
          Pax 基于 JAX 构建。Pax 本身由三层组成。最底层包含 TensorStore 和 Flax。
          中间层包含 Optax 和 Flaxformer。顶层包含 Praxis Modeling Library。Fiddle 基于 Pax 构建。

感知机

系统(硬件或软件),它接受一个或多个输入值,对输入的加权和运行函数,并计算单个输出值。在机器学习中,函数通常是非线性函数,如 ReLUS 型函数tanh。例如,以下感知器依赖 S 型函数处理三个输入值:

$$f(x_1, x_2, x_3) = \text{sigmoid}(w_1 x_1 + w_2 x_2 + w_3 x_3)$$

在下图中,感知机接受三个输入,在进入感知机之前,每个输入本身都经过了权重修改:

接收 3 个输入的感知机,每个输入乘以单独的权重。感知机输出单个值。

感知机是神经网络中的神经元。

performance

多含义术语,含义如下:

  • 软件工程中的标准含义。即:软件的运行速度有多快(或有多高效)?
  • 机器学习中的含义。在这里,性能回答了以下问题:此model的准确度如何?即模型在预测方面的表现有多好?

排列变量重要性

#df

一种变量重要性,用于评估在对特征的值进行排列后,模型预测误差的增长情况。排列变量重要性是一种与模型无关的指标。

困惑度

一种衡量指标,用于衡量model完成任务的效果。例如,假设您的任务是读出用户在手机键盘上输入的字词的前几个字母,并提供一系列可能的补全字词。此任务的困惑度 (P) 约为您需要提供的猜测数量,才能让您的列表包含用户尝试输入的实际字词。

困惑度与交叉熵的关系如下:

$$P= 2^{-\text{cross entropy}}$$

管道

机器学习算法的基础架构。流水线包括收集数据、将数据放入训练数据文件、训练一个或多个模型,以及将模型导出到生产环境。

流水线

#language

模型并行处理的一种形式,即模型的处理过程分为连续的阶段,并且每个阶段都在不同的设备上执行。当一个阶段处理一个批次时,前一阶段可以处理下一个批次。

另请参阅分阶段训练

Pjit

一个 JAX 函数,用于拆分代码以跨多个加速器芯片运行。用户向 pjit 传递一个函数,后者会返回一个具有等效语义的函数,但会编译为跨多个设备(例如 GPU 或 TPU 核心)运行的 XLA 计算。

pjit 可让用户使用 SPMD 分区程序将计算分片,而无需重写计算。

截至 2023 年 3 月,pjit 已与 jit 合并。如需了解详情,请参阅分布式数组和自动并行化

项目管理

#language
#生成式 AI

预训练语言模型的缩写。

Pmap

一个 JAX 函数,用于使用不同的输入值在多个底层硬件设备(CPU、GPU 或 TPU)上执行输入函数的副本。pmap 依赖于 SPMD

policy

#rl

在强化学习中,代理状态操作的概率映射。

池化

#image

将由前面的卷积层创建的一个或多个矩阵缩减为较小的矩阵。池化通常涉及取整个池化区域的最大值或平均值。例如,假设我们有以下 3x3 矩阵:

3x3 矩阵 [[5,3,1], [8,2,5], [9,4,3]]。

池化运算与卷积运算类似,将矩阵分割为多个切片,然后按步长对卷积运算进行滑动。例如,假设池化运算以 1x1 步长将卷积矩阵划分为 2x2 个切片。如下图所示,发生了四个池化运算。 假设每个池化运算都选择该切片中四个值中的最大值:

输入矩阵为 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

运行模型后调整模型的输出。 后处理可用于在不修改模型本身的情况下强制执行公平性约束。

例如,您可以设置一个分类阈值,以便通过检查某个属性的真正例率是否相同,保持某个属性的机会均等,从而对二元分类器进行后处理。

PR AUC(PR 曲线下的面积)

插值精确率/召回率曲线下的面积,通过绘制分类阈值的不同值的(召回率、精确率)点获得。PR AUC 可能等于模型的平均精确率,具体取决于其计算方式。

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$$

准确率召回率相对。

精确率与召回率曲线

不同分类阈值下的精确率召回率的曲线。

预测

#fundamentals

模型的输出。例如:

  • 二元分类模型的预测结果要么是正类别,要么是负类别。
  • 多类别分类模型的预测是一个类别。
  • 线性回归模型的预测结果是一个数字。

预测偏差

一个值,指示预测的平均值与数据集中标签的平均值的差距。

请勿与机器学习模型中的偏差项道德和公平性的偏差混淆。

预测性机器学习

任何标准(“经典”)机器学习系统。

“预测性机器学习”一词没有正式定义。而是用来区分一类机器学习系统,而不是基于生成式 AI

预测性对等

#fairness

一种公平性指标,用于检查对于给定分类器,精确率率是否与所考虑的子群组相等。

例如,如果一个模型预测大学入学率,并且精确率与小人国的精确率相同,则模型将满足国籍的预测对等性。

预测性对等有时也称为“预测性比率对等”。

请参阅“公平性定义说明”(第 3.2.1 节),详细了解预测对等。

预测率对等

#fairness

预测性对等的别名。

预处理

#fairness
在将数据用于训练模型之前对其进行处理。预处理可能很简单,比如从英语文本语料库中移除英语字典中不存在的字词,也可能很复杂,比如重新表达数据点,即尽可能地消除与敏感属性相关的属性。预处理有助于满足公平性限制

预训练模型

#language
#image
#生成式 AI

已经过训练的模型或模型组件(例如嵌入向量)。有时,您将预训练嵌入向量馈送到神经网络中。其他时候,您的模型会自行训练嵌入向量,而不是依赖于预训练的嵌入。

术语“预训练的语言模型”是指已经过预训练大型语言模型

预训练 (pre-training)

#language
#image
#生成式 AI

基于大型数据集进行模型的初始训练。一些预训练模型是笨拙的巨型模型,通常必须通过额外训练加以优化。例如,机器学习专家可能会基于庞大的文本数据集(如维基百科中的所有英语页面)预训练大语言模型。预训练之后,生成的模型可以通过以下任一方法进一步优化:

先验信念

在开始用数据进行训练之前,您对该数据有何看法。 例如,L2 正则化依赖于先验的信念,即权重应该很小且以 0 为中心呈正态分布。

概率回归模型

一个回归模型,不仅使用每个特征权重,还使用权重的不确定性。概率回归模型会生成一项预测以及该预测的不确定性。例如,概率回归模型的预测结果可能为 325,标准差为 12。如需详细了解概率回归模型,请参阅 tensorflow.org 上的 Colab

概率密度函数

一个函数,用于标识正好具有特定值的数据样本的频率。当数据集的值是连续的浮点数时,很少出现完全匹配。不过,将概率密度函数从 xintegrating到值 y 时,会生成介于 xy 之间的数据样本的预期频率。

例如,假设正态分布的平均值为 200,标准差为 30。如需确定 211.4 至 218.7 范围内的数据样本的预期频率,您可以对正态分布(211.4 至 218.7)的概率密度函数求积分。

提示

#language
#生成式 AI

作为输入提供给大语言模型(用于调节模型以某种特定方式运作)输入的任何文本。提示可以很短(例如一个短语),也可以任意长度(例如,小说的整段文本)。提示分为多个类别,包括下表中显示的类别:

提示类别 示例 备注
问题 鸽子能飞多快?
指令 写一首有关套利的趣味诗。 要求大语言模型执行某项操作的提示。
示例 将 Markdown 代码翻译为 HTML。例如:
Markdown:* 列表项
HTML:<ul> <li>列表项</li> </ul>
此示例提示中的第一句话是一条指令。 提示的其余部分就是示例。
角色 解释为什么梯度下降法用于机器学习训练来获得物理学博士学位。 句子的第一部分是指示;短语“to a PhD in PhD in PhDs”是角色部分。
模型要完成的部分输入 英国首相住在 部分输入提示可以突然结束(如此例所示),也可以以下划线结尾。

生成式 AI 模型可以使用文本、代码、图片、嵌入、视频等几乎任何内容来响应提示。

提示式学习

#language
#生成式 AI

某些模型具备的一种功能,使模型能够调整自身行为以响应任意文本输入(提示)。在基于提示的典型学习范例中,大语言模型通过生成文本来响应提示。例如,假设用户输入以下提示:

总结牛顿第三运动定律。

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

提示设计

#language
#生成式 AI

提示工程的含义相同。

提示工程

#language
#生成式 AI

创建提示,以便从大语言模型发出所需响应。人类执行提示工程。编写结构合理的提示是确保大型语言模型给出有用响应的重要环节。提示工程取决于多种因素,包括:

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

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

提示设计是提示工程的同义词。

提示调优

#language
#生成式 AI

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

提示调优的一个变体(有时称为“前缀调优”)是在每一层前加上前缀。相比之下,大多数提示调优只向输入层添加一个前缀。

代理标签

#fundamentals

用于粗略在数据集内无法直接提供的标签的数据。

例如,假设您必须训练模型来预测员工压力水平。您的数据集包含大量预测特征,但不包含名为“压力水平”的标签。因此,您勇敢地选择“工作场所事故”作为压力水平的替代标签。毕竟,承受高压力的员工更容易发生事故,而不是平静的员工。真的吗?工作场所事故的增减可能有多种原因

再举一个例子,假设您要将 is it raining? 设为数据集的布尔标签,但数据集不包含雨数据。如果有照片,您可以制作人们带着雨伞的照片作为“在下雨吗?”的代理标签。该代理标签是否合适?也许可以,但某些文化中的人可能更可能会带伞防晒,而不是下雨。

代理标签通常并不完善。请尽可能选择实际标签,而不是代理标签。也就是说,如果没有实际标签,请非常谨慎地选择代理标签,选择最不严重的代理标签候选标签。

代理(敏感属性)

#fairness
用作敏感属性的替代属性。例如,个人的邮政编码可以代表其收入、种族或民族。

纯函数

一个函数,其输出仅基于其输入,没有附带效应。具体而言,纯函数不使用或更改任何全局状态,例如文件内容或函数外部变量的值。

纯函数可用于创建线程安全代码,这在将模型model代码分片到多个加速器芯片model时非常有用。model

JAX 的函数转换方法要求输入函数是纯函数。

Q

Q 函数

#rl

强化学习中,通过在某个状态执行操作并遵循给定的政策来预测预期回报率的函数。

Q 函数也称为状态-操作值函数

Q 学习

#rl

强化学习是一种算法,可让代理通过应用贝尔曼方程学习马尔可夫决策过程的最优 Q 函数马尔可夫决策过程会为环境建模。

分位数

分位数分桶中的每个分桶。

分位数分桶

将一个特征的值分布到分桶中,使每个分桶包含的样本数量相同(或几乎相同)。例如,下图将 44 个点分为 4 个存储分区,每个存储分区包含 11 个点。为使图中的每个分区包含相同数量的点,有些分区跨越了不同宽度的 x 值。

44 个数据点分为 4 个存储分区,每个存储分区 11 个点。
          虽然每个存储分区包含相同数量的数据点,但一些存储分区包含的特征值范围比其他存储分区更广泛。

量化

一个多含义术语,可用于以下任何用途:

  • 针对特定特征实现分位数分桶
  • 将数据转换为零和一,以加快存储、训练和推理的速度。由于布尔值数据比其他格式更可靠地应对噪声和误差,因此量化可以提高模型正确性。量化方法包括舍入、截断和分箱
  • 减少用于存储模型参数的位数。例如,假设模型的参数存储为 32 位浮点数。量化将这些参数从 32 位转换为 4 位、8 位或 16 位。量化可以减少以下内容:

    • 计算、内存、磁盘和网络用量
    • 推断预测所需的时间
    • 功耗

    但是,量化有时会降低模型预测的正确性。

队列

#TensorFlow

一种 TensorFlow 操作,用于实现队列数据结构。通常用于 I/O 操作。

R

RAG

#fundamentals

检索增强生成的缩写。

随机森林

#df

决策树集成,其中每个决策树都使用特定的随机噪声(例如 bagging)进行训练。

随机森林是一种决策森林

随机政策

#rl

强化学习中,一种用于随机选择动作政策

排名

一种监督式学习,目标是对项列表进行排序。

秩(序数)

在将类别从高到低分类的机器学习问题中,某个类别的顺序位置。例如,行为排名系统可以将狗狗的奖励按从高(牛排)到最低(枯萎的羽衣甘蓝)的顺序进行排名。

秩(张量)

#TensorFlow

张量中的维数。例如,标量的秩为 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 \]

推荐系统

#recsystems

一种系统,从大型语料库为每位用户选择相对较小的所需推荐项集。例如,视频推荐系统可能会从包含 100,000 个视频的语料库中推荐两个视频,为一位用户选择《卡萨布兰卡》和《费城故事》,为另一位用户选择《神奇女侠》和《黑豹》。视频推荐系统可能会根据以下因素进行推荐:

  • 同类用户已评分或观看过的电影。
  • 类型、导演、演员、目标人群...

修正线性单元 (ReLU)

#fundamentals

一个具有以下行为的激活函数

  • 如果输入为负或 0,则输出为 0。
  • 如果输入为正数,则输出等于输入。

例如:

  • 如果输入为 -3,则输出为 0。
  • 如果输入为 +3,则输出为 3.0。

以下是 ReLU 的一个曲线图:

两条直线的笛卡尔图。第一行的 y 常量值为 0,沿着 x 轴运行,其范围为 -无穷大 0 到 0 - 0。第二行从 0,0 开始。此直线的斜率为 +1,因此它的范围为 0,0 到 +无穷大,+无穷大。

ReLU 是一种非常流行的激活函数。尽管行为简单,ReLU 仍然能够让神经网络了解特征标签之间的非线性关系。

循环神经网络

#seq

特意运行多次的神经网络,其中每次运行的部分内容会馈送到下一次运行。具体而言,上次运行时的隐藏层会在下次运行时为同一隐藏层提供部分输入。循环神经网络在评估序列方面特别有用,因此隐藏层可以从神经网络之前在序列的前部分的运行中学习。

例如,下图显示了运行四次的循环神经网络。请注意,第一次运行时在隐藏层中学习的值将成为第二次运行时相同隐藏层的部分输入。同样,第二次运行时在隐藏层中学习的值将成为第三次运行时同一隐藏层的部分输入。通过这种方式,循环神经网络会逐步训练和预测整个序列的含义,而不仅仅是各个字词的含义。

运行四次以处理四个输入词的 RNN。

回归模型

#fundamentals

通俗地说,是指生成数值预测的模型。(相比之下,分类模型会生成类别预测。)例如,以下都是回归模型:

  • 用于预测某个房屋价值(例如 423,000 欧元)的模型。
  • 用于预测某棵树的预期寿命(如 23.2 年)的模型。
  • 用于预测某个城市在接下来的 6 小时内将会降雨量(例如 0.18 英寸)的模型。

两种常见的回归模型类型是:

  • 线性回归:找到将标签值最适合特征的线条。
  • 逻辑回归:生成介于 0.0 和 1.0 之间的概率,然后系统通常会将其映射到类预测。

并非所有输出数值预测结果的模型都是回归模型。 在某些情况下,数字预测实际上只是一个恰巧具有数字类名称的分类模型。例如,用于预测数字邮政编码的模型是分类模型,而不是回归模型。

正则化

#fundamentals

任何可减少过拟合的机制。常见的正则化类型包括:

正则化还可以定义为对模型复杂度的惩罚。

正则化率

#fundamentals

一个数字,用于指定训练期间正则化的相对重要性。提高正则化率会减少过拟合,但可能会降低模型的预测能力。相反,降低或忽略正则化率会增加过拟合。

强化学习 (RL)

#rl

学习最优政策的一系列算法,其目标是在与环境互动时最大限度地提高回报。例如,大多数游戏的最终奖励是胜利。强化学习系统可以评估最终带来胜利的先前游戏走法序列以及最终导致失败的序列,从而成为玩复杂游戏的专家。

基于人类反馈的强化学习 (RLHF)

#生成式 AI
#rl

根据人工审核者的反馈来提高模型回答的质量。 例如,RLHF 机制可以要求用户使用 👍? 或 👎? 表情符号对模型的回答质量进行评分。然后,系统可以根据该反馈调整未来的响应。

ReLU

#fundamentals

校正线性单元的缩写。

重放缓冲区

#rl

在类似 DQN 的算法中,代理用于存储状态转换(以便在体验重放中使用)的内存。

副本

训练集模型的副本,通常在另一台机器上。例如,系统可以使用以下策略来实现数据并行处理

  1. 将现有模型的副本布置在多台机器上。
  2. 将训练集的不同子集发送到每个副本。
  3. 聚合参数更新。

报告偏差

#fairness

人们写作行为、结果或属性的频率并不能反映它们的现实频率或某个属性是某一类个体特征的程度。报告偏差会影响机器学习系统从中学习的数据的构成。

例如,在书中,“laughed”比“breathed”更普遍。如果某个机器学习模型根据书籍语料库估算大笑和呼吸的相对频率,则可能会确定笑比呼吸更常见。

相同的矢量表示。

将数据映射到实用特征的过程。

重排序

#recsystems

推荐系统的最后阶段,在此期间,可能会根据其他(通常是非机器学习)算法,对已评分的推荐项重新评分。重排序会对评分阶段生成的推荐项列表进行评估,然后采取以下操作:

  • 删除用户已购买的商品。
  • 提高较新项的得分。

检索增强生成 (RAG)

#fundamentals

一种用于提高大语言模型 (LLM) 输出质量的技术,方法是将输出与在模型训练完成后检索到的知识源相关联。RAG 为经过训练的 LLM 提供访问从可信知识库或文档中检索到的信息的权限,从而提高 LLM 响应的准确性。

使用检索增强生成的常见动机包括:

  • 提高模型所生成回答的事实准确性。
  • 让模型可以访问未用于训练的知识。
  • 改变模型使用的知识。
  • 启用模型以引用来源。

例如,假设化学应用使用 PaLM API 生成与用户查询相关的摘要。当应用后端收到查询时,会执行以下操作:

  1. 搜索(“检索”)与用户查询相关的数据。
  2. 将相关化学数据附加(“增强功能”)到用户的查询中。
  3. 指示 LLM 根据附加的数据创建摘要。

return

#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

循环神经网络的缩写。

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 曲线总结为单个浮点值。AUC

角色提示

#language
#生成式 AI

提示的可选部分,用于标识生成式 AI 模型回答的目标受众群体。如果没有角色提示,大语言模型提供的答案可能对提问者有用,也可能没用。使用角色提示时,大语言模型能够以特定目标受众群体更合适且更有用的方式回答问题。例如,以下提示的角色提示部分以粗体显示:

  • 总结一下获得经济学博士学位这篇文章。
  • 描述潮汐如何适用于 10 岁儿童
  • 解释 2008 年金融危机。像对年幼的孩子或金毛寻回犬说话。

#df

决策树中的起始节点(第一个条件)。按照惯例,图表会将根置于决策树的顶部。例如:

一棵有两个条件和三叶树的决策树。起始条件 (x > 2) 是根。

根目录

#TensorFlow

您指定的目录,用于托管多个模型的 TensorFlow 检查点和事件文件的子目录。

均方根误差 (RMSE)

#fundamentals

均方误差的平方根。

旋转不变性

#image

在图像分类问题中,即使图像的方向发生变化,算法也能成功对图像进行分类。例如,无论网球拍朝上、侧向还是朝下,算法仍然可以识别它。请注意,旋转不变性并非总是所期望的;例如,倒置的 9 不应归类为 9。

另请参阅平移不变性大小不变性

R 平方

回归指标,指示标签的多大程度上是由单个特征或特征集引起的。R 平方值是介于 0 到 1 之间的值,您可以将其解读如下:

  • R 平方值为 0 表示标签的变化不是由特征集引起的。
  • R 平方值为 1,表示标签的所有变化都由特征集决定。
  • 介于 0 和 1 之间的 R 平方表示根据特定特征或特征集预测标签变化的程度。例如,如果 R 平方值为 0.10,则表示标签方差有 10% 来自特征集,R 平方值为 0.20 则表示有 20% 的方差来自特征集,依此类推。

R 平方是指模型预测的值与标准答案之间的皮尔逊相关系数的平方。

采样偏差

#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-score 归一化:将原始值替换为浮点值,该浮点值表示与该特征平均值的偏差数。

scikit-learn

一种热门的开源机器学习平台。请参阅 scikit-learn.org

评分

#recsystems

推荐系统的一部分,为候选生成阶段生成的每个推荐项提供值或排名。

选择偏差

#fairness

由于在数据中观察到的样本和未观察到的样本之间产生系统性差异,根据采样数据得出的结论中存在错误。存在以下形式的选择偏差:

  • 覆盖偏差:数据集内表示的群体与机器学习模型要进行预测的群体不符。
  • 抽样偏差:数据不是从目标群体中随机收集的。
  • 未回答偏差(也称为参与偏差):某些群体中的用户以不同于其他群体的用户的比率选择不参与问卷调查。

例如,假设您正在创建一个机器学习模型,用于预测人们对电影的满意度。为了收集训练数据,您向放映该电影的电影院的前排的每个人分发一份调查问卷。简单地说,这听起来像是收集数据集的合理方式;但是,这种形式的数据收集可能会引入以下形式的选择偏差:

  • 覆盖偏差:通过从选择观看电影的人群中采样,您的模型的预测可能不会泛化到尚未对电影表现出这种兴趣的人群。
  • 采样偏差:您仅对第一排的观众进行采样,而不是从预期人群(电影的所有观众)中随机采样。坐在前排的观众可能比其他排的观众对电影更感兴趣。
  • 未回答偏差:一般来说,具有强烈观点的人往往比拥有轻度观点的人更加频繁地回答可选调查问卷。由于电影调查问卷是可选的,因此回复更有可能形成双模分布,而不是正态(钟形)分布。

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

#language

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

自我注意力中的 self 部分指序列出现在自身而非某些其他语境中的序列。自注意力是 Transformer 的主要构建块之一,使用字典查找术语,如“查询”“键”和“值”。

自注意力层始于一系列输入表示,每个输入表示一个字词。字词的输入表示法可以是简单的嵌入。对于输入序列中的每个字词,网络会评分该字词与整个字词序列中每个元素的相关性。相关性分数决定了某个字词的最终表示法与其他字词的表示法的结合程度。

例如,请思考以下句子:

动物没有过马路,因为它太累了。

下图(选自《Transformer:语言理解的新型神经网络架构》)显示了代词的自注意力层的注意力模式,每一行的深色表示每个字词的表示程度:

下面这句话出现了两次:动物没有过马路,因为它太累了。用线将一句话中的代词与另一句中的五个词元(The、Animal、Street、it 和句点)连接起来。代词“它”和“动物”一词之间的线条最强。

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

对于 n 个词元的序列,自注意力机制会在序列中的每个位置分别转换 n 次嵌入序列。nn

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

自监督学习

一系列技术,通过根据无标签样本创建代理标签,将非监督式机器学习问题转换为监督式机器学习问题。

一些基于 Transformer 的模型(如 BERT)会使用自监督学习。

自我监督式训练是一种半监督式学习方法。

自我训练

自我监督式学习的一种变体,在满足以下所有条件时尤其有用:

自训练的工作原理是迭代以下两个步骤,直到模型不再改进:

  1. 使用监督式机器学习基于有标签样本训练模型。
  2. 使用第 1 步中创建的模型对无标签样本生成预测(标签),将置信度较高的样本移至具有预测标签的有标签样本。

请注意,第 2 步的每次迭代都会添加更多有标签样本,供第 1 步进行训练。

半监督式学习

使用一些训练样本带有标签但其他样本没有标签的数据训练模型。半监督式学习的一种方法是推断无标签样本的标签,然后使用推断出的标签进行训练,以创建新模型。如果获取有标签样本的成本高昂,而无标签样本有很多,则半监督式学习会非常有用。

自训练是一种半监督式学习方法。

敏感属性

#fairness
可能出于法律、道德、社会或个人原因被特别考虑的一种人性特征。

情感分析

#language

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

序列模型

#seq

一种模型,其输入具有顺序依赖性。例如,根据之前观看过的一系列视频预测观看的下一个视频。

序列到序列任务

#language

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

  • 译者:
    • 输入序列示例:“I love you。”
    • 示例输出序列:“Je t'aime”。
  • 问答:
    • 示例输入序列:“Do I need my car in New York City?”(在纽约市需要我的车吗?)
    • 示例输出序列:“不,请把你的汽车留在家中。”

人份

通过在线推理离线推理使经过训练的模型可用于提供预测的过程。

形状(张量)

张量每个维度中的元素数量。形状以整数列表的形式表示。例如,以下二维张量的形状为 [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)。也就是说,您可以将任何数字(二、一百万、负十亿等)传递给 S 型函数,输出仍会在受限范围内。S 型激活函数的曲线图如下所示:

一个二维曲线图,其 x 值跨越 - 无穷大到 + 正的域,而 y 值的范围几乎为 0 到 1。当 x 为 0 时,y 为 0.5。该曲线的斜率始终为正,最大斜率为 0,0.5,斜率随着 x 的绝对值的增加而逐渐减小。

S 型函数在机器学习中有多种用途,包括:

相似度度量

#clustering

聚类算法中,用于确定任何两个样本相似程度的指标。

单程序 / 多数据 (SPMD)

一种并行处理技术,即同一计算在不同设备上针对不同的输入数据并行运行。SPMD 的目标是更快地获得结果。这是最常见的并行编程样式。

大小不变性 (size invariance)

#image

在图像分类问题中,即使图像大小发生变化,算法也能成功对图像进行分类。例如,无论一只猫消费了 200 万像素还是 20 万像素,该算法仍然可以识别它。请注意,即使是最好的图像分类算法,在大小不变性方面仍然存在实际限制。例如,某个算法(或人类)不太可能对仅使用 20 个像素的猫图片进行正确分类。

另请参阅平移不变性旋转不变性

素描

#clustering

非监督式机器学习中,一种对样本执行初步相似性分析的算法。草图算法使用 局部敏感哈希函数来识别可能相似的点,然后将其分组到存储分区中。

绘制草图可减少针对大型数据集计算相似度所需的计算量。我们仅计算每个存储分区内的每对点的相似度,而不是计算数据集内每对样本的相似度。

跳过-语法

#language

可以从原始上下文中省略(或“跳过”)字词的 n-gram,这意味着 N 个字词最初可能并不相邻。更确切地说,“k-skip-n-gram”是指最多可跳过 k 个字词的 N 元语法。

例如,“the quick brown fox”可能具有以下 2-gram:

  • “快节奏”
  • "快速棕色"
  • “棕色的狐狸”

“1-skip-2-gram”是一对之间最多包含 1 个字词的单词。因此,“the quick brown fox”具有以下 1-skip 2-gram:

  • “棕色的”
  • “quick fox”

此外,所有 2-gram 也都是 1-skip-2-gram,因为可能会被跳过少于一个字词。

跳过语法对于理解单词上下文的更多上下文非常有用。在该示例中,“fox”与 1-skip-2-gram 集中的“quick”直接关联,但不与 2-gram 中的“quick”关联。

Skip-gram 有助于训练字词嵌入模型。

softmax

#fundamentals

一个函数,用于确定多类别分类模型中每个可能类别的概率。这些概率的总和正好为 1.0。例如,下表显示了 softmax 如何分布各种概率:

图片是... Probability
0.85
0.13
0.02

Softmax 也称为完整 softmax。

候选采样相对。

软提示调优

#language
#生成式 AI

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

在给定文本提示的情况下,软提示调优通常会在提示中附加额外的词元嵌入,并使用反向传播算法来优化输入。

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

稀疏特征

#language
#fundamentals

一种特征,其值主要为零或为空。例如,一个包含单个 1 值和一百万个值为 0 的特征是稀疏的。相比之下,密集特征的值明显不为零或空。

在机器学习中,稀疏特征的数量令人惊讶。分类特征通常是稀疏特征。例如,在森林有 300 种可能的树种中,有一个示例可能只是“枫树”。或者,在视频库中数百万个可能的视频中,一个示例可能只是“卡萨布兰卡”。

在模型中,您通常使用独热编码表示稀疏特征。如果独热编码占用空间,您可以在独热编码之上放置一个嵌入层,以提高效率。

稀疏表示法

#language
#fundamentals

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

例如,假设名为 species 的分类特征可识别特定森林中的 36 种树木。进一步假设每个样本仅标识一个品种。

您可以使用独热矢量来表示每个样本中的树种。独热矢量将包含一个 1(表示该示例中的特定树种)和 35 个 0(表示本示例中并非的 35 个树种)。因此,maple 的独热表示法可能如下所示:

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

或者,稀疏表示法则只是识别特定物种的位置。如果 maple 位于位置 24,则 maple 的稀疏表示法可能如下所示:

24

请注意,稀疏表示法比独热表示法更紧凑。

稀疏向量 (sparse vector)

#fundamentals

一个值大部分为零的向量。另请参阅稀疏特征稀疏性

稀疏性

向量或矩阵中设为零(或 null)的元素数量除以该向量或矩阵中的条目总数。例如,假设某个矩阵有 100 个元素,其中 98 个单元格包含 0。稀疏性的计算如下:

$$ {\text{sparsity}} = \frac{\text{98}} {\text{100}} = {\text{0.98}} $$

特征稀疏性是指特征向量的稀疏性;模型稀疏性是指模型权重的稀疏性。

空间池化

#image

请参阅 pooling

拆分

#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 个图层。

另请参阅流水线

state

#rl

在强化学习中,用于描述当前环境配置的参数值,代理使用这些值选择操作

state-action value 函数

#rl

Q 函数的含义相同。

静态

#fundamentals

某件事只执行一次,而不是一直进行。 术语“静态”和“离线”是同义词。下面是静态离线在机器学习中的常见用法:

  • 静态模型(也称为离线模型)是指训练一次、使用一段时间的模型。
  • 静态训练(或离线训练)是训练静态模型的过程。
  • 静态推理(即离线推理)是模型每次生成一批预测的过程。

动态相对。

静态推理

#fundamentals

离线推理的含义相同。

平稳性

#fundamentals

其值在一个或多个维度(通常是时间)不会改变的特征。例如,某个特征在 2021 年和 2023 年的值大致相同,就展现出平稳性。

在现实世界中,很少有特征展现平稳性。甚至具有稳定性(如海平面)同义词的特征也会随时间而变化。

不平稳相对。

步进

一个批次的前向传播和反向传播。

如需详细了解前向传播和反向传播,请参阅反向传播

步长 (step size)

学习速率的含义相同。

随机梯度下降法 (SGD)

#fundamentals

批量大小为 1 的梯度下降法换句话说,SGD 会使用从训练集中随机均匀选择的单个样本进行训练。

步幅

#image

在卷积运算或池化中,下一个系列输入切片的每个维度中的增量。例如,以下动画演示了卷积运算期间的 (1,1) 步长。因此,下一个输入切片将从上一个输入切片右侧的一个位置开始。当运算到达右边缘时,下一个切片会最左边,但向下一个位置。

一个 5x5 输入矩阵和一个 3x3 卷积过滤器。由于步长为 (1,1),因此卷积过滤器将应用 9 次。第一个卷积切片评估输入矩阵左上角的 3x3 子矩阵。第二个切片评估顶部中间的 3x3 子矩阵。第三个卷积切片评估右上角的 3x3 子矩阵。第四个切片对中间左侧的 3x3 子矩阵求值。第五个切片对中间的 3x3 子矩阵进行评估。第六个切片评估中间右侧的 3x3 子矩阵。第七个切片评估左下角的 3x3 子矩阵。第八个切片评估底部中间的 3x3 子矩阵。第九个切片评估右下角的 3x3 子矩阵。

前面的示例展示了二维步长。如果输入矩阵是三维的,则步长也是三维的。

结构风险最小化 (SRM)

一种算法,用于平衡两个目标:

  • 需要构建最具预测性的模型(例如,损失最低)。
  • 需要使模型尽可能简单(例如强大的正则化)。

例如,旨在将训练集的损失和正则化降至最低的函数就是一种结构风险最小化算法。

经验风险最小化相对。

下采样

#image

请参阅 pooling

子词词元

#language

语言模型中,标记是单词的子字符串,可以是整个单词。

例如,像“itemize”这样的单词可以拆分为“item”(一个根词)和“ize”(后缀)两个片段,其中每个词都由其自己的词法单元表示。通过将不常见的字词拆分为这样的片段(称为子字词),语言模型可以针对字词更常见的组成部分(例如前缀和后缀)进行操作。

相反,像“会”这样的常用词语可能不会分解,并且可能由单个词元表示。

摘要

#TensorFlow

在 TensorFlow 中,在特定计算的一个值或一组值,通常用于在训练期间跟踪模型指标。

监督式机器学习

#fundamentals

使用特征及其对应的标签训练一个模型modelmodelmodelmodel监督式机器学习类似于通过研究一组问题及其对应的答案来学习主题。在掌握问题和答案之间的对应关系后,学生就可以针对同一主题的新问题(从未见过)提供答案。

非监督式机器学习相对。

合成特征

#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-learning

目标

标签的含义相同。

目标网络

#rl

深度 Q 学习中,一种神经网络,其稳定近似的主神经网络,其中主神经网络会实现 Q 函数政策。然后,您可以使用目标网络预测的 Q 值训练主网络。因此,您可以防止主网络基于自行预测的 Q 值进行训练时发生的反馈环。避免这种反馈有助于提升训练稳定性。

任务

可以使用机器学习技术解决的问题,例如:

温度

#language
#image
#生成式 AI

用于控制模型输出随机性程度的超参数。温度越高,输出的随机性越强;而温度越低,输出的随机性越小。

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

温度通常与 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

张量在各种维度中包含的元素数。例如,[5, 10] 张量在一个维度的形状为 5,在另一个维度的形状为 10。

张量大小

#TensorFlow

张量包含的标量总数。例如,[5, 10] 张量的大小为 50。

TensorStore

用于高效读取和写入大型多维数组的

终止条件

#rl

强化学习中,决定分集何时结束的条件,例如当代理达到特定状态或状态转换次数超过阈值时。例如,在 tic-tac-toe(也称为“noughts”和“crosses”)中,当玩家标记三个连续的空格或标记所有空格时,剧集终止。

test

#df

决策树中,条件的别名。

测试损失

#fundamentals

一个指标,表示模型相对于测试集损失构建模型时,您通常会尽量将测试损失降至最低。model这是因为,与训练损失验证损失相比,测试损失低意味着质量信号更强。

如果测试损失与训练损失或验证损失之间相差很大,有时表明您需要提高正则化率

测试集

保留的数据集子集,用于测试经过训练的模型

传统上,您需要将数据集中的样本划分为以下三个不同的子集:

数据集中的每个样本都应仅属于上述子集中的一个。 例如,一个样本不应同时属于训练集和测试集。

训练集和验证集都与训练模型紧密相关。 由于测试集仅与训练间接关联,因此与训练损失验证损失相比,“测试损失”的偏差较小且质量较高。

文本跨度

#language

与文本字符串的特定子部分关联的数组索引 span。 例如,Python 字符串 s="Be good now" 中的单词 good 占据了文本 span 从 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”由九个字符标记组成。(请注意,空格也算作其中一个标记。)
  • 子词 - 其中单个词可以是单个词法单元,也可以是多个词法单元。 子词由根词、前缀或后缀组成。例如,使用子词作为词法单元的语言模型可能会将单词“dogs”视为两个词元(根词“dog”和复数后缀“s”)。同一语言模型可能会将单个词“taller”视为两个子词(根词“tall”和后缀“er”)。

在语言模型以外的领域,词法单元可以表示其他类型的原子单元。例如,在计算机视觉中,词元可能是图像的子集。

深度神经网络的一个组件,而它本身就是深度神经网络。在某些情况下,每个信号塔从独立的数据源读取数据,并且在它们的输出合并到最后一层之前,这些信号塔会保持独立状态。在其他情况下(例如,在由许多 Transformer 组成的编码器解码器堆栈/塔中),塔之间彼此交叉连接。

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。

损失曲线绘制训练损失与迭代次数的对比情况。损失曲线提供有关训练的以下提示:

  • 下降斜率表示模型在改进。
  • 斜率上升表示模型在变差。
  • 平斜率意味着模型已达到收敛

例如,以下比较理想化的损失曲线显示了以下内容:

  • 初始迭代期间出现陡峭的下降斜率,这意味着模型会快速改进。
  • 梯度会逐渐变平(但仍在下降),直到训练接近结束,这意味着模型在初始迭代期间的改进速度会比初始迭代慢一些。
  • 接近训练结束的斜率,表示已收敛。

训练损失与迭代次数的曲线图。此损失曲线从陡峭的斜坡开始。斜率逐渐变平,直到斜率变为 0。

虽然训练损失很重要,另请参阅泛化

训练-应用偏差

#fundamentals

模型在训练期间的表现与同一模型在应用期间的表现之间的差异。

训练集

#fundamentals

用于训练模型数据集的子集。

传统上,数据集中的样本分为以下三个不同的子集:

理想情况下,数据集中的每个样本都应仅属于上述子集中的一个。例如,一个样本不应同时属于训练集和验证集。

轨迹

#rl

强化学习中,一系列元组表示代理的一系列状态转换,其中每个元组对应于指定状态转换的状态、操作奖励和下一个状态。

迁移学习

将信息从一个机器学习任务转移到另一个机器学习任务。 例如,在多任务学习中,一个模型可以处理多项任务,例如针对不同任务具有不同输出节点的深度模型。迁移学习可能涉及将知识从较简单任务的解决方案迁移到较复杂的任务,或者将知识从数据较多的任务转移到数据较少的任务。

大多数机器学习系统都只能完成一项任务。迁移学习是向人工智能迈出的一步,即单个程序可以解决多个任务。

Transformer

#language

Google 开发的神经网络架构,依靠自注意力机制将一系列输入嵌入转换为一系列输出嵌入,而不依赖卷积循环神经网络您可以将 Transformer 视为一系列自注意力层。

Transformer 可以包含以下任何内容:

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

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

博文《转换器:语言理解的新型神经网络架构》详细介绍了 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

生成预测能力较差的模型model,因为模型尚未完全捕获训练数据的复杂性。许多问题都可能导致欠拟合,包括:

欠采样

分类不平衡的数据集大多数类别中移除样本,以创建更平衡的训练集

例如,假设某个数据集中多数类与少数类的比率为 20:1。要克服这种类别不平衡,您可以创建一个训练集,其中包含所有少数类样本,但仅包含多数类别样本的十分之一,这样产生的训练集类别比率为 2:1。由于欠采样,这种更均衡的训练集可能会产生更好的模型。或者,这种更加均衡的训练集可能包含没有足够的样本来训练有效模型。

过采样相对。

单向

#language

只评估文本目标部分之前的文本的系统。相反,双向系统会对文本目标部分之前和之后的文本进行评估。如需了解详情,请参阅双向

单向语言模型

#language

一种语言模型,仅基于出现在目标词元之前(而非之后)的词法单元。与双向语言模型相对。

无标签样本

#fundamentals

包含 features 但没有标签的样本。例如,下表显示了某个房屋评估模型的三个无标签样本,每个样本都有三个特征,但没有房屋价值:

卧室数量 浴室数量 房龄
3 2 15
2 1 72
4 2 34

监督式机器学习中,模型基于有标签样本进行训练,并基于无标签样本进行预测。

半监督式无监督学习中,会使用无标签样本。

对比无标签样本与有标签样本

非监督式机器学习

#clustering
#fundamentals

训练模型model,以找出数据集(通常是无标签数据集)中的规律。

非监督式机器学习的最常见用途是将数据聚类到相似样本组中。例如,非监督式机器学习算法可以根据音乐的各种属性对歌曲进行聚类。所得到的聚类可以作为其他机器学习算法(例如音乐推荐服务)的输入。当有用标签稀缺或缺失时,聚类可能有所帮助。例如,在反滥用和反欺诈等领域,聚类有助于人们更好地了解数据。

监督式机器学习相对。

效果提升情况建模分析

一种营销领域中常用的建模技术,用于对“待遇”对“个体”的“因果效应”(也称为“增量影响”)进行建模。以下是两个示例:

  • 医生可能会使用提升模型,根据患者(个人)的年龄和病史来预测手术(治疗)的死亡率下降(因果效应)。
  • 营销者可以使用效果提升模型来预测广告(实验组)对个人(个人)的购买可能性增加的情况(因果效应)。

效果提升建模与分类回归不同,因为部分标签(例如,一半的实验组)中总是缺少二元提升情况。例如,患者可能会接受治疗,也可能不会接受治疗;因此,我们只能观察患者在这两种情况中的一种(但绝不能)中是否会愈合。提升模型的主要优势在于,它可以针对未观察到的情况(反事实)生成预测,并使用它来计算因果效应。

权重上调

降采样的类别应用一个权重,该权重等于降采样所依据的因子。

用户矩阵

#recsystems

推荐系统中,一种通过矩阵分解生成的嵌入矢量,其中包含有关用户偏好的潜在信号。用户矩阵的每一行都包含有关单个用户的各种潜在信号的相对强度的信息。以电影推荐系统为例。在该系统中,用户矩阵中的潜在信号可能代表每个用户对特定类型的兴趣,也可能是难以解读的信号,这些信号涉及涉及多个因素的复杂互动。

用户矩阵有一列对应每个潜在特征,一行对应每个用户。也就是说,用户矩阵与要分解的目标矩阵具有相同的行数。例如,假设某个电影推荐系统有 100 万个用户,则用户矩阵将有 100 万行。

V

validation

#fundamentals

对模型质量的初始评估。 验证功能会根据验证集检查模型预测的质量。

由于验证集与训练集不同,因此验证有助于防止过拟合

您可以将模型根据验证集评估为第一轮测试,将根据测试集评估模型作为第二轮测试。

验证损失

#fundamentals

一种指标,表示在训练的特定迭代期间模型在验证集上的损失

另请参阅泛化曲线

验证集

#fundamentals

数据集的子集,用于对经过训练的模型执行初始评估。通常,您先对照验证集多次评估经过训练的模型,然后再根据测试集评估模型。

传统上,您需要将数据集中的样本划分为以下三个不同的子集:

理想情况下,数据集中的每个样本都应仅属于上述子集中的一个。例如,一个样本不应同时属于训练集和验证集。

价值插补

使用可接受的替代值替换缺失值的过程。 当某个值缺失时,您可以舍弃整个样本,也可以使用值插补来回收样本。

例如,假设某个数据集包含应该每小时记录的 temperature 特征。但是,系统无法提供特定小时的温度读数。以下是该数据集的一部分:

时间戳 温度
1680561000 10
1680564600 12
1680568200 缺失
1680571800 20
1680575400 21
1680579000 21

系统可以删除缺失的样本或将缺失温度估计为 12、16、18 或 20,具体取决于插补算法。

梯度消失问题

#seq

一些深度神经网络的早期隐藏层的梯度趋势非常平缓(低)。梯度值越低,深度神经网络中节点的权重变化就越小,导致学习极少或根本没有学习。受梯度消失问题影响的模型变得难以训练或无法训练。Long Short-Term Memory 单元格可以解决这个问题。

梯度爆炸问题相对。

重要性可变

#df

一组分数,指示每个特征对模型的相对重要性。

以一个估算房价的决策树为例。假设此决策树使用三个特征:尺寸、年龄和样式。如果计算这三个特征的一组变量重要性为 {size=5.8, age=2.5, style=4.7},那么大小对决策树来说比年龄或样式更重要。

存在不同的变量重要性指标,可为机器学习专家提供模型不同方面的信息。

变分自编码器 (VAE)

#language

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

VAE 基于变分推断,这是一种用于估算概率模型参数的技术。

vector

一个非常多的术语,其含义因不同的数学和科学领域而异。在机器学习中,向量有两个属性:

  • 数据类型:机器学习中的矢量通常存储浮点数。
  • 元素数:这是矢量的长度或尺寸。

以一个包含 8 个浮点数的特征向量为例。此特征向量的长度或维度为 8。请注意,机器学习矢量通常具有大量的维度。

您可以将许多不同类型的信息表示为向量。例如:

  • 地球表面上的任意位置都可以表示为二维矢量,其中一个维度是纬度,另一个维度是经度。
  • 500 只股票的当前价格可以表示为一个 500 维向量。
  • 有限数量类别的概率分布可表示为向量。例如,预测三种输出颜色(红色、绿色或黄色)之一的多类别分类系统可以输出向量 (0.3, 0.2, 0.5),使其表示 P[red]=0.3, P[green]=0.2, P[yellow]=0.5

向量可以串联起来;因此,各种不同的媒体可表示为单个向量。某些模型直接处理多个独热编码的串联。

专用处理器(如 TPU)已经过优化,可以对矢量执行数学运算。

矢量是 rank 1 的张量

西

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

加权和是激活函数的输入参数。

宽度模型

一种线性模型,通常具有许多稀疏输入特征。我们之所以称其为“宽度模型”,是因为此类模型是一种特殊类型的神经网络,其大量输入都直接连接到输出节点。与深度模型相比,宽模型通常更易于调试和检查。虽然宽度模型无法通过隐藏层表示非线性规律,但宽度模型可以使用特征组合分桶等转换,以不同的方式为非线性建模。

深度模型相对。

宽度

神经网络特定中的神经元数量。

群体的智慧

#df

将一大群人(“群体”)的意见或估算值平均化的想法往往会产生出人意料的良好结果。例如,假设有一款游戏,玩家需要猜测装在大罐子里的果冻豆数量。虽然大多数人的猜测并不准确,但根据经验,所有猜测的平均值都非常接近罐子里的实际糖豆数量。

Ensemble 是一种模拟群体智慧的软件。即使个别模型做出的预测极为不准确,将许多模型的预测平均值也往往会产生出乎意料的良好预测。例如,虽然单个决策树的预测可能较差,但决策森林通常可以做出非常好的预测。

字词嵌入

#language

表示嵌入向量内的字词集中的每个字词;也就是说,将每个字词表示为一个介于 0.0 和 1.0 之间的浮点值的向量。含义相似的字词比含义不同的字词具有更相似的表征。例如,carrots、celerycumbers 具有相对相似的表示法,这与 airplanesunglassestoothpaste 的表示形式截然不同。

X

XLA(加速线性代数)

一款适用于 GPU、CPU 和机器学习加速器的开源机器学习编译器。

XLA 编译器会从 PyTorchTensorFlowJAX 等热门机器学习框架获取模型,并对其进行优化,以便在不同的硬件平台(包括 GPU、CPU 和机器学习加速器)上实现高性能执行。

Z

零样本学习

一种机器学习训练模型为尚未专门进行过训练的任务推断预测换句话说,我们没有为模型提供任何特定任务的训练样本,但要求其对该任务进行推断

零样本提示

#language
#生成式 AI

一个提示不提供您希望大语言模型响应的示例。例如:

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

大语言模型可能会返回以下任一项作为响应:

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

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

零样本提示与以下术语进行比较和对比:

Z 评分归一化

#fundamentals

缩放方法,将原始特征值替换为浮点值,浮点值表示与该特征的平均值相差的标准差数。例如,假设某个特征的平均值为 800,标准差为 100。下表显示了 Z 分数归一化如何将原始值映射到其 Z 分数:

原始值 Z 分数
800 0
950 +1.5
575 -2.25

然后,机器学习模型会根据该特征的 Z 分数(而不是原始值)进行训练。