Deep learning incorporating biologically inspired neural dynamics and in memory computing
阅读时间:2023-10-20
1 创新点介绍
将深度学习应用于脉冲神经网络(SNNs),并结合了生物学启发的神经动力学和内存计算。作者提出了一种名为脉冲神经单元(SNU)的新方法,该方法将SNNs的时间动力学与人工神经网络(ANNs)的计算能力相结合。SNUs可以作为SNNs使用阶跃函数激活,也可以使用连续激活作为ANNs。
2 系统模型
脉冲神经网络常使用LIF(Leaky Integrate-and-Fire)神经元来模拟脉冲活动。LIF神经元的动力学由微分方程描述,其中Vm(t)表示膜电位,R和C分别表示神经元细胞体的电阻和电容。输入电流通过突触权重调制,并通过离子通道在膜电位中积分。当膜电位越过激活阈值时,发射输出脉冲,并将膜电位重置为静息状态。这种方法为研究脉冲神经网络中的LIF动力学提供了基本框架。
将LIF动力学引入到一个人工神经网络单元中,被称为脉冲神经元单元(SNU)。SNU由两个人工神经元子单元组成:N1模拟膜电位积累动力学,N2实现脉冲发射。膜电位状态变量的积分动力学通过与N1的自环连接实现。脉冲发射通过具有阶跃激活函数的神经元N2实现。同时,N2的激活通过对N1上的自环连接进行门控以重置状态变量。
SNU的数学表达式如下所示:
$ st = g(Wx_t + l(\tau)⊙s_{t-1} ⊙ (1 - y_{t-1})) \\ yt = h(s_t + b) $
其中, $ s_t $是内部状态变量的向量,由 $ N_1 $子单元计算得出; $t y_t $是输出向量,由 $ N_2 $子单元计算得出;g是输入激活函数;h是输出激活函数; ⊙表示逐元素向量乘法。
RN、LSTM、GRU和SNU结构对比
3 实验分析
对比ANN、SNN、SNU、LSTM、所有网络都使用BPTT算法
对于手写数字识别任务,7层SNN的平均识别准确率达到了98.47%。与各种循环神经网络(LSTM和GRU)相比,具有相似结构的SNU-based网络在准确性上达到最高水平。使用4层网络和sSNUs获得了最好的结果,准确率达到了98.5%。
4 代码
https://github.com/takyamamoto/SNU_Chainer?utm_source=catalyzex.com