CVPR‘2023 | PA&DA:联合优化路径和数据采样的超网一致性NAS

本文涉及的产品
文件存储 NAS,50GB 3个月
简介: CVPR‘2023 | PA&DA:联合优化路径和数据采样的超网一致性NAS

4c97196e40adb4d2759902df81ad4b45.png

Title: PA&DA: Jointly Sampling PAth and DAta for Consistent NAS


Paper: https://arxiv.org/pdf/2302.14772.pdf


Code: https://github.com/ShunLu91/PA-DA


导读

基于权重共享机制,One-shot NAS方法训练一个supernet,然后通过继承supernet的权重来对sub-network进行评估排序,在很大程度上大大降低了搜索成本。然而,一些研究指出,在训练过程中,共享的权重存在不同的梯度下降方向。论文进一步发现在supernet训练过程中出现较大的梯度方差,降低了supernet排名的一致性。为了缓解这一问题,论文通过联合优化path和data(PA&DA)的抽样分布,来明确地最小化supernet训练的梯度方差。论文从理论上推导了梯度方差与两种抽样分布之间的关系,揭示了最优采样概率与路径和训练数据的归一化梯度范数成正比。


论文的方法在优化路径和数据的采样分布时可以忽略计算成本,可在supernet训练中实现了较低的梯度方差,使得supernet具有更好的泛化性能,从而得到更一致的NAS。论文在各种搜索空间中与其他改进的方法进行了全面的比较。结果表明,该方法具有更可靠的排名性能和更高的搜索架构精度,优于其他方法,表明了该方法的有效性。


贡献



论文使用CIFAR-10在NAS-Bench-201上进行了实验,采用SPOS算法对supernet进行训练,并逐步增加supernet各edge的候选操作,论文记录了训练过程中所有候选操作参数的平均梯度方差,并通过测量相同的64个sub-network的排名结果来评估supernet的子网排名一致性。


如上图所示,supernet的子模型越多,梯度方差越大,排序一致性越差。这些结果表明,在训练过程中,子网较大的梯度方差会损害supernet排名的一致性,通过使用归一化梯度范数作为重要指标,并在supernet训练过程中对路径和数据采用重要抽样策略,可以减少超网梯度方差,提高其排序一致性。


论文的主要贡献如下:


论文验证了supernet训练的权重共享机制导致了较大的梯度方差,损害了supernet的性能,恶化了其排名一致性。


通过推导supernet梯度方差与采样分布之间的关系,论文提出了在supernet训练过程中通过联合优化路径和数据采样分布来明确地最小化梯度方差。论文发现最优采样概率与路径和数据的归一化梯度范数成正比,并在supernet训练过程中对它采用了重要抽样。


论文的方法只需要可忽略不计的计算来执行路径和数据的重要性采样,并且不需要繁琐的超参数调优。在NAS-Bench-201上获得了最高的 Kendall’s Tau 0.713,并在DARTS和ProxylessNAS搜索空间上获得了优越的性能。


方法

8cbf1d4281310b840bd36e7f561e2386.png

Sampling-based One-Shot NAS

Sampling-based One-Shot NAS一般分为Supernet训练和Sub-network搜索两个阶段:

image.png

20f6d64828fc9b53dd56d90de109788e.png

Stage2(Searching stage): 不断地从训练好的Supernet中采样抽取出Sub-network进行评估,得到其在验证数据集上的性能。这里可以使用启发式搜索算法搜索最优子模型 image.pngfd3b3afcbcc81e3da41955e59cd69a35.png

论文试图在训练过程中减少Supernet的梯度方差,以提高Supernet的收敛性和排名的一致性。论文提出在Supernet训练过程中联合优化抽样分布 image.png

055afa58b211dce765b635a5c3ca5a77.png

其中,d (p)和d (q)是关于路径和数据采样分布的梯度方差函数。下面,将介绍如何推导它们之间的关系,并交替地优化这两个抽样分布。


Path Importance Sampling

