超越transformer?:Neural circuit policies(秀丽隐杆线虫仿生网络)

文摘   2024-10-02 22:15   山西  


补充:了解过现代神经科学的同学应该对秀丽隐杆线虫再熟悉不过了,这是一种通体透明的线虫,这种线虫拥有非常少的神经元个数:大约只有302个神经元和大约5000个内部神经元连接(相比之下,人类有几十亿神经元和几万亿个内部神经元连接)。
你可以对比一下目前深度学习中的 neural数,动辄以亿为单位起步,而它,只需要302个neural和5000个connection(很明显不是full connection架构。说架构并不夸大,因为即使只有这么点东西,秀丽隐杆线虫内部的神经元依然是模块化的!)就能实现一种生物特性,这实在是非常神奇了,这也从侧面印证了一个问题:我们当前的算法和架构可能是有改进空间的。
生物研究者们最早在这种线虫体内发现了完整的神经回路,此后,它又被科学家们反复研究,当之无愧神经科学的“小白鼠”。比较早的时候,科学家们就能完全监控它体内所有神经元的回路活动了。
它在神经学领域的地位不亚于建筑工人菲尼亚斯·盖奇的事件(简单地说,一根滚烫的金属棍击穿了他的大脑,并损伤了他的前额叶,非常奇迹的是,它没有丧失作为人意识,只是他本人的脾性发生了翻天覆地的改变)。
下面来看看Liquid AI 的核心论文《Neural circuit policies enabling auditable autonomy》吧。
以下通过ChatGPT-4o模型总结和翻译,并通过本人稍加修正,比如英文原单词和一些可有可无的补充思考,如需观看原文请参考论文地址:
https://publik.tuwien.ac.at/files/publik_292280.pdf
神经回路策略启用可审计的自主性
摘要
高风险决策应用中,人工智能的一个核心目标是设计一个算法,能够同时表达学习其世界的连贯表示和解释其动态的可解释性。
在这里,我们结合了受大脑启发的神经计算原理和可扩展的深度学习架构,设计紧凑的神经控制器,用于全栈自动驾驶车辆控制系统的任务特定部分(看来这篇论文最开始是为自动驾驶设计的,就像transformer最开始是搞自然语言翻译)。
我们发现,一个由19个控制神经元(control neurons)组成的单一算法,将32个封装的输入特征连接到输出,通过253个突触,能够学习将高维输入映射到转向命令(steering commands:补充,这是汽车自动驾驶领域的一个名词,指的是用于控制车辆方向的指令或命令。这些指令通常由自动驾驶系统或驾驶员发出,以调整车辆的行驶方向。)
与规模更大的黑盒学习系统相比,该系统表现出了优越的泛化性、可解释性和鲁棒性。获得的神经代理使复杂自主系统的任务特定部分实现了高保真度的自主性。
引言
我们致力于设计一个受大脑启发的智能代理,该代理能够直接从摄像头输入中学习如何控制自动驾驶车辆(end to end 学习控制)。这个代理需要从多维感官信息中学习出一个连贯的世界表示,并在未见过的情况下能够很好地泛化。
令人惊讶的是,即使是秀丽隐杆线虫(Caenorhabditis elegans)这样小的动物,也能够通过其近乎最佳的神经系统结构与和谐的神经信息处理机制,完成运动、运动控制和导航等任务(前文最开始提到了,这种生物只有302个神经元哦!)。在复杂的真实场景中,比如自动驾驶,这种神经计算的启发可以导致更具表现力的人工智能代理,它们的模型既精确又可解释。
尽管深度学习算法在各种高维任务中取得了显著的成功,仍然存在一些重要的表示学习挑战需要解决。例如,端到端控制领域是安全关键的,要求智能控制器的动态是可解释的,以作为探讨其安全问题的第一步。(补充:对于自动驾驶领域来说,可解释性,也就是安全性,可能显得格外重要。谁都不愿意相信一个无法解释的系统帮自己开车,即使它看起来做得很好,但如果是个黑盒,总会有点“拒人以千里之外”的感觉
此外,尽管学习到的车辆控制代理在离线测试和仿真中表现优异,但在实际驾驶中性能会明显下降(补充:也就是过拟合的问题,过拟合表示系统的泛化能力不够,这是本论文试图优化的方向之一:提高泛化能力)。因此,我们希望代理能够学习并且观察到:驾驶场景与其相应的最佳转向命令之间的真实因果结构(补充:系统学习到了真的因果关系,而不是一种偶然的因果:我们不希望汽车在看到电线杠上的一个猴屁股的时候也停下来)。
为了一个车道保持任务,理想情况下,我们希望代理在做出当前转向决策时,能够隐式地关注道路的地平线,同时在短期转向上表现出色。然而,实际上,表现良好的模型已被证明学到了各种不公平和次优的输入输出因果结构。最后,在高维数据流输入的处理过程中,代理需要结合一种短期记忆机制来捕捉时间上的依赖性。
尽管现有的端到端自动驾驶控制方法依赖于卷积神经网络(CNN)架构,通过最近的摄像头帧来控制车辆,它们通常在输入数据干净的情况下表现良好,但在数据噪声出现时往往失败。这是因为这些前馈模型没有利用任务的时间性,无法滤除瞬时的扰动(补充:CNN架构无法处理和关注时间先后的相关性,它主要通过多个局部特征进行结果性的学习,因此它无需引入时间维度的概念)。
例如,突然的阳光会导致不稳定的预测。相反,循环神经网络(RNN)可以通过反馈机制在当前输出决策中考虑过去的观察,原则上应当能带来更加鲁棒的端到端控制器(补充:RNN将上一时刻的output保存status作为下一时刻的input参与计算,实现一种时间特性的上下文关联)。RNN 是通过展开的前馈表示训练的,训练时使用反向传播算法。然而,历史上 RNN 的训练一直存在挑战,因为在学习过程中梯度会消失或爆炸。为了应对这一挑战,开发了高级的门控 RNN,比如长短期记忆(补充:LSTM,这个的原理与残差的思路完全一致,都是在在后续的计算中参加最原始的信息解决梯度消失的问题),通过将循环权重固定为1并去除反馈路径中的非线性来确保恒定的误差流动。
从时间序列建模的角度来看,恒定的误差流动是一个理想的特性,因为任意的数据序列可能具有长期的关系。然而,在端到端自动驾驶中,学习长期依赖性可能是有害的,因为底层任务的因果关系是短期的当驾驶车辆保持车道时,人类不会回忆几秒前的道路图像来操作方向盘。
因此,LSTM 网络可能捕捉到训练数据中存在的虚假长期依赖性,从而学习到不合适的因果模型。相反,梯度的消失防止了 RNN 学习到长期依赖事件的相关性,这一特性反而增强了学习到的 RNN 代理在实际控制中的表现,因为它对网络的时间关注范围施加了先验,只关注最近的几次观察。
设计与学习神经回路策略(NCPs)
为了应对表示学习的挑战以及车道保持任务的复杂性,我们设计了一个端到端学习系统,通过一组卷积层感知输入,提取图像特征,并通过一种称为神经回路策略(NCP)的 RNN 结构进行控制
NCP 的网络结构受到秀丽隐杆线虫神经系统的启发。秀丽隐杆线虫的许多神经回路由一个独特的四层层级网络拓扑结构构成。它们通过感觉神经元接收环境观察信号,这些信号被传递给中间神经元和命令神经元,后者产生输出决策,最后这些决策被传递到运动神经元以控制肌肉的运动。
秀丽隐杆线虫的这种拓扑结构在计算上具有吸引力,例如能够实现高效的分布式控制,只需少量神经元即可完成复杂的任务,并且能够进行机器人学习。
NCP 的神经动态由常微分方程(ODE)描述,这些方程最初是为捕捉像秀丽隐杆线虫这样的小型生物物种的神经系统动态而开发的。NCP 的基础神经构件称为液体时间常数(LTC)网络,它们在建模时间序列时比传统的深度学习模型具有更强的表现力。
NCP 网络的架构是通过以下设计原则确定的:
  1. 插入四层神经层(Insert four neural layers):感觉神经元、中间神经元、命令神经元和运动神经元。

  2. 在每两层之间随机插入带有特定突触连接的 neural。

  3. 对没有突触的目标神经元进行连接,以确保适当的网络连接。

  4. 为命令神经元引入循环连接,从而加强内部信息处理。

这四个是一个核心这里详细解释一下:
插入四层神经层(Insert four neural layers)
  • 组成

    • 感觉神经元(Sensory neurons):接收环境输入(如图像、声音等),负责感知周围环境。

    • 中间神经元(Inter-neurons):在感觉神经元和命令神经元之间进行信息处理和传递,负责对输入进行计算和转换。

    • 命令神经元(Command neurons):根据中间神经元的输出生成控制命令,用于指导运动神经元。

    • 运动神经元(Motor neurons):根据命令神经元的输出,直接控制执行机构(如车辆的转向、加速等)。

  • 作用:这种分层设计使网络能够逐层处理信息,从感知到决策,最终到执行,提升了信息处理的效率和准确性。


在每两层之间随机插入带有特定突触连接的神经元(Insert synapses between layers)
  • 作用:通过在每两层之间随机插入具有特定突触连接的神经元,可以增加网络的灵活性和复杂性。这样的连接有助于形成多样化的路径,使得信息可以通过不同的途径在神经元之间传递,从而增强网络的学习能力和泛化能力。(补充:可以看到,这个地方的处理和dropout layer 有异曲同工之妙,因为它需要在减少神经元和连接的前提下同时增强表达性和泛化能力,这里使用的 add ,而非 drop


对没有突触的目标神经元进行连接(Connect target neurons without synapses)
  • 作用:确保网络中的每个神经元都能获得足够的输入信号,以便能够进行有效的处理。这种连接方法避免了神经元之间的孤立,确保信息能够在网络中有效地流动,从而提高了网络的整体性能和稳定性。


为命令神经元引入循环连接(Introduce recurrent connections for command neurons)
  • 作用:RNN使得命令神经元能够在做出决策时考虑之前的输出。这种反馈机制有助于命令神经元在处理时间序列数据时保持上下文,增强网络对时间动态的理解,使得它能更好地应对复杂的、动态变化的环境(如自动驾驶中的不断变化的路况)。这种结构能够提高网络的记忆能力和决策的连贯性。


应用上述设计原则后,NCP 网络变得非常紧凑且稀疏极大地减少了神经元和突触的数量。在我们的车道保持任务中,NCP 由一个卷积前端和 NCP 网络组成,通过半隐式 ODE 求解器对系统进行训练,以确保数值精度和稳定性。然后,我们将 ODE 求解器递归地嵌入到 RNN 中,准备系统的训练流程。
实验设计与结果
我们收集了大量由人类驾驶员记录的观察和动作数据,这些数据用于训练 NCP 网络用于车道保持任务。端到端驾驶是一个反馈控制问题,代理的动作会影响未来的观察。然而,在监督训练阶段,这种反馈机制被忽略了。
我们观察到,这种训练和测试的差异导致了在离线测试环境中表现优异的神经网络模型,在实际驾驶测试中表现不佳。现代 RNN 在这些场景中特别容易出现问题,因为它们的决策过程严重依赖于过去的观察。因此,为了正确评估性能,我们选择了在离线测试中表现良好的架构,并在实际车辆上进行了测试。我们在波士顿大都会地区进行了94分钟的标注序列记录,并使用这些数据进行了十次交叉测试。
为了进行公平的比较,我们为所有 RNN 模型配备了相同的卷积头,以将输入图像的维度减少到更紧凑的潜在表示,然后将这些表示输入到 RNN 中。我们训练并评估了以下架构:64个神经元的 LSTM、64个神经元的连续时间(CT)-RNN 和19个神经元的 NCP。此外,我们还将这些循环代理与基于 CNN 的前馈模型进行了比较。
学习紧凑的神经表示
与之前的基于 CNN 的端到端驾驶模型相比,完整的 NCP 网络规模减少了63倍。其控制网络的稀疏性比 LSTM 高970倍,比 CT-RNN 高241倍。NCP 的 RNN 部分的可训练参数空间比 LSTM 小233倍,比 CT-RNN 小59倍。值得注意的是,这样紧凑的神经表示在多个方面的表现优于其他模型,特别是在自动驾驶任务中。
在输入扰动增加情况下避免碰撞
与测试中的所有学习系统相比,NCP 在避免因像素级输入扰动(噪声)而导致的碰撞(需要干预)方面表现显著更好。这是因为 NCP 的连续时间模型在起到滤波作用。理想情况下,模型应当利用时间信息来滤除扰动。为了展示这一点,我们在输入图像上添加了零均值高斯噪声,发现 NCP 对噪声具有更高的鲁棒性。
在噪声干扰下的输出决策鲁棒性
在输入噪声存在的情况下,我们通过计算结构相似性指数(SSIM)来量化输入扰动对注意力图的影响。SSIM 越接近 1,说明网络在应对输入噪声时的鲁棒性越高。结果显示,NCP 在不同层次的输入扰动下持续保持较高的 SSIM,相比其他模型,NCP 的输出决策不确定性显著降低。
神经活动的平滑性
我们定量测量了所有神经元神经动态导数的最大陡度(即最大局部 Lipschitz 常数),并报告了结果。我们观察到,NCP 的局部决策过程明显比其他网络类型更加平滑。这表明 NCP 能够更好地应对噪声和扰动,确保神经网络在做出决策时的动态更为稳定。
NCP 增强了可解释性
解释性是向人类提供模型解释的过程。尽管目前尚未有正式定义,但我们认为一个模型更具解释性意味着它的输入与输出决策之间的因果映射,以及其全局隐藏状态动态到细胞级别,都更易于人类理解。
为了实现可解释性,研究人员发展了算法来衡量学习系统动态的质量。例如,对于神经网络模型,许多研究探索了训练后进行特征可视化的技术。此外,输入特征的归因分析,例如显著性图(saliency maps),已被广泛用于提升模型的解释性。然而,尽管这些方法对神经网络很有效,但随着模型维度的增加,解释质量显著下降。当模型架构具备反馈机制时(如 RNN),这一问题更为突出。
由于 NCP 实现了紧凑且稀疏的网络结构,它通过现有的解释方法(如显著性图计算、降维和细胞贡献分析)更易于解释。
实验中的量化解释分析
我们进行了定量解释分析,重点是解释卷积层的注意力图,并计算了网络的全局动态。对于自动驾驶任务,我们发现环境的几何结构、特定驾驶任务和网络节点负责的行为之间有着密切的关系。尤其是在 NCP 中,由于每个神经元的功能是通过微分方程定义的,我们能够清楚地识别神经元如何在不同的驾驶情境中做出决策。
NCP 提升了可解释性
我们发现,NCP 实现了更为紧凑且稀疏的神经网络结构,这使得通过现有方法(如显著性图计算、降维和细胞贡献分析)解释 NCP 的行为更加容易。对于自动驾驶任务,NCP 网络的卷积层在做出驾驶决策时,主要关注于道路的地平线,这对于车道保持任务来说是非常理想的。在对其他模型(如 CNN、LSTM、CT-RNN)的解释中,我们发现它们的注意力模式更多地分散在道路的边缘,而不是实际的道路上。
我们还通过主成分分析(PCA)量化了不同模型的网络动态。结果表明,NCP 的第一主成分(PC1)能够很好地概括全局驾驶特征,而第二主成分(PC2)则捕捉了细粒度的驾驶决策。这种简洁性在 LSTM 和 CT-RNN 等其他模型中并不明显,因此更难将它们的行为与直观的解释关联起来。
细胞级可解释性
NCP 网络中的神经元活动可以通过可视化分析来实现细胞级的解释。我们研究了 NCP 驾驶代理中的五个选定神经元的活动,发现在不同的驾驶场景中,每个神经元的状态和耦合敏感性(指神经元与环境交互时调整反应速度的能力)都对应着特定的驾驶行为
补充:可以看出,这篇论文的做法是通过人为层级作用设计来实现一种深度学习的可解释性:实现设定好每个层的作用和地位,各自处理当前layer的责任。同时更少的神经元也反向增强了模型的可观测性,因为它的复杂度降低了。
例如,一个运动神经元的活动展示了它如何在直线路段保持平稳动态,而在转弯时会做出更快的反应。通过这种方法,我们可以即时理解 NCP 网络中的每个神经元的动态。
由于 NCP 系统中的计算单元数量显著少于现有的深度学习模型,因此这种对每个神经元动态的访问有助于设计故障测试和极端情况分析,从而提高部署在自动驾驶系统中的安全性。
NCP 与自主性
NCP 是高度紧凑的任务特定神经网络代理,能够在以前未见过的道路上高效地控制车辆,并且在输入干扰下表现出鲁棒性,同时学习到短期因果关系并实现可解释的动态。NCP 可以应用于全栈自动驾驶系统中的任务特定模块,这种模块化设计提高了性能和透明度。
NCP 的成功表明,应对现实世界复杂问题并不需要训练非常大的神经网络,反而可以通过紧凑、可解释的模型实现更优异的表现,特别是在自动驾驶、航空电子、服务机器人和医疗健康等需要实时决策的应用领域。

方法
本文详细介绍了 NCP 网络的神经模型和架构设计方法。NCP 由液体时间常数(LTC)神经元组成,这些神经元通过微分方程描述其动态。我们还探讨了网络的训练过程,包括 ODE 求解器的使用、网络训练的优化策略、鲁棒性测试和输入扰动下的性能分析。具体的训练算法、网络架构及相关细节在本文的附录部分进行了描述。

半夏决明
读书,摄影,随笔
 最新文章