神经结构搜索技术可以在大量候选网络集合中搜索到适用于特定任务的神经网络结构.目前,大多数结构搜索网络的部署是针对英伟达GPU、英特尔CPU或谷歌TPU等硬件设备的.然而,将搜索到的架构迁移到一些AI专用加速器中,如寒武纪加速卡或华为A...神经结构搜索技术可以在大量候选网络集合中搜索到适用于特定任务的神经网络结构.目前,大多数结构搜索网络的部署是针对英伟达GPU、英特尔CPU或谷歌TPU等硬件设备的.然而,将搜索到的架构迁移到一些AI专用加速器中,如寒武纪加速卡或华为Atlas推理加速器,推理效果却表现不佳.主要存在两方面的问题:在搜索空间设计层面,由于硬件架构设计对不同算子的支持存在差异,复用传统的搜索空间到专用神经网络加速器上,其推理效率不是最优的;在结构搜索层面,由于专用神经网络加速器在并行计算资源和数据流水通道等设计的不同,仅采用参数量、计算量作为搜索目标不能准确度量推理延迟,并且限制了神经结构搜索在精度和延迟上的探索空间.为了解决上述问题,本文提出一种基于硬件感知的多目标神经结构搜索方法,首先通过测试不同类型的卷积算子在目标硬件上的性能表现,使用非支配排序设计出定制化的高效搜索空间.然后,将延迟纳入搜索目标,提出一种启发式的混合粒度交叉算子,通过粗粒度阶段间交叉和细粒度阶段内交叉提高种群在多目标下的收敛性和多样性,更好地权衡神经网络的精度和推理延迟.本文主要针对国产寒武纪加速卡MLU270-F4进行了实验分析与方法验证,在CIFAR-10上搜索得到的MLUNet-S4精度比DARTS高0.14%的同时推理速度提升了4.7倍,相比于NSGANet精度仅下降0.04%的同时速度提升了5.5倍;在ILSVRC2012数据集上MLUNet-C相较于具有相同推理速度的Mobile Net V2和Mnas Net速度上提升了1.2倍的同时预测精度也分别提升了2.3%和0.2%,效果提升显著.展开更多
文摘神经结构搜索技术可以在大量候选网络集合中搜索到适用于特定任务的神经网络结构.目前,大多数结构搜索网络的部署是针对英伟达GPU、英特尔CPU或谷歌TPU等硬件设备的.然而,将搜索到的架构迁移到一些AI专用加速器中,如寒武纪加速卡或华为Atlas推理加速器,推理效果却表现不佳.主要存在两方面的问题:在搜索空间设计层面,由于硬件架构设计对不同算子的支持存在差异,复用传统的搜索空间到专用神经网络加速器上,其推理效率不是最优的;在结构搜索层面,由于专用神经网络加速器在并行计算资源和数据流水通道等设计的不同,仅采用参数量、计算量作为搜索目标不能准确度量推理延迟,并且限制了神经结构搜索在精度和延迟上的探索空间.为了解决上述问题,本文提出一种基于硬件感知的多目标神经结构搜索方法,首先通过测试不同类型的卷积算子在目标硬件上的性能表现,使用非支配排序设计出定制化的高效搜索空间.然后,将延迟纳入搜索目标,提出一种启发式的混合粒度交叉算子,通过粗粒度阶段间交叉和细粒度阶段内交叉提高种群在多目标下的收敛性和多样性,更好地权衡神经网络的精度和推理延迟.本文主要针对国产寒武纪加速卡MLU270-F4进行了实验分析与方法验证,在CIFAR-10上搜索得到的MLUNet-S4精度比DARTS高0.14%的同时推理速度提升了4.7倍,相比于NSGANet精度仅下降0.04%的同时速度提升了5.5倍;在ILSVRC2012数据集上MLUNet-C相较于具有相同推理速度的Mobile Net V2和Mnas Net速度上提升了1.2倍的同时预测精度也分别提升了2.3%和0.2%,效果提升显著.