-
2020-05-27 11:35:19
脉冲神经网络 神经元模型-Izhikevich模型
一 原理
之前的两篇博客分别介绍了HH模型和IF模型,其中HH模型过于复杂,不适合大规模仿真;IF模型过于简答,脉冲发射模式过于单一。因此,在2003年,Eugene M. Izhikevich提出了Izhikevich模型,简化HH模型同时具有大量的发射模式。
1.模型
通过对HH模型进行分岔分析,并结合IF模型的计算效率,Izhikevich提出了二维脉冲神经元模型:
d V / d t = 0.04 V 2 + 5 V 1 40 − U + I \mathrm{d}V/\mathrm{d}t = 0.04V^2+5V_140-U+I dV/dt=0.04V2+5V140−U+I
d U / d t = a ( b V − U ) \mathrm{d}U/\mathrm{d}t=a(bV-U) dU/dt=a(bV−U)
如果神经元的膜电位 V ≥ V\geq V≥ 30mV,辅助的复位机制为:
V ⟵ V \longleftarrow V⟵c
U ⟵ U \longleftarrow U⟵U+d2.参数
参数 含义 V 膜电位 U 恢复变量,用来代替生理模型中激活的K离子电流和失活的Na离子电流,实现对膜电位V的负反馈 a 恢复变量U的时间尺度,a越小,恢复的越慢 b 恢复变量U依赖膜电位V的阈值下随机波动的敏感程度 c 发放脉冲后,V的复位值 d 发放买抽,U的复位值 二 代码
1. 单神经元
a=0.02; b=0.2; r=rand(1); c=-6+15*r^2; d=8-6*r^2; V=-65; u=b*V; VF=[]; tau = 0.5 tspan=100:tau:1000; VT=30; for t=tspan if(t>VT) I=10+(0.015*(t-VT)); else I=10; end V=V+0.25*(0.04*V^2+5*V+140-u+I); u=u+0.25*a*(b*V-u) if V>30 VF(end+1)=30; V=c; u=u+d; else VF(end+1)=V; end end plot(tspan,VF); set(gca,'FontSize',25); xlabel('Time/ms','FontSize',25);ylabel('Membrane voltage/mV','FontSize',25);
2. 多神经元
按照Izhikevich论文中给的案例,兴奋型神经元800个,抑制型神经元200个(4:1)
%Created by Eugene M. Izhikevich, February 25, 2003 % Excitatory neurons Inhibitory neurons Ne=4; Ni=1; re=rand(Ne,1); ri=rand(Ni,1); a=[0.02*ones(Ne,1); 0.02+0.08*ri]; b=[0.2*ones(Ne,1); 0.25-0.05*ri]; c=[-65+15*re.^2; -65*ones(Ni,1)]; d=[8-6*re.^2; 2*ones(Ni,1)]; S=[0.5*rand(Ne+Ni,Ne), -rand(Ne+Ni,Ni)]; v=-65*ones(Ne+Ni,1); % Initial values of v u=b.*v; % Initial values of u firings=[]; % spike timings for t=1:1000 % simulation of 1000 ms I=[5*randn(Ne,1);2*randn(Ni,1)]; % thalamic input fired=find(v>=30); % indices of spikes firings=[firings; t+0*fired,fired]; v(fired)=c(fired); u(fired)=u(fired)+d(fired); I=I+sum(S(:,fired),2); v=v+0.5*(0.04*v.^2+5*v+140-u+I); % step 0.5 ms v=v+0.5*(0.04*v.^2+5*v+140-u+I); % for numerical u=u+a.*(b.*v-u); % stability end plot(firings(:,1),firings(:,2),'.');
参考文献
- Izhikevich, E. M. Simple model of spiking neurons. IEEE Trans Neural
Netw, 2003 (14): 1569-1572. - https://www.cnblogs.com/Flltju/p/10624693.html
更多相关内容 - Izhikevich, E. M. Simple model of spiking neurons. IEEE Trans Neural
-
脉冲神经元模型—SRM模型
2018-09-28 20:16:27脉冲神经网络最基本的神经元模型之一SRM模型的前世今生,英文原版 -
脉冲神经元模型
2018-05-28 20:45:18脉冲神经元模型传统的人工神经元模型主要包含两个功能,一是对前一层神经元传递的信号计算加权和,二是采用一个非线性激活函数输出信号。 前者用于模仿生物神经元之间传递信息的方式,后者用来提高神经网络的非线性...脉冲神经元模型
传统的人工神经元模型主要包含两个功能,一是对前一层神经元传递的信号计算加权和,二是采用一个非线性激活函数输出信号。 前者用于模仿生物神经元之间传递信息的方式,后者用来提高神经网络的非线性计算能力。相比于人工神经元,脉冲神经元则从神经科学的角度出发,对真实的生物神经元进行建模。
Hodgkin-Huxley( HH)模型
HH模型是一组描述神经元细胞膜的电生理现象的非线性微分方程,直接反映了细胞膜上离子通道的开闭情况。
HH模型所对应的电路图如图1-1所示,其中 C 代表脂质双层(lipid bilayer) 的电容;RNa, RK, Rl分别代表钠离子通道、 钾离子通道与漏电通道的电阻(RNa, RK 上的斜箭头表明其为随时间变化的变量, 而 R l 则为一个常数); E l, E Na, E K 分别代表由于膜内外电离子浓度差别所导致的漏电平衡电压、钠离子平衡电压、钾离子平衡电压;膜电压V代表神经膜内外的电压差,可以通过HH模型的仿真来得到V随时间变化的曲线。
神经元的膜电压变化,如图1-2所示。
图中共有6个输入脉冲(垂直虚线所示),每个脉冲触发膜电压V的快速上升。如果输入脉冲之间的时间间隔较长(例如在1ms与22ms到达的2个脉冲之间,由于漏电通道的作用,没有新的输入脉冲),膜电压V就会随着时间逐渐降低至平衡电压El。如果有多个输入脉冲在短时间内连续到达(例如在45~50ms 之间的3 个脉冲),那么膜电压V会上升至发放阈值Vth(红色水平虚线所示) 而触发一个输出脉冲。之后V被重置为低于平衡电压El的Vreset,然后逐渐回升至平衡电压El。神经元的行为与输入的时间特性密切相关,一组脉冲如果在短时间内连续到达,可以触发神经元的脉冲;但是同样数量的一组脉冲如果在较长时间内分散到达,那么膜电压的漏电效应便不会产生脉冲。
HH模型精确地描绘出膜电压的生物特性,能够很好地与生物神经元的电生理实验结果相吻合,但是运算量较高,难以实现大规模神经网络的实时仿真。
Leaky Integrate and Fire(LIF)模型
为了解决HH模型运算量的问题,许多学者提出了一系列的简化模型。LIF模型将细胞膜的电特性看成电阻和电容的组合。
Izhikevich模型
HH模型精确度高,但运算量大。LIF模型运算量小,但牺牲了精确度。Izhikevich模型结合了两者的优势,生物精确性接近HH模型,运算复杂度接近LIF模型。
神经脉冲序列
在完成神经元的建模之后,需要对神经元传递的信息进行编码,一种主流的方法是通过神经元的放电频率来传递信息。在大脑皮层,连续动作电位的时序非常没有规律。一种观点认为这种无规律的内部脉冲间隔反映了一种随机过程,因此瞬时放电频率可以通过求解大量神经元的响应均值来估计。另一种观点认为这种无规律的现象可能是由突触前神经元活动的精确巧合所形成的,反映了一种高带宽的信息传递通路。本文主要基于第一种观点,用随机过程的方法生成脉冲序列。
瞬时放电频率
神经元的响应函数有一系列的脉冲函数所构成,如公式所示。
ρ(t)=∑ki=1δ(t−ti)
其中,k表示某个脉冲序列中的脉冲数, 表示每个脉冲到达的时间。由脉冲函数的性质可得,在时间间隔 内,脉冲数可通过公式来计算。
n=∫t2t1ρ(t)dt
因此瞬时放电频率可定义为神经元响应函数的期望,如公式所示。
r(t)=dn(t)dt=E(ρ(t))
根据概率学统计理论,以某一小段时间间隔内的神经元响应函数的均值来作为放电频率的估计值,如公式所示。
rM(t)=1M∑Mj=1ρj(t)
齐次泊松过程
假设每个脉冲的生成是相互独立的,并且瞬时放电频率是一个常数。设时间段 内含有k个脉冲,那么在时间段 内含有n个脉冲的概率可由公式表示。
P(n,t1,t2)=k!(k−n)!n!pnqk−n
其中,p=(t2−t1)T
, q=1−p。令k趋于无穷大,同时平均放电频率 保持不变,得到
P(n,t1,t2)=e−rΔtrΔtnn!
可以看出,上式与泊松分布的概率密度函数形式相同,进一步说明了脉冲发放过程可用泊松过程来模拟。
泊松脉冲序列的生成
相邻脉冲间的时间间隔固定
对于齐次泊松过程,在固定时间间隔δt
内,产生一个脉冲的概率为
P(n=1)≈rΔt
因此,以泊松模型产生神经脉冲序列的方法如下。选取一个固定的时间间隔,产生一个 区间的符合均匀分布的随机数x[i]。对于每一个间隔,如果x[i]≤rΔt
,则发放一个脉冲,否则不产生脉冲。在实践中,时间间隔必须足够小,产生的脉冲才会近似符合泊松分布。
相邻脉冲见的时间间隔不固定
根据上面的讨论,在间隔[t0,t0+τ]
内,发放的脉冲数为0的概率为
P(n=0)=e−rτ
因此,在时刻t0+τ
之前发放脉冲的概率可表示为
P(τ)=1−e−rτ
那么,相邻两个脉冲之间的等待时间的概率密度分布可表示为
p(τ)=d(1−e−rτ)dt=re−rτ
由此,产生神经脉冲序列的方法如下。当一个脉冲发放完成之后,从符合指数分布的随机数集合中随机选择一个数作为下一次发放脉冲需等待的时间。依次类推,便可产生符合泊松模型的神经脉冲序列。
扩展
非齐次泊松过程
相较于齐次泊松过程,非齐次泊松模型假设放电频率是时间的函数 ,更具有一般性。只有间隔 足够小,那么在这段时间内,放电频率仍可以视为常数。上述的理论依然有效。
不应期
根据神经科学理论,神经元在放电之后的短暂时间内存在不应期,即对输入信号不响应。为了在脉冲序列中模拟这个过程,在神经元放电之后的不应期内将瞬时放电频率置为0。在不应期结束之后,瞬时放电频率 在限定时间内逐渐回到原始值。
涌现
神经元在某个时刻会集中性的放电,称为涌现现象。为了模拟这种现象,设置每个时刻发放的泊松脉冲数不固定,可能包含0,1,或多个脉冲。每个时刻发放的脉冲数符合一定的概率分布。例如,设x是 上符合均匀分布的一个随机数,当x取不同值时,该时刻发放的脉冲数也不同。
脉冲神经网络的训练方法
人工神经网络主要基于误差反向传播(BP)原理进行有监督的训练,目前取得很好的效果。对于脉冲神经网络而言,神经信息以脉冲序列的方式存储,神经元内部状态变量及误差函数不再满足连续可微的性质,因此传统的人工神经网络学习算法不能直接应用于脉冲神经神经网络。目前,脉冲神经网络的学习算法主要有以下几类。
无监督学习算法
这类算法从生物可解释性出发,主要基于赫布法则 (Hebbian Rule)。Hebb在关于神经元间形成突触的理论中提到,当两个在位置上临近的神经元,在放电时间上也临近的话,他们之间很有可能形成突触。而突触前膜和突触后膜的一对神经元的放电活动(spike train)会进一步影响二者间突触的强度。这个假说也得到了实验验证。华裔科学家蒲慕明和毕国强在大树海马区神经元上,通过改变突触前膜神经元和突触后膜神经元放电的时间差,来检验二者之间突触强度的变化。实验结果如图3-1所示。
其中,EPSC表示突触强度。当EPSP(兴奋性脉冲)在spike之前产生,突触强度增强。当EPSP在spike之后产生,突触强度减弱。这个现象被称为脉冲序列相关的可塑性(Spike Timing Dependent Plasticity,STDP)。
基于该生物现象,提出了两种主流的无监督STDP学习算法。三相STDP
权值更新规则如公式所示。
其中, A+
和 A−表示学习率, 表示突触前脉冲传到突触后脉冲所需的时间。函数关系如图3-2所示。
二相STDP
权值更新规则如公式所示。
其中, τ+
和 τ−用来控制电压下降的速度,被视为时间常数。函数关系如图3-3所示。
有监督学习算法
有监督学习算法依据是否具有生物可解释性分为两大类,一种是基于突触可塑性的监督学习算法,另外两种分别是基于梯度下降规则的监督学习算法和基于脉冲序列卷积的监督学习算法。
基于突触可塑性的监督学习算法
监督Hebbian学习算法
通过“教师”信号使突触后神经元在目标时间内发放脉冲,“教师”信号可以表示为脉冲发放时间,也可以转换为神经元的突触电流形式。在每个学习周期,学习过程由3个脉冲决定,包括2个突触前脉冲和1个突触后脉冲。第一个突触前脉冲表示输入信号,第二个突触前脉冲表示突触后神经元的目标脉冲,权值的学习规则可表示为
Δw=η(tfo−tfd)
其中,η
表示学习率, tfo 和 tfd分别表示突触后神经元的实际和目标脉冲时间。
远程监督学习算法(ReSuMe)
远程监督方法结合STDP和anti-STDP两个过程,提出的突触权值随时间变化的学习规则为
其中,Si
和 So 分别表示突触前输入脉冲序列和突触后输出脉冲序列, Sd表示目标脉冲序列,对于兴奋性突触, ad参数 取正值,学习窗口 adi(s)表示为STDP规则;对于抑制性突触, ad参数 取负值, adi(s)表示为anti-STDP规则。
应用ReSuMe算法训练脉冲神经网路,突触权值的调整仅依赖于输入输出的脉冲序列和STDP机制,与神经元模型无关,因此该算法可适用于各种神经元模型。后来针对该算法的改进,使得ReSuMe算法可应用到多层前馈脉冲神经网络。
其他监督学习算法
结合BCM(Bienenstock-Cooper-Munro)学习规则和STDP机制,Wade等人提出了多层前馈脉冲神经网络的SWAT(Synaptic Weight Association Training)算法。研究者应用奖惩调制的STDP机制实现了脉冲神经网络脉冲序列模式的学习。此外,有学者从统计学的角度出发提出了一种脉冲神经网络的监督学习算法,学习规则可有一个类似于STDP的二阶学习窗口来描述,学习窗口的形状是通过优化过程的不同场景所加入的约束来影响的。
基于脉冲序列卷积的监督学习算法,通过对脉冲序列基于核函数的卷积计算,可将脉冲序列解释为特定的神经生理信号,比如神经元的突触后电位或脉冲发放的密度函数。通过脉冲序列的内积来定量地表示脉冲序列之间的相关性,评价实际脉冲序列与目标脉冲序列的误差。
基于梯度下降的监督学习算法。借鉴传统人工神经网络的误差反向传播算法,利用神经元目标输出与实际输出之间的误差,应用梯度下降法和delta更新规则更新权值。比如SpikiProp算法
ANN向SNN的转化
由于脉冲神经网络的训练算法不太成熟,一些研究者提出将传统的人工神经网络转化为脉冲神经网络,利用较为成熟的人工神经网络训练算法来训练基于人工神经网络的深度神经网络,然后通过触发频率编码将其转化为脉冲神经网络,从而避免了直接训练脉冲神经网络的困难。
CNN转化为SNN
对原始的CNN进行训练,将训练好的权值直接迁移到相似网络结构的SNN。
困难
CNN中的某一层神经元可能会输出负值,这些负数用SNN表示会比较困难。比如,CNN中的sigmoid函数的输出范围为-1到1,每个卷积层的加权和可能也为负值,在进行颜色空间变换时某个颜色通道也可能取到负值。虽然,SNN可以采用抑制神经元来表示负值,但会成倍地增加所需要的神经元数目,提高计算的复杂度。
对于SNN,CNN中神经元的偏置很难表示。
CNN中的Max-pooling层对应到SNN中,需要两层的脉冲神经网络。同样提高了SNN的复杂度。
裁剪
a. 保证CNN中的每个神经元的输出值都是正数。在图像预处理层之后,卷积层之前加入abs()绝对值函数,保证卷积层的输入值都是非负的。将神经元的激活函数替换为ReLU函数。一方面可以加快原始CNN的收敛速度,另一方面ReLU函数和LIF神经元的性质比较接近,可以最小化网络转化之后的精度损失。
b. 将CNN所有的偏置项都置为0。
c. 采用空间线性降采样层代替Max-pooling层。转化
a. SNN的网络结构与裁剪后的CNN相同,单纯地将CNN中的人工神经元替换为脉冲神经元
b. 在CNN的卷积层之前增加用于脉冲序列生成的一层网络,对输入的图像数据进行编码,转化为脉冲序列。
c. 变换决策方式。在某一段时间内,对全连接层输出的脉冲数进行统计,取脉冲数最多的类别作为最终的分类结果
d. 将裁减后的CNN训练得到的权值全部迁移到对应的SNN。
最终的转化结果如图4-1所示。改进
将ANN转化为SNN造成准确度下降的主要原因是转化后的SNN容易产生过激活(over-activate)和欠激活(under-activate)现象。
a. 神经元的输入脉冲不够,导致神经元的膜电压无法超过设定的阈值,造成放电频率过低。
b. 神经元的输入脉冲过多,导致ReLU模型在每个采样周期内输出多个脉冲。
c. 因为脉冲序列输入是以一定的概率选择的,会导致某些特征一直处于边缘地带或占据了过多的主导地位。
因此,需要对训练得到的权值进行归一化操作。一种是基于模型的归一化操作。考虑所有可能的输入值,选择最大的可能输入值作为归一化因子,这样就保证了最大的可能输入只能产生一个脉冲。另一种是基于数据的归一化操作。输入训练集,找出最大的输入值作为归一化因子。这两种方法原理相同,前者考虑的是最坏情况,后者考虑的是一般情况。参考文献
[1] Gerstner W, Kistler W M. Spiking neuron models: Single neurons, populations, plasticity[M]. Cambridge university press, 2002.
[2] Izhikevich E M. Simple model of spiking neurons[J]. IEEE Transactions on neural networks, 2003, 14(6): 1569-1572.
[3] Izhikevich E M. Hybrid spiking models[J]. Philosophical Transactions of the Royal Society of London A: Mathematical, Physical and Engineering Sciences, 2010, 368(1930): 5061-5070.
[4] Heeger D. Poisson model of spike generation[J]. Handout, University of Standford, 2000, 5: 1-13.
[5] Hebb D O. The organization of behavior: A neuropsychological theory[M]. Psychology Press, 2005.
[6] Caporale N, Dan Y. Spike timing-dependent plasticity: a Hebbian learning rule[J]. Annu. Rev. Neurosci., 2008, 31: 25-46.
[7] Ponulak F, Kasinski A. Supervised learning in spiking neural networks with ReSuMe: sequence learning, classification, and spike shifting[J]. Neural Computation, 2010, 22(2): 467-510.
[8] Wade J J, McDaid L J, Santos J A, et al. SWAT: a spiking neural network training algorithm for classification problems[J]. IEEE Transactions on neural networks, 2010, 21(11): 1817-1830.
[9] Rumelhart D E, Hinton G E, Williams R J. Learning representations by back-propagating errors[J]. Cognitive modeling, 1988, 5(3): 1.
[10] Bohte S M, Kok J N, La Poutre H. Error-backpropagation in temporally encoded networks of spiking neurons[J]. Neurocomputing, 2002, 48(1): 17-37.
[11] Ghosh-Dastidar S, Adeli H. A new supervised learning algorithm for multiple spiking neural networks with application in epilepsy and seizure detection[J]. Neural networks, 2009, 22(10): 1419-1431.
[12] Mohemmed A, Schliebs S, Matsuda S, et al. Span: Spike pattern association neuron for learning spatio-temporal spike patterns[J]. International Journal of Neural Systems, 2012, 22(04): 1250012.
[13] Mohemmed A, Schliebs S, Matsuda S, et al. Training spiking neural networks to associate spatio-temporal input–output spike patterns[J]. Neurocomputing, 2013, 107: 3-10.
[14] Yu Q, Tang H, Tan K C, et al. Precise-spike-driven synaptic plasticity: Learning hetero-association of spatiotemporal spike patterns[J]. Plos one, 2013, 8(11): e78318.
[15] Cao Y, Chen Y, Khosla D. Spiking deep convolutional neural networks for energy-efficient object recognition[J]. International Journal of Computer Vision, 2015, 113(1): 54-66.
[16] Diehl P U, Neil D, Binas J, et al. Fast-classifying, high-accuracy spiking deep networks through weight and threshold balancing[C]//2015 International Joint Conference on Neural Networks (IJCNN). IEEE, 2015: 1-8.
[17] O’Connor P, Neil D, Liu S C, et al. Real-time classification and sensor fusion with a spiking deep belief network[J]. Neuromorphic Engineering Systems and Applications, 2015: 61.
[18] Maass W, Natschläger T, Markram H. Real-time computing without stable states: A new framework for neural computation based on perturbations[J]. Neural computation, 2002, 14(11): 2531-2560.
[19] LIN X, WANG X, ZHANG N, et al. Supervised Learning Algorithms for Spiking Neural Networks: A Review[J]. Acta Electronica Sinica, 2015, 3: 024.
[20] 顾宗华, 潘纲. 神经拟态的类脑计算研究[J]. 中国计算机学会通讯, 2015, 11(10): 10-20. -
LIF神经元模型_spikingneuron_神经脉冲_neuron_脉冲神经元_LIF神经元matlab
2021-09-10 23:15:42LIF脉冲神经元的Matlab实现代码。 -
【脉冲神经元模型】Izhikevich神经元模型学习
2021-12-17 15:02:05神经元模型函数 v和u是无量纲的变量,并且a,b,c和d是无量纲的参数。v代表神经元的细胞膜的电势,u代表一个细胞膜回归变量,对k离子电流的活化作用和Na离子的失活作用,它对v提供了负反馈。 参数a描述回归变量u...论文 Simple Model of Spiking Neurons
下载地址 https://ieeexplore.ieee.org/document/1257420/citations#citations神经元模型函数
v和u是无量纲的变量,并且a,b,c和d是无量纲的参数。v代表神经元的细胞膜的电势,u代表一个细胞膜回归变量,对k离子电流的活化作用和Na离子的失活作用,它对v提供了负反馈。参数a描述回归变量u的时间范围。 更小的值导致更慢的恢复。一般a=0.02.
参数b描述描述回归变量u对细胞膜电势v的阈下波动的敏感度。一般b=0.2.
参数c描述了脉冲后细胞膜电势v被快速高阈值钾离子电导造成的重置电压值。一般为c=-65mV。
参数d描述了脉冲后被缓慢高阈值Na离子和K离子电导造成的回归变量u,一般为d=2.
import numpy as np import matplotlib.pyplot as plt a=0.02 b=0.2 c=-50 d = 2 V = -65 u = b*V VF = [] tau = 0.5 #print(len(tspan)) tspan = np.arange(0,1000) I = np.zeros(1000) V = np.zeros(1000) u = np.zeros(1000) Vo = np.zeros(1000) V[0] = -65 u[0] = b*V[0] VF=[-65] VT=30 for t in tspan: #时间维度0~1000 步长为1 if(t>VT): I[t]=10+(0.015*(t-VT)); #注射的电流变化,坡度电流 else: I[t]=10; print(I.size) for t in range(1,1000): Vo[t] = 0.04*V[t-1]*V[t-1]+5*V[t-1]+140 V[t] = V[t-1]+0.25*(0.04*V[t-1]*V[t-1]+5*V[t-1]+140-u[t-1]+I[t-1]) u[t] = u[t-1]+0.25*a*(b*V[t-1]-u[t-1]) if V[t]>30 : VF.append(30) #VF(end+1)=30; V[t]=c; u[t]=u[t]+d; else: VF.append(V[t]) #VF(end+1)=V; plt.plot(tspan,VF) plt.show() #print(VF)
程序运行结果
输入电压:
0.04vv+5*v+140这个部分被获得通过拟合大脑皮层神经元的脉冲初始化动态特性。
以下是它的图形
u细胞膜电势回归变量。
-
卷积神经网络中的脉冲神经元模型分析.pdf
2021-09-25 18:02:26卷积神经网络中的脉冲神经元模型分析.pdf -
论文研究-分段线性脉冲神经元模型的簇放电分析 .pdf
2019-09-10 22:01:51应用一种二维分段线性脉冲神经元模型的简单计算特性,对其簇放电特性进行了详细研究。发现该模型表现出强迫和内禀两类簇放电模式,并分析了内禀簇放电的产生机理及分岔现象。在实验中,应用该模型对一类具有簇放电... -
LIF神经元模型,lif神经元模型公式,matlab
2021-09-10 23:15:42LIF脉冲神经元的Matlab实现代码。 -
脉冲神经元的建模与分析
2019-05-25 13:45:48生物神经元结构及脉冲发放 生物神经系统中的信号是以细胞膜的电位变化来传导的。神经元细胞膜内外的电位有差别,外正内负,70-80mv。周围环境和内部变化可以引起膜电位的高低变化。但是这类变化当幅度不大时只是...一. 生物神经元结构及脉冲发放
生物神经系统中的信号是以细胞膜的电位变化来传导的。神经元细胞膜内外的电位有差别,外正内负,70-80mv。周围环境和内部变化可以引起膜电位的高低变化。但是这类变化当幅度不大时只是局部的,随着变化幅度的增加,达到一定阈值时,膜电位才会发生突然的变化,产生沿轴突传导的动作电位,也称为脉冲。这种神经元传递的脉冲持续时间为1-2ms,它可以跨越较远的距离进行传递而不致衰减。电位变化的幅度和传导速度都因神经轴突纤维的种类不同而不同。但对一种纤维来说,动作电位和传到速度是一定的,在全范围内,动作电位的产生与否取决于刺激强度是否大于阈值,这种现象称为“全或无”(all or none)定律。
如上图所示,神经元未受刺激时,细胞膜内外两侧存在电位差,称为静息电位(resting potential),一般在-80~-40mv。当神经元受到外界刺激时,突触后电位的总和超过某一阈值时,神经元产生一个不衰减的“全或无”式的沿神经纤维的神经活动,即动作电位或脉冲。动作电位的动态变化过程包括一个迅速的去极化正向电位变化和缓慢的复极化负向电位变化。动作电位的另一特征是电位的极性在峰电位顶端倒转,细胞内由静息时的负电位变为正电位,这一过程叫做超射。神经元动作电位的产生会导致局部的兴奋性发生一系列的变化。大致在动作电位的复极化阶段(repolarization phase),无论用任何强的刺激都不能再引起动作电位,这个阶段称为绝对不应期(absolute refraction period);在随后的短时间内,动作电位进入超极化阶段(hyperpolarization phase),用比原来强的刺激方能引起动作电位,而且反应幅度还会小一些,这个阶段称为相对不应期(relative refraction period),神经元对信号的传递方式在很大程度上与神经元的电学特性有关。生物神经系统在内外刺激作用下,使得神经元按照一定时间间隔产生一系列的动作电位,称为脉冲序列(spike train)。神经元发放的单个动作电位或者脉冲是信号传递的基本单元,因为所有脉冲的波形都是相似的,所以动作电位的形状不会携带任何信息,而传递有用神经信息的是脉冲的发放时间和频率。一个神经元就是一个整合器,随时都在接受成百上千的信息,随时都在对外接受的信息进行加工,使相同的信息加在一起,相反的信息互相抵消,然后决定是兴奋还是保持抑制,这就是神经元的整合(integration)作用。如下图,一个生物神经元通过其大量的树突接受其他突触前神经元发放的各不相同的脉冲序列作为输入,通过突触的作用和神经元胞体的信息整合,神经元发放一定时间间隔的脉冲序列,又通过轴突成为其他神经元的输入。
从突触前神经元传入的脉冲信号引起突触后神经元膜电位发生的变化成为突触后电位(postsynaptic potential),具有局部电位的性质。一个神经元通常有许多突触,其中有些是兴奋性的,有些是抑制性的。对于从突触前神经元传来的多个脉冲,由于突触类型的不同,突触后电位可分为兴奋性和抑制性两类。兴奋性突触使得突触后神经元的膜去极化,产生正的突触后电位,成为兴奋性突触后电位(excitatory postsynaptic potential,EPSP)。EPSP在传入脉冲到达突触后神经元0.3-0.5ms之后产生,它有一个较快的上升过程和缓慢的指数衰减过程,电位总共持续10-20ms。抑制性突触使突触后神经元的膜超极化,产生负的突触后电位,称为抑制性突触后电位(inhibitory postsynaptic potential,IPSP),IPSP到达峰值时间和EPSP相似。如果突触前神经元快速发放一系列动作电位,而突触后电位的消退需要一定时间,则相继产生的突触后电位会随时间产生累计效应。而一个神经元接受其他很多突触前神经元同时传来的脉冲所产生的突触后电位的总体效应称为空间累加。时间累加和空间累加都会对突触后电位产生影响。生物神经元的动态特性是非常复杂的,从神经元传递信息的功能和特点归纳出以下几点:
- 突触后电位有兴奋性和抑制性两种类型;
- 突触在传递信息的过程中有一定的延迟时间;
- 神经元信息的整合有时间累加和空间累加;
- 具有数/模互相转换功能,类似数字信号的突触前神经元动作电位,通过突触传递过程,转换成类似于模拟信号的突触后神经元的突触后电位,而突触后神经元对这些模拟信号进行快速整合,一旦超过阈值就形成发放,动作电位还是数字的;
- 神经元脉冲的发放存在不应期;
- 突触传递信息的强度随时间是可变的,包括突触传递增强和突触传递减弱,突触可塑性是学习和记忆的基础。
二. 脉冲神经元的建模方法
1. 神经元的房室建模方法
当前对神经元数值模拟的研究主要是从细胞膜属性和几何形态这两个方面进行,其理论基础是Hodgkin-Huxley的神经元模型和Rall的神经元被动电缆理论(passive cable theory),被动电缆的空间拓扑结构可以采用典型的房室建模方法(compartmental modeling approach)进行离散描述。房室模型是利用有限差分法将空间上连续的单个神经元分割成很短的区域,并假设其在区域内是等电位的。每个离散的区域电位被视为一个单独的房室,房室之间相互连接后整体描述神经元的时空变化。
神经元的房室模型可用下图所示的等效电路来模拟,其中 V k V_{k} Vk表示第k个房室的膜电位,此房室可以用来表示细胞体、树突或轴突, V k − 1 和 V k + 1 V_{k-1}和V_{k+1} Vk−1和Vk+1分别表示相邻两个房室的膜电位; R k R_{k} Rk表示第k个房室与第k-1个房室的轴电阻, R k + 1 R_{k+1} Rk+1表示第k个房室与第k+1个房室的轴电阻。
根据神经元房室的等效电路,单个房室的膜电位变化可表示为:
C m d V k d t = − g L ( V k − E L ) − ∑ c [ g c ˉ ( V k − E c ) ] + V k − 1 − V k R k + V k + 1 − V k R k + 1 + I C_{m}\frac{dV_{k}}{dt}=-g_{L}(V_{k}-E_{L})-\sum_{c}[\bar{g_{c}}(V_{k}-E_{c})]+\frac{V_{k-1}-V_{k}}{R_{k}}+\frac{V_{k+1}-V_{k}}{R_{k+1}}+I CmdtdVk=−gL(Vk−EL)−∑c[gcˉ(Vk−Ec)]+RkVk−1−Vk+Rk+1Vk+1−Vk+I
其总共包含4类电流,即神经元的漏电流 I L = g L ( V k − E L ) I_{L}=g_{L}(V_{k}-E_{L}) IL=gL(Vk−EL),房室上所有的钠离子通道、钾离子通道等门控电流之和 I c = ∑ c [ g c ˉ ( V k − E c ) ] I_{c}=\sum_{c}[\bar{g_{c}}(V_{k}-E_{c})] Ic=∑c[gcˉ(Vk−Ec)],相邻房室的外向整合延迟电流 I k = V k − 1 − V k R k + V k + 1 − V k R k + 1 I_{k}=\frac{V_{k-1}-V_{k}}{R_{k}}+\frac{V_{k+1}-V_{k}}{R_{k+1}} Ik=RkVk−1−Vk+Rk+1Vk+1−Vk,I表示外部注入电流。2. 脉冲神经元的建模层次
对于脉冲神经元模型的建立,从平衡神经元的功能特性和计算效率的角度出发,将脉冲神经元的数学建模分为三个层次,包括详细房室模型(detailed compartmental model)、缩减房室模型(reduced compartmental model)和单房室模型(single compartmental model)。
2.1 详细房室模型真实的神经元具有在形态和生理两方面都极为复杂的树突树和轴突及其分支,脉冲神经元的详细房室模型依据树突和轴突的空间几何形状特征进行建模。根据Rall的被动电缆理论和房室建模方法,可建立定量研究树突整合功能的理论框架。数学上房室模型是对非线性的电缆方程的某种有限差分逼近,一般用常微分方程来取代连续电缆方程。对于每一时间间隔,运用数值方法来求解由这些方程构成的高维系统。
2.2 缩减房室模型
尽管详细房室模型很好地近似了神经元的空间几何形态,并表现了丰富的动力学特性,但其存在以下缺点:①这种高维模型很难从数学分析的角度研究神经元的突现特征;②由于其计算的复杂性,很难进行大规模网络的模拟研究。
缩减房室模型在神经元的功能特性和计算效率之间进行了折衷,仅用一个或几个房室来表达神经脉冲在树突与胞体之间的交互。
2.3 单房室模型
单房室模型忽略了神经元的形态特征,将神经元抽象成一个点,仅考虑各种离子电流对神经元阈下行为和脉冲生成的影响。最为典型的单房室脉冲神经元模型就是描述神经元膜电位和离子电导变化关系的 Hodgkin-Huxley模型。
三. 单房室脉冲神经元模型
基于对生物神经元不同的认知和计算功能的需要,在过去的几十年涌现了很多单房室脉冲神经元的计算模型,根据神经元的构造方法的差异将这些模型分为四类:
①生物可解释性的生理模型;②脉冲生成机制的非线性模型;③固定阈值的脉冲发放模型;④分段线性化的解析模型。1. 生物可解释性的生理模型
生物神经元的离子是传递电信号的重要媒介,电信号的产生是由于细胞膜两侧的离子发生流动而形成了浓度差,从而导致了细胞膜内外电位差的变化。
1.1 Hodgkin-Huxley神经元模型
Hodgkin等人通过大量实验和分析,确认神经轴突膜上有两种主要的离子通道——钠离子通道和钾离子通道,这两个离子通道的电导不是恒定的,它们强烈依赖于膜电位。这时由于两通道中存在着几个由膜中有机分子所控制的门,门打开或关闭的概率与膜电位有关。此外,膜中还有次要的其他离子的通道,形成漏电流。等效电路如下图:
细胞膜上流过的电流主要取决于离子通道的阻抗以及细胞膜上的电容,总的离子电流主要由 N a + 、 K + 和 C l + Na^{+}、K^{+}和Cl^{+} Na+、K+和Cl+组成。 I N a I_{Na} INa表示钠离子电流, I K I_{K} IK表示钾离子电流, I L I_{L} IL表示漏电流,I表示突触输入或外部注入电流。V表示膜电位,方向由膜的外侧指向内测,即外正内负。根据实验数据分析可知, I N a 、 I K 、 I L I_{Na}、I_{K}、I_{L} INa、IK、IL之间没有耦合关系,Hodgkin-Huxley神经元模型由四个非线性微分方程给出,可以表示为:
C m d V d t = − g L ( V − E L ) − g N a ˉ m 3 h ( V − E N a ) + − g K ˉ n 4 ( V − E K ) + I C_{m}\frac{dV}{dt}=-g_{L}(V-E_{L})-\bar{g_{Na}}m^{3}h(V-E_{Na})+-\bar{g_{K}}n^{4}(V-E_{K})+I CmdtdV=−gL(V−EL)−gNaˉm3h(V−ENa)+−gKˉn4(V−EK)+I
d m d t = α m ( V ) ( 1 − m ) − β m ( V ) m \frac{dm}{dt}=\alpha _{m}(V)(1-m)-\beta _{m}(V)m dtdm=αm(V)(1−m)−βm(V)m
d h d t = α h ( V ) ( 1 − h ) − β h ( V ) h \frac{dh}{dt}=\alpha _{h}(V)(1-h)-\beta _{h}(V)h dtdh=αh(V)(1−h)−βh(V)h
d n d t = α n ( V ) ( 1 − n ) − β n ( V ) n \frac{dn}{dt}=\alpha _{n}(V)(1-n)-\beta _{n}(V)n dtdn=αn(V)(1−n)−βn(V)n式中, C m C_{m} Cm表示膜电容; g L g_{L} gL代表漏电导; E L E_{L} EL表示漏电逆转电位,也称静息电位; g N a ˉ \bar{g_{Na}} gNaˉ和 g K ˉ \bar{g_{K}} gKˉ分别表示 N a + Na^{+} Na+和 K + K^{+} K+通道最大电导值; E N a E_{Na} ENa和 E K E_{K} EK分别表示对应的逆转电位。 N a + Na^{+} Na+电流由三个活化门m和一个去活化门h控制, K + K^{+} K+电流由四个活化门n控制 ,这些门控变量通常随膜电位变化而变化,表达式如下:
α m ( V ) = 0.1 25 − V e x p [ ( 25 − V ) / 10 ] − 1 \alpha _{m}(V)=0.1\frac{25-V}{exp[(25-V)/10]-1} αm(V)=0.1exp[(25−V)/10]−125−V
β m ( V ) = 4 e x p ( − V 18 ) \beta _{m}(V)=4exp(-\frac{V}{18}) βm(V)=4exp(−18V)
α h ( V ) = 0.07 e x p ( − V 20 ) \alpha _{h}(V)=0.07exp(-\frac{V}{20}) αh(V)=0.07exp(−20V)
β h ( V ) = 1 e x p [ ( 30 − V ) / 10 ] + 1 \beta _{h}(V)=\frac{1}{exp[(30-V)/10]+1} βh(V)=exp[(30−V)/10]+11
α n ( V ) = 0.01 10 − V e x p [ ( 10 − V ) / 10 ] − 1 \alpha _{n}(V)=0.01\frac{10-V}{exp[(10-V)/10]-1} αn(V)=0.01exp[(10−V)/10]−110−V
β n ( V ) = 0.125 e x p ( − V 80 ) \beta _{n}(V)=0.125exp(-\frac{V}{80}) βn(V)=0.125exp(−80V)在Hodgkin-Huxley神经元模型中,通常膜电容的取值为 C m = 1 μ F / c m 2 C_{m}=1\mu F/cm^{2} Cm=1μF/cm2,膜电位V的单位为mV,时间的单位为ms。各种离子对应的逆转电位分别为: E L = − 10.6 m V , E N a = 115 m V , E K = − 12 m V E_{L}=-10.6mV,E_{Na}=115mV,E_{K}=-12mV EL=−10.6mV,ENa=115mV,EK=−12mV。各种离子的最大电导值分别为: g L = 0.3 m S / c m 2 , g N a ˉ = 120 m S / c m 2 , g K ˉ = 36 m S / c m 2 g_{L}=0.3mS/cm^{2},\bar{g_{Na}}=120mS/cm^{2},\bar{g_{K}}=36mS/cm^{2} gL=0.3mS/cm2,gNaˉ=120mS/cm2,gKˉ=36mS/cm2。外部注入电流的单位为 μ A / c m 2 \mu A/cm^{2} μA/cm2。
1.2 Morris-Lecar神经元模型
1981年,Morris等通过对藤壶神经细胞膜电位的测量发现:当电流注入肌肉纤维时,可测的藤壶肌肉纤维震荡的电压,电压震荡现象与钾离子通道和钙离子通道驱动的电压有关。它们在实验研究的基础上给出了如图所示的等效电路来模拟这类神经细胞的膜系统,其中 I C a I_{Ca} ICa表示钙离子电流, I K I_{K} IK表示钾离子电流, I L I_{L} IL表示漏电流
,I表示突触输入或外部注入电流。V表示膜电位,方向是由膜的外侧指向内侧,即外正内负。Morris-Lecar神经元模型由两个非线性微分方程组成,可以表示为:
C m d V d t = − g L ( V − E L ) − g C a ˉ m ∞ ( V ) ( V − E C a ) + − g K ˉ n ( V − E K ) + I C_{m}\frac{dV}{dt}=-g_{L}(V-E_{L})-\bar{g_{Ca}}m_{\infty }(V)(V-E_{Ca})+-\bar{g_{K}}n(V-E_{K})+I CmdtdV=−gL(V−EL)−gCaˉm∞(V)(V−ECa)+−gKˉn(V−EK)+I
d n d t = λ ( V ) [ n ∞ ( V ) − n ] \frac{dn}{dt}=\lambda(V)[n_{\infty}(V)-n] dtdn=λ(V)[n∞(V)−n]
式子中,随膜电位变化的控制变量表示为:m ∞ ( V ) = 0.5 [ 1 + t a n h ( V − V 1 V 2 ) ] m_{\infty}(V)=0.5[1+tanh(\frac{V-V_{1}}{V_{2}})] m∞(V)=0.5[1+tanh(V2V−V1)]
n ∞ ( V ) = 0.5 [ 1 + t a n h ( V − V 3 V 4 ) ] n_{\infty}(V)=0.5[1+tanh(\frac{V-V_{3}}{V_{4}})] n∞(V)=0.5[1+tanh(V4V−V3)]
λ V = λ ˉ c o s h ( V − V 3 2 V 4 ) ] \lambda_{V}=\bar{\lambda}cosh(\frac{V-V_{3}}{2V_{4}})] λV=λˉcosh(2V4V−V3)]Mossis-Lecar神经元模型中参数取值为 C m = 20 μ F / c m 2 , E L = − 50 m V , E C a = 100 m V , E K = − 70 m V , g L = 2 m S / c m 2 , g C a ˉ = 4 m S / c m 2 , g K ˉ = 8 m S / c m 2 , V 1 = 0 m V , V 2 = 15 m V , V 3 = 10 m V , V 4 = 10 m V , λ ˉ = 0.1 s − 1 C_{m}=20 \mu F/cm^{2},E_{L}=-50mV,E_{Ca}=100mV,E_{K}=-70mV,g_{L}=2mS/cm^{2},\bar{g_{Ca}}=4mS/cm^{2},\bar{g_{K}}=8mS/cm^{2},V_{1}=0mV,V_{2}=15mV,V_{3}=10mV,V_{4}=10mV,\bar{\lambda}=0.1s^{-1} Cm=20μF/cm2,EL=−50mV,ECa=100mV,EK=−70mV,gL=2mS/cm2,gCaˉ=4mS/cm2,gKˉ=8mS/cm2,V1=0mV,V2=15mV,V3=10mV,V4=10mV,λˉ=0.1s−1,外部注入电流的单位为 μ A / c m 2 \mu A/cm^{2} μA/cm2。
2. 脉冲生成机制的非线性模型
从非线性动力学系统的角度来看,神经元产生兴奋性的原因是由于存在从静息状态到持续脉冲的转变,即分岔(bifurcation)机制所致。FitzHugh和Nagumo等最早采用相平面和零线研究了Hodgkin-Huxley神经元模型,并提出了一个更简单的模型,这个模型用一条倒N型的三次曲线代表膜电位的零线,用一条直线代表变量的零线,大大简化了的二维模型可以很好的描述Hodgkin-Huxley系统的特性,这就是著名的FitzHugh-Nagumo神经元模型。Hindmarsh-Rose神经元模型可以表现出非常复杂的神经计算特性。
虽然这类模型没有离子通道机理,模型中的参数也不具有实际的生物学意义,但从动力学角度来看,它们具有和Hodgkin-Huxley神经元模型相似的分岔机制和动力学特性,从而表现出类似生物神经元的脉冲发放特性。这类模型比较简单,可实现大规模脉冲神经网络的模拟,但它仍然是非线性的微分方程,一般无法得到神经元状态变量的解析式,只能进行近似的数值模拟。
2.1 FitzHugh-Nagumo神经元模型
krinski等发现Hodgkin-Huxley模型中的门控变量n与h之和可以近似为一个常数,这使得四维的Hodgkin-Huxley神经元模型简化为二维模型成为可能。FitzHugh-Nagumo神经元模型把神经元的行为通过Duffing-van der Pol振子来进行描述,虽然FitzHugh-Nagumo神经元模型存在多种形式的表述,但是其本质描述了神经元的耦合振荡机制。该模型可表示为:
d V d t = V ( V − α ) ( 1 − V ) − U + I \frac{dV}{dt}=V(V-\alpha)(1-V)-U+I dtdV=V(V−α)(1−V)−U+I
d U d t = ε ( V − γ U ) \frac{dU}{dt}=\varepsilon (V-\gamma U) dtdU=ε(V−γU)式子中,V表示快变量(膜电位);U表示慢变量(恢复变量);变量I代表突触电流或外部注入刺激电流的强度(无量纲); α 、 ε 、 γ \alpha 、\varepsilon 、\gamma α、ε、γ都是常数, 0 < α < 1 、 ε < < 1 0<\alpha<1 、\varepsilon <<1 0<α<1、ε<<1。通过数值计算发现,FitzHugh-Nagumo神经元模型可以很好的模拟大脑神经元的脉冲发放情况。
2.2 Hindmarsh-Rose神经元模型
Rose等提出了几种不同的神经元模型,其中最流行的是一种关于神经脉冲簇放电的模型,可由下面的三维非线性微分方程描述:
d V d t = U + ϕ ( V ) − W + I \frac{dV}{dt}=U+\phi (V)-W+I dtdV=U+ϕ(V)−W+I
d U d t = ψ ( V ) − U \frac{dU}{dt}=\psi (V)-U dtdU=ψ(V)−U
d W d t = ε [ s ( V − V R ) − W ] \frac{dW}{dt}=\varepsilon[s(V-V_{R})-W] dtdW=ε[s(V−VR)−W]式子中, ϕ ( V ) 和 ψ ( V ) \phi (V)和\psi (V) ϕ(V)和ψ(V)是根据经验所推导出来的函数,可表示为:
ϕ ( V ) = − a V 3 + b V 2 \phi (V)=-aV^{3}+bV^{2} ϕ(V)=−aV3+bV2
ψ ( V ) = c − d V 2 \psi(V)=c-dV^{2} ψ(V)=c−dV2Hindmarsh-Rose神经元模型中,I表示所施加的电流, ε \varepsilon ε表示当前缓慢适应的时间尺度,s表示缓慢动态性的影响尺度,这决定了神经元的发放方式,即当有一个连续的外部输入时神经元是以簇的形式发放还是以其他形式发放。
3. 固定阈值的脉冲发放模型
具有固定阈值的脉冲发放神经元模型具有更高的抽象层次,这类模型依赖于所有突触前神经元输入脉冲的积累,当膜电位高达某一个固定阈值时,神经元发放脉冲。这类神经元模型的典型代表就是Integrate-and-Fire和Resonate-and-Fire神经元模型,它们分别表示累积器(integrator)和共振器(resonator),前者用一维微分方程表示;后者用二维微分方程表示。这些模型具有一些共同的特征:都是用线性微分方程来描述神经元,都具有固定的发放阈值和复位机制,都在静息状态具有唯一的稳定平衡点。不同之处在于Integrate-and-Fire神经元模型的平衡点是结点,而Resonate-and-Fire神经元模型的平衡点是焦点。
实质上,具有固定阈值的脉冲发放模型不能算作真正的脉冲神经元模型,因为它们不具备脉冲生成机制,当膜电位达到阈值时,神经元生成的脉冲是假象的,因此这类模型具有有限的神经计算特性。尽管存在很多缺点,但这类模型,特别是Integrate-and-Fire神经模型,长期以来在神经计算领域得到了广泛应用,主要原因在于它是简单的线性模型,不仅可以通过膜电位的解析式对神经元的性质进行定量研究,而且可以应用事件驱动模拟策略实现脉冲神经网络的精确模拟。
3.1 Integrate-and-Fire神经元模型
1907年,Lapicque用电子线路模拟神经元的神经生理现象,构造了最早的神经元模型,当时,人们对神经元动作电位形成机制的认识还不清楚。最简单的是漏电Integrate-and-Fire神经元模型,仅考虑Hodgkin-Huxley神经元模型中的漏电流。漏电Integrate-and-Fire神经元模型的等效电路如下图所示,神经元的内部电路中并联着一个膜电容 C m C_{m} Cm和一个膜电阻 R m R_{m} Rm。当突触前神经元产生一个脉冲时,会在突触后神经元相连接的突触上产生相应的电流I。该电流分为两部分,一部分用来给膜电容 C m C_{m} Cm充电,另一部分从膜电阻 R m R_{m} Rm流走。一旦在神经元膜电容上的电压超过发放阈值,神经元会发放一个脉冲。
漏电Integrate-and-Fire模型非常直观地描述了神经元的膜电位V和其输入电流I之间的关系,其膜电位V的变化过程由下面一阶微分方程描述:I = V − V r e s t R m + C m d V d t I=\frac{V-V_{rest}}{R_{m}}+C_{m}\frac{dV}{dt} I=RmV−Vrest+CmdtdV
变形可得: τ m d V d t = − ( V − V r e s t ) + R m I \tau _{m}\frac{dV}{dt}=-(V-V_{rest})+R_{m}I τmdtdV=−(V−Vrest)+RmI上式中, τ m = R m C m \tau _{m}=R_{m}C_{m} τm=RmCm,称为膜时间常量;I为各个突触前神经元放电行为所产生的突触电流之和。当膜电位V大于等于阈值电位 V t h r e s h V_{thresh} Vthresh时,神经元立即产生兴奋,即发放脉冲,伴随动作电位的传导,同时将膜电位复位到 V r e s e t V_{reset} Vreset,并在绝对不应期 t r e f t_{ref} tref之内保持不变;当膜电位V小于阈值电位 V t h r e s h V_{thresh} Vthresh时,神经元不会产生动作电位,且膜电位将按膜时间常量 τ m \tau _{m} τm衰减直到静息电位 V r e s t V_{rest} Vrest。
漏电Integrate-and-Fire神经元模型表现为第1类兴奋性,脉冲可以以任意低的频率发放,并且频率随着突触输入电流I的增大而增大。
3.2 Resonate-and-Fire神经元模型
Resonate-and-Fire神经元模型是二维动力学系统,可表示为如下所示的线性微分方程组:
d x d t = b x − w y \frac{dx}{dt}=bx-wy dtdx=bx−wy
d y d t = w x + b y \frac{dy}{dt}=wx+by dtdy=wx+by类似于Integrate-and-Fire神经元模型,上式在复平面的坐标可表示为:
d Z d t = ( b + i w ) Z + I \frac{dZ}{dt}=(b+iw)Z+I dtdZ=(b+iw)Z+I式子中,复数变量 Z = x + i y ∈ C Z=x+iy \in C Z=x+iy∈C,描述神经元的阻尼振荡特性,其中实值部分x表述电流的变量,描述电压门控(voltage-gated)或突触输入电流的动态特性,虚值部分y表示电压的变量; b + i w ∈ C b+iw \in C b+iw∈C,表示神经元在静息状态的复特征值,b<0和w>0分别表示神经元模型的参数。当神经元的膜电位到达阈值电位 V t h r e s h V_{thresh} Vthresh时,神经元发放一个脉冲,并将Z复位到 Z r e s e t Z_{reset} Zreset。
4. 分段线性化的解析模型
如果要让构建的脉冲神经元模型即能表达丰富的神经计算特性,又可通过解析方法对神经元进行定量的分析,可以采用分段线性这种最简单的非线性动力学系统来实现。具体模型在这里不做陈述,有兴趣的可以自己查查。
来自脉冲神经网络原理与应用一书
-
脉冲神经网络 神经元模型-IF模型(2)
2020-05-27 11:34:36脉冲神经网络 神经元模型-IF模型(2) 一 原理 具有固定阈值的脉冲发放神经元模型具有更高抽象层次,这类模型依赖于所有突触前神经元输入脉冲的积累,当膜电位到达一个固定的阈值时,神经元发放脉冲。 IF模型仅考虑... -
脉冲神经网络:模型、学习算法与应用
2021-01-13 00:05:15首先介绍各类常用的脉冲神经元模型以及前馈和循环型脉冲神经网络结构;然后介绍脉冲神经网络的时间编码方式,在此基础上,系统地介绍脉冲神经网络的学习算法,包括无监督学习和监督学习算法,其中监督学习算法按照梯度... -
模拟初级视皮层脉冲神经元的动作识别系统
2021-02-21 04:26:22其次, 采用 Integrate-and-fire 脉冲神经元模型模拟初级视觉皮层 的神经元, 将获取的运动信息转换为神经元响应的脉冲链. 最后, 根据脉冲链平均发放率的特性提取运动特征向量, 采用支持 向量机 (Support ... -
【matlab】 Izhikevich模型脉冲神经网络神经元实现
2020-12-17 20:32:19基于尖峰神经元模型的机器人学习方法研究 [D]; 南京理工大学, 2014. 1.1 模型建立 1.1.1 脉冲神经网络神经元 为了去了解大脑是如何工作的,我们需要把结合实验学习动物和人类神经系统和大规模脑模型的数值研究结合... -
snntorch:P2—【LIF神经元模型】手撕公式、代码实现与演示
2021-11-19 23:04:51LIF神经元模型是现阶段脉冲神经网络的搭建与训练过程中使用最多的神经元模型,既保留了HH模型中关于生物神经元的核心思想,具有一定的仿生型,也兼顾了普通人工神经元计算效率高的特点,所以本文就LIF神经元展开说明... -
脉冲神经网络 神经元模型-HH模型(1)
2020-05-26 16:46:04脉冲神经网络 神经元模型-HH模型Hodgkin Huxley 神经元模型及实现一 原理1. 电路图2. 常微分方程二 代码实现-python版本1. 模拟离子通道2. 模拟膜电位三 参考 Hodgkin Huxley 神经元模型及实现 最近在接触脉冲神经... -
脉冲神经网络Python可运行实例
2019-04-03 16:12:39脉冲神经网络亲测运行实例,Python版本的,正确不用调,所用的神经元模型为IF模型,进行STDP无监督学习,数据集为MNIST,可供学习。 -
基于栅格元的脉冲耦合神经网络模型.pdf
2021-09-26 09:31:18基于栅格元的脉冲耦合神经网络模型.pdf -
Spiking神经元输入脉冲扰动敏感性研究
2021-02-07 13:50:52脉冲神经元的时间特性导致了其工作机制较为复杂,而spiking神经元的敏感性反映了当神经元输入发生扰动时输出的spike的变化情况,可以作为研究神经元内部工作机制的工具。不同于传统的神经网络,spiking神经元敏感性... -
脉冲神经网络的一个训练方法
2019-03-06 16:05:32脉冲神经网络的一个训练方法,基于PYTHON3写的,可以直接运行,神经元模型采用简化的脉冲响应模型。采用ASA训练算法 -
基于Simulink平台的脉冲神经网络前向传播模型的建立与仿真
2021-03-17 02:21:59基于Simulink平台的脉冲神经网络前向传播模型的建立与仿真 -
脉冲神经网络-基于IAF神经元的手写数字识别
2021-10-28 21:18:511. 脉冲神经网络的实现方法 随着类脑技术(Neuromorphic Technology)的火热, 投入脉冲神经领域的工程师和学术届的科研人员越来越多, 喜大普奔~~ 为了方便脉冲神经网络的研发和工程化, 越来越多的优秀的脉冲神经... -
LIF模型简介
2021-10-12 14:21:52脉冲神经网络中LIF模型简介 文章借鉴电子书Neuronal Dynamics LIF模型 Integrate-And-Fire Models 神经元动力学:被认为是一个求和(“整合”)过程,我们用一个正式的阈值ϑϑϑ来描述脉冲起始的临界电压。如果... -
HH神经元模型
2021-11-20 11:13:521、HH神经元的电路图。 电池表示特定离子的平衡电势,电阻器反映通道对特定离子的渗透性。 电容代表的就是细胞膜,存储电荷,起到了电容的作用。 在这个公式中IL代表的是泄露电流,图中它的电路中就是一个电阻R和... -
HH神经元模型 -
2020-12-23 14:37:221HH神经元模型摘要:运用Fortran等软件凭借计算物理的知识进行HH神经系统模型模拟,进而了解神经细胞的一些运行机制及其特性。关键词:HH神经系统模型;电流刺激;频率;离子个数;应激反应1. 引言1952年Hodgkin和... -
脉冲神经网络1:IZH模型介绍
2019-07-14 21:13:53参考论文:Izhikevich, E. M . Which Model to Use for Cortical Spiking Neurons?...本文将回顾了生物脉冲神经元的20个最突出的特征。本节的目的是说明单个神经元响应简单直流电流脉冲的的脉冲行... -
脉冲神经网络的模拟策略
2019-05-27 10:30:28一. 时钟驱动模拟策略 1. 神经元模型的数值计算方法 一般来说,大多数生物系统建立的模型是微分方程形式,并且这些方程不能简单地通过...对于脉冲神经元模型的数值计算,一般采用欧拉或龙格-库塔等数值方法进行近... -
SNN脉冲神经网络的Izhikevich模型的仿真程序.rar
2022-04-06 19:30:14SNN脉冲神经网络的Izhikevich模型的MATLAB仿真程序,Izhikevich模型的仿真程序,运行实现神经元放电波形和放电分布散点图 -
2021-01-21:脉冲神经网络学习日志
2021-01-21 10:40:15参考资料: 类脑运算--脉冲神经网络(Spiking Neural Network)叙述:... ... 目录 一些基础知识 ...在SNN中, 信息是如何用spike来表达的?...脉冲神经元模型 1.IF neuron(int -
3.2神经元模型
2020-05-09 21:00:30神经元模型生物神经元的结构生物神经元的功能生物神经元信息处理机制M一P模型激活函数 生物神经元的结构 神经元是大脑组织的基本单元,是神经系统结构与功能的单位。不同的神经元形态不同,功能也有差异,其共性的...