机器之心编辑部报道

真正的神经网络,敢于不学习权重

难道神经网络不用学权重也能完成各种任务?难道我们以为 CNN 学习到的图像特征只是我们以为?神经网络只不过是函数的排列组合,没有其它意义?从这篇论文来看,这些答案似乎都是肯定的。

昨天,谷歌大脑 David Ha 等人一篇名为《Weight Agnostic Neural Networks》的论文引爆了机器学习圈。其「颠覆性」的理论让人惊呼:「到头来我们对神经网络一无所知?」

Reddit 上有一些研究者认为,《Weight Agnostic Neural Networks》这篇论文更有趣的意义在于,它也宣告了深度学习分层编码特征这一解释寿终正寝。

通常情况下,权重被认为会被训练成 MNIST 中边角、圆弧这类直观特征,而如果论文中的算法可以处理 MNIST,那么它们就不是特征,而是函数序列/组合。对于 AI 可解释性来说,这可能是一个打击。

很容易理解,神经网络架构并非「生而平等」,对于特定任务一些网络架构的性能显著优于其他模型。但是相比架构而言,神经网络权重参数的重要性到底有多少?

来自德国波恩-莱茵-锡格应用技术大学和谷歌大脑的一项新研究提出了一种神经网络架构搜索方法,这些网络可以在不进行显式权重训练的情况下执行各种任务。

为了评估这些网络,研究者使用从统一随机分布中采样的单个共享权重参数来连接网络层,并评估期望性能。结果显示,该方法可以找到少量神经网络架构,这些架构可以在没有权重训练的情况下执行多个强化学习任务,或 MNIST 等监督学习任务。

如下是两个不用学习权重神经网络示例,分别是二足行走智能体(上)和赛车(下):

为什么神经网络不用学习权重

在生物学中,早成性物种是指那些天生就有一些能力的幼生体。很多证据表明蜥蜴和蛇等动物天生就懂得逃避捕食者,鸭子在孵化后也能自己学会游泳和进食。

相比之下,我们在训练智能体执行任务时,会选择一个典型的神经网络框架,并相信它有潜力为这个任务编码特定的策略。注意这里只是「有潜力」,我们还要学习权重参数,才能将这种潜力变化为能力。

受到自然界早成行为及先天能力的启发,在这项工作中,研究者构建了一个能「自然」执行给定任务的神经网络。也就是说,找到一个先天的神经网络架构,然后只需要随机初始化的权重就能执行任务。研究者表示,这种不用学习参数神经网络架构在强化学习监督学习都有很好的表现。

其实在我们的理解中,如果我们想象神经网络架构提供的就是一个圈,那么常规学习权重就是找到一个最优「点」(或最优参数解)。但是对于不用学习权重神经网络,它就相当于引入了一个非常强的归纳偏置,以至于,整个架构偏置到能直接解决某个问题。

如上是我们对两种网络的直观理解。一般神经网络在架构内随机初始化权重,再学习权重以找到最优解,这样的模型就能完成特定任务。一般只要架构足够「大」,那么它很可能包含最优解,梯度下降也就能大致找到它了。

但是对于不用学习权重神经网络,它相当于不停地特化架构,或者说降低模型方差。这样,当架构越来越小而只包含最优解时,随机化的权重也就能解决实际问题了。当然,如研究者那样从小架构到大架构搜索也是可行的,只要架构能正好将最优解包围住就行了。

以前就有懒得学习的神经网络

几十年的神经网络研究为不同的任务提供了具有强归纳偏置的构造块。比如卷积神经网络就尤其适合处理图像。

Ulyanov 等人 [109] 展示了随机初始化的 CNN 可在标准逆问题(如去噪、超分辨率和图像修复)中作为手工先验知识(handcrafted prior)使用,且性能优越。

