DARTS:基于梯度下降的经典网络搜索方法,开启端到端的网络搜索 | ICLR 2019

DARTS是很经典的NAS方法,它的出现打破了以往的离散的网络搜索模式,能够进行end-to-end的网络搜索。由于DARTS是基于梯度进行网络更新的,所以更新的方向比较准确,搜索时间相当于之前的方法有很大的提升,CIFAR-10的搜索仅需要4GPU days。

来源:晓飞的算法工程笔记 公众号

论文: DARTS: Differentiable Architecture Search

Introduction


  目前流行的神经网络搜索方法大都是对离散的候选网络进行选择,而DARTS则是对连续的搜索空间进行搜索,并根据验证集的表现使用梯度下降进行网络结构优化,论文的主要贡献如下:

  • 基于bilevel优化提出创新的gradient-based神经网络搜索方法DARTS,适用于卷积结构和循环结构。
  • 通过实验表明gradient-based结构搜索方法在CIFAR-10和PTB数据集上都有很好的竞争力。
  • 搜索性能很强,仅需要少量GPU days,主要得益于gradient-based优化模式。
  • 通过DARTS在CIFAR-10和PTB上学习到的网络能够转移到大数据集ImageNet和WikiText-2上。

Differentiable Architecture Search


Search Space

  DARTS的整体搜索框架跟NASNet等方法一样,通过搜索计算单元(cell)的作为网络的基础结构,然后堆叠成卷积网络或者循环网络。计算单元是个有向无环图,包含N个节点的有序序列,每个节点x^{(i)}代表网络的中间信息(如卷积网络的特征图),边代表对x^{(i)}的操作o^{(i,j)}。每个计算单元有两个输入和一个输出,对于卷积单元,输入为前两层的计算单元的输出,对于循环网络,输入则为当前step的输入和前一个step的状态,两者的输出均为将中间节点的所有输出进行合并操作。每个中间节点的计算基于前面所有的节点:

  这里包含一个特殊的zero操作,用来指定两个节点间没有连接。DARTS将计算单元的学习转换为边操作的学习,整体搜索框架跟NASNet等方法一样,本文主要集中在DARTS如何进行gradient-based的搜索。

Continuous Relaxation and Optimization

  让O为候选操作集,每个操作代表应用于x^{(i)}的函数o(\cdot),为了让搜索空间连续化,将原本的离散操作选择转换为所有操作的softmax加权输出:

  节点(i,j)间的操作的混合权重表示为维度|O|的向量\alpha^{(i,j)},整个架构搜索则简化为学习连续的值\alpha=\{\alpha^{(i, j)}\},如图1所示。在搜索的最后,每个节点选择概率最大的操作o^{(i,j)}=argmax_{o\in O}\alpha^{(i,j)}_o代替\bar{o}^{(i,j)},构建出最终的网络。
  在简化后,DARTS目标是够同时学习网络结构\alpha和所有的操作权值w。对比之前的方法,DARTS能够根据验证集损失使用梯度下降进行结构优化。定义\mathcal{L}_{train}\mathcal{L}_{val}为训练和验证集损失,损失由网络结构\alpha和网络权值w共同决定,搜索的最终目的是找到最优的\alpha^{*}来最小化验证集损失\mathcal{L}_{val}(w^{*}, \alpha^{*}),其中网络权值w^{*}则是通过最小化训练损失w^{*}=argmin_w \mathcal{L}_{train}(w, \alpha^{*})获得。这意味这DARTS是个bilevel优化问题,使用验证集优化网络结构,使用训练集优化网络权重,\alpha为上级变量,w为下级变量:

Approximate Architecture Gradient

  公式3计算网络结构梯度的开销是很大的,主要在于公式4的内层优化,即每次结构的修改都需要重新训练得到网络的最优权重。为了简化这一操作,论文提出了提出了简单的近似的改进:

w表示当前的网络权重,\xi是内层优化单次更新的学习率,整体的思想是在网络结构改变后,通过单次训练step优化w来逼近w^{(*)}(\alpha),而不是公式3那样需要完整地训练直到收敛。实际当权值w为内层优化的局部最优解时(\nabla_{w}\mathcal{L}_{train}(w, \alpha)=0),公式6等同于公式5\nabla_{\alpha}\mathcal{L}_{val}(w, \alpha)

  迭代的过程如算法1,交替更新网络结构和网络权重,每次的更新都仅使用少量的数据。根据链式法则,公式6可以展开为:

w^{'}=w - \xi \nabla_w \mathcal{L}_{train}(w, \alpha),上述的式子的第二项计算的开销很大,论文使用有限差分来近似计算,这是论文很关键的一步。\epsilon为小标量,w^{\pm}=w\pm \epsilon \nabla_{w^{'}} \mathcal{L}_{val}(w^{'}, \alpha),得到:

  计算最终的差分需要两次正向+反向计算,计算复杂度从O(|\alpha| |w|)简化为O(|\alpha|+|w|)

  • First-order Approximation

  当\xi=0时,公式7的二阶导会消失,梯度由\nabla_{\alpha}\mathcal{L}(w, \alpha)决定,即认为当前权值总是最优的,直接通过网络结构修改来优化验证集损失。\xi=0能加速搜索的过程,但也可能会带来较差的表现。当\xi=0时,论文称之为一阶近似,当\xi > 0时,论文称之为二阶近似。

Deriving Discrete Architectures

  在构建最终的网络结构时,每个节点选取来自不同节点的top-k个响应最强的非zero操作,响应强度通过\frac{exp(\alpha^{(i,j)_o})}{\sum_{o^{'}\in O}exp(\alpha^{(i,j)}_{o^{'}})}计算。为了让搜索的网络性能更好,卷积单元设置k=2,循环单元设置k=1。过滤zero操作主要让每个节点有足够多的输入,这样才能与当前的SOTA模型进行公平比较。

Experiments and Results

  搜索耗时,其中run代表多次搜索取最好的结果。

  搜索到的结构。

  CIFAR-10上的性能对比。

  PTB上的性能对比。

  迁移到ImageNet上的性能对比。

Conclustion


  DARTS是很经典的NAS方法,它的出现打破了以往的离散的网络搜索模式,能够进行end-to-end的网络搜索。由于DARTS是基于梯度进行网络更新的,所以更新的方向比较准确,搜索时间相当于之前的方法有很大的提升,CIFAR-10的搜索仅需要4GPU days。



如果本文对你有帮助,麻烦点个赞或在看呗~
更多内容请关注 微信公众号【晓飞的算法工程笔记】

work-life balance.
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 156,757评论 4 359
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,478评论 1 289
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 106,540评论 0 237
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,593评论 0 203
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 51,903评论 3 285
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,329评论 1 210
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,659评论 2 309
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,383评论 0 195
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,055评论 1 238
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,337评论 2 241
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,864评论 1 256
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,227评论 2 251
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,820评论 3 231
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 25,999评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,750评论 0 192
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,365评论 2 269
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,260评论 2 258