Z让h工智能可快速大规模布徏的需求,自动机器学习(fn)QAutoMLQ和经|络架构搜烦QNASQNeural Architecture SearchQ成为相当受到关注的新领域,NAS 旨在利用法自动设计出神l网l,优点是快速且高效Q缺点则是需要大量的q算能力Q成本昂c?/span>

MIT?sh)子工程和计机U学pd理教授韩松(清华大学?sh)子p?008U)
ȝ理工学院QMITQ电(sh)子工E和计算机科学系助理教授韩松与团队h员蔡涵和朱力耕设计出?NAS 法—ProxylessNASQ可以直接针对目标硬件^台训l专用的L(fng)经|络QCNNQ,而且?1000 cImageNet 大规模图像数据集上直接搜索,仅需 200 个GPU 时Q如此便能让 NAS 法能够更广泛的被运用。该论文在 5 月D办的 ICLRQInternationalConference on Learning RepresentationsQ大?x)上发表?/span>
AutoML是用以模型选择、或是超参数优化的自动化Ҏ(gu)Q?NAS 属于 AutoML 概念下的一个领域,单来_(d)是用“神l网l来设计经|络”,一来好处是可以加速模型开发的q度Q再者,NAS 开发的经|络可望比hcdE师设计的系l更加准和高效Q因?AutoML ?NAS 是达?AI 普及化远景的重要Ҏ(gu)之一?/span>
DeepTech采访了韩松,他表C,AutoML是个很有前景的方向,架构搜烦只是 AutoML 的一部分Q它能自动化地找C些过MhcL索不到的l构Q反q来帮助Z设计高效的模型。然而,q去 NAS 法的硬件效率有待提高:(x)搜烦q程需要很久的旉、而且搜出的模型的推理速度难以保证。NAS 和硬件结合,能带来很多新的设计策略?/span>