Schmidhuber 等人 [96] 展示了使用习得线性输入层的随机初始化 LSTM 可以预测时序,而传统 RNN 不行。近期在自注意力 [113] 和胶囊网络 [93] 方面的研究拓宽了创建适用于多个任务的架构的构造块范围。

受随机初始化 CNN 和 LSTM 的启发,该研究旨在搜索权重无关的神经网络,即这些具备强归纳偏置的网络可以使用随机权重执行不同任务。

核心思想

为了寻找具备强归纳偏置的神经网络架构,研究者提出通过降低权重重要性的方式来搜索架构。具体步骤为:1)为每一个网络连接提供单一的共享权重参数;2)在较大的权重参数值范围内评估网络。

该研究没有采用优化固定网络权重的方式,而是优化在大范围权重值上都有良好性能的架构。研究者证明,该方法可生成使用随机权重参数执行不同连续控制任务的网络。

图 1:权重无关神经网络示例:二足行走智能体(左)、赛车(右)。研究者通过降低权重重要性的方式搜索架构。网络使用单一的共享权重值。所有架构在大范围权重值上进行性能优化后,仍然能够在没有权重训练的情况下执行不同任务。

权重无关的神经网络搜索

创建编码解的网络架构与神经架构搜索(NAS)解决的问题有着本质上的区别。NAS 技术的目标是生成训练完成后能够超越人类手工设计的架构。从来没有人声称该解是该网络架构所固有的。

为了生成自身能够编码解的架构,权重的重要性必须最小化。在评估网络性能时,研究者没有选择使用最优权重值的网络,而从随机分布中抽取权重值。用权重采样取代权重训练可以确保性能只与网络拓扑结构有关。

然而,由于维度很高,除了最简单的网络外,权重空间的可靠采样在所有网络上都是不可行的。尽管维度问题阻碍了研究者对高维权重空间进行高效采样,但通过在所有权重上执行权重共享,权重值的数量减少到 1。

系统采样单个权值非常简单、高效,可以让我们进行几次试验就能近似网络性能。然后可以利用这一近似来搜索更好的架构。

主要流程

搜索权重无关的神经网络(WANN)的流程如下:

  1. 创建最少神经网络拓扑结构的初始群组;

  2. 在多个 rollout 上对每个网络进行评估,每个 rollout 分配一个不同的共享权重值;

  3. 根据网络的性能和复杂度对其进行排序;

  4. 通过改变排名最高的网络拓扑结构创建新的群组,这些拓扑结构是通过锦标赛选择法(tournament selection)根据概率选择的。

接下来,算法从 (2) 开始重复,生成复杂度递增的权重无关拓扑结构,其性能优于之前的几代。

图 2:与权重无关的神经网络搜索图示。

通过每次 rollout 时采样单个共享权重,与权重无关的神经网络搜索在避免权重训练的同时,探索神经网络拓扑结构的空间。研究者基于多次 rollout 评估网络,在每次 rollout 时,为单个共享权重指定相应的值,并记录实验期间的累积奖励。

之后,根据网络的性能和复杂度对网络群组进行排序。然后,根据概率选出排名最高的网络以生成新的群组,排名最高的网络是会随机变化的。之后重复这一过程。

最最核心的拓扑搜索

用于搜索神经网络拓扑的算子受到神经进化算法 NEAT 的启发。不过 NEAT 中的拓扑和权重值是同时进行优化的,而本研究无视权重,仅使用拓扑搜索算子。

最初的搜索空间包括多个稀疏连接网络、没有隐藏节点的网络,以及输入和输出层之间仅有少量可能连接的网络。使用 insert node、add connection、change activation 这三个算子中的其中一个修改已有网络,从而创建新网络。新节点的激活函数是随机分配的。

图 3:搜索网络拓扑空间的算子。

鉴于网络的前馈本质,在之前不连接的节点之间添加新连接。当隐藏节点的激活函数被改变后,激活函数进入随机分配模式。激活函数包括常见函数(如线性激活函数、sigmoid、ReLU)和不那么常见的(如 Gaussian、sinusoid、step),它们编码输入和输出之间的多种关系。

