自动优化架构,这个算法能帮工程师设计神经网络

作者: Synced 2019-12-11 11:53:51

 近日,NeurIPS 2019 近日在加拿大温哥华召开。腾讯 AI Lab 共 14 篇论文入选,位居国内企业前列。这也是腾讯 AI Lab 第四次参加 NeurIPS,会议期间,我们选取了一篇来自腾讯 AI Lab 的优秀论文进行解读。

在这篇由腾讯 AI Lab 主导,和华南理工大学合作完成的论文中,作者利用强化学习的方法学习了一种神经网络结构转换器。它能对任意的神经网络结构进行优化,将其转换为更紧凑、识别精度更高的结构。以下为论文的详细解读。

NAT: Neural Architecture Transformer for Accurate and Compact Architectures

论文链接:https://papers.nips.cc/paper/8362-nat-neural-architecture-transformer-for-accurate-and-compact-architectures.pdf

现有的深度神经网络结构要么是人工设计的,要么是通过神经网络结构搜索 (NAS) 方法自动搜索得到的。然而,这些网络结构可能包含许多冗余的计算操作,存在可优化的空间。为了实现网络结构的优化,作者提出了一个神经网络结构转换器(Neural Architecture Transformer,简称为 NAT)的方法。该方法可以用计算复杂度更低的计算操作代替网络结构中冗余的操作,从而实现性能提高的同时,保证不会引入额外的参数和计算量。

神经网络中的计算操作可以分为三类,即 S, N, O。其中,S 表示跳跃连接,N 表示为空连接(即两个节点之间没有连接),O 表示除了跳跃连接和空连接之外的其它操作(如:卷积、池化操作等)。显然,这三者计算量的大小顺序为:O>S>N。为了降低网络结构的计算复杂度,我们希望所学到的 NAT 用计算量更少的操作来代替原网络结构中的冗余操作。因此,NAT 遵循以下的转换规则:OàS, OàN, SàN。由于跳跃连接往往有助于提升模型的性能而且其引入的计算量非常少,因此 NAT 也允许 NàS。总之,NAT 的转换方案如下图所示。

NeurIPS 2019 |自动优化架构,这个算法能帮工程师设计神经网络

具体来讲,对于任意一个服从分布p(·)网络结构β,NAT 的目标为寻求找到,仅仅通过上述所允许的操作变化得到的,最优的结构α。这个优化问题可以写成:

NeurIPS 2019 |自动优化架构,这个算法能帮工程师设计神经网络

其中:

  1. R(α│β)=R(α,w_α )-R(β,w_β ),R(α,w_α ) 表示最优参数为 w_α的网络结构α在验证集合上的性能;
  2. c(α)≤κ 是所得到的模型的计算开销的一个约束。

然而,直接获得最优的结构α是很困难的。因此,NAT 首先学习一个策略,然后从学到的策略中采样α,即α服从。为了学习策略π,我们解决以下优化问题:

NeurIPS 2019 |自动优化架构,这个算法能帮工程师设计神经网络

为了解决该优化问题,作者采用了强化学习方法中的策略梯度方法。为此,需要构造一个合适的策略函数。由于网络结构β可以用 (X,A) 表示(其中 A 为邻接矩阵,X 为节点特征),来表示,作者在这里的策略π(α|β,θ) 采用了两层的图卷积神经网络(GCN),即:

NeurIPS 2019 |自动优化架构,这个算法能帮工程师设计神经网络

其中,

NeurIPS 2019 |自动优化架构,这个算法能帮工程师设计神经网络

此外文章采用了参数共享的方法来避免从头训练每个结构的参数。总体看来,优化思路就是对下面两步进行迭代优化:

1、更新神经网络参数 w,(利用了参数共享的思想):

NeurIPS 2019 |自动优化架构,这个算法能帮工程师设计神经网络

2、更新θ,(利用最大熵鼓励探索):

NeurIPS 2019 |自动优化架构,这个算法能帮工程师设计神经网络

其中第 2 步的流程示意图如下所示:

NeurIPS 2019 |自动优化架构,这个算法能帮工程师设计神经网络

为了验证 NAT 的有效性,作者将 NAT 应用于人工设计的结构(如:VGG、ResNet、MobileNet)和 NAS 得到的结构(如:ENAS、DARTS、NAONet)。结果分别见表 1 和表 2 所示。

