在学习深度学习的过程中,我们经常会遇到各种误解和固有的观念。这篇文章总结了机器学习领域常见的七大误区,其中许多是我们以前深信不疑的概念。现在,随着新的研究不断出现,这些观念正在受到挑战。下面的七个问题,你是否还持有这样的“执念”呢?
实际上,TensorFlow 更多是一个矩阵运算库,而不是张量运算库。这两者的区别很大。在NeurIPS 2018的论文《Computing Higher Order Derivatives of Matrix and Tensor Expressions》中,研究者表明,基于张量微积分建立的新自动微分库可以生成更简洁的表达式树。这是因为张量微积分使用了索引标识,使得前向和反向模式的处理方式一致。而矩阵微积分因为标识方便的原因隐藏了索引,导致自动微分的表达式树变得过于复杂。例如,在矩阵乘法 C=AB 中,前向模式和反向模式的处理方式完全不同。在前向模式中,有特定的公式表示,而在反向模式中,则有不同的公式。这些差异使得张量微积分在表达式树的构建上更为高效。研究者在测试中发现,使用张量微积分的方法在计算Hessian矩阵时,比当前流行的TensorFlow、Theano、PyTorch和HIPS autograd等库快两个数量级。在GPU上,速度提升甚至达到了三个数量级。
在机器学习课程中,我们了解到将数据集分为训练集、验证集和测试集的重要性。然而,在实际研究中,测试集的使用频率比想象中要高。在机器学习研究的竞争环境中,测试集的表现通常决定了论文的接受与否。因此,研究人员往往倾向于在测试集上取得较好的结果。这种做法可能会导致过拟合,即模型在测试集上表现良好,但在实际应用中表现不佳。为了验证这一点,有研究者在CIFAR-10数据集上建立了新的测试集,发现许多模型在切换到新测试集时准确率显著下降。然而,较好的模型在新测试集上的准确率下降幅度较小,这表明随着研究的进步,测试集的偏差逐渐减小。
有一种观点认为,更多的数据可以更好地训练深度学习模型。然而,研究表明,在某些数据集中存在大量冗余数据。例如,在CIFAR-10数据集中,可以删除30%的数据而不影响测试集的准确率。研究者定义了“遗忘事件”,即在训练过程中神经网络从错误分类变为正确分类的情况。通过这种方式,他们发现MNIST中有91.7%的数据、permutedMNIST中有75.3%的数据、CIFAR-10中有31.3%的数据和CIFAR-100中有7.62%的数据属于“不可遗忘样本”。这些样本包含了大量的冗余信息,而可遗忘样本则表现出更多的独特特征。通过删除这些不可遗忘样本,可以显著压缩数据集,同时不影响测试集的准确率。
长期以来,人们认为深度网络的训练需要批标准化来解决梯度消失和爆炸的问题。然而,近期的研究表明,即使不使用批标准化,也可以通过其他方法训练深度网络。例如,Fixup初始化方法可以在不引入任何标准化的情况下,有效地训练一个10,000层的深度网络。研究者在CIFAR-10上进行了实验,发现Fixup方法和批标准化方法都能成功训练10,000层的网络。此外,Fixup方法还可以避免梯度爆炸的问题,从而实现高学习速率下的训练。这些研究结果表明,批标准化并非训练深度网络的唯一方法。
近年来,注意力机制被认为是一种优于卷积的操作。然而,有研究表明,卷积在网络中的应用仍然具有很高的效率。例如,在ICLR 2019的论文《Pay Less Attention with Lightweight and Dynamic Convolutions》中,研究者提出了一种轻量级卷积和动态卷积的方法,这两种方法在效率上远超传统的不可分卷积。这些方法在机器翻译、语言建模和抽象摘要等任务上,使用较少的参数即可达到或超越基于注意力机制的基准效果。
我们常常认为,神经网络在目标识别任务上的表现已经超过了人类。但实际上,许多数据集并不能完全反映自然世界的真实图像分布。例如,在ImageNet等精心挑选的数据集上,神经网络的表现可能优于人类,但在自然世界的真实图像上,它们的表现却不如普通成年人。这是因为现有的数据集与真实世界的分布存在差异。例如,在ImageNet数据集中,“赛车”的出现频率很高,但这并不能代表一般意义上的“汽车”。
尽管神经网络被认为是黑箱模型,但已经有多种方法试图解释其内部工作原理。显著图是一种常用的解释方法,它通过评估图像的特定部分对模型决策的影响来解释模型。然而,有研究表明,可以通过引入微小的不可感知扰动来破坏显著图的有效性。这意味着显著图并不是一种稳定可靠的解释方法。对抗攻击方法可以改变图像在决策边界的位置,从而影响显著图的结果。因此,随着深度学习在高风险领域的广泛应用,如何更可靠地解释神经网络的决策变得越来越重要。
原文链接:https://crazyoscarchang.github.io/2019/02/16/seven-myths-in-machine-learning-research/