华人女博士提出高效NAS算法:AutoML一次「训练」适配亿万硬件

最近几天,由加州大学河滨分校主导,乔治梅森和圣母大学共同合作的团队提出,可以利用延迟的单调性来从根本上促进硬件适配NAS mdash,mdash, 即不同设备上的神经架构延迟排名通常是相关的。

华人女博士提出高效NAS算法:AutoML一次「训练」适配亿万硬件

当强延迟单调性存在时,可以复用代理硬件上NAS所得到的架构给任意新目标硬件,而不会损失Pareto最优性通过这种方法,结合现有的SOTA NAS技术,硬件适配NAS的代价可以降到常数O

目前,论文已经被国际性能建模和分析顶会ACM SIGMETRICS 2022接收。可以理解的是,监管机构有兴趣了解如何在这种环境下进行监管,NHTSA也不例外。

神经架构搜索

神经网络是层状结构,每一层可能是卷积层,激活层或全连接层等。NHTSA也是特斯拉的重要合作伙伴和机构。他还说:;在宏观层面上,汽车行业正在经历转型,从我们所知的传统汽车转而使用更多的电脑,软件控制以及传感器套件。

NAS的过程就像搭积木,积木的每一层都有多种选择,比如当前层是卷积层时,使用多大的卷积核就是一种选择在把各层的选择组合起来之后,便构成了一个完整的神经架构

通过NAS,一般会得到多个「最优」架构,比如高精度同时高延迟和低精度同时低延迟的架构而NAS的最终目标就是找出这样一系列在精度VS延迟的权衡中最优的架构相应地,硬件适配NAS就是对给定目标设备进行NAS,从而找到当前设备上的一系列Pareto最优架构

由此可见,NAS就是一个「选择—组合」的过程,所以过程中必定会得到非常多个可供选择的架构从中挑出Pareto最优架构的方法是对这些架构的延迟和精度进行排名而择其优

对此,本文将使用精度和推理延迟两个指标来衡量一个神经架构的性能。另外,特斯拉首席财务官扎卡里middot;柯克霍恩补充说,安全对公司来说至关重要。;并表示将与尽可能多的监管机构合作。。

工作简介

卷积神经网络已被部署在越来越多样化的硬件设备和平台上而神经网络架构极大地影响着最终的模型性能,比如推理精度和延迟因此,在NAS的过程中综合目标硬件的影响至关重要,即硬件适配的NAS

高效进行硬件适配NAS的关键是快速在目标设备上评估各个神经架构的延推理延迟如果简单地直接测量每个架构的延迟,会导致一次NAS就需要数周甚至数月所以SOTA硬件适配的NAS主要依赖于为每个设备建立延迟查找表或预测器

可是构建延迟预测器非常耗时以及需要大量的工程工作例如,MIT的ProxylessNAS在移动设备上测量了5000个DNN的平均推理延迟,以此为基础构建延迟查找表

假设每次测量的理想耗时是20秒,即使不间断地测量,在一个设备上构建延迟预测器也需要27个多小时类似地,Meta提出的ChamNet收集了35万条延迟记录,仅仅用于在一个设备上构建延迟预测器

今年ICLR的spotlight工作HW—NAS—Bench也花了一个月在NAS—Bench—201和FBNet模型空间上搜集延迟数据,并为六个设备构建延迟预测器在Microsoft的最新工作nn—meter中,单是收集一个边缘设备上的延迟测量值就需要4.4天

这些事实证明了SOTA的硬件适配NAS mdash,mdash, 为每个目标设备构建延迟预测器 mdash,mdash, 成本非常高昂。

更复杂的是,CNN部署的目标设备极其多样化,包括移动CPU,ASIC,边缘设备,和GPU等例如,光是移动设备,市面上就有两千多个SoC,排名前30的SoC才勉强各有超过1% 的份额所以,如何在极其多样化的目标设备上有效地进行硬件适配NAS已成为一项挑战

在此基础上,只需要选择一个设备作为代理并为它构建延迟预测器 mdash,mdash, 而不是像SOTA那样为每个单独的目标设备构建延迟预测器 mdash,mdash, 就足够了。

实验结果表明,与专门针对每个目标设备进行优化的NAS相比,仅使用一个代理设备的方法几乎不会损失Pareto最优性本项工作被收录于SIGMETRICSrsquo,22

普遍存在的延迟单调性

1. 同一平台的设备间

下图用散点表示这些模型在四个设备上的推理延迟,图用热力图来可视化设备之间模型延迟的相关系数,每个方格的颜色深浅和所标数值直观地表示一对设备间的SRCC大小。

更多的实验还证明,同样的结论对于其他平台的设备间也成立,例如CPU,GPU,和FPGA。

2. 跨平台的设备间

用一个代理设备进行硬件适配NAS

硬件适配NAS的目的是从数以亿计的可选神经架构中找到适配当前硬件的一系列Pareto最优架构其中,不同硬件只会影响架构的延迟,而不改变架构精度

通过前一个章节可以知道不同硬件上架构的延迟排名可能有很强的相关性,既然代理硬件上延迟低精度高的架构可能在其他硬件上也延迟低精度高那么能不能直接复用一个代理硬件上的Pareto最优架构给所有硬件呢

首先,用一个代理设备在目标设备上进行NAS并成功搜索出Pareto最优架构的充分条件是强延迟单调性当代理设备和目标设备之间的SRCC达不到阈值时,代理设备上NAS搜索出的架构可能与目标的Pareto最优架构有些差距

本文通过大量实验证明,可以成功作为代理设备的延迟SRCC阈值在0.9左右使用迁移学习技术来提高代理设备和目标设备间SRCC的效果如下,具体细节以及算法描述可以参考原文的对应章节

实验结果

总结

快速评估在目标设备上的推理延迟是能够在海量的神经构架空间中实现高效优化的关键步骤目前普遍采用的为每个目标设备构建延迟预测器的方法无法满足实际中目标设备日益增多所带来的挑战

在加州大学河滨分校团队所提出的全新方法中,基于延迟单调性,仅仅一个代理设备就足以进行硬件适配的神经构架搜索,并且不失最优性这省去了大量构建延迟预测器的巨大代价,使得今后针对不同平台和设备快速优化神经构架成为了可能

其导师任绍磊博士,清华大学电子系本科,加州大学洛杉矶分校博士,现任加州大学河滨分校副教授任教授的研究兴趣包括系统与网络优化,最近几年来专注于机器学习及其应用

声明:本网转发此文章,旨在为读者提供更多信息资讯,所涉内容不构成投资、消费建议。文章事实如有疑问,请与有关方核实,文章观点非本网观点,仅供读者参考。