B

June 03, 2023

本文旨在按字母顺序对团队研究过程中涉及的术语进行分类解释,为对该领域感兴趣的读者提供一份全面的术语表。

Backpropagation

反向传播(Backpropagation)是神经网络(Neural Network)或前向计算图(feedforward computational graph)中执行梯度下降(Gradient Descent)的基本算法。首先,在正向传播阶段计算并缓存每个节点的输出值。 然后,在反向传播阶段,从神经网络的输出开始,计算每个参数的误差偏导数(Partial Differential),并通过链式法则(Chain Rule)向后传递。通过反复执行这个过程,参数会以最小化误差的方向进行更新。

Bag of Words

词袋模型(Bag of Words)是一种将句子表示为数字的方法之一。例如,在问句”How are you?”的回答中,可能有”awesome thank you”、“great thank you”、“not bad not good”等不同的选项,可以表示如下:

[awesome, thank, you, great, not, bad, good] awesome thank you [1,1,1,0,0,0,0] great thank you [0,1,1,1,0,0,0] not bad not good [0,0,0,0,2,1,1]

使用词袋模型的原因如下:

  1. 可以通过元素乘积来测量句子的相似度(Sentence similarity)。

    • awesome thank you [1,1,1,0,0,0,0] x great thank you [0,1,1,1,0,0,0] = 2

    • great thank you [0,1,1,1,0,0,0] x not bad not good [0,0,0,0,2,1,1] = 0

  2. 可用作机器学习模型的输入。机器学习模型基本上是一个函数,因此输入必须是数值。而句子本身并不是数值。通过词袋模型将句子转换为数值,可以用作机器学习模型的输入。

然而,词袋模型也有其局限性:

  1. 稀疏性:如果单词数量很大,向量的维度将变得非常大。
  2. 更依赖于单词出现的频率,而非语义相似度。

例如,考虑以下句子:

[the, man, like, girl, love]

  • the man like the girl [2,1,1,1,0]

  • the man love the girl [2,1,0,1,1]

  • the the the the the [5,0,0,0,0]

在词袋模型中,认为下面两个句子的相似度更高:

  • the man like the girl [2,1,1,1,0] x the man love the girl [2,1,0,1,1] = 6

  • the man love the girl [2,1,0,1,1] x the the the the the [5,0,0,0,0] = 10

  1. 词袋模型忽略了单词的顺序。换句话说,会将”home run”和”run home”视为相同的内容。

  2. 无法适应新单词、拼写错误或缩写形式。

Baseline

在比较模型性能时,“Reference”指的是用作参考的模型或启发式方法。而”Baseline”则帮助模型开发者估计特定问题的预期最终性能。

Batch

梯度下降算法中,在进行一次更新(Update)时使用的训练数据数量,即将数据分成的一个批次。从神经网络的角度来看, 它指的是在一次前向传播/反向传播(forward/backward pass)期间使用的训练数据数量。由于批次大小的增加会增加更多的内存需求,因此通常使用小批量(mini-batch)的方式进行训练。

Batch Normalization(BN)

在深度学习中,梯度消失/爆炸问题是一种固有的问题,随着层数的增加,内部协变量漂移会累积导致此问题的发生。批标准化(Batch Normalization)通过对每个层的输入进行归一化,从而减少内部协变量漂移。通过这种方式,可以提高训练速度并增强优化效果。在使用小批量随机梯度下降(mini-batch SGD)时,参数更新是以小批量为单位进行的,因此需要计算每个小批量的均值和方差,并使用这些值对每个层节点的值进行归一化,使其均值为0, 方差为1。与白化(Whitening)类似,但批标准化不需要单独的处理过程来调整均值和方差,而是位于神经网络的中间层,可以通过反向传播进行学习,这是与白化方法的区别之处。

Bayes’ Theory

++ Need to Fill++

Beam Search

++ Need to Fill++

Benchmark

在不考虑上下文的情况下,基准测试(Benchmark)可被理解为在比较解决方案时作为标准的指标,用于判断哪个解决方案更好或更差。 然而,在机器学习的背景下,基准测试指的是已经具有优秀性能的标准解决方案。在测试解决方案的性能时,通常会提供训练/测试数据,并将解决方案的准确度与基准测试进行比较。 通过这样做,可以找到比现有基准测试更好的解决方案。

Bias

神经网络中,在输入(x)和权重(W)的乘积之前被添加的值。也就是说,通过使用偏置(Bias),函数可以具有更强的表达能力。

bias

通过使用Wx进行二元分类和使用Wx+b进行二元分类之间的比较。

Bias-Variance Tradeoff

Bias-Variance Tradeoff

偏差(Bias)和方差(Variance)的关系可以通过上面的图形很容易理解。假设我们创建了一个具有较小误差的模型,这意味着它具有低偏差-低方差的左上方图形。当方差增加时,数据点会散开,误差值也会增加。而当偏差增加时,实际值与预测值之间的误差也会增加。 如果我们能够创建一个类似左上方图形的模型,那将是最理想的情况。然而,遗憾的是,偏差和方差具有反比关系,我们需要平衡二者之间的关系。因此,在下图中,我们需要找到偏差和方差相等的最佳点。

Bias-Variance Tradeoff2

Boltzmann Machine

玻尔兹曼机(Boltzmann Machine)是一个由多个取值为0或1的神经元组成的网络,所有神经元彼此连接。 玻尔兹曼机具有学习算法,可以从复杂的训练数据中发现规律性模式或有意义的特征。然而,由于模型实现非常困难, 通常使用将可见层(visible layer)和隐藏层(hidden layer)分离的限制玻尔兹曼机(RBM)形式。

Bucketing(Binning)

将一段连续值(Continuous Value)映射为离散值(Discrete Value)的技术被称为分桶(Bucketing)或分箱(Binning)。由于一定的区间可以被视为一个桶(Bucket)或者箱子(Bin),因此得名。举个例子,假设有一个实数值范围从0.0到50.0。那么从0到10.0的值可以被映射为1,从10.0到20.0的值可以被映射为2, 从20.0到30.0的值可以被映射为3,从30.0到40.0的值可以被映射为4,从40.0到50.0的值可以被映射为5。通过这样的方式,我们可以使用5个离散值将0.0到50.0的实数值进行映射。

Try not to become a man of success but rather try to become a man of value.

Created by Gatsby & React & Tailwind CSS & Emotion

Co-development with my bro Russellwzr .