E
June 03, 2023
本文旨在按字母顺序对团队研究过程中涉及的术语进行分类解释,为对该领域感兴趣的读者提供一份全面的术语表。
Embeddings
嵌入(Embeddings)是指将高维离散值向量映射为低维连续值向量的过程。例如,假设在一个段落中,出现的英文单词用1表示,未出现的英文单词用0表示。 在数百万个英文单词中,一个段落通常只使用少于50个单词,因此除了其中几个单词外, 大部分单词都将被表示为0。这可以将稀疏向量(sparse vector)或独热向量(one-hot vector)表示的数百万个整数转换为具有0到1之间浮点数的稠密向量(dense vector)。
Ensemble Learning
集成学习(Ensemble Learning)是一种将多个弱分类器合并以提高分类性能的技术,就像多个乐器合奏一样。 虽然它会增加计算量,但在需要极高性能的竞赛(如ILSVRC)等情况下几乎是必不可少的。 通常,多数投票(Majority Voting)被用来综合多个分类器的结果。 例如,在一个通过5个分类器进行集成学习来分类“猫”和“狗”的问题中,如果分类器1、分类器2和分类器3预测为“猫”,分类器4和分类器5预测为“狗”,那么根据多数投票原则,我们将决定“猫”为正确的预测结果。 下图展示了这个过程。(与下图类似,不同类型的机器学习算法也可以进行组合。)
Epoch
算法在观察完整个训练数据一次时被称为一个时代(epoch)。从神经网络的角度来看,当进行一次前向传播(forward pass)和一次反向传播(backward pass)来处理所有训练数据时,就完成了一个时代。 举个例子,假设有1000个训练数据,批次大小(batch size)为500。那么需要经过2个迭代(iterations)才能完成一个时代的训练。
Exploding Gradient Problem
观察梯度计算时,如果雅可比矩阵中的值很大,我们可以想象梯度不会随着激活函数和网络参数的变化而消失,而是会呈指数增长的情况。这个问题被称为梯度爆炸问题(exploding gradient problem),它没有引起太多关注的原因有两个。首先,梯度爆炸问题很容易被察觉。梯度值会变成NaN(非数字),导致程序崩溃。 其次,如果梯度值过大,可以通过将其裁剪为预先设定的合适值来解决这个问题(这在一些论文中有所提及),这种方法非常简单高效。而相比之下,消失梯度问题更为严重,因为很难准确判断何时会发生,且没有简单的解决方案。