Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

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

近日,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 的转换方案如下图所示。 

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

其中:

  1. R(α│β)=R(α,w_α )-R(β,w_β ),R(α,w_α ) 表示最优参数为 w_α的网络结构α在验证集合上的性能;

  2. c(α)≤κ 是所得到的模型的计算开销的一个约束。

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

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

其中,

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

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

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

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

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

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

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

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

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

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

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

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

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

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

入门NeurIPS 2019腾讯AI LabGCNLSTM
相关数据
深度学习技术

深度学习(deep learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。 深度学习是机器学习中一种基于对数据进行表征学习的算法,至今已有数种深度学习框架,如卷积神经网络和深度置信网络和递归神经网络等已被应用在计算机视觉、语音识别、自然语言处理、音频识别与生物信息学等领域并获取了极好的效果。

池化技术

池化(Pooling)是卷积神经网络中的一个重要的概念,它实际上是一种形式的降采样。有多种不同形式的非线性池化函数,而其中“最大池化(Max pooling)”是最为常见的。它是将输入的图像划分为若干个矩形区域,对每个子区域输出最大值。直觉上,这种机制能够有效的原因在于,在发现一个特征之后,它的精确位置远不及它和其他特征的相对位置的关系重要。池化层会不断地减小数据的空间大小,因此参数的数量和计算量也会下降,这在一定程度上也控制了过拟合。通常来说,CNN的卷积层之间都会周期性地插入池化层。

机器学习技术

机器学习是人工智能的一个分支,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

VGG技术

2014年,牛津大学提出了另一种深度卷积网络VGG-Net,它相比于AlexNet有更小的卷积核和更深的层级。AlexNet前面几层用了11×11和5×5的卷积核以在图像上获取更大的感受野,而VGG采用更小的卷积核与更深的网络提升参数效率。VGG-Net 的泛化性能较好,常用于图像特征的抽取目标检测候选框生成等。VGG最大的问题就在于参数数量,VGG-19基本上是参数量最多的卷积网络架构。VGG-Net的参数主要出现在后面两个全连接层,每一层都有4096个神经元,可想而至这之间的参数会有多么庞大。

基准技术

一种简单的模型或启发法,用作比较模型效果时的参考点。基准有助于模型开发者针对特定问题量化最低预期效果。

参数技术

在数学和统计学裡,参数(英语:parameter)是使用通用变量来建立函数和变量之间关系(当这种关系很难用方程来阐述时)的一个数量。

验证集技术

验证数据集是用于调整分类器超参数(即模型结构)的一组数据集,它有时也被称为开发集(dev set)。

神经网络技术

(人工)神经网络是一种起源于 20 世纪 50 年代的监督式机器学习模型,那时候研究者构想了「感知器(perceptron)」的想法。这一领域的研究者通常被称为「联结主义者(Connectionist)」,因为这种模型模拟了人脑的功能。神经网络模型通常是通过反向传播算法应用梯度下降训练的。目前神经网络有两大主要类型,它们都是前馈神经网络:卷积神经网络(CNN)和循环神经网络(RNN),其中 RNN 又包含长短期记忆(LSTM)、门控循环单元(GRU)等等。深度学习是一种主要应用于神经网络帮助其取得更好结果的技术。尽管神经网络主要用于监督学习,但也有一些为无监督学习设计的变体,比如自动编码器和生成对抗网络(GAN)。

强化学习技术

强化学习是一种试错方法,其目标是让软件智能体在特定环境中能够采取回报最大化的行为。强化学习在马尔可夫决策过程环境中主要使用的技术是动态规划(Dynamic Programming)。流行的强化学习方法包括自适应动态规划(ADP)、时间差分(TD)学习、状态-动作-回报-状态-动作(SARSA)算法、Q 学习、深度强化学习(DQN);其应用包括下棋类游戏、机器人控制和工作调度等。

深度神经网络技术

深度神经网络(DNN)是深度学习的一种框架,它是一种具备至少一个隐层的神经网络。与浅层神经网络类似,深度神经网络也能够为复杂非线性系统提供建模,但多出的层次为模型提供了更高的抽象层次,因而提高了模型的能力。

自动化机器学习技术

机器学习最近在许多应用领域取得了长足的进步,这促成了对机器学习系统的不断增长的需求,并希望机器学习系统可以被新手快速地熟悉并使用。相应地,越来越多的商业企业推出产品旨在满足这种需求。这些服务需要解决的核心问题是:在给定数据集上使用哪种机器学习算法、是否以及如何预处理其特征以及如何设置所有超参数。这即是自动化学习(AutoML)企图解决的问题。

腾讯机构

腾讯,1998年11月诞生于中国深圳,是一家以互联网为基础的科技与文化公司。我们的使命是“通过互联网服务提升人类生活品质”。腾讯秉承着 “一切以用户价值为依归”的经营理念,为亿万网民提供优质的互联网综合服务。 腾讯的战略目标是“连接一切”,我们长期致力于社交平台与数字内容两大核心业务:一方面通过微信与QQ等社交平台,实现人与人、服务及设备的智慧连接;另一方面为数以亿计的用户提供优质的新闻、视频、游戏、音乐、文学、动漫、影业等数字内容产品及相关服务。我们还积极推动金融科技的发展,通过普及移动支付等技术能力,为智慧交通、智慧零售、智慧城市等领域提供有力支持。

http://www.tencent.com/
相关技术
图卷积神经网络技术

图卷积神经网络(Graph Convolutional Network)是一种能对图数据进行深度学习的方法。GCN的三个主要特征:它是卷积神经网络在 graph domain 上的自然推广;它能同时对节点特征信息与结构信息进行端对端学习;适用于任意拓扑结构的节点与图;

结构搜索技术

深度学习提供了这样一种承诺:它可以绕过手动特征工程的流程,通过端对端的方式联合学习中间表征与统计模型。 然而,神经网络架构本身通常由专家以艰苦的、一事一议的方式临时设计出来。 神经网络架构搜索(NAS)被誉为一条减轻痛苦之路,它可以自动识别哪些网络优于手工设计的网络。

推荐文章
暂无评论
暂无评论~