ProxylessNAS为硬件定制专属的高效经|络架构Q不同硬仉合不同的模?/span>
大幅减少计算成本
举例来说Q谷歌所开发的NAS 法Q需要运行在 GPU ?4.8 万个时Q才能生成一个用来做囑փ分类或检Q务的 CNN。当Ӟh拥有庞大?GPU 数量和其他专用硬件的资源Q这对许多其他h来说是遥不可及的Ҏ(gu)。而这是 MIT 研究人员希望解决 NAS 计算昂贵的问题。他们提出的 ProxylessNAS 法Q仅需 200 ?GPU 时Q就可以?1000 cImageNet 的大规模囑փ数据集上直接q行搜烦Q换下来,比谷歌的 48,000 GPU 时Q快?240 倍。而且QProxylessNAS 可以针对特定的目标硬件^C定制专属的深度学?fn)模型,使其不仅准而且q行速度快?/span>
“主要目标是实现人工在各U硬件^C的普及,在特定硬件上提供“一键加速”的解决Ҏ(gu)Q帮?AI 专家和非 AI 专家、硬件专家和非硬件专家有效率地设计又准又快的经|络架构Q”韩松说。同Ӟ他也QNAS 法永远不会(x)取代人类工程师,“目的是减轻设计和改q神l网l架构所带来的重复性和J琐的工作”?/span>
路径U二值化和修?/span>
在该研究中,他们的做法是删除非必要性的经|络设计lgQ借此~短计算旉、减和内存开销来运?NAS 法。另一创新则是让每个输出?CNN 在特定硬件^CQCPU、GPU 和移动设备)的运行效率比使用传统Ҏ(gu)所设计的模型来得快速。在试中,研究人员?CNN 在手Z的测量速度Q比怼_ֺ?MobileNet-V2 快了 1.8 倍?span style="color:blue">
CNN 能连接不同层QlayerQ的人工经|\Q受到大脑处理媄像的视觉皮质Qvisual cortexQ组l启发,适合处理视觉斚w的Q务,是计机视觉领域十分行的架构。一?CNN 架构是由多个可调整参数的计算层(UCؓ(f)“过滤器”)Q以及这些过滤器之间可能的连接所l成?/span>
q种q接方式多种多样Q由于可以选择的架构数量(UCؓ(f)“搜索空间”search spaceQ非常庞大,所以想应用 NAS 在v量图像数据集上创Z个神l网l,计算量L个很大的问题Q所以工E师通常在较?yu)的代理数据集上q行 NASQ再把将训练好的 CNN q移到目标Q务上Q但是,q种Ҏ(gu)降低模型的准性,此外Q把一L(fng)模型架构套用在所有的gq_Q也难以发挥各种g的最x率?/span>
研究人员直接在ImageNet 大型数据集上训练和测试他们开发的?NAS 法Q首先,他们创徏一个搜索空_(d)包含了所有可能的 CNN“\径”(路径是指层和qo器如何连接来处理数据Q,?NAS 法可以自由LZ个最x构?/span>
q种Ҏ(gu)通常把所有可能的路径存储在内存中Q如果用传统的架构搜索办法直接在千类 ImageNet 搜烦Q就?x)超q?GPU 内存的限制。ؓ(f)了解x问题Q研Ih员利用了一U称为“\径二值化”(path-level binarizationQ的技术,一ơ只在内存中存放一个采栯\径,大幅节省内存的消耗?/span>
接着Q他们将q种二值化与“\径修剪”(path-level pruningQ结合,通常该技术是用来学习(fn)经|络中有哪些经元(neuronQ可以被删除Q而且不会(x)影响输出。不q,研究人员 NAS 法是采用修剪整个\径以取代丢掉经元,如此能够完全改变经|络的架构?/span>
在训l过E中Q所有\径最初都被给予相同的选择概率Q然后,该算法跟t这些\径,q记下输出的准确性和损失Q进而调整\径的概率Q借此优化准确性和效率。最后,该算法修剪掉所有低概率的\径,仅保留最高概率的路径QŞ成最l版?CNN 架构?/span>

MITNews 报道韩松团队新的经|络架构搜烦法
为硬件定制网l结?/span>
另一w要创新就是NAS 法“hardware-aware”,也就是说Q它?x)?f)一个硬件^台量w定制专用的|络l构Q得推理的延迟更低?/span>
韩松解释Qhardware-aware是指 NAS 搜出来的模型不仅准确率高Q而且在硬件实的速度也要快,使得搜出来的模型Ҏ(gu)落地。然而,Z量测Ud讑֤的模型推理gq,大公司的作法是利用大量的手机来实,成本很高Q?ProxylessNAS 则是lgq徏模,q样可以让gq可|make latencydifferentiableQ,便于对gq进行端到端的优化,而且只要使用一台手机,成本低、精度误差小?1 毫秒?/span>
对于|络中的每个所选层Q算法利用上q的延迟预测模型来采P然后使用q些信息设计Z个快速运行的架构Q同时实现高_ֺ。在实验中,研究人员?CNN 在移动设备上的运行速度几乎是现?MobileNet-V2 模型?2 倍?/span>
韩松也提C个有的l果Q有些卷U核l构曾被误以为效率太低,但在研究人员的测试中Q这些架构在某些g上是高效的?/span>
他指出,比如 7x7 q样的大L(fng)核最q几q被比较?yu)被Z用,因ؓ(f) 3 ?3x3 L(fng)核和 1 ?7x7 L(fng)核有同样的感受野QreceptivefieldQ,?3 ?3x3 L(fng)核有 27 个权重,1 ?7x7 L(fng)核有 49 个权重,仿佛(jng) 7x7 不如 3 ?3x3 能让模型更小?/span>
但实际在 GPU ?invoke kernel call 的代价很高,执行多个型qo器不如执行单个大型过滤器效率高,大的 kernel call 更适合 GPU q样q行度高的硬件。“所以在 GPU 上,ProxylessNAS 在较q层自动选取了大?7x7 的卷U核Q这是很有意思的Q”他说?/span>
GPU 的ƈ行运特性能够同时进行多个计,因此Q执行单个大型过滤器Ӟ反而比处理多个型qo器更高效。“这打破了过ȝx”,“搜索空间越大,可以扑ֈ的内容就多。你不知道某个东西是否会(x)比过Mhcȝ历表现得更好Q那p AI 来探索,”韩松说?/span>
他进一步指出,cM例子在量化中也有体现Q如他们最q的工作 HAQ: Hardware-aware Automated Quantization (CVPR 19 oral paper) 发现Q不同硬Ӟ如边~设备(edge deviceQ和云端讑֤Qcloud deviceQ,寚w化策略的偏好是不同的。不同层在不同硬件上所需的比Ҏ(gu)也不一P有些层是计算受限Q有些层是内存受限;在这样大的设计空_(d)人类l每U网l、每U硬件订制专属的量化{略Ҏ(gu)费力Q基于学?fn)的{略可以做得更好?/span>
他认为,q也说明研究specialization ?domain-specific hardware architecture 的重要性。最q越来越多好的深度学?fn)工作都是算力推动的Q比如用于自然语a预训l的 Bert。很多场景落C需要低功耗的g支持Q比如端上智能和 AIoT。所以未来算法和力的协同研I是值得x的方向?/span>
帮助人类减轻做琐事或工作的负担,一直是大家?AI 的期望。这也就是ؓ(f)什?AutoML ?NAS 受到重视的原因之一Q所以如果要?NAS 普及Q除了克服上q的计算成本高之外,q有哪些需要一步改善的问题Q面对这个提问,韩松l了两个很明的方向Q一是设计空_(d)design spaceQ的设计Q目前的 NAS 性能好坏很大E度依赖设计I间的选取Q这部分q有很多Zؓ(f)的经验。二是对速度和资源的优化Qؓ(f)了让 NAS 更容易在工业界落圎ͼ有两个条Ӟ(x)搜烦的过E占用的计算资源要低Q搜索出的模型硬件效率要高——最l实现让g效率和算法性能同步提升?/span>