本文在block-wise搜索空间上进行了一些关键创新:
提出了一种名为ensemble bootstrapping的训练策略,使得无需依赖教师网络,从而避免了引入biased supervision(候选偏好和教师偏好)。引入了非监督的评估指标(见公式5),并在三个不同的搜索空间和数据集上取得了良好的效果。基于MBConv的搜索空间,在ImageNet上取得了0.78的Spearman相关系数。基于NATS-Bench S_S搜索空间,在CIFAR-100上取得了0.76的Spearman相关系数。提出了HyTra(即CNN+Transformer混合模型)的搜索空间,在ImageNet上达到了82.5%的准确率,比EfficientNet高出2.4%。
方法
2.1 Ensemble Bootstrapping训练
SupernetBossNAS的训练方式与DNA不同。在DNA中,学生网络的每个block是独立训练的,例如学生网络的blockk的输入是教师网络的block{k-1}的输出,然后通过知识蒸馏(MSE损失)使学生网络的输出尽可能与教师网络的输出保持一致。BossNAS认为这种方法会使搜索到的子网与教师网络高度相关,导致搜索结果带有偏见。
为了解决block独立训练的问题,BossNAS提出了Ensemble Bootstrapping策略。
设{S(W, A), T (W^T , α^T )}分别表示学生和教师网络(由权重W和结构A决定)。为了摆脱教师网络带来的束缚(即学生网络很可能非常类似于教师网络的结构,导致偏见和多样性降低),教师网络和学生网络的结构是相同的,即\alpha^T=A 。更具体地说,教师网络使用EMA策略更新的Supernet,而学生网络是常规的Supernet。
假设在某个搜索阶段,我们采样了p个不同的子网,由于使用自监督训练方式,对于同一个样本会有p组不同的增强样本(上图中p=2)。Ensemble Bootstrapping的核心思想是教师网络的第k个block的输出是这p个网络输出的平均值,记为
公式中的\mathcal{W}^{\bullet}表示教师网络的权重,是使用EMA更新的,即\mathcal{W}_{t}^{\bullet}=\tau \mathcal{W}_{t-1}^{\bullet}+(1-\tau) \mathcal{W}_{t},其中\mathcal{W}_t是online Supernet(学生网络)的权重。
由于每个block彼此之间训练独立,所以每个block的优化方式是一样的,这里给出学生网络第k个block的优化函数。简单来说,子网的输出要与ensemble的结果接近,损失函数使用的是MSE。
完整的优化函数表示如下:
2.2 搜索子网
第2.1节介绍了如何训练Supernet。在训练结束后,BossNAS使用进化算法基于训练好的权重选择模型结构。类似于公式(1)中对教师网络不同路径做ensemble,在搜索时也会对学生网络不同路径做ensemble,第k个block输出的ensemble结果表示如下:
最终最优的网络是每个block的输出最接近ensemble的输出,优化函数表示如下:
3. CNN-Transformer混合搜索空间
3.1 候选块
CNN部分采用的是ResNet的Residual Bottleneck,记为ResConv。Transformer部分是基于BotBlock和NLBlock做了改进的模块,记为ResAtt。
3.2 混合CNN-Transformers
完整的模型结构如下图示,不仅会搜索每一层的block结构,还会搜索每一层的下采样操作(控制分辨率)。
4. 实验
4.1 设置
每个block训练20个epoch,其中第一个epoch是warmup epoch。每个training step随机采样4条路径。
4.2 搜索Hybrid CNN-Transformer的结果
上图展示了使用DNA算法和BossNAS算法在相同的HyTra搜索空间上搜索到的网络结构。可以看到,DNA搜索到的网络更倾向于选择卷积操作,作者解释这是因为DNA使用了教师网络,而教师网络本身带来了biased supervision。文章将这一现象称为候选偏好。
4.3 在MBConv搜索空间上的结果
最终模型在ImageNet上的结果如下表所示,可以看到BossNAS的结果有一点点优势,但不明显。
作者进一步比较了搜索一致性结果(Kendall tau: \tau\tau , Pearson: R , Spearman: \rho ),相关性结果是基于DNA提供的23个模型结构和准确率计算得到的,结果如Table 3所示。可以看到MnasNet的相关性还不错,但由于它是multi-trial方法,所以耗时巨大。此外,我们还可以看到教师网络的选择对DNA算法影响很大。文章将这一现象称为教师偏好,而BossNAS完全不需要教师网络。
4.4 在NATS-Bench S_S搜索空间的结果
该搜索空间基于CIFAR10/100进行试验。
4.5 消融研究
BossNAS的训练和评估都是非监督的,为此作者对比了不同的训练和评估方法对最终结果的影响,结果如Table 5所示。
训练
Supv. distill. 表示supervised distillation,实际上就是DNA算法,即对中间层进行监督学习。Supv. class. 即对最后输出层使用真实标签进行监督学习。Unsupv. bootstrap与本文方法类似,只不过是教师网络和学生网络对应的相同路径进行知识蒸馏。Unsupv. EB: 学生网络的所有路径与教师网络的ensemble结果进行知识蒸馏。
评估
Supv. distill. 和Supv. class类似,就是根据学生和教师网络输出的相似度来评估网络的好坏。Supv. linear eval表示supervised linear evaluation。这是最常规的权重共享的NAS评估方法。具体来说,该方式是首先固定supernet权重,然后微调一个权重共享的线性分类器。这个分类器会与所有子网相连接,每个子网的排序就是根据分类器最后得到的准确率结果决定的。Unsupv. eval就是本文的方法,如公式(5)。
4.6 收敛表现
前面已经提到过,BossNAS的每个block只训练20个epoch就结束了,下图展示了在MBConv搜索空间上,基于ImageNet数据集每个epoch对应的搜索一致性结果。可以看到,基本上在第12个epoch时一致性就基本固定了,另外前期相关性能够快速提升。
在NATS-Bench上也有类似的结果。
以上就是ICCV 2021 | BossNAS: Exploring Hybrid CNN-transformers with Block-wisely Self-supervised NAS的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号