学界 | 神经网络quine:自我复制 + 解决辅助任务

百家 作者:机器之心 2018-04-03 03:36:27

选自arXiv

作者:Oscar Chang、Hod Lipson

机器之心编译

参与:程耀彤、路


近日,哥伦比亚大学的研究者发布论文,从生命的角度看待人工智能的发展。论文提出一种不寻常的自我复制神经网络,能够实现自我复制,还可以解决辅助任务,本论文使用 MNIST 图像分类作为辅助任务。


生物的生命是从第一次自我复制开始的(Marshall, 2011),而自然选择倾向于支持在复制方面更有优势的生物体,从而形成了自我完善机制。类似地,如果 AI 智能体能够在没有额外机器的情况下进行自我复制和完善,我们就可以通过自然选择构建一个人工智能的自我完善机制。


引言


在发现 DNA 作为生物复制的物理机制之前,人工自我复制机器的概念最早是由 John von Neumann 在 20 世纪 40 年代提出的。具体来说,Von Neumann 展示了细胞自动机的初始状态和变换规则的配置,它在运行固定步数后产生初始细胞状态的副本(Von Neumann & Burks,1966)。之后 Hofstadter(1980)在《Godel,Escher,Bach: an Eternal Golden Braid》一书中以哲学家 Willard Van Orman Quine 的名字创造了术语「quine」,用来描述自我复制的表达式,如:「是句子片段」是句子片段(『is a sentence fragment』 is a sentence fragment)。


在制作物理自我复制器方面也有很多研究。值得注意的例子有 tile(Penrose,1959)、分子(Wang et al.,2011)、聚合物(Breivik,2001)和机器人(Zykov et al.,2005)。


在编程语言理论的背景下,quine 是打印自己源代码的计算机程序。一个简单的 quine 示例是空字符串,在大多数语言中,编译器会转换为空字符串。下面的代码片段是一个不寻常的两行 Python quine 示例。


s = ’s = %rnprint(s%%s)’ 
print(s%s)


虽然自我复制已经在许多自动机中被研究过,但在神经网络的研究中明显缺乏,尽管神经网络似乎是迄今为止已知的最强大的人工智能形式。


本论文识别并尝试解决构建和训练自我复制神经网络时所面临的挑战。具体来说,研究者建议将神经网络视为由一系列张量运算组成的可微计算机程序。研究目标是构建一个输出自己权重的神经网络 quine。


研究者使用三种不同方法对论文提出的方案进行测试:基于梯度的优化方法、基于非梯度的优化方法和一个叫作再生(regeneration)的新方法。研究者进一步设计了一个神经网络 quine,除了自我复制的工作外它还有一个辅助目标。本论文选择的辅助任务是 MNIST 图像分类(LeCun & Cortes,1998),任务涉及将从 0 到 9 的数字图像进行分类,它通常用作机器学习的「hello world」示例。


研究者观察到网络在自我复制能力与解决辅助任务能力之间有一个权衡。这与在自然界中观察到的繁殖与其他辅助生存任务之间的平衡类似。这两个目标通常是一致的,但是比如当一只动物处于饥饿状态时,其性激素通常会下调,以牺牲繁殖为代价优化生存。反之亦然:例如,雄性深色捕鱼蛛的交配行为导致其血压发生突然的、不可逆转的变化,这使其无法移动并容易被雌性蜘蛛吃掉(Drake,2013)。


创建网络


神经网络如何引用它自己?


直接引用(Direct Reference)问:神经网络通过一组参数 Θ 进行参数化,研究者的目标是构建一个输出为 Θ 本身的网络,这很难直接做到。假设前馈网络的最后一层有 A 输入和 B 输出。线性变换中的权重矩阵的大小是积 AB,当 A> 1 时,它大于 B。


研究者还研究了两种流行的图像生成模型的开源实现:DCGAN(Radford et al.,2016)和 DRAW(Gregor et al.,2015)。二者分别使用 1200 万和 100 万个参数来生成具备 784 个像素的 MNIST 图像。


通常,参数集 Θ 比输出的大小要大得多。为了规避这一点,我们需要一种间接的方式来引用 Θ。


