神经形态计算 - 脉冲神经网络 (SNN)

脉冲神经网络 (SNN) 是一种特殊类型的神经网络,其工作原理与生物神经元相同,使用离散的、时间相关的脉冲来传输和处理信息。硬件组件忆阻器用于实现 SNN,因为它们可以根据脉冲时间和传入信号调整其电阻。在本节中,我们将详细概述 SNN 算法并将其与 ANN 算法进行比较。

SNN 学习机制

SNN 中的学习依赖于脉冲的时序和突触连接的可塑性。一般来说,有两种类型的学习机制:

脉冲时间依赖性可塑性 (STDP)

脉冲时间依赖性可塑性 (STDP) 是一种基于赫布规则的无监督学习算法,可以总结为"如果两个相连的神经元同时激发,则它们之间的突触权重应该加强"。但是,如果突触前脉冲先于突触后脉冲,则突触的权重会加强或减弱。

忆阻器是两个终端电气元件,可以通过根据这些时间规则调整其电阻来模拟这种行为。在此处了解有关忆阻器的更多信息。

基于脉冲的反向传播

基于脉冲的反向传播是一种通过根据脉冲的时间和发生情况调整突触权重来训练 SNN 的方法,类似于传统 ANN 中使用反向传播的方式。这种方法需要较长的训练时间,因为网络需要频繁进行前向传递,这在标准计算机硬件上即使并行化也需要很长时间。

由于不可微神经元方程的问题,反向传播不能直接用于 SNN。因此,需要近似导数才能使反向传播起作用。这些近似可以围绕脉冲时间、膜电位、ReLU 激活函数甚至 STDP 机制进行。

SNN 模型

SNN 中使用了几种神经元模型,包括:

  • 泄漏积分激发 (LIF):这是一种捕捉神经元基本动态的常见模型。它整合传入的脉冲,并在达到某个阈值时生成输出脉冲,然后是重置期。
  • Izhikevich 模型:一种更具生物学现实性的模型,它将简单模型的效率与生物神经元中看到的更复杂的脉冲行为的丰富性相结合。
  • Hodgkin-Huxley 模型:这是一个详细的模型,模拟了生物神经元中动作电位产生背后的离子机制。

BNN 与 ANN 与 SNN

下表显示了人工神经网络与脉冲神经网络和生物神经网络的区别

属性 生物神经网络 人工神经网络 脉冲神经网络
信息表示 脉冲 标量 脉冲
学习范式 突触可塑性 反向传播 可塑性/反向传播
能源效率 非常高(自然系统) 中等 高(事件驱动计算)
计算风格 异步(脉冲定时) 同步(连续) 异步(脉冲定时)
平台 大脑 VLSI 神经形态 VLSI

ANN-to-SNN转换

将传统 ANN 转换为 SNN 涉及将 ANN 的连续输出转换为 SNN 可以处理的离散脉冲。这可以通过将 ANN 的激活值映射到脉冲速率上来实现,这一过程允许转换后的 SNN 保持原始 ANN 的功能,同时受益于脉冲网络的能源效率和事件驱动特性。