模型泛化不必随机训练,全批量GD媲美SGD,网友:计算成本负担不起( 二 )


该研究注意到 , 通过注入简单形式的梯度噪声不容易弥补这一差距 , 如下表1所示 。 接下来的实验该研究努力缩小了全批量和小批量训练之间的差距 。
模型泛化不必随机训练,全批量GD媲美SGD,网友:计算成本负担不起
文章图片
由于全批量训练不稳定 , 因此该研究在超过400step(每一个step是一个epoch)的情况下将学习率从0.0提升到0.4以保持稳定 , 然后在3000step的情况下通过余弦退火衰减到0.1 。
实验表明在对训练设置进行了一些修改后 , 全批量梯度下降性能提高到了87.36%(±1.23) , 比基线提高了12% , 但仍与SGD的性能相去甚远 。 表2中总结了验证分数:
模型泛化不必随机训练,全批量GD媲美SGD,网友:计算成本负担不起
文章图片
该研究用显式正则化来弥补这种差距 , 并再次增加了初始学习率 。 在第400次迭代时将学习率增加到0.8 , 然后在3000step内衰减到0.2 。 在没有正则化因子的情况下 , 使用该学习率和clipping操作进行训练 , 准确率为93.75%(±0.13) 。 当加入正则化因子时 , 增大学习率的方法显著提高了性能 , 最终与SGD性能相当 。
总体而言 , 该研究发现经过所有修改后 , 全批量(带有随机数据增强)和SGD的性能相当 , 验证准确率显著超过95% 。
模型泛化不必随机训练,全批量GD媲美SGD,网友:计算成本负担不起
文章图片
该研究还评估了一系列具有完全相同超参数的视觉模型 。 ResNet-50、ResNet-152和DenseNet-121的结果见表3 , 该研究发现所提方法也同样适用于这些模型 。
模型泛化不必随机训练,全批量GD媲美SGD,网友:计算成本负担不起
文章图片
非随机设置下的全批量梯度下降
如果全批量实验能够捕捉小批量SGD的影响 , 那么随机数据增强又会给梯度噪声带来什么影响?研究者又进行了以下实验 。
无数据增强:如果不使用任何数据增强方法 , 并且重复之前的实验 , 那么经过clipping和正则化的GD验证准确率为89.17% , 显著优于默认超参数的SGD(84.32%(±1.12)) , 并且与新调整超参数的SGD(90.07%(±0.48))性能相当 , 如下表4所示 。
模型泛化不必随机训练,全批量GD媲美SGD,网友:计算成本负担不起
文章图片
为了相同的设置下分析GD和SGD , 探究数据增强(不含随机性)的影响 , 该研究使用固定增强的CIFAR-10数据集替换随机数据增强 , 即在训练前为每个数据点采样N个随机数据进行数据增强 。 这些样本在训练期间保持固定 , 也不会被重新采样 , 从而产生放大N倍的CIFAR-10数据集 。
最后 , 该研究得出结论:在没有小批量、shuffling以及数据增强产生的梯度噪声后 , 模型也完全可以在没有随机性的情况下达到95%以上的验证准确率 。 这表明 , 通过数据增强引入的噪声可能不会影响泛化 , 并且也不是泛化所必需的 。
引发讨论
这篇论文在社区内引发了大家的讨论 , 有人从实验的角度分析了一下论文的价值 。
该论文把ResNet18用SGD在CIFAR-10训练300个epoch作为基线 , 并在结果部分展示了每一个trick分别提升了多少准确率 。
模型泛化不必随机训练,全批量GD媲美SGD,网友:计算成本负担不起
文章图片
但是这几个trick太常见了 , 反而让人质疑真的如此有效吗?有网友指出「trainlonger」这个trick应该只在CIFAR-10上这么有效 , 而gradientclipping在其他数据集上甚至可能无效 。
模型泛化不必随机训练,全批量GD媲美SGD,网友:计算成本负担不起
文章图片
图源:知乎用户@SummerClover
看来论文中的改进可能是个例 , 难以代表一般情况 。 不过 , 他也在评论中指出SGD近似正则化项是个很有效的trick , 具备很好的理论基础 , 但是计算成本可能会翻倍: