脉冲神经网络
words • 88888
脉冲神经网络(SNN)与人工神经网络(ANN)有很大的不同。
- 信息的编码方式不同。非脉冲神经元利用实数值激活来传信息,而脉冲神经元用脉冲来表示信息。
- 是否有记忆。神经网络中的非脉冲神经元没有任何记忆,但脉冲神经元通常有记忆。
- 输出是否是时间的函数。许多ANN(尤其是前馈ANN)产生的输出不是时间的函数,但是大多数SNN本质上是随时间变化的。
与人工神经元相比,脉冲神经元通常具有更复杂的动力学。正是学习能力赋予了神经网络解决许多实际问题的能力。
信息编码
速率编码 时间编码
脉冲时间相关可塑性(Spike-Timing-Dependent Plasticity,STDP)


在接下来的研究中,神经科学界和AI界将继续相互启发,以最终了解揭示大脑如何工作以及如何建立更好的机器学习模型的机制
。一方面,大脑是截至目前我们规划AI新兴研究道路的最佳路线图。因此,我们期望发现并开发出更好的启发式类脑算法。
人工神经网络和脉冲神经网络的融合
不管这两种神经网络存在什么差异,近年来的趋势是,这两种类型的神经网络之间的边界越来越不清晰。在某些应用中将这两种神经网络混合有时是有利的。至少有两种将SNN与ANN结合的方法,第一个是将这两种类型的神经网络直接连接以形成一个新的网络。传统上,如何将SNN与ANN桥接尚不清楚,因为它们以两种不同的模式运行。4.3.5节中介绍的学习算法使这种组合变得可行,可以使用训练ANN的方式来训练SNN。在ANN领域中,学习是根据常规的反向传播方法进行的,其中梯度是通过解析得出的。对于SNN域,可以容易地采用基于权重的STDP学习方案来进一步反向传播误差信号。通过这样做,两个不同的神经网络能够协作并利用它们的优势。例如,通过在处理稀疏信号时利用SNN更好的可伸缩性和能效,SNN可以用作处理庞大且高度稀疏的输入信号的前端。ANN可以用作后端,以利用其优势来处理密集和高精度数据。
混合ANN和SNN的第二种方法是构建受SNN启发的ANN或受ANN启发的SNN。例如,4.3.5节中介绍的学习算法很大程度上受ANN学习算法的启发。通过这样做,可以继承许多完善的理论和技术,这有助于更好地训练SNN。另一方面,近年来开发的许多ANN算法和硬件都具有受SNN启发的功能。例如,二值化网络[30-31]在某种意义上类似于SNN,因为它使用二进制数来承载信息,这可以显著提高硬件的能效。另外,许多新开发的硬件体系结构[32-33]将ANN中神经元的激活分解为二进制流,以便利用数据的稀疏性和应用程序所需的可变精度。
神经形态计算
神经形态计算不是一个新话题,但是近年来它不断带来新的发现和创纪录的性能。新一轮的创新研究刚刚开始,越来越多的研究人员将AI、机器学习和神经网络视为解决复杂问题的强大工具。我们希望本书能激发很多未来的创新,以丰富神经形态工程和计算的新兴领域。