实验结果

该研究在三个连续控制任务上评估权重无关神经网络(WANN):CartPoleSwingUp、BipedalWalker-v2 和 CarRacing-v0。研究者基于之前研究常用的标准前馈网络策略创建权重无关网络架构,从中选取最好的 WANN 架构进行平均性能对比(100 次试验)。

表 1:随机采样网络和使用权重训练的网络在连续控制任务上的性能。

传统的固定拓扑网络仅在大量调参后才能生成有用的行为,而 WANN 使用随机共享权重都可以执行任务。

由于 WANN 很小,很容易解释,因此我们可以查看以下网络图示,了解其工作原理。

图 4:权重无关拓扑随着时间的变化。Generation 128:添加复杂度,以改进小车的平衡动作。

模型最终在 BipedalWalker-v2 任务上获得的最好效果。

模型最终在 CarRacing-v0 任务上获得的最好效果。

有监督分类问题又怎样

WANN 方法在强化学习任务上取得的成果让我们开始思考,它还可以应用到哪些问题?WANN 能够编码输入之间的关系,非常适合强化学习任务:低维输入加上内部状态和环境交互,使反应型和自适应控制器得以发现。

然而,分类问题没那么模糊,它界限分明,对就是对,错就是错。作为概念证明,研究者调查了 WANN 在 MNIST 数据集上的表现。

即使是在高维分类任务中,WANN 方法依然表现非常好(如图 5 左所示)。虽然局限于单个权重值,WANN 方法能够分类 MNIST 数字,且性能堪比具备数千个权重的单层神经网络权重通过梯度下降进行训练)。创建的架构依然保持权重训练所需的灵活性,从而进一步提升准确率

图 5:MNIST 数据集上的分类准确率

上图左:以多个权重值作为集成进行实例化的 WANN 比随机权重采样的网络性能好得多,且性能与具有数千个权重线性分类器相同。上图右:在所有数字上具有更高准确率的单个权重值不存在。WANN 可被实例化为多个不同网络,它们具有创建集成的可能性。

MNIST 分类网络进化为可以使用随机权重

作者简介

这篇论文的一作 ADAM GAIER 现在德国波恩-莱茵-锡格应用技术大学和法国国家信息与自动化研究所(INRIA)进行博士研究。2019 年 1 月进入谷歌大脑,担任 Research Intern。

ADAM GAIER

从履历来看,他与中国颇有渊源。2010 年 1 月-2011 年 6 月,他曾担任清华附中国际部(Tsinghua International School)的计算机科学负责人。

David Ha

二作 David Ha 是谷歌大脑研究科学家,目前主要从事机器智能方向的研究。他作为一作或参与撰写的论文多次在顶会上发表。机器之心曾报道过他作为一作所写的一篇论文《World Models》(参见:模拟世界的模型:谷歌大脑与 Jürgen Schmidhuber 提出「人工智能梦境」)。

参考内容:https://arxiv.org/abs/1906.04358

https://www.reddit.com/r/MachineLearning/comments/bzka5r/r_weight_agnostic_neural_networks/


理论谷歌权重神经网络
3
相关数据
重采样技术

重采样是指根据一类象元的信息内插出另一类象元信息的过程。在遥感中,重采样是从高分辨率遥感影像中提取出低分辨率影像的过程。常用的重采样方法有最邻近内插法(nearest neighbor interpolation)、双线性内插法(bilinear interpolation)和三次卷积法内插(cubic convolution interpolation)。

深度学习技术

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

线性分类器技术

机器学习通过使用对象的特征来识别它所属的类(或组)来进行统计分类。线性分类器通过基于特征的线性组合的值进行分类决策。 对象的特征也称为特征值,通常在称为特征向量的向量中呈现给机器。

激活函数技术

