当前位置:千优科技>行业资讯>详情

抛弃归一化,深度学习模型准确率却达到了前所未有的水平

2021-02-21 23:24:23 浏览:403次 来源:互联网 编辑:leo 推荐:人工智能

我们知道,在传递给机器学习模型的数据中,我们需要对数据进行归一化(normalization)处理。

抛弃归一化,深度学习模型准确率却达到了前所未有的水平

在数据归一化之后,数据被「拍扁」到统一的区间内,输出范围被缩小至0到1之间。人们通常认为经过如此的操作,最优解的寻找过程明显会变得平缓,模型更容易正确的收敛到最佳水平。

然而这样的「刻板印象」最近受到了挑战,DeepMind的研究人员提出了一种不需要归一化的深度学习模型NFNet,其在大型图像分类任务上却又实现了业内最佳水平(SOTA)。

该模型(红色)与其他模型在ImageNet分类准确度和训练时间上的对比。

该论文的第一作者,DeepMind研究科学家AndrewBrock表示:「我们专注于开发可快速训练的高性能体系架构,已经展示了一种简单的技术(自适应梯度裁剪,AGC),让我们可以训练大批量和大规模数据增强后的训练,同时达到SOTA水平。」

该研究一经提交,便吸引了人们的目光。

NFNet是不做归一化的ResNet网络。具体而言,该研究贡献有以下几点:

研究方法

在没有归一化的情况下,许多研究者试图通过恢复批归一化的好处来训练深度ResNet以提升其准确率。这些研究大多数通过引入小常数或可学习的标量来抑制初始化时残差分支上的激活尺度。

DeepMind的这项研究采用并建立在「Normalizer-FreeResNet(NF-ResNet)」上,这是一类可以在没有归一化层的情况下,被训练成具有训练和测试准确率的预激活ResNet。

NF-ResNet使用如下形式的残差块:

其中,h_i代表第i个残差块的输入,f_i代表由第i个残差分支计算的函数。

用于高效大批量训练的自适应梯度裁剪

为了将NF-ResNet扩展到更大的批规模,研究者探索了一系列梯度裁剪策略。梯度裁剪通常被用于语言建模中以稳定训练。近来一些研究表明:与梯度下降相比,梯度裁剪允许以更高的学习率进行训练,从而加快收敛速度。这对于条件较差的losslandscape或大批量训练尤为重要。因为在这些情况下,最佳学习率受到最大稳定学习率的限制。因此该研究假设梯度裁剪应该有助于将NF-ResNet有效地扩展到大批量设置。

借助一种称为AGC的梯度裁剪方法,该研究探索设计了Normalizer-Free架构,该架构实现了SOTA的准确率和训练速度。

当前图像分类任务的SOTA大多是EfficientNet系列模型(Tan&Le,2019)取得的,该系列的模型经过优化以最大化测试准确率,同时最小化参数量和FLOP计数,但它们的低理论计算复杂度并没有转化为训练速度的提高。

该研究通过手动搜索设计导向来探索模型设计的空间,这些导向对比设备上的实际训练延迟,可带来ImageNet上holdouttop-1的帕累托前沿面的改进。它们对holdout准确率的影响如下表2所示:

实验

表3展示了六个不同的NFNets(F0-F5)与其他模型在模型大小、训练延迟和ImageNet验证准确率方面的对比情况。NFNets-F5达到了86.0%的SOTAtop-1准确率,相比EfficientNet-B8有了一定提升;NFNet-F1的测试准确率与EfficientNet-B7相媲美,同时训练速度提升了8.7倍;NFNet-F6+SAM达到了86.5%的top-1准确率。

NFNets和其他模型在ImageNet数据集上的准确率对比。延迟是指在TPU或GPU(V100)上运行单个完整训练步骤所需要的毫秒时间。

此外,研究者使用了一个3亿标注图像的数据集对NFNet的变体进行了预训练,并针对ImageNet进行微调。最终,NFNet-F4+在ImageNet上获得了89.2%的top-1准确率。这是迄今为止通过额外训练数据达到的第二高的验证准确率,仅次于目前最强大的半监督学习基线(Phametal.,2020)和通过迁移学习达到的最高准确率。

表5:使用额外数据进行大规模预训练后,ImageNet模型迁移性能对比。

AndrewBrock表示,虽然我们对于神经网络信号传递、训练规律的理解还有很多需要探索的方向,但无归一化的方法已经为人们提供了一个强有力的参考,并证明了发展这种深度理解能力可以有效地在生产环境中提升效率。

标签:深度学习编程人工智能

版权声明:文章由 www.e1000u.com 整理收集,来源于互联网或者用户投稿,如有侵权,请联系我们,我们会立即处理。如转载请保留本文链接:https://www.e1000u.com/article/10294.html