本港台开奖现场直播 j2开奖直播报码现场
当前位置: 新闻频道 > IT新闻 >

码报:继1小时训练ImageNet之后,大批量训练扩展到了3万

时间:2017-08-21 00:13来源:本港台现场报码 作者:www.wzatv.cc 点击:
继1小时训练ImageNet之后,大批量训练扩展到了3万2千个样本 2017-08-20 14:06 来源:机器之心 58/操作系统/移动芯片 原标题:继1小时训练ImageNet之后,大批量训练扩展到了3万2千个样本 选自

1小时训练ImageNet3019.html">之后,大批量训练3/205540.html">扩展到了3万2千个样本

2017-08-20 14:06 来源:机器之心 58 /操作系统 /移动芯片

原标题:继1小时训练ImageNet之后,大批量训练扩展到了3万2千个样本

选自arXiv

参与:蒋思源、李亚洲、路雪

自 Facebook 发布1 小时训练 ImageNet 论文以来,很多研究者都在关注如何使用并行训练来提高深度学习的训练速度。Facebook 提出了一种提高批量大小的分布式同步 SGD 训练方法,而 Yang You 等人在 Facebook 的论文上更进一步采用层级对应的适应率缩放(LARS)来对每一层网络使用不同的学习率。他们在 AlexNet 和 ResNet-50 模型上分别实现了 8129 和 32768 的批量大小,而且在加速训练的同时还保证了模型的准确度。

码报:继1小时训练ImageNet之后,大批量训练扩展到了3万

论文地址:https://arxiv.org/abs/1708.03888

加速训练大型神经网络最自然的方式就是在多块 GPU 上使用数据平行化。为了将基于随机梯度的方法扩展到更多的处理器,我们需要增加批量大小以充分利用每块 GPU 的计算力。然而,在提高批量大小的情况下保持住神经网络的准确度就显得十分重要了。目前,最优秀的方法是与批量大小成正比地提高学习率(Learning Rate /LR),并使用带有「warm-up」策略的专用学习率来克服优化困难。

通过在训练过程中控制学习率(LR),我们可以在 ImageNet-1K 训练中高效地使用大批量梯度下降。例如,在 AlexNet 中应用 Batch-1024 和在 ResNet-50 中应用 Batch-8192 都取得了不错的效果。然而对于 ImageNet-1K 训练来说,最优秀的 AlexNet 只能扩展到 1024 的批量大小,最优秀的 ResNet-50 只能扩展到 8192 的批量大小。我们不能将学习率扩展到一个较大的值。为了将大批量训练扩展到一般网络或数据集,我们提出了层级对应的适应率缩放(Layer-wise Adaptive Rate Scaling/LARS)。LARS LR 基于权重的范数和梯度的范数在不同的神经网络层级中使用不同的学习率。通过使用 LARS LR,我们将 ResNet-50 的批量大小扩展到 32768,将 AlexNet 的批量大小扩展到 8192。大批量同样能完全利用系统的计算能力。例如,AlexNet 模型在 DGX-1 工作站(8 P100 GPU)上使用 Batch-4096 要比 Batch-512 训练 ImageNet 快 3 倍。

1 前言

使用 AlexNet 模型(2)在 NVIDIA K20 GPU 上训练 ImageNet 数据集(1)需要 6 天才能实现 58% 的 top-1 准确度(3)。因此,扩展和加速 DNN 的训练对于应用深度学习来说极其重要。

我们关注数据并行化的小批量随机梯度下降训练(4),该算法在许多如 Caffe(5)和 TensorFlow(6)那样的流行深度学习框架中都是顶尖的优化方法。我们在该研究中使用的是英伟达 GPU。为了加速 DNN 的训练,我们需要将算法扩展到更多的处理器中。所以为了将数据平行化的 SGD 方法扩展到更多的处理器中,我们需要增加批量大小。增加 GPU 数量的同时增加批量大小,并能够使每一块 GPU 的工作保持稳定,并能令每块 GPU 的计算资源都得到充分利用。

为了更进一步提升大批量 AlexNet 的测试准确度,并令大批量训练应用到一般的神经网络和数据集中,我们提出了层级对应的适应率缩放(Layer-wise Adaptive Rate Scaling/LARS)。LARS 基于权重的范数(||w||)和梯度的范数(||∇w||)对不同的层级使用不同的学习率。LARS 背后的原因是我们观察到权重范数和梯度范数的比率(||w||/||∇w||)在每一层的区别非常大。

我们在 AlexNet 模型上的批量由 128 提高到 8129,但实现了相似的准确度。而对于 ResNet-50 来说,我们在 ImageNet 训练中成功地将批量大小提高到 32768。

2 背景和相关研究

2.1 小批量随机梯度下降的数据并行化

现在令 w 代表 DNN 的权重、X 代表训练数据、n 为 X 中的样本数,而 Y 代表训练数据 X 的标注。我们令 x_i 为 X 的样本,(x_i,w)为 x_i 和其标注 y_i(i ∈ {1, 2, ..., n))所计算出的损失。一般来说,我们使用如交叉熵函数那样的损失函数。DNN 训练的目标是最小化方程(1)中的损失函数。

在第 t 次迭代中,atv,我们使用前向和反向传播以求得损失函数对权重的梯度。然后,我们使用这个梯度来更新权重,根据梯度更新权重的方程(2)如下:

(责任编辑:本港台直播)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
栏目列表
推荐内容