什么是脉冲神经网络(SNN)?脉冲神经网络的优势和应用

发布:2022-12-20 15:40:02
阅读:2338
作者:网络整理
分享:复制链接

脉冲神经网络(SNN)是更接近自然神经网络的一种人工神经网络。除了神经元和突触状态之外,SNN还将时间概念纳入其操作模型。这个想法是SNN中的神经元不会在每个传播周期中传输信息,这一点就像典型的多层感知器网络,而是仅当膜电位(神经元与其膜电荷相关的内在质量)达到特定阈值时才传输信息。

当膜电位达到阈值时,神经元会放电,并产生一个信号,该信号会传播到其他神经元,而这些神经元又会响应该信号而增加或减少它们的电位。在阈值交叉时刻激发的神经元模型也称为脉冲神经元模型。

人工神经网络(ANN)或传统的深度学习模型基于合理的程度上模拟了视觉皮层的结构特征,并且能够在相当多的任务上展示与人类水平相似的表现。但是,这些人工神经网络要达到标准性能就会产生巨大的计算成本,而大多数现实应用往往有资源的限制。因此如果必须在此类应用上启用智能,则需要有一种方法可以在不需要太多功率成本的情况下实现神经网络。

脉冲神经网络(SNN)则提供了一种生物合理的方式来实现低功耗智能。通过在多个时间步长上使用二进制事件或脉冲处理视觉信息的行为来模拟生物神经元功能。脉冲神经网络的离散脉冲行为已被证明可以在新兴的神经形态硬件上实现高能效。

如何优化脉冲神经网络?

SNN有两种常用的算法优化方法,可以有助于使SNN在图像分类方面的性能更接近ANN。

第一种方法称为转换。它通过归一化触发阈值或权重将ReLU(整流线性单元)激活转换为集成和触发(IF)脉冲激活,从而将预训练的ANN转换为脉冲神经网络。转换技术已经能够在大规模架构和数据集上实现与人工神经网络对应的精度,但往往会产生较大处理时间步长。

第二种方法涉及使用代理梯度下降法来训练脉冲神经网络,使用近似梯度函数来克服LIF脉冲神经元的不可微性。这类技术使脉冲神经网络具有较低的延迟水平和合理的分类准确度。

脉冲神经网络的优点是什么?

SNN非常适合处理来自神经形态传感器的基于时空事件的信息,这些传感器本身具有高能效。传感器记录来自环境的时间精确信息,SNN也可以在其计算中利用有效的时间代码。这种信息处理也是事件驱动的,这意味着只要记录的信息很少或没有信息,SNN就不会计算太多,但是当记录到突然爆发的活动时,SNN会产生更多的脉冲。

脉冲神经网络的应用

SNN可以模拟生物有机体的中枢神经系统,例如在事先不了解环境的情况下寻找食物的昆虫。由于它们的相对真实性,可用于研究生物神经回路的运行。从关于生物神经元电路的拓扑结构及其功能,可以将该电路的记录与相应SNN的输出进行比较,评估假设的合理性。

然而,SNN 缺乏有效的训练机制,这可能会抑制某些应用程序,这其中就包括计算机视觉任务。

脉冲神经网络(SNN)还可以模拟大脑中的生物特征,从而提供传统深度学习的节能替代方案。

扫码进群
微信群
免费体验AI服务