脉冲神经网络——下一代机器学习?

摘要: 脉冲神经网络是什么?本位对脉冲神经网络做了简要叙述。

每个对机器学习近期发展有所了解的人,都听过现在用于机器学习的第二代人工神经网络。这些神经网络通常完全连接,获取连续值,并输出连续值。这使我们在很多领域取得了突破性的进展,但是由于存在生物准确性,它并没有模仿大脑神经元的实际机制。

脉冲神经网络——下一代机器学习?

第三代神经网络——脉冲神经网络(SNN),旨在填补神经科学和机器学习间的鸿沟,使用神经元的生物逼真模型计算。脉冲神经网络和机器学习社区中的神经网络有根本性的区别。脉冲神经网络使用脉冲,是基于发生在某些时间点的离散值活动,而不是连续值。一个脉冲的发生是由代表各种生物处理过程的微分方程所决定,其中最重要的是神经元的膜电位。从本质上来说,一旦神经元达到某一电位,就会产生脉冲,那么神经元的电位就会被重置。最常见的模型是LIF模型,另外,脉冲神经网络通常是稀疏连接,并使用专门的网络拓扑结构。

脉冲神经网络——下一代机器学习?

LIF模型中产生膜电位的微分方程

脉冲神经网络——下一代机器学习?

在一个脉冲中膜电位的形态图

脉冲神经网络——下一代机器学习?

3个神经元的网络脉冲训练图

脉冲神经网络——下一代机器学习?

完整的脉冲神经网络

乍一看好像是倒退了一步,我们已经将连续输出转化为二进制数字,并且这些脉冲训练并不能做出很好的解释。然而脉冲训练提高了处理时空数据(即现实世界的感官数据)的能力。空间是指神经元只与本地神经元连接,所以这些神经元自然地将输入块分开处理(类似于CNN如何使用过滤器)。时间是指脉冲训练在时间上的推移,获得了脉冲的时间信息,这是在二进制编码中失去的。这使我们能够自然处理时间数据,而不需要额外的增加循环神经网络的复杂性。实际上,事实证明,脉冲神经元比传统人工神经元具有更强的计算能力。

理论上,脉冲神经网络比第二代网络更强大,为什么它们没有得到广泛使用?目前脉冲神经网络的主要问题是训练。虽然我们已经拥有无监督生物学习方法,如Hebbian学习和STDR,但是暂时还没有有效的监督训练方法,使脉冲神经网络具有比第二代网络更高的性能。由于脉冲训练是不可微分的,因此不能使用梯度下降来训练脉冲神经网络,而不丢失脉冲训练中特别精确的时间信息。因此,为了将脉冲神经网络正确地用于实际任务,我们需要开发一种有效的监督学习方法。这是一个非常艰巨的任务,因为这涉及到需要确定大脑是如何真正学习的,给这些网络赋予生物现实意义。

另一个我们亟待解决的问题是,在标准的硬件上模拟脉冲神经网络是计算密集型的,因为这需要模拟微分方程。然而,像IBM的TrueNorth等仿神经硬件解决了这个问题,它旨在是通过使用特定硬件模拟神经元,该硬件可以利用神经元脉冲行为的离散和稀疏特性优势来模拟神经元。

脉冲神经网络的未来尚不明确,一方面,它是循环神经网络的天然继任者;另一方面,对于大多数任务来说,这还不是较为实用的工具。脉冲神经网络在实时图像和音频处理领域得到一些实际应用,但文献仍然较少。脉冲神经网络的大部分论文还停留在理论研究阶段,或者在一种简单且完全连接的第二代网络下展示其性能。但是,现在有很多团队正在从事脉冲神经网络监督学习规则的工作,因此我对其未来发展保持较为乐观的态度。

以上为译文。

本文由阿里云云栖社区组织翻译。

文章原标题《Spiking Neural Networks, the Next Generation of Machine Learning》,译者:Mags,审校:袁虎。

相关推荐