NeurIPS 2019 |自动优化架构,这个算法能帮工程师设计神经网络

表 1. NAT 在人工设计的网络结构上的优化结果。

NeurIPS 2019 |自动优化架构,这个算法能帮工程师设计神经网络

表 2. NAT 在 NAS 方法所得的网络结构上的优化结果。

从表 1 和表 2,可以观察到,在 ImageNet 数据集上,经过 NAT 优化后的模型都比原来的基准模型,在计算复杂度相近甚至更低的情况下,获得了更高的识别精度。

下面,对 NAT 优化后的模型结构进行可视化。图 1 和图 2 分别给出了 NAT 在人工和 NAS 所设计的网络结构上的优化结果。

NeurIPS 2019 |自动优化架构,这个算法能帮工程师设计神经网络

图 1. NAT 在人工设计的网络结构上的优化结果。

如图 1 所示,对于人工设计的网络结构,NAT 引入额外的跳跃连接来提高识别精度。

NeurIPS 2019 |自动优化架构,这个算法能帮工程师设计神经网络

图 2. NAT 在 NAS 设计的网络结构上的优化结果。

从图 2 可以观察到,对于 NAS 方法得到的网络结构,NAT 通过使用跳跃连接替换冗余操作或者直接删除连接的方法来降低计算量。

此外,作者还对比了不同的策略函数,发现 GCN 优于传统的 LSTM 模型。总之,这项研究对自动化机器学习、网络结构设计,深度学习模型性能优化等诸多实际机器学习问题有重要的指导意义。

架构 运维 技术
上一篇:人工智能市场的需求与应用 下一篇:AI公开课 | 我猜你对数据标注还不了解吧?
评论
取消
暂无评论,快去成为第一个评论的人吧

更多资讯推荐

堪比《黑镜》——AI技术帮助母亲见到已逝的女儿

现在,国外的科技术团队使用AI技术,满足了一位失独母亲的夙愿——他们用摄影测量、虚拟现实和动作捕捉模拟产生了她那2016年去世的女儿。

超级盾 ·  1天前
治愈大脑,人机共生,马斯克为“脑机接口”辩护

随着今年年初特斯拉中国工厂正式开始交付特斯拉 model3 型号电动汽车,特斯拉的股值不断飙升,与此同时特斯拉和马斯克也在新闻媒体上赚足了眼球。

学术君 ·  2天前
抗疫新技术!3D打印/复印防护面罩在京研制成功

针对疫情特殊状况,基于前期研究试验,具有微纳滤膜清新空气微正压输入与呼出气体在线消毒排放功能的“新风正气”新冠病毒防护面罩研制已经取得初步成功,并有望批量化生产。

佚名 ·  2天前
谷歌大脑重磅研究:快速可微分排序算法,速度快出一个数量级

在机器学习中,排序也经常用于统计数据、信息检索等领域。那么问题来了,排序算法在函数角度上是分段线性的,也就是说,在几个分段的“节点”处是不可微的。

鱼羊 十三 ·  2天前
谷歌发布TyDi QA语料库,涵盖11种不同类型语言

为了鼓励对多语言问答技术的研究,谷歌发布了 TyDi QA,这是一个涵盖了 11 种不同类型语言的问答语料库。

Jonathan Clark ·  3天前
DeepMind发布神经网络、强化学习库,网友:推动JAX发展

JAX由谷歌提出,是TensorFlow的简化库。结合了针对线性代数的编译器XLA,和自动区分本地 Python 和 Numpy 代码的库Autograd,在高性能的机器学习研究中使用。

十三 ·  2020-02-21 15:33:44
4个步骤成功构建出一个机器学习团队

对一个公司来说,如何从0到1构建一个机器学习团队,是很多公司非常头疼的问题,这篇文章给出了一些建议,对求职者来说,同样具有参考价值。

AI公园 ·  2020-02-21 11:23:11
复工如何避免间接接触?人脸识别门禁实现硬核防控

随着返工日的临近,全国各地陆续恢复生产和工作,与此同时,疫情预防的工作也不可松懈。据悉,新型冠状病毒的传播方式主要为飞沫传播和间接接触,当下,人人出门都会佩戴口罩,并且经常洗手,可以有效预防飞沫传播,而接触公共设施的间接传播方式不容忽视。

佚名 ·  2020-02-20 14:12:01
Copyright©2005-2020 51CTO.COM 版权所有 未经许可 请勿转载