选自arXiv
作者:Han Cai、Chuang Gan、韩松
机器之心编译
参加:熊猫
本文将介绍麻省理工学院与 MIT-IBM Watson AI Lab 的研讨者提出的一种「一了百了」办法。经过别离模型练习与架构查找进程,该办法能极大下降神经网络模型规划布置本钱。
链接:https://arxiv.org/pdf/1908.09791.pdf
如要有用地布置深度学习模型,需求专门的神经网络架构,以便最好地习惯不同的硬件渠道和功率约束条件(界说为布置场景(deployment scenario))。传统的办法要么是人工规划,要么便是运用 AutoML(主动机器学习)来查找特定的神经网络,再针对每个事例从头开始练习。这些办法的本钱昂扬,并且难以扩展,因为它们的练习本钱与布置场景的数量有关。
本研讨为高效神经网络规划引入了一种 once for All(OFA/一了百了)办法,可处理许多布置场景。这种新办法的特点是别离了模型练习与架构查找进程。这种办法不会针对每种事例都练习一个专用模型,而是练习一个支撑多种不同架构设置(深度、宽度、核巨细和分辨率)的 OFA 网络。
然后给定一个布置场景,再经过挑选 OFA 网络中特定的子网络来查找适宜的成果,这个进程无需练习。因而,专用模型的练习本钱就从 O(N) 降到了 O(1)。可是,咱们却难以防止许多不同子网络之间的搅扰。针对这一问题,MIT 的这些研讨者提出了渐进式收束算法(progressive shrinking algorithm)。该算法能够练习支撑超越 10^19 个子网络的 OFA 网络,一起还能坚持与独立练习的网络相同的准确度,然后节约非重复性工程开发(non-recurring engineering/NRE)本钱。
研讨者在多种不同的硬件渠道(移动渠道/CPU/GPU)和功率约束条件进步行了广泛的试验,成果表明:比较于当时最佳(SOTA)的神经架构查找(NAS)办法,OFA 能稳定地取得平等水平(或更好)的 ImageNet 准确度。值得注意的是,OFA 在处理多布置场景(N)时的速度比 NAS 快几个数量级。当 N=40 时,OFA 所需的 GPU 作业小时数比 ProxylessNAS 少 14 倍、比 FBNet 少 16 倍、比 MnasNet 少 1142 倍。布置场景越多,则比较于 NAS 就节约越多。
导言
深度学习模型的模型巨细和计算本钱的爆发式增加带来了新的难题:如安在不同的硬件渠道上有用地布置它们?当硬件资源(比方片上内存巨细、算术单元的数量)不一起,最佳的神经网络架构也存在很大的差异。即便在相同的硬件上运行时,因为电池条件或作业负载的差异,最佳的模型架构也大为不同。
在不同的硬件渠道和功率约束条件下,研讨者要么专门为移动渠道规划紧凑的模型,要么经过紧缩来加快已有的模型,完结有用布置。可是,不管是人工规划办法,仍是根据 AutoML 的办法,为每个布置场景都规划各自的专用 DNN 都具有很高的工程开发本钱和计算本钱。
针对这一难题,这篇论文给出的处理方案是:规划一种一了百了(OFA)的网络,使其能够直接在布置在不同的架构装备上。推理能够经过挑选该 OFA 网络的一部分来完结。它无需再练习,就能灵敏地支撑不同的深度、宽度、核巨细和分辨率。
详细来说,首要在模型练习阶段练习一个单一的 OFA 网络,然后能够根据此生成具有不同架构装备的不同子网络。据介绍,这项研讨的重视重点是在各个子网络不相互搅扰的情况下提高每个子网络的准确度。在模型详细化阶段,研讨者首要会为子网络的一个子集预构建准确度表和硬件功率表(推迟或能耗)。这些子网络的权重直接取自 OFA 网络,无需再练习。在测验时,给定一个布置场景,仅需查询准确度表和硬件推迟表就能得到一个特定的子网络。这个查询进程的本钱能够忽略不计。
可是,练习这个 OFA 网络却并不轻松,因为这需求权重的联合优化,这样才干坚持许多子网络的准确度。为了处理这些问题,研讨者提出了用于这个 OFA 网络的渐进式收束网络。简略来说,首要练习一个带有最大深度、宽度和核巨细的神经网络,然后逐渐练习该网络以支撑更小的子网络。
研讨者在 ImageNet 上评价了所提出的结构的功率,并测验了不同的硬件渠道(移动渠道/CPU/GPU)和功率约束条件。在所有的布置场景中,OFA 比较于当时最佳的硬件感知型 NAS 办法都总是能取得平等或更高的 ImageNet 准确度,一起在处理不同布置场景时的功率要高出几个数量级。
办法
图 1:左图:练习单个 OFA 网络,以支撑包含深度、宽度、核巨细和分辨率在内的不同架构装备。给定一个布置场景,无需练习,直接从该 OFA 网络中挑选一个专用子网络。中图:这种办法可将专用深度学习布置的本钱从 O(N) 降至 O(1)。右图:OFA 网络之后再运用模型挑选,能够完结许多准确度-推迟权衡,而整个进程仅需练习一次。比较而言,传统办法需求重复屡次练习。表 2 给出了查找本钱比较,图 6 是在更多硬件渠道上的成果。
这项研讨探究了卷积神经网络架构的四个重要维度,即深度、宽度、核巨细和分辨率。胀大和分组数量等其它维度能够很自然地整合进来,但还有待进一步的研讨。全体方针是使练习得到的网络的每个受支撑的子网络都能完结与相同的架构装备平等水平的准确度。
图 2:渐进式收束进程的一个示例。其掩盖 CNN 架构的四个重要维度(深度 D、宽度 W、核巨细 K、分辨率 R),得到一个由不同子网络构成的大型空间(>10^19)。
练习 OFA 网络
首要练习一个弹性分辨率的带有最大 [深度, 宽度, 核巨细] 的完好神经网络。然后以一种渐进的办法微调这个神经网络(从大型子网络到小型子网络),以一起支撑完好的 [深度, 宽度, 核巨细] 和部分的 [深度, 宽度, 核巨细]。
图 3:弹性核巨细的核改换矩阵。这儿支撑 7×7、5×5 和 3×3 的核。权重同享使其比独立式的设置更有功率。
图 4:弹性深度的练习进程概览。这儿不会单独地越过每个块,而是会保存前 D 个块,然后越过后边 (4-D) 个块。蓝色和绿色块的权重在 D=2, 3, 4 上是同享的。橙色块在 D=3, 4 上同享。
练习流程的概况如下:
弹性分辨率(图 2)。为了支撑弹性分辨率,研讨者在练习模型时为每批练习数据采样了不同的图画巨细。
弹性核巨细(图 3)。研讨者在同享核权重时引入了核改换矩阵。详细而言,便是在不同的块上运用不同的核改换。在每个块中,核改换矩阵在不同的通道之间同享。
弹性深度(图 4)。为了在本来有 N 个块的阶段得到有 D 个块的子网络,首要保存前 D 个块,再越过后边的 N-D 个块。最终,前 D 个块的权重在大型和小型模型之间同享。
弹性宽度(图 5)。宽度的意思是通道数量。研讨者为每一层都供给了挑选不同通道扩展比的灵敏性。
常识蒸馏(图 2)。研讨者既运用了练习数据给出的硬标签,也运用了在练习 OFA 网络时经过练习完好网络所得到的软标签。
运用 OFA 网络进行专用模型布置
图 5:用于弹性宽度的渐进式收束进程概览。这个比如是渐进地支撑 4、3、2 个通道的设置。更小的通道设置的初始化是用通道分类后最重要的通道(大 L1 范数)来完结。
方针是查找一个在方针硬件渠道上满意功率约束条件(推迟、能耗等)的神经网络,一起优化其准确度。
这项研讨的做法是随机采样子网络的一个子集,并构建它们的准确度表和推迟表。由此,给定方针硬件和推迟约束条件时,能够直接查询准确度表和对应的推迟表,得到表内的最佳子网络。查询这些表的本钱能够忽略不计,然后可防止总本钱的线性增加。
在试验中,研讨者采样了 1.6 万个子网络,并在 1 万张验证图画(采样自原始练习集)上构建了准确度表。此外,因为支撑弹性分辨率,还会在多种输入图画巨细上丈量相同的子网络。
试验
研讨者首要在 ImageNet 上应用了渐进式收束算法来练习 OFA 网络,然后在多种不同的硬件渠道(三星 Note8、谷歌 Pixel1、Pixel2、英伟达 1080Ti、2080Ti、V100 GPU、英特尔 Xeon CPU)上运用不同的推迟约束条件展现了所练习的 OFA 网络的有用性。
在 ImageNet 上练习 OFA 网络
研讨者练习了一个支撑弹性深度(每个阶段中块数量能够为 2、3 或 4)、弹性宽度(每个块的扩展比能够为 4、5 或 6)和弹性核巨细(每个深度可分的卷积层的核巨细能够为 3、5 或 7)。因而,关于 5 个阶段,有大约 ((3 × 3)^2 + (3 × 3)^3 + (3 × 3)^4)^5 ≈ 2 × 10^19 个子网络。此外,输入图画尺度也是弹性的,以步幅 4,从 128 到 224 不等。
练习进程运用了规范的随机梯度下降(SGD)优化器,Nesterov 动量为 0.9,权重衰减为 4e-5。初始学习率为 0.4,学习率衰减运用了余弦调度(cosine schedule)。独立模型以 2048 的批巨细在 32 个 GPU 上练习了 150 epoch。OFA 网络的练习运用了相同的练习设置,但练习本钱更高(大约 8 倍),在 V100 GPU 上练习了大约 1200 GPU 小时。
成果
表 2:在三星 Note8 上与当时最佳的硬件感知型 NAS 办法的比较。OFA 的模型练习与架构查找是别离的。跟着布置场景数量的增加(在试验中 N=40),查找本钱和练习本钱都坚持不变。#25 表明从 OFA 网络抓取权重后微调了 25 epoch 的专用子网络。
表 3:在三星 Note8 上,不同推迟约束条件下的 ImageNet 准确度成果。
论文链接:https://arxiv.org/pdf/1908.09791.pdf
本文为机器之心编译,转载请联络本大众号取得授权。
------------------------------------------------