由于网络规模小到可以解释,我们可以通过查看网络图来了解其运行机制(见上图)。解决“杆车实验”的WANN网络开发过程就体现了在网络架构内对关系的编码方式。在早期时代的网络空间中,不可避免的需要使用随机探索的方式。 网络在第32代时形成初步架构,能够支持比较一致的任务表现,在轨道某某位置的逆变器可以防止小车冲出轨道,轨道中间为0点,左边为负,右边为正。在小车处于负区域时对其施加正方向作用力,反之亦然,网络通过编码在轨道中间设置一个强力牵引器。最终经调整权重,在1024代达成最佳性能。 第1024代最佳性能的CartPoleSwingUp任务WANN网络示意图 我们可以使用最佳共享权重作为起点,由共享权重参数得到偏移量,轻松训练网络的每个单独的权重连接。可以使用基于人口信息的强化对权重进行微调,但原则上可以使用任何其他学习算法。 为了在训练分布之外可视化智能体的性能,可以使用比原始设置更多更杂初始条件。 随着搜索过程的继续,有些控制器能够在直立位置保持更长时间,到第128代时,这个保持时间已经长到能够让杆保持平衡。虽然在可变权重条件下,这种更复杂的平衡机制在可靠性上低于摆动和居中行为,但更可靠的行为可以确保系统恢复,并再次尝试直到找到新的平衡状态。值得注意的是,由于这些网络对关系进行编码,并依赖于相互设置的系统之间的张力,因此网络的行为与广泛的共享权重值保持一致。 在BipedalWalker-v2和CarRacing-v0任务中,WANN网络控制器在简单性和模块性方面的表现同样出色。前者仅使用了25种可能输入中的17种,忽略了许多LIDAR传感器信息和膝盖运动速度数据。 WANN架构不仅可以在未训练单个权重的情况下完成任务,而且仅使用了210个连接,比常用拓扑网络架构(SOTA基线方法中使用了2804个连接)低一个数量级。 BipedalWalker任务最佳性能网络示意图 权重设置-1.5 权重设置-1.0 性能最优的网络 在赛车任务实验中,WANN架构简单的优势也很突出。只需要稀疏连接的双层网络和单个权重值,就能编码合格的驾驶行为。虽然SOTA基线方法也给出了预训练RNN模型的隐藏状态,但除了VAE对其控制器的表示外,我们的控制器仅在VAE的潜在空间上运行。尽管如此,WANN还是能够开发出一种前馈控制器,可以获得性能相当的分数。未来我们将探索如何从搜索中去掉前馈约束,让WANN开发出与内存状态相关的循环连接。 权重设置+1.0 权重设置-1.4 性能最优的网络 WANN的应用扩展:探索图像分类任务 在强化学习任务中取得的好成绩让我们考虑扩大WANN的应用范围。对输入信号之间的关系进行编码的WANN非常适合强化学习任务。不过,分类问题远没有这么模糊,性能要求也要严格得多。与强化学习不同,分类任务中的架构设计一直是人们关注的焦点。为了验证概念,我们研究了WANN在MNIST数据集上的表现,MNIST一个图像分类任务,多年来一直是分类任务架构设计的关注焦点。 WANN在4种权重设定下在MNIST图像数据集上的分类表现,WANN的分类精度用多个权重值作为集合进行实例化,其性能远远优于随机采样权重 即使在高维分类任务中,WANN的表现也非常出色。 只使用单个权重值,WANN就能够对MNIST上的数字以及具有通过梯度下降训练的数千个权重的单层神经网络进行分类,产生的架构灵活性很高,仍然可以继续进行权重,进一步提高准确性。 按权重计算的数字精度 直接对权重范围进行全部扫描,当然可以找到在训练集上表现最佳的权重值,但WANN的结构提供了另一个有趣的方式。在每个权重值处,WANN的预测是不同的。在MNIST上,可以看出每个数字的精度是不一样的。可以将网络的每个权重值视为不同的分类器,这样可能使用具有多个权重值的单个WANN,作为“自包含集合”。 MNIST分类器。并非所有神经元和连接都用于预测每个数字 将具有一系列权重值的WANN进行实例化来创建网络集合是最简单的方法之一。集合中的每个网络给与一票,根据得票最多的类别对样本进行分类。这种方法产生的预测结果远比随机选择的权重值更准确,而且仅仅比最佳权重值稍差。今后在执行预测或搜索网络架构任务时可以不断尝试更复杂的技术。 |