Deep Learning on a Data Diet: Finding Important Examples Early in Training

本文发现:在训练的早期(只有几个阶段),部分遗忘评分可以识别出可以修剪的大量数据。
用训练的一个梯度步骤分析这个令人困惑的结果,提出了一个非常简单的启发式方法:使用单个例子的损失梯度范数来识别重要的例子。
虽然当损失梯度范数在单个轨迹训练早期的权重处计算时,这种方法并不适用,但令人惊讶的是,我们发现,在多个权重初始化上平均这些范数确实会产生与遗忘分数密切相关的排名,并允许我们在训练早期修剪大量示例。
事实上,即使在初始化时,我们也可以在不影响精度的情况下从CIFAR-10中删除50%的示例,而在更具挑战性的CIFAR-100数据集上,我们可以删除25%的示例,精度仅下降1%。
通过一系列的实证研究,我们已经开始梳理重要示例的属性,以及它们如何依赖于数据分布。
特别是,我们发现,随着标签噪声的增加,具有最高规范的示例变得多余。
事实上,即使在干净的数据上,我们发现在高修剪制度下,最好的群体排除了得分最高的例子。

主要贡献:

  1. 我们提出通过每个训练示例(xi, yi)的期望损失梯度范数(GraNd score)对其重要性进行评分,该范数在一个常数范围内,限制了任意示例(x, y)由于去除(xi, yi)而导致的损失的期望变化。
  2. 我们表明,在初始化时对具有小GraNd分数的训练样本进行修剪,可以在只有50%的训练数据上进行训练,而没有任何准确性损失(CIFAR-10)。虽然修剪级别与其他方法提供的相当,但我们的分数是唯一在初始化和训练早期定义良好的分数。
  3. 我们的实验结果表明,在训练的前几个阶段,GraNd评分很好地近似于错误向量的范数(EL2N评分),其中错误向量是预测的类概率减去单热标签编码。事实上,我们发现EL2N评分为广泛的数据修剪级别提供了更好的数据修剪信息,甚至在训练的早期。
  4. 我们研究了EL2N得分最高的样本的作用,发现排除一小部分得分最高的示例可以提高性能。这种性能提升在损坏的标签制度中得到增强。
  5. 我们介绍了一种基于线性连接模式的方法,用于根据数据子集的模式研究经验风险面,使我们能够确定在训练中何时确定亚群体的最终性能。我们证明了在低EL2N评分示例上计算的经验风险面在收敛处的线性连接模式在训练中比高评分示例更早地确定。
  6. 最后,我们研究了一个例子的EL2N分数如何与网络的训练动态联系起来。我们通过跟踪与低或高分数示例对应的依赖于数据的NTK子矩阵,并测量它以尺度不变的方式发展的速度来实现这一点。我们发现,高分示例的NTK子矩阵在整个训练过程中进化得更快,这支持了我们的假设,即高分示例是驱动学习和NTK特征空间[9]变化的例子

梯度范数评分和无穷小分析

Deep Learning on a Data Diet: Finding Important Examples Early in Training_第1张图片

Deep Learning on a Data Diet: Finding Important Examples Early in Training_第2张图片Deep Learning on a Data Diet: Finding Important Examples Early in Training_第3张图片

 在初始的时候剪枝:

在所有设置中,GraNd分数可用于在初始化时选择一个训练子集,该子集获得的测试准确性明显优于随机测试,并且在某些情况下,可以与所有数据上的训练相竞争。这是值得注意的,因为GraNd只包含初始化时梯度范数的信息,在初始化上平均。
这表明,由随机网络诱导的训练分布的几何结构包含了关于分类问题结构的惊人数量的信息。EL2N分数只包含关于错误的信息,在初始化时并不一致有效,而遗忘分数需要在训练中计算遗忘事件,在初始化时没有定义。初始化时没有定义。

在早期时候剪枝:

我们发现,在经过几个训练阶段后,EL2N分数在识别用于泛化的重要示例方面非常有效。对于广泛的中级修剪水平,在最高分数上的训练与在完整数据集上的训练表现相同或更好。即使在更高的修剪水平上,在训练早期使用局部信息计算的EL2N分数与在训练轨迹上整合信息的遗忘分数相比也具有竞争力。这表明,在训练的几个阶段的平均错误向量可以识别出网络在整个训练过程中大量用于形成决策边界的示例。

Identifying noise examples

为了测试得分最高的示例对于实现高准确度是否最重要,我们首先通过增加在少量训练周期后计算的EL2N分数来对示例进行排序然后,我们执行滑动窗口分析,在一个窗口内对分数从f到f + P个百分点的示例子集进行训练,始终保持P %的数据,但滑动f。当这个窗口滑动到更高的百分位数时,性能会提高,除非该窗口包含了得分最高的示例(图2(左))。事实上,最优滑动窗口实际上排除了大约500个得分最高的训练示例。这些影响在低修剪水平下减弱

Evolution of the data-dependent NTK

神经网络在无限宽度限制下的训练动力学现在已经被很好地理解了[15,16]:为了适当缩放学习速率和初始权值,神经网络表现为一个线性模型,其中数据在初始化时由神经切核(NTK)转换,NTK定义为初始化时对数的雅可比矩阵的乘积。在极限情况下,神经网络训练以固定的NTK为内核进行核回归。

有趣的是,当引入标签噪声时,对于得分最高的例子,内核速度会急剧下降。在第4节中,我们展示了放弃这些例子可以提高最终预测器的准确性。我们假设,虽然对于模型积极尝试拟合的更难的例子,内核速度更高,但对于可能太难学习的最高分数的例子,内核速度下降,可能是因为它们是不具有代表性的样本,或者它们有标签噪声。

Connections to the Linear Mode Connectivity

我们发现,对于EL2N分数低的例子,错误屏障会非常迅速地接近于零,而对于分数高的例子,错误屏障会保持很高。
这些发现表明,由低EL2N和高EL2N示例的有限子集派生的损失景观表现非常不同。
从低分数例子的简单子集中得到的损失情况是相当平坦的,从某种意义上说,子样本之间的错误障碍作为生成时间的函数迅速减少。
另一方面,从更高分数的更难的例子子集中派生的损失情况更粗糙,在生成时间中存在更长的错误屏障。
此外,该结果与第5.1节中给出的结果一致,表明大多数学习发生在高EL2N分数的例子中。

结论

总之,我们的工作:(1)在训练早期(图1),有时甚至在初始化时,只使用局部信息,引入了在不牺牲测试准确性的情况下显著修剪数据的方法,
(2)使用得到的方法来获得关于训练示例的不同子集如何驱动深度学习动态的新的科学见解。我们从一个原则性的方法开始,通过询问平均每个训练示例对其他示例的损失减少有多大影响,从这个起点出发,我们得到了2个分数,即边界或近似这种影响的梯度范数(GraNd)和错误范数(EL2N),分数越高表明潜在影响越高。我们发现,分数越高的例子越难学,也就是说,在整个训练过程中,它们更容易被遗忘。我们还发现,得分最高的例子往往是一类中不具代表性的离群值,具有非标准背景或奇数角度,容易受到标签噪声的影响,或者在其他方面很困难。这种观察产生了一种简单而强大的滑动窗口方法(图2),通过将示例保持在分数范围内来修剪数据,其中范围的开始和结束只构成2个超参数,可以通过验证集进行调优。
此外,我们发现高分示例主要通过最大限度地支持NTK的速度来驱动特征学习,
而学习动态实际上可能会放弃得分最高的例子,这些例子可能对应于不具代表性的例子或噪声(图3)。最后,我们表明,得分较高(较低)的例子子集有助于形成更粗糙(更平滑)的损失景观(图4)。总的来说,这种将损失景观几何形状和学习动态分解为不同类型例子的不同贡献,构成了一种令人兴奋的分析深度学习的新方法。
更深入地了解不同示例子集所起的不同作用,不仅有助于数据修剪,还有助于课程设计、主动学习、具有隐私的联邦学习以及公平和偏见分析。

你可能感兴趣的:(深度学习,人工智能)