本文注意到,在优化时根据结构分布采样一个路径已经出现在之前的权重共享方法之中,区别在于,在本文的训练中(等式(7))分布是一个固定的先验,而在先前方法中,它是可学习和更新的(等式(4)),后者会使超网络权重和结构参数优化高度关联。
请注意,本文并未声明在训练时一个固定的先验分布天生优于优化分布。不存在这样的理论保证。本文更优的结果可能是受益于这一事实:当前优化技术的成熟度不足以满足等式 (4) 中的联合优化需求。
超网络与选择单元
选择单元用于构建一个超网络。图 1 给出了一个实例。一个选择单元包含多个选择。对于本文提出的单路径超网络,每个选择单元一次只调用一个选择。一个路径的获得是通过随机采样所有选择单元实现的。
本文方法的简易性允许定义不同类型的选择单元,以搜索不同的结构变量。具体而言,旷视研究院提出两个全新的选择单元,以支持复杂的搜索空间。
通道数搜索。选择单元旨在搜索一个卷积层的通道数。其主要思想是预先分配一个带有最大通道数的权重张量。在超网络训练期间,系统随机选择通道数并分割出用于卷积的相应的子张量。详见下图。
图 4:用于通道数搜索的选择单元
混合精度量化搜索。选择单元可以搜索卷积层权重和特征的量化精度。在超网络训练中,特征图的位宽和和权重被随机选取。详见下图。
图 5:用于混合精度量化搜索的选择单元
基于进化算法的模型搜索
针对等式 (6) 中的模型搜索,先前的One-shot工作使用随机搜索。这在大的搜索空间中并不奏效。因此,本文使用了进化算法,同时扬弃了从头开始训练每个子结构的缺点,只涉及推理部分,因此非常高效。详见下图。
算法 1:基于进化算法的模型搜索
下图描绘了使用进化算法和随机搜索两种方法在进化迭代时的验证集精度。很明显进化算法搜索更有效。
图 3:进化算法搜索对比随机搜索
进化算法可以灵活处理等式 (3) 的不同约束,因为变异和交叉过程是可控的,以产生满足约束条件的合适候选。
总结
单路径超网络、均匀采样训练策略、基于进化算法的模型搜索、丰富的搜索空间设计,上述多种设计使得本文方法简单、高效和灵活。下表给出了本文方法与其他权重共享方法的一个全方位、多维度对比结果。
表 1:本文方法对比当前权重共享 SOTA 方法
实验
所有实验是在 ImageNet 上进行的。验证集和测试集的设定遵从Proxyless NAS。对于超网络的训练,以及(进化搜索之后)最优模型结构的从头再训练。
构造单元搜索
构造单元(building block)的设计灵感来自手工设计网络的代表作——ShuffleNet v2。表 2 给出了超网络的整体架构。共有 20 个选择单元。
表 2:超网络架构
表 3 给出了结果。为了对比,本文设置了一系列基线,如下:1)只选择一个特定的单元选择;2)从搜索空间中随机选择一些候选;3)使用随机搜索替代本文的进化算法模型搜索。
表 3:构造单元搜索结果
通道数搜索
搜索卷积层的通道数非常有挑战,如图 4 所示,本文提出一个全新的选择单元用于通道数搜索,并首先在基线结构 “all choice 3”(见表 3)做了评估,结果如表 4 (第一部分)所示;为进一步提升精度,本文对构造单元和通道做了联合搜索。结果如表 4(第二部分)所示。
表 4:通道数搜索
2022-11-28 18:32
2022-11-15 16:12
2022-11-14 14:29
2022-11-11 11:14
2022-11-08 11:34
2022-11-04 17:14
2022-11-02 14:58
2022-10-18 16:29