在第i ii步训练中,以概率 pi从路径抽样分布p(A) 中采样一个子模型α i ,得到的随机梯度为:

6a1c9a28ba165ec85faa4aa7bbfc31c9.png

论文期望最小化上式中的梯度方差,通过优化抽样分布p:

72cb4f632746d2e6d40cd294a2a5a115.png

9875f2b8fbcc31d460579be5b5c9615c.png

可以发现**,image.png所以随机梯度公式的约束可以重新表述为:

142d55c3cae81cecdbb1a08d9e4fc941.png

为了求解上述约束优化问题,使用拉格朗日数乘法,转换为无条件极值问题进行求解:

d0d556e5fba8536c83e499d7f67c4526.png

image.pnge2165793de5ea84152e79f13ffed6f58.png

image.png

并进一步推导出最优抽样分布 p ∗

4874604971f806d3654420a037cc0aee.png

可以得出最优路径抽样概率image.png 与子模型 image.png的归一化梯度范数成正比,即对具有较大梯度范数的子模型进行抽样可以减少Supernet训练的梯度方差。


在实际应用中,论文将子模型 image.png的梯度范数测量为其包含的候选操作的梯度范数的和,并将每个候选操作的归一化梯度范数作为其抽样概率。


论文计算每个常规backward的梯度范数,并在每个epoch后更新候选操作的采样概率。因此,论文对路径采样分布p的优化只需要微不足道的计算,而且特别有效


Data Importance Sampling

根据归一化梯度范数对训练数据进行采样有助于减少深度模型训练的梯度方差,可以形式表示为:

ce42802facbaca0fac7fb3f7c45647e0.png

论文最后一层∇ L的预激活输出的损失函数的梯度来逼近每个训练数据的梯度范数的上界,即:

af1afbe2189bc89bbbb71c8567cafcda.png

这样,我们就可以通过访问每个训练数据的上界来轻松地衡量它们的重要性,例如在图像分类任务中最后一层通常为softmax,当使用交叉熵损失时,可以预先推导出∇ L 的梯度表达式,并在训练过程中方便地计算出它,如下所示:

a025c064a3376ea0e8f0a8d7b73685da.png

Importance Sampling NAS

论文的方法旨在通过减少训练过程中的梯度方差来提高Supernet排名的一致性。提出基于路径重要性采样和数据重要性采样的联合优化:

1cb402811e8c0d947a3824bca3ed234d.png

上述计算只需要额外的代码行,可以以mini-batch方式有效地执行。因此,论文使用这个近似来估计训练数据的重要性,并采用归一化的结果来更新每个epoch后的采样分布q。


实验

Evaluation of Supernet Ranking Consistency

f383c6315f04eb7187e1000d8b40714e.png

如上图所示,PA&DA只需要比SPOS多0.2个GPU小时,与其他模式相比达到最高的KT和P@Top5%,这表明论文的训练模式是有效的,有利于提高超级网排名的一致性。


Search Performance on CIFAR-10

88dde84e4060f023acb8f0d4b8681bd7.png

b478e068412a9074ca86886009076899.png

如上图所示,论文的方法达到了最高的平均测试精度97.52 ± 0.07,超过了原版的DARTS及其高级变体。与其他改进的one-shot NAS方法,如NSAS、Few-Shot-NAS、GM和CLOSE相比,论文的方法始终以最小的搜索成本优于它们。


Search Performance on ImageNet



如上图所示,PA&DA在多一点点FLOPs情况下,超过了DA-NAS、FairNAS-A和SUMNAS-M,与SPOS、ProxylessNAS、MAGIC-AT、Few-Shot NAS和GM相比,PA&DA搜索的体系结构更小,获得了最高的top-1精度77.3,足以证明论文的方法的有效性


消融实验

Effect of batch size

146843c69cb502421c5ebee409f07004.png


