自组织纹理
神经细胞自动机模型在图案形成中的应用
神经细胞自动机能够学习多种行为:从生成稳定、再生的静态图像,到图像分割,再到学习"自我分类"形状。使用细胞自动机所施加的归纳偏置非常强大。运行相同学习到的局部规则的个体代理系统可以解决异常复杂的任务。此外,个体代理或细胞可以学习协调它们的行为,即使彼此相距很远。通过构建,它们以大规模并行和本质上退化(此处退化指生物学的退化概念)的方式解决这些任务。每个细胞必须能够承担任何其他细胞的角色——因此它们往往能很好地泛化到未见过的情境。
在这项工作中,我们将神经细胞自动机应用于纹理合成的任务。该任务涉及复制纹理模板的一般外观,而不是制作像素级完美的副本。我们将专注于允许一定程度模糊性的纹理损失。在训练神经细胞自动机模型以复制纹理后,我们随后研究它们学习到的行为,并观察到一些令人惊讶的效果。从这些研究出发,我们论证了细胞学习分布式、局部的算法。
为此,我们应用了一个老技巧:使用神经细胞自动机作为可微分图像参数化。
图案、纹理和物理过程
斑马条纹是一个标志性的纹理。几乎任何人都能在图像集中识别斑马条纹,并且他们能够轻松描述斑马条纹的外观:它们是宽度略有变化的平行条纹,黑白交替。然而,他们可能也会告诉你,没有两匹斑马具有相同的条纹组。这是因为进化编程负责创建斑马图案的细胞以生成具有特定质量的图案,具有某些特征,而不是编程它们具有精确位图的蓝图,该位图包含要塑造到斑马身体表面的条纹边缘和位置。
换句话说,图案和纹理是定义不明确的概念。《剑桥英语词典》将图案定义为"任何定期重复的排列,尤其是由表面上的重复线条、形状或颜色组成的设计"。当观察传达感觉或质量而非特定重复属性的图案和纹理时,这个定义很快就不适用了。例如,彩色毛绒地毯可以被视为图案或纹理,但由指向随机方向的线束组成,尺寸和颜色有小的随机变化,并且图案没有可辨别的规律性。彭罗斯铺陈不重复(它们不是平移不变的),但向任何人展示,他们都会将其描述为图案或纹理。自然界中的大多数图案是局部交互过程的输出,这些过程可能本质上是随机的,但通常基于相当简单的规则。有大量关于在自然界中产生此类图案的模型的工作;其中大部分受到图灵关于形态发生的开创性论文的启发。
这类图案在发育生物学中非常常见。除了皮毛颜色和皮肤色素沉着外,尽管存在随机低层动力学,不变的大规模图案是外周神经网络、血管网络、体节(在胚胎发生中划定的组织块,产生许多器官)以及解剖和基因水平特征片段的关键特征,包括整个身体计划(例如,蛇和蜈蚣)和附属器官(如脊椎动物肢体内数字场的划分)。这类图案由反应-扩散过程、生物电信号、平面极性和其他细胞间通信机制产生。生物学中的图案不仅是结构性的,而且是生理性的,如大脑中的电活动波和基因调控网络的动力学。例如,这些基因调控网络可以支持足够复杂的计算,以至于受到说谎者悖论的影响。原则上,基因调控网络可以表达悖论行为,例如因子A的表达抑制因子A的表达。这种悖论的一个结果可能是某个因子随时间振荡。研究这类图案的出现和控制不仅可以帮助我们理解它们的进化起源,还可以帮助理解它们如何被识别(无论是在第二个观察者的视觉系统中还是在再生过程中的相邻细胞中)以及如何为了再生医学的目的调节它们。
因此,当让任何模型学习生成纹理或图案时,我们希望它学习图案的生成过程。我们可以将这样的过程视为从支配该图案的分布中采样的手段。第一个障碍是选择适当的损失函数或图案的定性度量。为此,我们采用了Gatys等人的思想。神经细胞自动机成为我们"风格化"为目标图案风格的图像的参数化。在这种情况下,我们不是重新设计现有图像的风格,而是从一个完全无约束的设置开始:未经训练的、随机初始化的神经细胞自动机的输出。神经细胞自动机充当"渲染器"或"生成器",而预训练的可微分模型充当图案的鉴别器,提供渲染器学习生成某种风格图案所需的梯度。
从图灵,到细胞自动机,到神经网络
神经细胞自动机非常适合生成纹理。为了理解原因,我们将展示自然界中纹理生成与神经细胞自动机之间的相似之处。鉴于这些相似之处,我们认为神经细胞自动机是纹理生成的良好模型类。
偏微分方程
在"形态发生的化学基础"中,艾伦·图灵提出,由偏微分方程建模的简单反应和扩散物理过程是自然界图案形成的基础,例如前述的斑马条纹。此后已经进行了大量工作来识别建模反应-扩散的偏微分方程并评估它们的行为。其中一个更著名的例子是Gray-Scott反应扩散模型。这个过程有大量有趣的行为,只需调整两个参数即可探索。我们强烈建议读者访问Gray-Scott反应扩散模型不同区域的交互式图集,以了解隐藏在两个简单旋钮背后的极端行为多样性。更冒险的读者甚至可以在本地或浏览器中模拟。
为了解决复制纹理的问题,我们提出了上述系统的更通用版本,由图像状态空间上的简单偏微分方程描述。
∂s/∂t = f(s, ∇ₓs, ∇ₓ²s)
这里,f是依赖于状态空间的梯度(∇ₓs)和拉普拉斯算子(∇ₓ²s)的函数,并决定该状态空间的时间演化。s表示一个k维向量,其前三个分量对应于可见的RGB颜色通道。
直观地说,我们定义了一个系统,其中图像的每个点随时间变化,其方式取决于图像当前在空间上如何变化,相对于其直接邻域。读者可能开始认识到这与另一个基于即时局部交互的系统之间的相似性。
到细胞自动机
控制自然现象的微分方程通常使用数值微分方程求解器进行评估。确实,这有时是解决它们的唯一方法,因为许多感兴趣的偏微分方程和常微分方程没有封闭形式的解。即使对于一些看似简单的方程也是如此,例如三体问题。数值求解偏微分方程和常微分方程是一个庞大且成熟的领域。在数值评估微分方程的隐喻工具包中,最大的工具之一是离散化:将系统的变量从连续空间转换为离散空间的过程,在离散空间中数值积分是可行的。例如,当使用一些常微分方程来模拟现象随时间的变化时,以离散步骤(可能具有可变大小)推进时间是有意义的。
我们现在证明,数值积分上述偏微分方程等价于将问题重新框架为神经细胞自动机,其中f承担神经细胞自动机规则的角色。
离散化偏微分方程操作空间的逻辑方法是将连续2D图像空间离散化为2D栅格网格。边界条件是一个问题,但我们可以通过移动到环面世界来解决,其中每个维度自身环绕。
类似于空间,我们选择以离散方式处理时间,并以固定大小的时间步长评估我们的神经细胞自动机。这等价于显式欧拉积分。然而,这里我们与传统偏微分方程数值积分方法有一个重要偏离,原因有二。首先,如果所有细胞同步更新,初始条件s₀必须因细胞而异以打破对称性。其次,同步模型的物理实现需要存在全局时钟,由所有细胞共享。解决前一种问题的一种方法是用随机噪声初始化网格,但本着自组织的精神,我们选择通过异步评估细胞自动机来解耦细胞更新。我们在每个时间步采样所有细胞的子集进行更新。这引入了时间上的异步性(细胞有时会操作来自其邻居的几步旧的信息)和空间上的不对称性,解决了上述两个问题。
我们用细胞自动机表示偏微分方程的下一步是离散化梯度和拉普拉斯算子。为此,我们使用sobel算子和离散拉普拉斯算子的9点变体,如下所示。
[-1 0 1] [-1 -2 -1] [1 2 1]
[-2 0 2] [ 0 0 0] [2 -12 2]
[-1 0 1] [ 1 2 1] [1 2 1]
Sobel_x Sobel_y Laplacian
所有部分就位后,我们现在有了偏微分方程的空间离散化版本,看起来非常像细胞自动机:栅格网格中每个离散点的时间演化仅取决于其直接邻居。这些离散算子允许我们将偏微分方程形式化为细胞自动机。要再次检查这是否正确,只需观察随着网格变得非常精细,并且异步更新接近均匀,这些离散算子的动力学将再现我们定义的原始偏微分方程的连续动力学。
到神经网络
实现上述通用偏微分方程以进行纹理生成的最后一步是将其转换为深度学习的语言。幸运的是,迭代评估广义偏微分方程所涉及的所有操作都作为大多数深度学习框架中的常见操作存在。我们提供了Tensorflow和最小PyTorch实现供参考,并请读者参阅这些以了解我们实现的细节。
神经细胞自动机作为图案生成器
模型
我们基于生长细胞自动机神经细胞自动机模型构建,包括内置的权重量化、随机更新和批处理池机制以近似长期训练。有关模型和动机的更多细节,我们请读者参阅这项工作。
损失函数
我们使用一个著名的用于图像识别的深度卷积网络VGG(视觉几何组网络)作为我们的可微分纹理鉴别器,原因与可微分参数化中概述的相同。我们从一个模板图像x⃗开始,将其输入VGG。然后我们以这些层中神经元的原始激活值的形式从某些层(block[1…5]_conv1)收集统计信息。最后,我们向前运行神经细胞自动机32到64次迭代,将生成的RGB图像输入VGG。我们的损失是这些神经元的激活的Gram矩阵(有关Gram矩阵的简要定义,请参见此处)与神经细胞自动机作为输入和模板图像作为输入时的激活之间的L₂距离。我们保持VGG的权重冻结,并使用ADAM更新神经细胞自动机的权重。
数据集
该数据集的模板图像来自牛津可描述纹理数据集。该数据集的目的是提供一个基准,用于测量视觉模型识别和分类纹理以及使用单词描述纹理的能力。收集纹理以匹配47个"属性",如"凹凸不平"或"圆点花纹"。这47个属性又从Bhusan、Rao和Lohse识别的一组用于描述纹理的常用单词中提炼出来。
结果
经过几次训练迭代后,我们看到神经细胞自动机收敛到一个乍一看与输入模板相似但并非像素级相同的解决方案。首先要注意的是,如果我们继续迭代细胞自动机,神经细胞自动机学习到的解决方案不是时间不变的。换句话说,它不断变化!
这并非完全出乎意料。在可微分参数化中,作者指出,由于参数化的随机性,当反向传播到图像空间时,每次运行算法时产生的图像最终会不同。为了解决这个问题,他们引入了一些技巧来保持不同可视化之间的对齐。在我们的模型中,我们发现我们在时间维度上实现了这样的对齐,而无需对其进行优化;这是一个受欢迎的惊喜。我们认为原因有三。首先,在神经细胞自动机中达到并维持静态状态与动态状态相比似乎并非易事,以至于在生长细胞自动机中,必须维护不同迭代时间的神经细胞自动机状态池并采样作为起始状态,以模拟在比神经细胞自动机迭代周期更长的时间段后应用损失,以实现静态稳定性。我们在这里使用相同的采样机制来防止图案衰减,但在这种情况下,损失并不强制执行静态固定目标;而是引导神经细胞自动机朝向最小化风格损失的众多状态中的任何一个。其次,我们在神经细胞自动机的随机迭代次数后应用损失。这意味着,在任何给定时间步,图案必须处于最小化损失的状态。第三,随机更新、局部通信和量化都限制并正则化每次迭代的更新幅度。这鼓励了一次迭代和下一次迭代之间的变化很小。我们假设这些属性结合起来鼓励神经细胞自动机找到一个每次迭代与先前迭代对齐的解决方案。我们通过时间感知这种对齐作为运动,当我们迭代神经细胞自动机时,我们观察到它遍历局部对齐解决方案的流形。
我们现在假设,基于上述发现和对神经细胞自动机的定性观察,找到时间对齐的解决方案等价于找到生成模板图案的算法或过程。我们继续展示在不同模板图像上训练的神经细胞自动机的一些令人兴奋的行为。
在这里,我们看到神经细胞自动机使用简单黑白网格的模板图像进行训练。
我们注意到:
最初,形成未对齐的黑白四边形网格。
随着时间推移,四边形似乎在x⃗和y⃗方向上都增长或收缩以更接近地近似正方形。两种颜色的四边形要么出现要么消失。这两种行为似乎都是为了找到局部一致性。
经过较长时间后,网格倾向于实现完美的一致性。
这种行为并非完全不同于人们期望在手工设计的算法中产生具有局部通信的一致网格。例如,一种潜在的手工设计方法是让细胞首先尝试通过从周围细胞中选择最常见的颜色来实现局部一致性,然后尝试通过测量到该一致颜色补丁四个边缘的距离来形成正确大小的菱形,如果边界不正确则移动该边界。可以通过使用隐藏通道在每个感兴趣方向编码梯度来测量距离,每个细胞在该方向上与其邻居相比减小该通道的幅度。然后,细胞可以通过测量两个这样的梯度通道的值来定位自身在菱形内的位置。这种算法的外观将与上述相似——细胞补丁变为黑色或白色,然后菱形调整自身大小以实现一致性。
在这段视频中,神经细胞自动机学会了基于蓝色背景上清晰气泡的模板复制纹理。我们观察到的最有趣的行为之一是气泡的密度保持相当恒定。如果我们重新初始化网格状态,或交互式破坏状态,我们会看到大量气泡重新形成。然而,一旦两个气泡彼此太近,其中一个会自发崩溃并消失,确保整个图像中气泡的恒定密度。我们将这些气泡视为我们神经细胞自动机解空间中的"孤子"。这是我们将在下面详细讨论和研究的概念。
如果我们加快动画速度,我们会看到不同的气泡以不同的速度移动,但它们从不碰撞或接触彼此。气泡还通过自我校正维持其结构;受损的气泡可以重新生长。
这种行为非常显著,因为它是自发产生的,没有任何外部或辅助损失。所有这些属性都是从模板图像、存储在VGG层中的信息以及神经细胞自动机的归纳偏置的组合中学习到的。神经细胞自动机学习了一个有效近似原始图像中气泡许多属性的规则。此外,它学习了一个生成该图案的过程,该过程对损伤具有鲁棒性,并且在人类看来是逼真的。
在这里,我们看到我们最喜欢的图案之一:简单的几何"编织"。再次,我们注意到神经细胞自动机似乎学会了产生这种图案的算法。每个"线"交替地加入或脱离其他线以产生最终图案。这与如果被要求以编程方式生成上述图案,人们尝试实现的内容惊人地相似。人们会尝试设计某种随机算法,用于将单个线与其他附近的线编织在一起。
在这里,未对齐的条纹片段沿条纹向上或向下移动,直到它们合并形成单个直条纹或条纹收缩并消失。如果要用局部通信以算法方式实现这一点,使用类似的算法来寻找条纹之间的一致性并非不可行。
相关工作
这次对图案生成的探索绝非首次。在深度学习之前已经有大量工作,特别是提出了解剖结构空间模式与认知和计算过程时间模式之间的深层联系(例如,在评论中)。经典发育生物学的英雄之一汉斯·斯佩曼说:"一次又一次地使用了不是指向物理而是指向心理类比术语。这不仅仅是一个诗意的隐喻。这是指向我的信念,即赋予不同潜能的胚芽片段在胚胎’场’中的适当反应……不是一种常见的化学反应,就像所有生命过程一样,与我们最熟悉的生命过程相比,没有什么比这更相似的了。"最近,格罗斯伯格定量地阐述了发育模式与计算神经科学之间的重要相似之处。正如简要提及的那样,大部分工作的灵感来自图灵关于通过局部交互生成图案的工作,以及后来基于此原理的论文。然而,我们也希望承认一些我们感到与我们的工作有特别亲缘关系的工作。
补丁采样
早期的图案生成工作专注于纹理采样。通常从原始图像中采样补丁,并以不同方式重建或重新连接以获得纹理的近似值。这种方法也随着Gumin的工作取得了最近的成功。
深度学习
Gatys等人的工作,在整个过程中被引用,关于预训练网络中某些层的统计信息可以捕获图像中的纹理或风格的想法具有开创性。有大量工作建立在这个想法之上,包括玩弄其他参数化进行图像生成和优化生成过程。
其他工作专注于使用卷积生成器结合路径采样,并使用对抗损失训练以产生相似质量的纹理。
交互式进化伪装
也许最非常规的方法,我们发现有亲缘关系,在交互式进化伪装中阐述。克雷格·雷诺兹使用纹理描述语言,由生成器和操作符组成,参数化纹理补丁,呈现给人类观察者,他们必须决定哪些补丁在"伪装"自己对抗选定背景纹理方面最差。群体以进化方式更新以最大化"伪装",经过多次迭代后产生展现最多伪装(对人类眼睛)的纹理。我们看到与我们的工作有很强的相似之处——我们使用神经细胞自动机参数化纹理,而不是纹理生成语言,并且我们使用VGG作为生成图案质量的评估器,而不是人类评审员。我们认为根本区别在于神经细胞自动机的解空间。纹理生成语言带有许多归纳偏置,并学习从坐标到颜色的确定性映射。我们的方法似乎学习更一般的算法和行为,从而产生目标图案。
另外两个值得注意的类似工作例子是Portilla等人使用小波变换的工作,以及Chen等人使用反应扩散的工作。
特征可视化
一些蝴蝶的翅膀上有非常逼真的眼睛。蝴蝶甚至可能不知道自己身体上的这种令人难以置信的艺术品。进化将这些放在那里是为了在潜在捕食者中引发恐惧反应或转移它们的攻击。很可能捕食者和蝴蝶都没有关于眼睛是什么或眼睛做什么的概念,更不用说关于对方意识的任何心理理论,但进化已经确定了该生物形态空间的一个区域,该区域利用捕食者的图案识别特征来欺骗它们害怕无害的虫子而不是吃掉它。
更值得注意的是,组成蝴蝶翅膀的单个细胞可以自组装成连贯、美丽的形状,远大于单个细胞——确实,细胞大约为10⁻⁵米,而翅膀上的特征将增长到10⁻³米。产生这些特征所需的协调意味着数百或数千个细胞的自组织以生成连贯的眼睛图像,该图像进化仅仅是为了作为完全不同物种的视觉刺激,因为细胞间通信的局部性质。当然,这与动物和植物体内发生的形态发生相比相形见绌,在动物和植物体内,由数百万细胞组成的结构将专门化并协调以生成目标形态。
研究神经网络的一种常见方法是查看网络中什么抑制或激发单个神经元。正如神经科学家和生物学家经常将细胞、细胞结构和神经元视为待研究、测量和逆向工程的黑盒模型一样,当代有大量工作对神经网络做同样的事情。例如Boettiger的工作。
我们可以通过最小的努力探索这个想法,取我们的图案生成神经细胞自动机,并探索如果我们任务它进入激发Inception中给定神经元的状态会发生什么。我们注意到的一个常见产生的神经细胞自动机是眼睛和眼睛相关的形状——例如下面的视频——可能是因为必须在ImageNet中检测各种动物。就像细胞在蝴蝶翅膀上形成眼睛图案以激发捕食者大脑中的神经元一样,我们的神经细胞自动机细胞群体学会了协作以产生激发外部神经网络中某些神经元的图案。
带有Inception的神经细胞自动机
模型
我们使用与探索图案生成所用模型相同的模型,但使用不同的鉴别器网络:ImageNet训练的Inception v1网络。
损失函数
我们的损失最大化选定神经元的激活,当在神经细胞自动机的输出上评估时。我们添加一个辅助损失以鼓励神经细胞自动机的输出∈[0,1],因为这并非固有地内置在模型中。我们保持Inception的权重冻结,并使用ADAM更新神经细胞自动机的权重。
数据集
此任务没有显式数据集。Inception在ImageNet上训练。我们选择激发的层和神经元是使用OpenAI Microscope定性选择的。
结果
类似于图案生成实验,我们看到快速收敛和找到时间动态解决方案的趋势。换句话说,产生的神经细胞自动机不会保持静止。我们还观察到大多数神经细胞自动机学会产生各种孤子。我们在下面讨论一些,但鼓励读者在演示中探索它们。
在Inception渲染中经常观察到具有内部结构的规则圆形孤子。两个孤子彼此太接近可能导致一个或两个衰变。我们还观察到孤子可以分裂成两个新孤子。
在由线或线组成的纹理中,或在某些Inception神经元激发中,产生的神经细胞自动机具有"线状"质量,线在各自方向上生长,并将根据需要加入其他线或围绕它们生长。这种行为类似于图案生成期间在条纹图案中观察到的规则线。
其他有趣发现
鲁棒性
切换流形
我们使用相同的固定拉普拉斯和梯度滤波器在神经细胞自动机内编码局部信息流。幸运的是,这些可以为大多数底层流形定义,为我们提供了一种将细胞放置在各种表面和各种配置上的方法,而无需修改学习到的模型。假设我们希望我们的细胞生活在六边形世界中。我们可以重新定义我们的核如下:
我们的模型,在纯正方形环境中训练,在六边形网格上开箱即用!在演示中使用相应设置进行实验。放大允许观察单个六边形或正方形细胞。如演示中所示,细胞在短暂重新对齐期后没有问题适应六边形世界并产生相同的图案。
旋转
理论上,细胞可以在任何可以定义Sobel核和拉普拉斯核近似的流形上评估。我们在演示中通过提供上述"六边形"世界供细胞居住来证明这一点。每个细胞现在有六个等距邻居,而不是八个等距邻居。我们通过旋转Sobel和拉普拉斯核进一步证明这种多功能性。每个细胞基于这些核接收一个固有的全局方向,因为它们相对于状态的坐标系定义。用旋转坐标系重新定义Sobel和拉普拉斯核是直接的,甚至可以在每个细胞级别完成。这种多功能性令人兴奋,因为它反映了自然界生物细胞中发现的极端鲁棒性。大多数组织中的细胞通常将继续操作,无论其位置、方向或相对于邻居的确切放置如何。我们相信我们模型中的这种多功能性甚至可以扩展到细胞随机放置在流形上而不是有序网格上的设置。
时间同步
随机更新教导细胞对异步更新具有鲁棒性。我们通过将其推向极端来研究这个属性,并询问如果允许两个流形通信但一个以与另一个不同的速度运行神经细胞自动机,细胞会如何反应?结果出奇地稳定;细胞自动机仍然能够在组合流形上构建并维持一致的纹理。共享状态的两个细胞自动机之间的时间差异远大于神经细胞自动机在训练期间经历的任何事情,显示了学习行为的显著鲁棒性。可以类比有机物质自我修复,例如指甲在成年后可以再生,尽管底层手指已经完全发育;两者不需要同步。这个结果也暗示了设计分布式系统的可能性,而无需为全局时钟、计算单元的同步甚至同质计算能力进行工程设计。
这种对时间异步性的鲁棒性的更极端例子可以在上面看到。这里,神经细胞自动机被迭代直到它在图案中实现完美一致性。然后,状态空间被扩展,在现有状态周围引入新细胞的边界。这个边界快速与现有细胞接口并 settles 在一致图案中,对已经收敛的内部状态几乎没有扰动。
失败案例
复杂系统的失败模式可以教给我们很多关于其内部结构和过程的信息。我们的模型有许多怪癖,有时这些怪癖阻止它学习某些图案。以下是一些例子。
一些图案在结构方面被复制得有些准确,但颜色不准确,而有些则相反。其他完全失败。很难确定这些失败案例的根源在于参数化(神经细胞自动机),还是在于来自VGG或Inception的难以解释的梯度信号。现有的风格迁移工作表明,在VGG中使用Gram矩阵的损失会引入不稳定性,类似于我们在这里看到的不稳定性。我们假设这种效应解释了复制颜色的失败。同时,结构失败可能是由神经细胞自动机参数化引起的,这使得细胞难以彼此建立长距离通信。
隐藏状态
当生物细胞彼此通信时,它们通过多种可用通信通道进行。细胞可以发射或吸收不同的离子和蛋白质,感知其他细胞的物理运动或"刚度",甚至发射不同的化学信号以在局部基底上扩散。
有各种方法可视化真实细胞中的通信通道。其中之一是向细胞添加电位激活染料。这样做可以清晰显示细胞相对于周围基底的电压电位。这种技术提供了对细胞组内通信模式的有用洞察,并帮助科学家可视化各种时间尺度上的局部和全局通信。
幸运的是,我们可以用我们的神经细胞自动机做类似的事情。我们的神经细胞自动机模型包含12个通道。前三个是可见的RGB通道,其余我们视为潜在通道,在更新步骤期间对相邻细胞可见,但从损失函数中排除。下面我们将隐藏通道的前三个主成分分别映射到R、G和B通道。隐藏通道可以被认为是"浮动的",滥用电路理论中的一个术语。换句话说,它们不被损失拉到任何特定的最终状态或中间状态。相反,它们收敛到某种形式的动力系统,该系统协助细胞实现其关于可见通道的目标。没有预定义的不同角色或含义分配给不同的隐藏通道,并且不同隐藏通道之间几乎肯定存在冗余和相关性。当我们单独可视化前三个主成分时,这种相关性可能不可见。但抛开这个顾虑,可视化无论如何产生了一些有趣的洞察。
在这种珊瑚状纹理的主成分中,我们看到了一个与可见通道相似的图案。然而,指向每个对角线方向的"线"具有不同的颜色——一条对角线是绿色的,另一条是淡蓝色的。这表明编码到隐藏状态中的一件事是"线"的方向,可能允许这些线内的细胞跟踪线生长或移动的方向。
棋盘图案同样适合一些定性分析,并暗示了一个相当简单的维持正方形形状的机制。每个正方形在对角线上在PCA空间中具有清晰的梯度,并且该梯度遍历的值对于白色和黑色正方形不同。我们认为梯度可能用于提供创建和调整正方形大小的局部坐标系。
我们在Inception上训练的神经细胞自动机中也发现了令人惊讶的洞察。在这种情况下,眼睛的结构清晰地编码在隐藏状态中,主体主要由一种主成分组合组成,而光晕,似乎是为了防止眼睛孤子的碰撞,由另一组主成分组成。
分析这些隐藏状态有点像一门黑暗艺术;并不总是可能对正在发生的事情得出严格结论。我们欢迎未来在这个方向的工作,因为我们相信对这些行为的定性分析将有助于理解细胞自动机更复杂的行为。我们还假设可能修改或改变隐藏状态以影响神经细胞自动机的形态和行为。
结论
在这项工作中,我们选择了纹理模板和单个神经元作为目标,然后优化神经细胞自动机群体以在预训练神经网络中产生类似的激发。这个过程产生了可以渲染细致入微且催眠的纹理的神经细胞自动机。在我们的分析过程中,我们发现这些神经细胞自动机具有有趣和意想不到的特性。在图像中生成某些图案的许多解决方案似乎类似于产生图案的底层模型或物理行为。例如,我们学习到的神经细胞自动机似乎倾向于将图案中的对象视为个体对象,并让它们自由地在空间中移动。虽然这种效应出现在我们的许多模型中,但在气泡和眼睛模型中特别强。神经细胞自动机被迫找到可以用纯粹局部交互产生这种图案的算法。这个约束似乎产生了偏爱高级一致性和鲁棒性的模型。
更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手)或者 我的个人博客 https://blog.qife122.com/
对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)
2261

被折叠的 条评论
为什么被折叠?