在 计算网络中, 一个节点的激活函数定义了该节点在给定的输入或输入的集合下的输出。标准的计算机芯片电路可以看作是根据输入得到"开"(1)或"关"(0)输出的数字网络激活函数。这与神经网络中的线性感知机的行为类似。 一种函数(例如 ReLU 或 S 型函数),用于对上一层的所有输入求加权和,然后生成一个输出值(通常为非线性值),并将其传递给下一层。

权重技术

线性模型中特征的系数,或深度网络中的边。训练线性模型的目标是确定每个特征的理想权重。如果权重为 0,则相应的特征对模型来说没有任何贡献。

机器学习技术

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

自注意力技术

自注意力(Self-attention),有时也称为内部注意力,它是一种涉及单序列不同位置的注意力机制,并能计算序列的表征。自注意力在多种任务中都有非常成功的应用,例如阅读理解、摘要概括、文字蕴含和语句表征等。自注意力这种在序列内部执行 Attention 的方法可以视为搜索序列内部的隐藏关系,这种内部关系对于翻译以及序列任务的性能非常重要。

人工智能技术

在学术研究领域,人工智能通常指能够感知周围环境并采取行动以实现最优的可能结果的智能体(intelligent agent)

参数技术

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

神经网络技术

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

梯度下降技术

梯度下降是用于查找函数最小值的一阶迭代优化算法。 要使用梯度下降找到函数的局部最小值,可以采用与当前点的函数梯度(或近似梯度)的负值成比例的步骤。 如果采取的步骤与梯度的正值成比例,则接近该函数的局部最大值,被称为梯度上升。

卷积神经网络技术

卷积神经网路(Convolutional Neural Network, CNN)是一种前馈神经网络,它的人工神经元可以响应一部分覆盖范围内的周围单元,对于大型图像处理有出色表现。卷积神经网路由一个或多个卷积层和顶端的全连通层(对应经典的神经网路)组成,同时也包括关联权重和池化层(pooling layer)。这一结构使得卷积神经网路能够利用输入数据的二维结构。与其他深度学习结构相比,卷积神经网路在图像和语音识别方面能够给出更好的结果。这一模型也可以使用反向传播算法进行训练。相比较其他深度、前馈神经网路,卷积神经网路需要考量的参数更少,使之成为一种颇具吸引力的深度学习结构。 卷积网络是一种专门用于处理具有已知的、网格状拓扑的数据的神经网络。例如时间序列数据,它可以被认为是以一定时间间隔采样的一维网格,又如图像数据,其可以被认为是二维像素网格。

准确率技术

分类模型的正确预测所占的比例。在多类别分类中,准确率的定义为:正确的预测数/样本总数。 在二元分类中,准确率的定义为:(真正例数+真负例数)/样本总数

监督学习技术

监督式学习(Supervised learning),是机器学习中的一个方法,可以由标记好的训练集中学到或建立一个模式(函数 / learning model),并依此模式推测新的实例。训练集是由一系列的训练范例组成,每个训练范例则由输入对象(通常是向量)和预期输出所组成。函数的输出可以是一个连续的值(称为回归分析),或是预测一个分类标签(称作分类)。

先验知识技术

先验(apriori ;也译作 先天)在拉丁文中指“来自先前的东西”,或稍稍引申指“在经验之前”。近代西方传统中,认为先验指无需经验或先于经验获得的知识。先验知识不依赖于经验,比如,数学式子2+2=4;恒真命题“所有的单身汉一定没有结婚”;以及来自纯粹理性的推断“本体论证明”

分类问题技术

分类问题是数据挖掘处理的一个重要组成部分,在机器学习领域,分类问题通常被认为属于监督式学习(supervised learning),也就是说,分类问题的目标是根据已知样本的某些特征,判断一个新的样本属于哪种已知的样本类。根据类别的数量还可以进一步将分类问题划分为二元分类(binary classification)和多元分类(multiclass classification)。

强化学习技术

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

图像修复技术

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