较大的batch size通常可以稳定具有较低梯度方差的深度模型的训练。上图可以观察到随着batch size的增大,GV减小,KT单调增加,batch size 512得到最好的KT 0.670 ± 0.029


Effect of schedules for smoothing parameters



每个epoch后更新DA的采样概率,使用样本级分布和线性增加τ会产生最好的结果。


Effect of DA and PA


0e06f52517b04c5fde396b11a3b49633.png

这两个模块一起使用会得到最好的结果。此外,PA比DA贡献了更多的性能提高。


总结

论文通过联合优化路径和数据采样分布来减少supernet训练的梯度方差,以提高supernet的排名一致性。论文推导了梯度方差和抽样分布之间的关系,并使用归一化梯度范数来更新这两个分布。大量的实验证明了该方法的有效性。在未来,研究者将进一步探索更有效的方法来减少梯度方差的Supernet训练。


相关实践学习
基于ECS和NAS搭建个人网盘
本场景主要介绍如何基于ECS和NAS快速搭建个人网盘。
阿里云文件存储 NAS 使用教程
阿里云文件存储(Network Attached Storage,简称NAS)是面向阿里云ECS实例、HPC和Docker的文件存储服务,提供标准的文件访问协议,用户无需对现有应用做任何修改,即可使用具备无限容量及性能扩展、单一命名空间、多共享、高可靠和高可用等特性的分布式文件系统。 产品详情:https://www.aliyun.com/product/nas
目录
相关文章
|
存储 Kubernetes 网络协议
容器存储:Flexvolume 迁移 CSI (NAS、OSS数据卷)
本文介绍如何将Flexvolume插件挂载的NAS、OSS类型存储转换到CSI插件类型;如果您使用了云盘数据卷,本文提供的方案还不适合这个场景,具体方案敬请期待。
1665 0
|
存储 Kubernetes Linux
阿里云 ACK 挂载 NAS 数据卷
记录在阿里云购买、配置、挂载 NAS 数据卷到 Kubernetes 集群,由于官方文档没有及时更新,可以看做是对官方文档的补充。
2720 0
|
存储 人工智能 前端开发
企业数据创新之旅——高性能NAS助力业务上云
在2018年云栖大会·南京峰会的飞天技术汇专场中,阿里云产品专家王登宇带来了题为《企业数据创新之旅——高性能NAS助力业务上云》的精彩技术分享。在分享中,他首先介绍了企业上云面临的困难和阿里云存储之路;随后对NAS文件存储产品家族的技术架构和适用场景进行了分析;分享最后,他结合基因、视频、AI等具体客户对NAS助力业务上云进行了详细讲解。
9275 0
|
存储 文件存储
突破吞吐限制,多NAS性能聚合方案,数据上传及读写
本文提出一种通过挂载多个NAS来获取更高文件存储吞吐性能的方法,适合特殊场景下的一些应用
1948 0
|
存储 弹性计算 文件存储
ECS 备份数据到NAS(一):使用Windows Server Backup工具
本文介绍了在阿里云ECS上通过Windows Server Backup工具将云盘上指定文件夹或者整盘的重要数据备份到阿里云NAS的配置和步骤,通过Windows Server Backup工具可以按需手动或者配置周期性地自动将重要数据备份到NAS,并且在需要的时候方便地从备份中恢复原来的数据。
5007 0
|
存储 分布式计算 大数据
使用E-MapReduce服务处理阿里云文件存储(NAS)的数据
给大家介绍一个使用场景,可以将E-MapReduce的Hadoop作业和文件存储(NAS)结合在一起,发挥分布式存储和分布式计算在一起的威力
4051 0
|
文件存储 对象存储
自动化创建OSS、NAS数据卷
阿里云容器服务对外提供了数据卷服务,并支持第三方云存储,已经成为在集群环境中用户共享数据卷的利器; 容器服务当前支持阿里云OSS、NAS两种云存储,创建数据卷可以通过控制台或者脚本自动化完成;本文介绍如何通过脚本自动化实现数据卷的创建;
5355 0