4实验
4.1 主要结果
在表1和表2中,通过比较SPViT和Baseline方法来验证方法的有效性。
表1
在表1中,可以观察到SPViT将密集的DeiT模型精简为紧凑的模型,节省20%以上的FLOPs,并具有竞争的Top-1和Top-5精度。例如,SPViT-DeiT-B实现了33.5%的FLOPs节省,而只有0.2%的Top-1精度性能下降。还注意到,SPViT在Top-1和Top-5精度方面始终优于Baseline剪枝方法。请注意,尽管SBP方法从零开始删除DeiT模型,而SPViT从预训练的权重中删除,但SBP的训练周期(600个周期)比SPViT(130个周期)长得多。
表2
在对相对紧凑的层次ViT模型进行剪枝时,从表2中可以看出,SPViT在剪枝20%以上时也取得了显著的性能。例如,SPViT-Swin-B实现了3.3G次浮点数节省,但Top-1精度仅下降0.7%,比STEP-Swin-B高出2.2%。
4.2 观察架构搜索
在搜索过程中,SPViT可以在期望的效率约束下自动找到性能良好的架构。在这里,展示了在逐步减少目标FLOPs时,在标准vit和分层vit上使用SPViT搜索架构的经验观察。
图3
在图3中,可视化了SPViTDeiT-S在3.9G、3.2G和2.4G FLOPs下的搜索架构,Top-1准确率分别为79.3%、78.3%和74.9%;SPViT-SwinTi在3.9G、3.4G和2.7G FLOPs下,Top-1准确率分别为80.6%、80.1%和77.8%。
- Locality is encouraged in shallow blocks.
如图3(a)-(f)所示,SPViT-DeiT-S和SPViT-Swin-Ti学习将浅层MSA层修剪成Bottleneck卷积层或skip-connections(在SPViT-DeiT-S的前两个块和SPViT-SwinTi的前三个块中)。
这一观测结果表明浅层MSA层包含更多多余的全局相关性。还可以看到,最后两个块仍然是所有模型的MSA层,这表明了深层全局操作的重要性。更多关于预训练的MSA层的注意力图模式的分析可以在补充材料中找到。
- Last few FFN layers have more redundancy in standard ViTs.
对于预训练的DeiT模型,MLP膨胀率在所有块上设置为相同的。如图3(a)-(c)所示,对于SPViT-DeiT-S设置,网络优先删除最后几个块中的隐藏维度。由于在FFN层中隐藏维度的数量越高,意味着容量越大,反之亦然,作者推测,由于在标准vit中处理的注意力map的多样性较少,最后几个FFN层需要的容量比其他层更少。
- Shallower FFN layers within each stage require higher capacity in hierarchical ViTs.
不同于标准ViT, Swin模型采用分层架构,将块划分为几个阶段。在每个阶段的开始,输入token被合并到更高的嵌入维度中。如图3(d)-(f)所示,在同一阶段,较浅的层保留了更多的隐藏维度。作者推测,对token合并引起的特性空间上的变化进行建模,需要为分层ViT提供更高的容量。
4.3 消融实验
1、Single-path vs. multi-path search
表3
在表3中,通过比较SPViT和多路径搜索来研究单路径搜索的有效性。具体来说,在多路径实现中,在搜索前随机初始化候选BConv卷积操作的权值,并保持其他组件与单路径版本相同。可以观察到,在计算复杂度相同的情况下,与多路径搜索相比,单路径公式具有更高的性能、更少的参数和更低的搜索成本。例如,SPViT-DeiT-S比多路径对等物的Top-1准确率高出0.3%,并降低了超过50%的搜索成本。
2、Effect of the search strategy
表4
为了验证搜索策略的有效性,在表4中将本文方法与CIFAR-100上随机搜索的架构进行了比较。具体来说,在搜索空间中随机抽样10个具有计算复杂度的架构,然后对这些架构进行微调。将SPViT与实现最高Top-1精度的架构进行了比较。观察到,在类似的flop和参数下,SPViT在Top-1和Top-5准确率方面比随机搜索对手高出约1.3%和0.6%。显著的性能增益证明了搜索策略的有效性。
3、Pruning proportions for MSA and FFN layers
表5
在表5中调查了MSA和FFN层的剪枝比例。可以看到,不同模型的剪枝比例不同,SPViT-DeiT-B对MSA层的剪枝比例较高,而SPViT-Swin-B对FFN层的剪枝比例较高。结果表明,在给定目标效率约束的情况下,SPViT可以灵活地为不同密集模型定制合适的剪枝比例。
5参考
[1].Pruning Self-attentions into Convolutional Layers in Single Path