专用硬件神经网络优化技术解析

本文探讨了如何通过神经网络架构搜索(NAS)技术优化专用硬件上的神经网络性能,包括搜索空间优化、专家介入策略等,在实际应用中实现了高达55%的延迟降低。

随着神经网络规模扩大,在设备端部署越来越需要能并行化常见操作的专用硬件。但为了获得最高效率,仅优化硬件适配网络是不够的,网络本身也需要针对硬件进行优化。

标准神经网络优化方法是通过神经网络架构搜索(NAS),目标是同时最小化网络规模和浮点运算量(FLOPS)。但这种方法不适用于神经芯片,后者往往能更快执行易并行化但高FLOPS的任务,而非难以并行化但低FLOPS的任务。

在某中心设备硬件团队,开发了多种策略使NAS适配新型神经加速器家族的架构优化问题。这些策略包括精心设计架构搜索空间以减少陷入局部最优的可能性。同时还发现,将少量人类直觉与特定任务的NAS结果结合,能更可靠高效地泛化到新任务。在多项机器学习任务的实验中,这些NAS策略可实现高达55%的延迟降低。

NAS算法分类

NAS需要三个要素:定义搜索空间(指定网络构建模块)、成本模型(关于网络精度、延迟和内存的函数)以及优化算法。NAS算法可分为三类:

  1. 多轮次方法:每轮采样一组架构,分别训练评估,基于成本采样下一组架构
  2. 单轮次方法:从包含多个子图的大型超网开始,训练中逐渐收敛到单个小网络
  3. 零轮次方法:以网络可训练性分数作为精度代理,无需实际训练

搜索空间优化

包含加速器感知约束会使成本函数呈现更复杂的"多峰"特性。通过以下方式优化搜索空间:

  • 将通道尺寸选项限制为符合神经引擎并行因子的特定值
  • 在搜索空间中添加可缩放整个模型通道数的"深度乘数"
  • 使用机器学习回归模型构建性能估算器,避免实际硬件部署

专家介入的产品化实践

在将NAS应用于多个产品线时发现:

  1. 在某智能显示设备上,通过融合倒置瓶颈块(IBN)和深度乘数搜索,将人体检测延迟降低53%
  2. 在某安防摄像头中,结合专家建议将深度卷积替换为标准卷积,使模型内存占用减少47%
  3. 在机器人语义分割任务中,通过多轮次进化搜索找到延迟降低51%的最优架构

边缘AI的可持续性发展

通过所述技术大幅缩短NAS所需时间(从2000GPU天显著减少)。神经引擎凭借并行化和混合精度特性,相比通用CPU可节省大量能耗——对百万用户而言相当于200辆汽油车或百户美国家庭的年耗电量。通过NAS优化模型还能减少硬件需求,进一步降低碳足迹。

未来工作将探索:复杂硬件的自动化搜索空间优化、结合三类NAS算法的混合方法,以及通过剪枝和聚类引入稀疏性的模型优化。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计