间接引用(Indirect Reference):HyperNEAT(Stanley et al.,2009)是一种神经进化方法,通过用坐标和权重识别每个拓扑连接来描述神经网络。研究者在建立 quine 时采取了同样的策略。研究者没有让 quine 直接输出其权重,而是设置它输入一个坐标(以 one-hot 编码的方式),输出该坐标的权重。


这克服了 Θ 大于输出的问题,因为我们仅对每个坐标 c 输出标量 Θ_c。


Vanilla Quine


研究者将 vanilla quine 定义为一个前馈神经网络,其唯一的工作是输出自身的权重。


图 1:vanilla quine 的结构


假设权重的数量是 A,第一个隐藏层的单元数量是 B,那么投影矩阵的大小将是积 AB,当 B> 1 时,它大于 A。因此,由于 one-hot 表征,我们不能使投影本身成为网络的参数。因此,研究者决定使用固定的随机投影将坐标的 one-hot 编码和隐藏层连接起来。所有其他连接,即隐藏层之间的连接以及最后一个隐藏层和输出层之间的连接,都是神经网络的可变参数。


Von Neumann 认为一个不平凡的自我复制器必然包含三个组件,这些组件自身不足以成为自我复制器:(1)复制器的描述,(2)可以克隆描述的复制机制,(3)可以将复制机制嵌入复制器本身的机制(Von Neumann & Burks,1966)。在这种情况下,为每个权重分配 one-hot 空间中的一个点的坐标系对应(1);由神经网络计算的函数对应(2);固定随机投影对应(3)。下文将解释研究者选择(1)、(2)、(3)的原因,同时牢记这些选择的替代方案会是未来有趣的研究方向。


图 2:未经 one-hot 编码的 quine 的权重和权重预测 log 标准化图示


辅助 Quine


研究者将辅助 quine(auxiliary quine)定义为一个除了自我复制之外还解决一些辅助任务的 vanilla quine。它负责接收辅助输入并返回辅助输出。


图 3: 辅助 quine 的结构


本论文选择图像分类作为辅助任务。MNIST 数据集(LeCun & Cortes,1998)包含从 0 到 9 手写数字的正方形图像(28×28 像素)。这些图像将作为辅助输入。将从辅助输入到网络的连接作为参数而不是随机投影是可能的,但本文只报告后者的结果。


辅助输出是十个类别的概率分布,其中具有最大概率的类别将被选择为预测分类。用 60000 张图像进行训练,10000 张图像进行测试;不需要验证集,因为本研究并不是试图对分类器的性能进行严格的优化。本研究的主要目的是证明神经网络 quine 的概念,因此 MNIST 是合适的辅助任务(它被认为是现代机器学习算法中的一个简单问题)。


论文:Neural Network Quine


论文链接:https://arxiv.org/abs/1803.05859


摘要:自我复制是生物生命的一个重要方面,而这在人工智能系统中很大程度上被忽视了。本论文介绍如何构建和训练自我复制的神经网络。网络通过学习输出自己的权重来复制自己。该网络使用一个损失函数,可以用基于梯度或非梯度的方法进行优化。我们还描述了一种我们称之为再生(regeneration)的方法,它在没有明确优化的情况下通过向网络注入其自身参数的预测来训练网络。自我复制网络的最佳解决方案是在再生和优化步骤之间交替发现的。最后,我们介绍了一种可以解决 MNIST 图像分类等辅助任务的自我复制神经网络设计。我们观察到网络的图像分类能力与其复制能力之间存在权衡,但训练偏向于以复制为代价增加其在图像分类方面的专业度。这与自然界中观察到的繁殖和其他任务之间的平衡类似。我们认为人工智能的自我复制机制是有用的,因为它带来了通过自然选择持续改进的可能性。



本文为机器之心编译,转载请联系本公众号获得授权

✄------------------------------------------------

加入机器之心(全职记者/实习生):hr@jiqizhixin.com

投稿或寻求报道:editor@jiqizhixin.com

广告&商务合作:bd@jiqizhixin.com

关注公众号:拾黑(shiheibook)了解更多

[广告]赞助链接:

四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接