ICLR 2021谷歌提出深度推进框架,有效地揭示概括背后的故事。

ICLR 2021 文章专题 第·2·期

对泛性化的理解作为深度学习中的重要议题之一,如何在有限训练数据上优化的模型为何可以在测试集上取得良好的效果?这一问题在机器学习领域已经有超过50年的研究历史,然而仍未得到很好的解决。

ICLR 2021中发表的新论文“The Deep Bootstrap Framework: Good Online Learners are Good Offline Generalizers”里,研究人员提出了一种通过衔接泛化性与在线优化的新框架来解决这一问题。

论文链接:

https://arxiv.org/pdf/2010.08127.pdf

相关数据集:

https://github.com/preetum/cifar5m

对泛化性的理解是深度学习中尚未解决的基本问题之一。在有限训练数据上优化的模型为何可以在测试集上取得良好的效果?这一问题在机器学习领域已经有超过50年的研究历史。目前已经有很多数学模型可以帮助科研人员理解某些模型的一般性,但不幸的是许多现有的理论都还无法应用到现代深度神经网络中去,这主要是由于深度网络在现实应用中的不可预测性造成的。对于过参数模型来说理论和实践间的巨大鸿沟,理论上其有能量过拟合训练数据,但实践中却常常无法做到。

在ICLR 2021中发表的新论文“The Deep Bootstrap Framework: Good Online Learners are Good Offline Generalizers”里,研究人员提出了一种通过衔接泛化性与在线优化的新框架来解决这一问题。典型的训练过程是利用有限的训练样本在多个周期内重复使用进行训练。但在线优化时,模型可以接入无限的样本流进行迭代更新。在这一研究中,研究人员发现在无限数据上快速训练的模型与在有限数据上训练的模型具有相同的泛化性。这一联系为实际中的设计选择带来了新视角,也为泛化性的理解提供了理论方面的支持。

Deep Bootstrap框架

这一框架的主要思想是对拥有有限数据的真实世界和拥有无限数据的理想世界进行比较:

真实世界:在某个分布中的N个训练样本进行训练,对于拥有T个批量随机梯度下降(SGD)的训练步骤,在多个Epoch上重复使用相同的训练数据。这相当于在经验损失上运行SGD,也是监督学习的标准训练过程。

理想世界:训练一个相同的模型T步,但在每一个SDG训练过程中都能使用来自同一分布中的新数据。在于前面相同的代码上运行新的数据而不重复有限的数据。因此,在理想情况无限的训练数据下,训练误差和测试误差不存在区别了。

在ResNet-18上测试真实和理想世界模型的结果,可以看到其结果是近似的。

先前人们可能会认为现实世界和理想世界间没有任何关系,因为真实世界模型只能看到有限的样本,而理想世界模型则可以看到完整的分布。但在实际过程中,研究人员却发现了真实和理想模型实际上是具有相似的测试误差的。

为了量化这一观测结果,通过创造新的数据集CIFAR-5m模拟了理想世界的情况。首先在CIFAR-10上训练了生成模型,而将其用于生成六百万张图像。这一尺度的数据集被用于在模型视角下实现“虚拟的无限大的”数据集,使得模型不会重复采样到相同的数据。这就模拟了模型在理想世界可以使用完整的不重复的数据样本。

CIFAR-5m中的样本

下图展示了在多个模型上的测试误差,比较在CIFAR-5m上理想情况和真实情况下(数据重用)的训练结果。蓝色实线是ResNet模型在真实情况下的训练结果,利用了标准的CIFAR-10超参数在50K样本上训练了100个周期。蓝虚线则表示在理想情况下在五百万个样本上训练一遍的结果。令人惊异的是,实际情况和理想情况下训练的模型具有十分相似的测试误差,模型在某种程度上”不关心”它看到的样本是复用的样本还是完全新的样本。

真实模型在50k样本上训练了100遍,理想模型则在五百万样本上训练了一遍。图中的线显示了测试误差随训练步数的变化情况。

