[论文解读] Resource Constrained Neural Network Architecture Search: Will a Submodularity Assumption Help?
该论文提出了一种受子模性启发的启发式方法,用于资源受限的神经架构搜索(NAS),将架构搜索建模为在可重用模块上优化集合函数的问题。通过在FLOPs和参数量约束下应用贪心子模优化,该方法在CIFAR-100和ImageNet上识别出高效且高精度的模型,实现了SOTA性能,参数量最多减少3倍,计算量减少300倍,优于以往基于强化学习的方法。
The design of neural network architectures is frequently either based on human expertise using trial/error and empirical feedback or tackled via large scale reinforcement learning strategies performed over distinct discrete architecture choices. In the latter case, the optimization is often non-differentiable and also not very amenable to derivative-free optimization methods. Most methods in use today require sizable computational resources. And if we want networks that additionally satisfy resource constraints, the above challenges are exacerbated because the search must now balance accuracy with certain budget constraints on resources. We formulate this problem as the optimization of a set function -- we find that the empirical behavior of this set function often (but not always) satisfies marginal gain and monotonicity principles -- properties central to the idea of submodularity. Based on this observation, we adapt algorithms within discrete optimization to obtain heuristic schemes for neural network architecture search, where we have resource constraints on the architecture. This simple scheme when applied on CIFAR-100 and ImageNet, identifies resource-constrained architectures with quantifiably better performance than current state-of-the-art models designed for mobile devices. Specifically, we find high-performing architectures with fewer parameters and computations by a search method that is much faster.
研究动机与目标
- 解决现有神经架构搜索(NAS)方法中存在的高计算成本和缺乏资源感知的问题。
- 开发一种可扩展、可微且高效的NAS框架,尊重用户定义的模型大小和FLOPs约束。
- 探究尽管底层精度函数并非数学意义上的子模函数,子模优化原理是否仍能有效指导架构搜索。
- 识别出兼具高精度、低参数量和高推理效率的移动端适用神经架构。
提出的方法
- 将架构搜索建模为在可重用功能模块上优化集合函数的问题,其中每个模块选择均影响最终模型的精度与资源开销。
- 通过实验观察到精度函数表现出收益递减和单调性——子模性的重要特性——从而支持启发式地应用子模优化。
- 将具有性能保证的子模优化贪心算法适配用于在FLOPs和参数量约束下进行高效架构搜索。
- 使用早停和权重共享技术加速搜索过程中候选架构的评估。
- 直接在ImageNet上进行搜索,无需在小数据集上预训练,从而实现向大规模基准的可迁移性。
- 在移动设备上使用CoreML部署最终模型,以测量真实世界的推理延迟。
实验结果
研究问题
- RQ1在严格资源约束下,子模优化启发式方法能否有效指导神经架构搜索?
- RQ2尽管并非数学意义上的子模函数,神经架构精度函数的实证边际增益行为是否仍表现出子模性特征?
- RQ3基于贪心子模优化的启发式搜索能否在精度-效率权衡上超越现有的强化学习或进化算法NAS方法?
- RQ4在ImageNet上直接搜索得到的模型能否实现与人工设计的移动端网络(如MobileNetV2)相当的性能?
主要发现
- 在CIFAR-100上,所提出的RCAS方法识别出一个参数量为340万、FLOPs为2.94亿的模型,实现72.2%的top-1精度,相较于类似约束下的MobileNetV2高出0.2%。
- 在ImageNet上,RCNet实现74.7%的top-1精度,参数量为470万,FLOPs为4.71亿,分别优于DARTS 1.6%和DPP-Net-Panaca 0.7%,且计算预算相近。
- RCNet模型在iPhone 5s上的推理速度与MobileNetV2相当(183.5ms vs. 197.2ms),同时模型大小为14.6MB,略小于MobileNetV2的14.7MB。
- 搜索过程仅需8个GPU天,相比以往基于强化学习的NAS方法(如DARTS)所需的约3150个GPU天,计算量降低了300倍。
- 最终架构使用了多样化的模块类型(例如,[5,1,4,5,1,5,2,4,1,6,4,6,5,3,3,6,3,6]),表明模块多样性相比重复的模块模式能提升性能。
- 可迁移性得到验证:在CIFAR-100上预训练并微调至ImageNet的模型,其性能与具有相似复杂度的MobileNetV2相当。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。