Universally Slimmable Networks and Improved Training Techniques

Universally Slimmable Networks and Improved Training Techniques

在slimmable networks的推动下,又出现了一个问题:单个神经网络能否以任意宽度运行?在深度神经网络中,单个输出神经元的值是所有输入神经元按可学习系数加权的集合 y = Σ i = 1 n w i x i y=\Sigma^n_{i=1}w_ix_i y=Σi=1nwixi,其中x为输入神经元,y为输出神经元,w为可学习系数,n为输入通道数。这种表述表明,每个输入通道或通道组都可以被看作是输出神经元的一个残差分量[6].因此,一个更宽的网络的性能应该不会比它的纤细网络差(纤细网络的精度总是可以通过学习新的连接来达到零)。换句话说,如果我们考虑单层,全聚合和部分聚合之间的残差误差会减小,并且是有边界的。

在这里插入图片描述

有界不等式表明,一个可在离散宽度集上执行的纤细网络[25]有可能在两者之间的任何宽度上运行(如果训练得当的话),因为残余误差会随着宽度的增加而减小,并且是有界的。

在这项工作中,我们提出了可以在大范围内任意宽度运行的 universally slimmable networks(US-Net)。我们解决了训练US-Net的三个基本挑战。首先,如何处理具有BN的神经网络?第二,如何高效地训练US-Net?第三,与训练单个网络相比,我们还可以在US-Nets中探索什么来提高整体性能?

首先,在训练过程中积累US-Net中所有子网的独立BN统计,计算量大,效率低。其次,如果在每次迭代中,我们只更新一些采样的子网络,那么这些BN统计数据积累不足,从而不准确,导致我们实验中的准确性大大降低。

修改后是在训练后计算所有宽度的BN统计。训练后US-Net的权重是固定的,因此所有BN统计可以在集群服务器上并行计算。更重要的是,我们发现随机抽样的训练图像子集,只要1个mini-batch(1024张图像),就已经可以产生精确的估计。因此计算BN后统计可以非常快。

为了训练一个US-Net,一个自然的解决方案是积累或平均从不同宽度采样的损失。例如,在每次训练迭代中,我们随机抽取[0.25; 1.0]x范围内的n个宽度。再进一步,我们应该注意到,在US-Net中,所有宽度下的性能都由模型在最小宽度(如0.25x)和最大宽度(如1.0x)下的性能来约束。换句话说,优化性能下界和上界可以隐含地优化模型在所有宽度下的性能。因此,在每个训练迭代中,我们不是随机采样n个宽度,而是在最小宽度、最大宽度和(n-2)随机采样的宽度下训练模型。我们采用这种规则(命名为三明治规则)来训练US-Net,并显示出更好的收敛行为和整体性能。

此外,我们还提出了inplace distillation,在每次训练迭代中,将单个US-Net内部的知识从全网转移到子网。这个想法的动机是两步知识提炼[7],即先训练一个大模型,然后用预测的软目标进行训练,将其学到的知识转移到一个小模型上。

我们可以直接将模型在最大宽度处的预测标签作为其他宽度的训练标签,而对于最大的宽度,我们使用的是ground truth。

我们的贡献总结如下:

  1. 我们第一次能够使用一种简单而通用的方法,在任意宽度下训练一个可执行的神经网络。

  2. 我们进一步提出了两种改进的训练技术 在US-Nets的背景下,加强训练过程。并提升测试精度。

  3. 我们介绍了对图像的实验和消融研究。分类、图像超分辨率和深度强化 学习。

  4. 我们进一步深入研究了(1)宽度下界k0,(2)宽度除数d,(3)每次训练迭代n的采样宽度数,和

    (4) BN后统计s的子集大小。

  5. 我们进一步证明,我们的方法也可以用于训练不均匀的us网,其中每一层都可以调整自己的宽度比,而不是统一应用于所有层的全局宽度比。

  6. 我们的发现为许多相关领域提供了可能性,例如,以FLOPs-Accuracy spectrum(图1)进行网络比较,以及对通道数进行one-shot架构搜索[24]。

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值