CN114692857A - 一种基于事件驱动的脉冲神经网络集群计算框架 - Google Patents
一种基于事件驱动的脉冲神经网络集群计算框架 Download PDFInfo
- Publication number
- CN114692857A CN114692857A CN202210333197.5A CN202210333197A CN114692857A CN 114692857 A CN114692857 A CN 114692857A CN 202210333197 A CN202210333197 A CN 202210333197A CN 114692857 A CN114692857 A CN 114692857A
- Authority
- CN
- China
- Prior art keywords
- pulse
- event
- neuron
- cluster
- updating
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000004364 calculation method Methods 0.000 title claims abstract description 34
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 19
- 210000002569 neuron Anatomy 0.000 claims abstract description 54
- 238000012216 screening Methods 0.000 claims abstract description 14
- 239000011159 matrix material Substances 0.000 claims abstract description 8
- 238000000034 method Methods 0.000 claims abstract description 7
- 238000012545 processing Methods 0.000 claims abstract description 7
- 230000000946 synaptic effect Effects 0.000 claims abstract description 7
- 239000012528 membrane Substances 0.000 claims description 18
- 210000000225 synapse Anatomy 0.000 claims description 14
- 230000006870 function Effects 0.000 claims description 6
- 238000012986 modification Methods 0.000 claims description 4
- 230000004048 modification Effects 0.000 claims description 4
- 238000012163 sequencing technique Methods 0.000 claims description 2
- 230000003313 weakening effect Effects 0.000 claims description 2
- 238000013507 mapping Methods 0.000 claims 2
- 238000004088 simulation Methods 0.000 abstract description 11
- 230000001133 acceleration Effects 0.000 abstract 1
- 239000000470 constituent Substances 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 7
- 230000006399 behavior Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000001537 neural effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 239000008358 core component Substances 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000023886 lateral inhibition Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 235000001968 nicotinic acid Nutrition 0.000 description 1
- 238000012421 spiking Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/161—Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Biophysics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Computer Hardware Design (AREA)
- Neurology (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于事件驱动的脉冲神经网络集群计算框架,包括:以事件驱动神经元为基本组成单元的集群结构;集群之间的突触连接层,内部具有神经元连接权重的矩阵;维护候选脉冲时序的优先级队列;负责分发脉冲的网络调度器。其中神经元集群在更新时进行批处理来避免重复计算,根据预筛选条件避免不必要的峰值计算。该框架基于事件驱动方法仿真,仿真精度不受时间步大小的限制,能够充分利用脉冲事件的时空稀疏性降低计算量。在事件驱动的更新步骤中复用衰减系数和预筛选进行加速,有效地降低了单次更新的计算量,从而提高了整体的仿真速度。
Description
技术领域
本发明属于脉冲神经网络仿真和高性能计算领域,具体涉及一种基于事件驱动的脉冲神经网络集群计算框架。
背景技术
脉冲神经网络(SNN)被誉为第三代人工神经网络,具有低功耗的应用潜力和更好的生物可解释性。脉冲神经网络在语音识别、图像分类、仿生领域有着重要的应用。同时,SNN天然支持时域信息处理,无需考虑离散数据加窗截断和重复计算问题,处理时域信号比传统神经网络的计算效率更高。
但当前的脉冲神经网络仿真计算存在以下问题:
1.多数SNN仿真框架采用时钟驱动方法进行更新,模型兼容性强,但存在大量无效计算,仿真精度受时间步限制,且存在侧向抑制失效的情况。
2.事件驱动仿真能充分利用脉冲事件的时空稀疏性,多用于硬件实现如FPGA和专业的神经拟态芯片。但FPGA片上资源较少,更适合原型验证;专用的神经拟态芯片研发成本和流片成本极高,且不便于增加新功能。
3.事件驱动的软件仿真中单次更新步骤较为复杂,分别是更新状态、处理脉冲事件和预估自身是否会产生新事件。虽然事件驱动的更新次数少,但单次计算的耗时较长,并未充分发挥事件驱动计算的优势。
上述问题导致现有仿真平台或框架运算效率低、对计算资源利用不充分,尤其是难以将脉冲神经网络部署在低成本的嵌入式平台上。因此提出一种高效的、基于事件驱动的脉冲神经网络仿真计算框架,是本领域研究人员亟需解决的问题。
发明内容
为解决上述问题,本发明公开了一种基于事件驱动的脉冲神经网络集群计算框架,该框架利用了集群内部更新一致性的隐藏信息来复用衰减系数,通过预筛选避免计算峰值,在保持了极高的计算精度的同时加速了框架的计算速度。无需专用的计算平台,可以充分利用现有的计算资源。使用神经元集群和突触连接层的概念进行管理和更新,支持更多复杂的神经元或突触行为。该框架有效地解决了现有计算框架中存在的问题。
为达到上述目的,本发明的技术方案如下:
一种基于事件驱动的脉冲神经网络集群计算框架,所述框架包括:神经元集群,由事件神经元组成的层级结构,能够进行批处理加速计算;突触连接层,是集群与集群之间的连接方式,内部具有神经元连接权重的矩阵,由多个相同行为的突触组成,相比于单个突触能够支持更复杂的学习规则;脉冲优先级队列,包括全局优先级队列和集群内部的局部优先级队列,负责将脉冲按照时间排序;网络调度器,管理神经元集群和突触连接层,维护全局优先级队列,保证全局时间单向流动,并结合输入脉冲流与优先级队列进行事件分发。
进一步地,网络调度器包括以下计算步骤:
S1、获取脉冲优先级队列中时间戳最早的候选脉冲,根据脉冲索引号找到对应神经元,判断其当前状态是否能发放脉冲;
S2、若能发放脉冲,则根据突触连接层的权重矩阵更新后向连接的集群,并预估能否产生新的脉冲事件;
S3、将预估脉冲和实时输入脉冲加入到脉冲优先级队列。
进一步地,网络调度器更新的第一个步骤S1具体实施方式为:
S1-1、从全局脉冲优先级队列中弹出最早的脉冲;
S1-2、计算待发放脉冲的神经元当前状态;
S1-3、检查该神经元的膜电位是否超过阈值,若超过阈值则复位自身状态;
S1-4、更新局部优先级队列,将其优先级最高的脉冲更新至全局队列。
进一步地,所述神经元集群,是相同模型神经元的层级组合。在S2步骤中,神经元集群更新的具体实施方式如下:
S2-1、根据更新间隔计算衰减系数,更新集群内所有神经元状态;
S2-2、根据脉冲事件和连接权重矩阵更新集群内对应的神经元;
S2-3、进行预筛选,预估集群内所有的神经元在未来是否能发放脉冲,若能发放脉冲则计算脉冲的精确时间。
进一步地,S2-1步骤结合神经元集群可以复用中间变量。以事件驱动的LIF神经元为例:
其中,v是膜电位函数,gE是电导函数,T是上一次更新的时间,Δt是更新间隔,τv和τg分别是膜电位和电导衰减的时间常数。集群内部的τv和τg是相同的,并且T和Δt也是相同的。根据上述公式,在集群更新时,衰减系数exp(-Δt/τv)和exp(-Δt/τg)仅需算一次即可。避免了大量重复计算。
进一步地,S2-3步骤使用判断条件进行预筛选能够加速计算。判断条件由所用神经元模型推导出,以LIF神经元为例:
其中vth是膜电位阈值,其余参数含义与上一公式相同。若更新后的电导(gE)不满足上述条件,则后续不会产生脉冲,无需进行复杂的峰值计算;该不等式包括膜电位、阈值和两个时间参数,充分利用了现有信息进行判断。
进一步地,所述突触连接层,是连接两个集群的突触组合;突触连接层内部的连接矩阵含有连接权重信息,可结合学习规则进行权重修改,包括但不限于无监督学习、有监督学习;支持批量修改权重的学习规则,例如局部范围权重加强或减弱。
进一步地,所述脉冲优先级队列,由小根堆实现,对候选脉冲的时间戳进行排序,保证队列弹出脉冲的时序递增。
进一步地,所述网络调度器,管理神经元集群和突触连接层,将外部输入脉冲和优先级队列弹出的候选脉冲分发至对应集群,当后向连接的集群更新完毕后刷新优先级队列。
本发明的有益效果为:
本发明所述的一种基于事件驱动的脉冲神经网络集群计算框架,能充分利用脉冲事件的时空稀疏性降低计算量,复用衰减系数和进行预筛选降低了单次更新计算量,支持更多复杂神经元和突触行为,有效地解决了现在的类脑计算框架中存在的计算效率低、仿真精度低的问题。
附图说明
图1为本发明提供的基于事件驱动的脉冲神经网络集群计算框架计算流程图。
图2为本发明实施例的神经元更新步骤图。
图3为本发明实施例的集群计算和预筛选加速计算流程的示意图。
图4为本发明实施例的预筛选效果图。
具体实施方式
下面结合附图和具体实施方式,进一步阐明本发明,应理解下述具体实施方式仅用于说明本发明而不用于限制本发明的范围。
参见附图1,为本发明实施例的框架组成图。核心组件为脉冲优先级队列,其负责维护网络内部的候选脉冲。网络调度器负责处理脉冲,更新发放脉冲的神经元与其后向连接的神经元,产生的候选脉冲放至优先级队列进行调整。
参见附图2,为本发明实施例的神经元更新步骤图。在事件驱动更新中,神经元需要支持以下步骤:(1)根据更新间隔计算神经元的当前状态;(2)处理接收到的脉冲输入;(3)预估自身能否发放脉冲。在本发明实施例中,脉冲神经元模型采用带电导的泄露-整合-发放(leaky-integrate-and-fire,LIF)模型。该模型的微分方程如下:
其中,v是神经元膜电位,τv是膜电位衰减的时间常数;gE为电导,θ是电导增益系数,是权重与脉冲的乘积项,当脉冲来临时δi置一其他情况置零。vth为膜电位阈值,vreset是膜电位复位值。当膜电位v超过阈值vth时,神经元发放脉冲,并且将自身状态复位。未接收到脉冲时,神经元的膜电位和电导不会瞬时变化。对微分方程求解,得到LIF神经元的事件驱动模型,公式如下:
计算步骤S1便是按照上述LIF神经元事件驱动公式进行更新。步骤S2则是对电导施加瞬时影响,gE+=w。步骤S3为预估脉冲发放,需要先根据当前状态预估膜电位峰值,若峰值超过阈值再根据二分迭代计算较为精确的发放时间。
参见附图3,为本发明实施例的集群计算和预筛选加速计算流程的示意图。集群计算是利用了集群内部更新间隔相同的隐含信息,复用衰减系数,避免重复计算从而加速了S2-1子步骤。而预筛选是通过低成本的判断计算,提前过滤掉不会发放脉冲的情况,避免了无意义的峰值计算与脉冲预估,加速了S2-3子步骤。
参见附图4,为本发明实施例的预筛选效果图。其公式如下:
该筛选条件受膜电位、阈值等影响,是一个综合性的判断条件。可以从附图中看出,仅少部分情况才通过预筛选进入下一步计算,有效避免了其他不必要的峰值计算。
Claims (10)
1.一种基于事件驱动的脉冲神经网络集群计算框架,其特征在于,包括:
神经元集群,由事件神经元模型组成的层级结构;
突触映射,是集群与集群之间的连接方式;
脉冲优先级队列,包括全局优先级队列和集群内部的局部优先级队列,负责将脉冲按照时间排序;
输入脉冲流,负责处理输入脉冲事件;
事件回调器,当产生脉冲事件时调用注册的回调函数;
数据刷新加载模块,负责运行时神经元状态的加载和存储;
网络调度器,持有集群和映射,维护全局优先级队列,并结合输入脉冲流进行事件分发。
2.根据权利要求1所述的一种基于事件驱动的脉冲神经网络集群计算框架,其特征在于,网络调度器包括以下计算步骤:
S1、获取脉冲优先级队列中最早的脉冲,根据脉冲索引号找到对应神经元,判断其当前状态是否能发放脉冲;
S2、若能发放脉冲,则根据映射的连接关系,更新后向连接的集群并预估能否产生新的脉冲事件;
S3、将预估脉冲和实时输入脉冲加入到脉冲优先级队列。
3.根据权利要求2所述的一种基于事件驱动的脉冲神经网络集群计算框架,其特征在于,网络调度器的第一个步骤S1具体实施方式为:
S1-1、从全局脉冲优先级队列中弹出最早的脉冲;
S1-2、根据更新间隔计算衰减系数,待发放脉冲的神经元更新状态;
S1-3、检查该神经元的膜电位是否超过阈值,若超过阈值则复位自身状态;
S1-4、更新局部优先级队列,将其优先级最高的脉冲更新至全局队列。
4.根据权利要求2所述的一种基于事件驱动的脉冲神经网络集群计算框架,其特征在于,所述神经元集群,是相同模型神经元的层级组合;在S2步骤中,神经元集群更新的具体实施方式如下:
S2-1根据更新间隔计算衰减系数,更新集群内所有神经元状态;
S2-2根据脉冲事件和连接权重矩阵更新集群内对应的神经元;
S2-3预估集群内神经元是否能发放脉冲及计算脉冲精确时间。
7.根据权利要求1所述的一种基于事件驱动的脉冲神经网络集群计算框架,其特征在于,所述突触映射,是连接两个集群的突触组合;
突触连接层内部的连接矩阵含有连接权重信息,可结合学习规则进行权重修改,包括但不限于无监督学习、有监督学习;
支持批量修改权重的学习规则,例如局部范围权重加强或减弱。
8.根据权利要求1所述的一种基于事件驱动的脉冲神经网络集群计算框架,其特征在于,所述脉冲优先级队列,由小根堆实现,对候选脉冲的时间戳进行排序,保证队列弹出脉冲的时序递增。
9.根据权利要求1所述的一种基于事件驱动的脉冲神经网络集群计算框架,其特征在于,所述网络调度器,管理神经元集群和突触连接层,将外部输入脉冲和优先级队列弹出的候选脉冲分发至对应集群,当后向连接的集群更新完毕后刷新优先级队列。
10.一种基于事件驱动的脉冲神经网络集群计算框架,其特征在于,所述方法使用如权利要求1至9任一项所述的一种基于事件驱动的脉冲神经网络集群计算框架。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210333197.5A CN114692857B (zh) | 2022-03-31 | 一种基于事件驱动的脉冲神经网络集群计算框架 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210333197.5A CN114692857B (zh) | 2022-03-31 | 一种基于事件驱动的脉冲神经网络集群计算框架 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114692857A true CN114692857A (zh) | 2022-07-01 |
CN114692857B CN114692857B (zh) | 2024-07-02 |
Family
ID=
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140114893A1 (en) * | 2011-05-31 | 2014-04-24 | International Business Machines Corporation | Low-power event-driven neural computing architecture in neural networks |
CN113313240A (zh) * | 2021-08-02 | 2021-08-27 | 成都时识科技有限公司 | 计算设备及电子设备 |
CN114186665A (zh) * | 2021-11-01 | 2022-03-15 | 南京航空航天大学 | 一种基于gpu的脉冲神经网络仿真方法 |
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140114893A1 (en) * | 2011-05-31 | 2014-04-24 | International Business Machines Corporation | Low-power event-driven neural computing architecture in neural networks |
CN113313240A (zh) * | 2021-08-02 | 2021-08-27 | 成都时识科技有限公司 | 计算设备及电子设备 |
CN114186665A (zh) * | 2021-11-01 | 2022-03-15 | 南京航空航天大学 | 一种基于gpu的脉冲神经网络仿真方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kim et al. | A deep learning approach to flight delay prediction | |
CN110738984B (zh) | 人工智能cnn、lstm神经网络语音识别系统 | |
EP3270330B1 (en) | Method for neural network and apparatus performing same method | |
CN113449864B (zh) | 用于图像数据分类的反馈型脉冲神经网络模型训练方法 | |
US9373073B2 (en) | Time-division multiplexed neurosynaptic module with implicit memory addressing for implementing a universal substrate of adaptation | |
US20140180987A1 (en) | Time-division multiplexed neurosynaptic module with implicit memory addressing for implementing a neural network | |
KR20180007657A (ko) | 뉴럴 네트워크를 위한 방법 및 그 방법을 수행하는 장치 | |
Mehrtash et al. | Synaptic plasticity in spiking neural networks (SP/sup 2/INN): a system approach | |
CN108900542A (zh) | 基于LSTM预测模型的DDoS攻击检测方法及装置 | |
Zhou et al. | Efficient neural network training via forward and backward propagation sparsification | |
CN114332545B (zh) | 一种基于低比特脉冲神经网络的图像数据分类方法和装置 | |
CN114548532A (zh) | 一种基于vmd的tgcn-gru超短期负荷预测方法、装置和电子设备 | |
CN116340006B (zh) | 一种基于深度学习的算力资源空闲预测方法和存储介质 | |
CN114998659A (zh) | 随时间在线训练脉冲神经网络模型的图像数据分类方法 | |
Alawe et al. | An efficient and lightweight load forecasting for proactive scaling in 5G mobile networks | |
CN115358485A (zh) | 一种基于图自注意力机制与霍克斯过程的交通流预测方法 | |
Cartiglia et al. | Stochastic dendrites enable online learning in mixed-signal neuromorphic processing systems | |
CN109542585B (zh) | 一种支持不规则时间间隔的虚拟机工作负载预测方法 | |
CN114692857A (zh) | 一种基于事件驱动的脉冲神经网络集群计算框架 | |
CN114692857B (zh) | 一种基于事件驱动的脉冲神经网络集群计算框架 | |
CN116629344A (zh) | 基于Ca-LIF神经元模型的Spike-BP片上学习方法、系统及处理器 | |
Alam | Recurrent neural networks in electricity load forecasting | |
Liu et al. | Enabling non-Hebbian learning in recurrent spiking neural processors with hardware-friendly on-chip intrinsic plasticity | |
Hikmawati et al. | A novel hybrid GSTARX-RNN model for forecasting space-time data with calendar variation effect | |
Hu et al. | Modeling nonlinear synaptic dynamics: a laguerre-volterra network framework for improved computational efficiency in large scale simulations |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |