机器之心专栏
作者:郑侠武
ICCV 2019 将于 10.27-11.2在韩国首尔举行,本次会议一共承受 1077 篇,总提交 4303 篇,接收率 25%。厦门大学媒体剖析与核算试验室共有 6 篇论文承受其间两篇为 oral。
本文是论文一作郑侠武对论文《multinomial distribution learning for effective neaural architecture search》的解读。该论文由厦门大学媒体剖析与核算试验室(纪荣嵘团队)、深圳鹏城试验室协作完结,旨在下降神经网络结构检索(NAS)中查找耗费的核算量。
论文代码:https://github.com/tanglang96/MDENAS
摘要
近年来,经过神经架构查找(NAS)算法生成的架构在各种核算机视觉使命中取得了极强的的功能。可是,现有的 NAS 算法需求再上百个 GPU 上运转 30 多天。在本文中,咱们提出了一种依据多项式散布估量快速 NAS 算法,它将查找空间视为一个多项式散布,咱们能够经过采样-散布估量来优化该散布,然后将 NAS 能够转换为散布估量/学习。
除此之外,本文还提出并证明了一种保序精度排序假定,进一步加快学习进程。在 CIFAR-10 上,经过咱们的办法查找的结构完成了 2.55%的测验差错,GTX1080Ti 上仅 4 个 GPU 小时。在 ImageNet 上,咱们完成了 75.2%的 top1 准确度。
布景介绍
给定数据集,神经架构查找(NAS)旨在经过查找算法在巨大的查找空间中发现高功能卷积架构。NAS 在各个核算机视觉范畴比如 图画分类,切割,检测等取得了巨大的成功。
图一:神经网络结构检索
如图一显现,NAS 由三部分组成:查找空间,查找战略和功能点评:传统的 NAS 算法在查找空间中采样神经网络结构并估量功能,然后输入到查找战略算法中进行更新,一向迭代至收敛。虽然取得了明显前进,但传统的 NAS 办法依然遭到密布核算和内存本钱的约束。
例如,强化学习(RL)办法 [1] 需求在 20,000 个 GPU 上练习 4 天,以此练习和点评超越 20,000 个神经网络。最近 [2] 中提出的可微分的办法能够将查找空间松弛到接连的空间,然后能够经过在验证集上的梯度下降来优化体系结构。可是,可微分的办法需求极高的 GPU 显存,而且跟着查找空间的巨细线性添加。
首要办法
1. 精度排序假定
大多数 NAS 办法运用规范练习和验证对每个查找的神经网络结构进行功能点评,一般,神经网络有必要练习到收敛来取得终究的验证集的点评,这种办法极大的约束了 NAS 算法探究查找空间。可是,假如不同结构的精度排序能够在几个练习批次内获取,为什么咱们需求在将神经网络练习到收敛?
例如下图二,咱们随机采样四个网络结构(LeNet,AlexNet,ResNet 和 DenseNet)在不同的次数下,在练习集和测验会集的功能排名是共同的(功能排名坚持为 ResNet-18> DenseNet-BC> AlexNet> LeNet 在不同 网络和练习年代)。
图 2 精度排序假定
依据这一调查,咱们对精度排序提出以下假定:在练习进程中,当一个网络结构 A 的精度比网络结构 B 要好,那么当收敛的时分,网络结构 A 的体现也优于网络结构 B.
2. 查找空间
在查找空间上,咱们首要连续了 [2] 中的查找空间,
图 3 查找空间
详细查找空间如图 3 所示:(a)单元能够堆叠起来构成一个卷积网络,或许递归衔接构成一个循环网络。(b)一个单元(cell)作为终究架构的柱石,单元是由 N 个有序节点组成的全衔接有向无环图。
每个节点都是一个特征(神经网络的卷积特征或许其他特征),每个有向边是对该节点的某种运算。假定每个单元有两个输入节点和一个输出节点。关于卷积单元,输入节点被界说为前两层的单元输出 [1][2]。经过对一切中心节点使用及连操作(concatenation)来取得终究的单元的输出。
3. 查找算法
针对精度排序假定,咱们规划了一套依据多项式散布学习的神经网络结构检索算法,首要关于整个查找空间,咱们假定图 3 中的查找空间为一个多项式散布,最开端的时分,每一个多项式散布的初始概率值坚持共同,即假定有 8 个可选的操作,那么查找空间中每一个的概率为 1/8。在练习的时分,每一个练习的 epoch,咱们首要对网络结构进行采样。采样完毕后,关于一个节点输入的操作为详细边对应采样的点:
进行采样后,进行练习以及测验,在查找空间中咱们记录下每一个操作被采样的次数以及精度。而且核算针对练习批次的差分以及精度的差分:
使用核算好的差分,咱们更新每一个操作的概率:
从上面的公式中,关于查找空间中的两个操作,咱们首要进行下面的比较,当一个操作 A 与别的一个操作 B 之间进行比较,当 A 的练习批次比 B 要少,可是精度却更高,咱们以为 A 比 B 要好,所以添加 A 的概率的一起的削减 B 的概率,反之亦然:当 A 比 B 要差,把 A 的概率分给 B。
终究当多项式散布仅有一个挑选,或许墒少于必定的值的时分(在试验中,基本上 150 个 epoch 之后基本上结构就会安稳不变),咱们以为算法收敛。
试验
精度排序假定的证明
咱们首要对精度排序假定进行证明,证明办法为:随机从查找空间中采样网络结构,练习这些网络结构,核算每一个中心 epoch 与终究收敛时分的 epoch 的排序精度。其间点评目标为 kendall』s tau:详细论述了两个排序之间的准确度,两个排序中坚持共同的对数。
图 4 精度排序假定试验。
在上图中咱们能够发现,kendall's Tau 在一切的 epoch 中坚持了很高的准确度(kendall』s Tau 规模为 [-1,1],0 代表两个 rank 的共同的概率为 50%。),特别的,咱们核算 kendall's Tau 的平均值为 0.47,代表不同的 epoch,点评目标的准确度为 74%。
神经网络结构检索试验
依据之前的文章 [1][2][3],咱们首要设置了三个试验,(1) 直接在 cifar10 上面查找,练习以及测验,(2) 在 cifar10 上查找,将网络结构进行搬迁,搬迁到 ImageNet 数据集进行练习测验。(3)直接在 ImageNet 上查找练习以及测验。
对应的试验成果为:
(1)查找数据集:cifar10;练习数据集:cifar10;测验数据集:cifar10;
该试验详细查找时刻上的功能目标以及测验错误率如下表显现:
查找到最好的结构为:
(2)查找数据集:cifar10;练习数据集:ImageNet;测验数据集:ImageNet;该试验详细查找时刻上的功能目标以及测验错误率如下表显现:
(3)查找数据集:ImageNet;练习数据集:ImageNet;测验数据集:ImageNet;
该试验详细查找时刻上的功能目标以及测验错误率如下表显现:
对应的网络结构为:
定论
在本文中,咱们介绍了第一种依据散布式学习神经网络结构查找算法。咱们的算法依据新颖的精度排序假定,该假定能够进一步缩短查找时刻,然后使用比较前期练习进程中的架构功能的排序来优化查找算法。从咱们的假定中获益,提出的查找算法大大下降了核算量,一起在 CIFAR-10 和 ImageNet 上体现出了超卓的模型精度以及高效的查找功率。此外,咱们提出的办法能够直接在 ImageNet 上进行查找,比较于人类规划的网络和其他 NAS 办法更优越。
[1] Elsken T, Metzen J H, Hutter F. Neural architecture search: A survey[J]. arXiv preprint arXiv:1808.05377, 2018.
[2] Liu H, Simonyan K, Yang Y. Darts: Differentiable architecture search[J]. arXiv preprint arXiv:1806.09055, 2018.
[3] Han Cai and Ligeng Zhu and Song Han ProxylessNAS: Direct Neural Architecture Search on Target Task and Hardware. International Conference on Learning Representations 2019.
[4] Xiawu Zheng, Rongrong Ji , Lang Tang , Baochang Zhang, Jianzhuang Liu, Qi Tian Multinomial Distribution Learning for Effective Neural Architecture Search. ICCV 2019
本文为机器之心专栏,转载请联络原作者取得授权。
------------------------------------------------