在其他架构上也有相同的发现。包括多层感知机(红),视觉Transformer(绿)架构,同时在多种其他的架构、优化器、数据分布和样本大小上都有相同的现象。这一实验为我们展示了一个关于研究泛化性的新视角:模型优化越快速(在无限数据集上),其泛化越良好(在有限数据集上)。例如ResNet模型的泛化性在有限数据集上比MLP好,但这是”由于”它在无限数据集上优化得更快。

从优化行为理解模型泛化

实验观察的的关键现象在于真实世界和理想世界模型的测试误差在所有训练步数上都保持接近,直到真实世界模型收敛(1% 的训练误差)。因此,我们可以通过研究在理想世界模型的行为来获得模型在真实世界的表现

这意味着模型的泛性化可以通过以下两种方式从优化过程中获取:

在线优化:理想情况下测试误差的下降速度;

离线优化:真实情况下训练误差的收敛程度。

因此,在研究泛化性时可以从以上两个角度进行深入,这一简单的概念仅仅包含了优化过程的行为而不用考虑复杂的因素。基于这样的观察,一个好的模型其训练过程应该能:

(1)在理想条件下快速优化;

(2)在真实情况下不会优化(收敛)太快。

深度学习中几乎所有的设置都可以看做是这通过两个方面来进行研究。例如像卷积、跳接层等先进的结构和预训练等方法可以主要加速在理想情况下的优化过程,而其它想正则化和数据增强手段则主要用于对真实情况下的优化过程减速(缓解过拟合,不要训练太快)。

Deep Bootstrap框架的应用

研究人员可以利用Deep Bootstrap框架对研究和引导深度学习模型的设计。其原则可以概括为:无论使用什么手段(模型架构、学习率等等)来改变模型在真实情况下的泛化性,我们都需要考虑他们:

(1)在理想条件下的测试误差(越快越好)

(2)在真实情况下的训练误差(越缓慢越好)。

例如预训练通常可以在小数据集情况下提升泛化性,但其背后的理论基础还不清晰。可以借助Deep Bootstrap框架来从上述原则的角度审视预训练的效果。通过研究发现,预训练主要为模型提升了在理想情况下的优化性能,下图中比较了ViT模型在CIFAR-10上从零开始训练和ImageNet上进行预训练的模型。可以看到预训练使得模型的测试误差下降更快,符合第一条原则。

预训练效应,ImageNet上预训练过的ViT模型在理想情况下优化得更快。

同时还可以利用相同的方式研究数据增强的效果。数据增强在理想情况下对应着每个样本扩充一次,而不是多次扩充统一样本。这一框架分析显示,好的数据增强一方面不会损害理想世界的优化过程(增强的样本不会超出数据分布),另一方面也可以抑制真实世界的优化速度(真实情况下需要更长的时间来拟合训练集)。

数据增强主要的优势可以从第二个原则中发现,延长真实世界下训练时间。对于第一项原则,一些数据增强方法(混合/剪切)会损害理想情况下的训练行为,但与第二项原则相比则相形见绌。

结论和思考

Deep Bootstrap 为深度学习的泛化性研究提供了一种新的视角,它为深度学习的深入理解提供了新的方向。这一研究中最为有趣的现象在于泛化性可以通过纯粹的优化视角进行研究,与其他理论形成了强烈的对比。更重要的是,这一研究同时考虑了在线和离线优化两种形式,虽然各自都有局限性但联合在一起可以有效地解释泛化性。

Deep Bootstrap 框架同时还能为深度学习的各种设计提供可信赖的理论解释:不同的架构、损失函数、优化器、正则化以及激活函数等都可以通过这套理论进行分析。这一框架给出了一套统一的原则:在线优化过程中运行良好的模型在离线情况下也可具有优异的泛化性。

最后值得一提到的是,现代神经网络要么是过参数化的(在小数据上训练大网络),要么是欠参数化(GPT-3,T5,ResNeXt WSL)的。Deep Bootstrap框架意味着在线优化是在两类模型中成功的关键因素。

From: Google; 编译:T.R

Illustrastion by Maria Shukshina from Icons8

– The End –

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据