CN111582445B - 一种基于脉冲神经网络的高效学习系统及学习方法 - Google Patents
一种基于脉冲神经网络的高效学习系统及学习方法 Download PDFInfo
- Publication number
- CN111582445B CN111582445B CN202010332616.4A CN202010332616A CN111582445B CN 111582445 B CN111582445 B CN 111582445B CN 202010332616 A CN202010332616 A CN 202010332616A CN 111582445 B CN111582445 B CN 111582445B
- Authority
- CN
- China
- Prior art keywords
- module
- pulse
- neuron
- learning
- neural network
- 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.)
- Active
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 64
- 238000000034 method Methods 0.000 title claims abstract description 16
- 238000007781 pre-processing Methods 0.000 claims abstract description 33
- 238000010276 construction Methods 0.000 claims abstract description 30
- 238000004364 calculation method Methods 0.000 claims abstract description 17
- 230000003068 static effect Effects 0.000 claims abstract description 15
- 210000002569 neuron Anatomy 0.000 claims description 106
- 238000001208 nuclear magnetic resonance pulse sequence Methods 0.000 claims description 21
- 239000012528 membrane Substances 0.000 claims description 16
- 238000003062 neural network model Methods 0.000 claims description 16
- 230000006870 function Effects 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 9
- 230000008859 change Effects 0.000 claims description 8
- 230000036279 refractory period Effects 0.000 claims description 7
- 230000000946 synaptic effect Effects 0.000 claims description 7
- 238000002347 injection Methods 0.000 claims description 6
- 239000007924 injection Substances 0.000 claims description 6
- 238000010304 firing Methods 0.000 claims description 3
- 238000004422 calculation algorithm Methods 0.000 description 10
- 230000004069 differentiation Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000036962 time dependent Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000012421 spiking Methods 0.000 description 1
- 230000000638 stimulation Effects 0.000 description 1
- 238000011426 transformation method 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/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- 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
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Analysis (AREA)
- Feedback Control In General (AREA)
Abstract
本发明公开了一种基于脉冲神经网络的高效学习系统及其学习方法,属于人工神经网络技术领域,该学习系统由数据预处理模块、网络构建模块、学习模块和推理模块组成;数据预处理模块支持静态图像数据和动态神经形态数据两种类型;网络构建模块支持多种类型的脉冲神经网络;学习模块由前馈网络计算、误差反向传播和权重更新组成;在每个时刻,随机数发生器产生随机值,由开关控制是否进行误差反向传播和权重更新步骤;推理模块加载模型文件进行前馈网络计算。本发明中的学习系统兼容自动微分工具,易于实现;支持多种脉冲神经网络类型,容易灵活配置。本发明中的学习模块加入开关结构,忽略了大量的计算步骤,节省了计算资源,提高了学习效率。
Description
技术领域
本发明涉及人工神经网络技术领域,具体涉及一种基于脉冲神经网络的高效学习系统及学习方法。
背景技术
近年来,脉冲神经网络(Spiking Neural Network,SNN)的研究和应用越来越广泛。与人工神经网络(Artificial Neural Network,ANN)不同的是,脉冲神经网络采用与生物可塑性相近的神经元作为计算单元,能够更好得表征动态时间和空间信息。脉冲神经网络的信息传递方式是离散的脉冲,使其能够应用到低功耗、高效率的神经形态硬件中。由于缺乏有效的学习系统,脉冲神经网络在许多应用上的表现仍比不上人工神经网络。
当前的脉冲神经网络的学习算法可以归为三类:基于脉冲时间依赖可塑性的非监督式算法、基于ANN转SNN的非直接式监督算法和基于误差反向传播的直接式监督算法。基于脉冲时间依赖可塑性的非监督式算法主要通过局部的神经元活动来改变突触权重,很难实现高性能。基于ANN转SNN的非直接式监督算法主要将训练好的ANN模型转化为对应的SNN模型,使SNN模型几乎实现与ANN模型一致的应用效果。然而,这样的转化方法对ANN模型要求满足很多约束条件,例如没有偏置权重、只允许ReLU激活函数等等。基于误差反向传播的直接式监督算法通过时间和空间上的误差进行反向传播来改变突触权重,常用基于时间的反向传播算法(Backpropagation-Through-Time,BPTT)进行突触权重的学习。该类算法在不同时序上的时间和空间有耦合,需要较高的计算资源和存储资源,学习效率不高。
因此在时间上解耦,构建时序无关的高效学习系统来优化学习过程,能够大大提高学习效率,节省消耗的资源,有利于扩大脉冲神经网络的应用前景。
发明内容
为了克服现有技术中的脉冲神经网络学习算法需要较高的计算资源和存储资源、学习效率低的缺陷,本发明提供了一种基于脉冲神经网络的学习系统及其学习方法,该学习系统由数据预处理模块、网络构建模块、学习模块和推理模块组成;数据预处理模块支持静态图像数据和动态神经形态数据两种类型;网络构建模块根据基本网络框架支持多种类型的脉冲神经网络;学习模块由前馈网络计算子模块、误差反向传播子模块和权重更新子模块组成;在每个时刻,随机数发生器产生随机数值,由开关控制是否进行误差反向传播和权重更新步骤;推理模块根据学习模块得到的模型文件进行前馈网络计算,使其能够支持脉冲神经网络的高效学习。
为了实现上述目的,本发明具体采用如下技术方案:
一种基于脉冲神经网络的学习系统,包括:
数据预处理模块:用于将输入数据转化为脉冲序列;
网络构建模块:用于根据基本网络框架配置多种脉冲神经网络;
学习模块:用于根据数据预处理模块得到的脉冲序列,对网络构建模块得到的脉冲神经网络进行学习,并生成模型文件;
推理模块:读取网络构建模块配置的脉冲神经网络结构,并加载学习模块生成的模型文件来获得脉冲神经网络参数,得到训练好的脉冲神经网络模型,并将数据预处理模块输出的脉冲序列作为脉冲神经网络模型的输入,得到推理结果;
所述的数据预处理模块、网络构建模块、学习模块、推理模块顺次连接,且学习模块设有第一开关,当学习系统处于学习模式时,第一开关控制学习模块开启,网络构建模块的输出经学习模块后进入推理模块;当学习系统处于推理模式时,第一开关控制学习模块关闭,网络构建模块的输出直接进入推理模块。
作为本发明的优选,所述的数据预处理模块包括静态图像数据处理模式和动态神经形态数据处理模式;当数据预处理模块处于静态图像数据处理模式时,将输入的静态图像数据缩放至[0,1]区间,等效为概率值后生成基于泊松分布或伯努利分布的脉冲序列;当数据预处理模块处于动态神经形态数据处理模式时,将输入的动态神经形态数据直接处理成脉冲序列。
作为本发明的优选,所述的网络构建模块根据基本网络框架配置多种脉冲神经网络;所述的基本网络框架由一层或多层的脉冲神经元层和一层感知机神经元输出层组成;所述的脉冲神经元层采用LIF神经元模型。
作为本发明的优选,所述的LIF神经元模型具体为:
其中,U表示膜电位,S表示脉冲,Q、P和R分别表示注入电流、膜电位和不应期的变化量,α、β和γ是衰减因子,τs、τm和τr是时间常数,Θ表示阶跃函数,[t]表示在t时刻,表示第l-1层第j个神经元的注入电流变化量,表示第l-1层第j个神经元的膜电位变化量,表示第l-1层第j个神经元的不应期变化量,表示第l层第i个神经元的膜电位,表示第l层第i个神经元与表示第l-1层第j个神经元连接的突触权重,表示第l层第i个神经元发放的脉冲;
所述的感知机神经元输出层根据最后一层脉冲神经元层发放的脉冲来输出目标,表示为:
其中,Ym[t]表示在t时刻,输出层第m个神经元的输出目标;Gmn表示最后一层脉冲神经元层第n个神经元与输出层第m个神经元连接的权重,表示在t时刻,最后一层脉冲神经元层第n个神经元发放的脉冲,L表示脉冲神经元的层数。
作为本发明的优选,所述的学习模块包含前馈网络计算子模块、误差反向传播子模块和权重更新子模块;
所述的前馈网络计算子模块根据数据预处理模块提供的脉冲数据作为输入,依次根据LIF神经元模型和网络连接方式计算脉冲神经元层,然后由感知机神经元输出层根据脉冲神经元层的输出脉冲计算输出目标;
所述的误差反向传播子模块根据设定的损失函数计算输出目标和设定目标之间的误差,进行反向传播;
所述的权重更新子模块根据设定的学习率和误差进行权重的更新。
作为本发明的优选,所述的学习模块设有第二开关和随机数发生器,所述的第二开关用于控制误差反向传播子模块和权重更新子模块是否执行,第二开关的开启和关闭状态由随机数发生器产生的随机数值与预设数值比较决定。
作为本发明的优选,所述的推理模块由模型加载子模块和前馈网络计算子模块组成;所述的模型加载子模块读取网络构建模块配置的脉冲神经网络结构,并加载由学习模块生成的模型文件,获得训练好的脉冲神经网络模型;所述的前馈网络计算子模块根据数据预处理模块提供的脉冲数据作为输入,计算脉冲神经网络模型中的脉冲神经元层,然后由感知机神经元输出层根据脉冲神经元层的输出脉冲得到输出目标。
相对于现有技术,本发明具有如下有益效果:
(1)本发明所述学习系统中的网络构建模块支持多种形式的网络,可以基于基本的网络框架灵活配置。
(2)本发明提供了一种简化后的LIF神经元模型,由该神经元模型构成的脉冲神经网络实现了在时间上的解耦,能够构建时序无关的高效学习脉冲神经网络模型,且支持自动微分,兼容现有的自动微分工具包,且基于本发明的学习系统易于实现。
(3)本发明提供的学习系统具有学习和推理两种工作模式,不同的工作模式运行不同的模块,减少了不必要的运行程序,且本发明中的数据预处理模块能够处理静态图像数据和动态神经形态数据,所述的学习模块通过开关控制是否执行误差反向传播和权重更新步骤,忽略了大量的计算步骤,节省了计算资源,提高了学习效率。
附图说明
图1为本发明所提供的学习系统的结构示意图。
图2为本发明中学习模块的学习过程示例图。
具体实施方式
通过以下具体实例对本发明作进一步的说明,其目的在于帮助更好的理解本发明的内容。本发明中各个实施方式的技术特征在没有相互冲突的前提下,均可进行相应组合。
如图1所示,一种基于脉冲神经网络的学习系统,所述的学习系统由数据预处理模块101、网络构建模块102、学习模块103和推理模块104组成;所述的学习系统包含学习和推理两种工作模式,通过开关控制。当学习系统为学习模式时,过程为数据预处理模块、网络构建模块、学习模块到推理模块;当学习系统为推理模式时,过程为数据预处理模块、网络构建模块到推理模块。
数据预处理模块101用于将输入数据转化为脉冲序列,支持静态图像数据和动态神经形态数据的处理。对于静态图像数据,将像素值缩放到区间[0,1]后,将像素值等效为对应的概率值,根据此概率值生成基于泊松分布或伯努利分布的脉冲序列;对于动态神经形态数据,则直接处理成脉冲序列。
网络构建模块102根据基本的网络框架支持构建多种形式的脉冲神经网络,包括全连接网络、卷积神经网络和残差网络。网络框架由一层或多层的脉冲神经元层与一层感知机神经元输出层构成。网络构建完毕后,由数据预处理模块提供的脉冲数据作为网络的输入。
在本发明的一个具体实施中,所述的脉冲神经元层采用LIF神经元模型,具体为:
其中,U表示膜电位,S表示脉冲,Q、P和R分别表示注入电流、膜电位和不应期的变化量,α、β和γ是衰减因子,τs、τm和τr是时间常数;在t时刻,第l层的神经元i接收到第l-1层的神经元j的脉冲刺激后,其膜电位由突触权重与膜电位变化量加权求和后,减去不应期变化量得到。Θ表示阶跃函数,当膜电位的值大于0时,发放脉冲;否则不发放。[t]表示在t时刻,表示第l-1层第j个神经元的注入电流变化量,表示第l-1层第j个神经元的膜电位变化量,表示第l-1层第j个神经元的不应期变化量,表示第l层第i个神经元的膜电位,表示第l层第i个神经元与表示第l-1层第j个神经元连接的突触权重,表示第l层第i个神经元发放的脉冲;
其中,Ym[t]表示在t时刻,输出层第m个神经元的输出目标;Gmn表示最后一层脉冲神经元层第n个神经元与输出层第m个神经元连接的权重,表示在t时刻,最后一层脉冲神经元层第n个神经元发放的脉冲,L表示脉冲神经元的层数。所述的LIF神经元模型每个时刻自动传播,支持自动微分,可以用现有的自动微分工具实现。
如图2所示,学习模块103由前馈网络计算子模块、误差反向传播子模块和权重更新子模块组成。前馈网络计算时,在每个时刻t,输入脉冲SI[t]输入到脉冲神经元层后,每个神经元根据式(1)-(3)依次计算当前t时刻Q[t]、P[t]和R[t]的值,然后根据式(4)计算当前时刻膜电位U[t]的值,最后根据式(5)判断当前神经元是否产生脉冲。当U[t]>0时,该神经元发放脉冲;否则,不发放。当前时刻计算完毕后,存储当前时刻的Q、P和R值,用于下一时刻的计算。脉冲神经元层计算完毕后,最后一层的脉冲神经元输出脉冲SL[t]输入输出层,根据式(6)得到输出目标Y[t]。根据设定的损失函数计算输出目标Y[t]与设定目标的误差,进行误差反向传播。误差反向传播后,根据设定的学习率更新权重。
为了进一步优化学习过程,误差反向传播和权重更新通过开关控制是否执行。当随机数发生器产生的随机数值小于预设数值p时,执行误差反向传播和权重更新;否则,不执行。优选的,通过设定预设数值p,所述的学习过程中的误差反向传播和权重更新步骤忽略,节省了大量的计算资源,提高了学习效率。在本发明的一个具体实施中,设置随机数发生器的随机区间为[0,1],设置开关的开启预设数值p为0.1至0.5之间,此时可以将预设数值p理解为概率值,当随机数值小于预设数值p时,执行误差反向传播和权重更新,即有p的概率执行误差反向传播和权重更新步骤。
推理模块104由模型加载子模块和前馈网络计算子模块组成;所述的模型加载子模块读取网络构建模块配置的脉冲神经网络结构,并加载由学习模块生成的模型文件,获得训练好的脉冲神经网络模型;所述的前馈网络计算子模块根据数据预处理模块提供的脉冲数据作为输入,计算脉冲神经网络模型中的脉冲神经元层,然后由感知机神经元输出层根据脉冲神经元层的输出脉冲得到输出目标。
上述脉冲神经网络的高效学习系统的学习方法,包括以下步骤:
步骤1:数据预处理模块自动判断输入数据的类型,当输入为静态图像数据时,首先将像素值缩放到区间[0,1],然后将像素值等效为对应的概率值,根据此概率值生成基于泊松分布或伯努利分布的脉冲序列;当输入为动态神经形态数据时,直接生成脉冲序列;
步骤2:通过网络构建模块配置脉冲神经网络,包括一层或多层的脉冲神经元层和一层感知机神经元输出层;所述的脉冲神经元层采用LIF神经元模型。
步骤3:开启第一开关,并设置随机数发生器的随机区间为[0,1],设置第二开关的开启预设数值p为0.1至0.5之间,即有p的概率执行误差反向传播和权重更新步骤。通过学习模块对构建的脉冲神经网络进行学习,首先由前馈网络计算子模块根据步骤1得到的脉冲序列,计算步骤2构建的脉冲神经网络中的脉冲神经元层的输出脉冲,由感知机神经元输出层根据脉冲神经元层的输出脉冲计算输出目标;
当随机数发生器生成的随机数值p′小于预设数值p时,误差反向传播子模块和权重更新子模块处于工作状态,由误差反向传播子模块根据设定的损失函数计算输出目标和设定目标之间的误差,进行反向传播;最后由权重更新子模块根据设定的学习率和误差进行权重的更新;
当随机数发生器生成的随机数值p′大于等于预设数值p时,误差反向传播子模块和权重更新子模块处于关闭状态,跳过误差反向传播子模块和权重更新子模块,进行下一时刻的学习,循环该学习过程;
根据预设的学习轮数,当到达设定的最大轮数时,学习结束,生成模型文件;
步骤4:关闭第一开关,通过推理模块读取网络构建模块配置的脉冲神经网络结构,并加载学习模块生成的模型文件来获得脉冲神经网络参数,得到训练好的脉冲神经网络模型,并将数据预处理模块输出的脉冲序列作为脉冲神经网络模型的输入,得到推理结果。
根据本学习系统,基于静态数据的图像分类任务MNIST和SVHN分别取得99.53%和93.02%的分类精度,基于动态神经形态数据的图像分类任务NMNIST和DVS Gesture分别取得98.90%和95.49%的分类精度。其中MNIST和DVS Gesture的分类结果是目前脉冲神经网络领域的最好水平。预设数值p设定区间从0.5至0.1时,可减少约4.2%至21.0%的学习时间,大大提高了学习效率。
由简化后的LIF神经元模型构成的脉冲神经网络实现了在时间上的解耦,能够构建时序无关的高效学习脉冲神经网络模型,使得本发明中的学习系统支持自动微分,兼容各种自动微分工具,易于实现;支持多种形式的脉冲神经网络,可以灵活配置;通过开关控制是否执行误差反向传播和权重更新步骤,忽略了大量的计算步骤,节省了计算资源,提高了学习效率。
以上列举的仅是本发明的具体实施例。显然,本发明不限于以上实施例,还可以有许多变形。本领域的普通技术人员能从本发明公开的内容直接导出或联想到的所有变形,均应认为是本发明的保护范围。
Claims (7)
1.一种基于脉冲神经网络的学习系统,其特征在于,包括:
数据预处理模块:用于将输入数据转化为脉冲序列;所述的数据预处理模块包括静态图像数据处理模式和动态神经形态数据处理模式;当数据预处理模块处于静态图像数据处理模式时,将输入的静态图像数据缩放至[0,1]区间,等效为概率值后生成基于泊松分布或伯努利分布的脉冲序列;当数据预处理模块处于动态神经形态数据处理模式时,将输入的动态神经形态数据直接处理成脉冲序列;
网络构建模块:用于根据基本网络框架配置多种脉冲神经网络;
学习模块:用于根据数据预处理模块得到的脉冲序列,对网络构建模块得到的脉冲神经网络进行学习,并生成模型文件;
推理模块:读取网络构建模块配置的脉冲神经网络结构,并加载学习模块生成的模型文件来获得脉冲神经网络参数,得到训练好的脉冲神经网络模型,并将数据预处理模块输出的脉冲序列作为脉冲神经网络模型的输入,得到推理结果;
所述的数据预处理模块、网络构建模块、学习模块、推理模块顺次连接,且学习模块设有第一开关,当学习系统处于学习模式时,第一开关控制学习模块开启,网络构建模块的输出经学习模块后进入推理模块;当学习系统处于推理模式时,第一开关控制学习模块关闭,网络构建模块的输出直接进入推理模块。
2.根据权利要求1所述的基于脉冲神经网络的学习系统,其特征在于,所述的网络构建模块根据基本网络框架配置多种脉冲神经网络;所述的基本网络框架由一层或多层的脉冲神经元层和一层感知机神经元输出层组成;所述的脉冲神经元层采用LIF神经元模型。
3.根据权利要求2所述的基于脉冲神经网络的学习系统,其特征在于,所述的LIF神经元模型具体为:
其中,U表示膜电位,S表示脉冲,Q、P和R分别表示注入电流、膜电位和不应期的变化量,α、β和γ是衰减因子,τs、τm和τr是时间常数,Θ表示阶跃函数,[t]表示在t时刻,表示第l-1层第j个神经元的注入电流变化量,表示第l-1层第j个神经元的膜电位变化量,表示第l-1层第j个神经元的不应期变化量,表示第l层第i个神经元的膜电位,表示第l层第i个神经元与表示第l-1层第j个神经元连接的突触权重,表示第l层第i个神经元发放的脉冲;
所述的感知机神经元输出层根据最后一层脉冲神经元层的输出脉冲,计算得到输出目标,表示为:
4.根据权利要求2所述的基于脉冲神经网络的学习系统,其特征在于,所述的学习模块包含前馈网络计算子模块、误差反向传播子模块和权重更新子模块;
所述的前馈网络计算子模块根据数据预处理模块提供的脉冲数据作为输入,依次根据LIF神经元模型和网络连接方式计算脉冲神经元层,然后由感知机神经元输出层根据脉冲神经元层的输出脉冲计算输出目标;
所述的误差反向传播子模块根据设定的损失函数计算输出目标和设定目标之间的误差,进行反向传播;
所述的权重更新子模块根据设定的学习率和误差进行权重的更新。
5.根据权利要求4所述的基于脉冲神经网络的学习系统,其特征在于,所述的学习模块设有第二开关和随机数发生器,所述的第二开关用于控制误差反向传播子模块和权重更新子模块是否执行,第二开关的开启和关闭状态由随机数发生器产生的随机数值与预设数值比较决定。
6.根据权利要求1所述的基于脉冲神经网络的学习系统,其特征在于,所述的推理模块由模型加载子模块和前馈网络计算子模块组成;所述的模型加载子模块读取网络构建模块配置的脉冲神经网络结构,并加载由学习模块生成的模型文件,获得训练好的脉冲神经网络模型;所述的前馈网络计算子模块根据数据预处理模块提供的脉冲数据作为输入,计算脉冲神经网络模型中的脉冲神经元层,然后由感知机神经元输出层根据脉冲神经元层的输出脉冲得到输出目标。
7.一种基于权利要求5所述脉冲神经网络的学习系统的学习方法,其特征在于,包括以下步骤:
步骤1:数据预处理模块自动判断输入数据的类型,当输入为静态图像数据时,首先将像素值缩放到区间[0,1],然后将像素值等效为对应的概率值,根据此概率值生成基于泊松分布或伯努利分布的脉冲序列;当输入为动态神经形态数据时,直接生成脉冲序列;
步骤2:通过网络构建模块配置脉冲神经网络,包括一层或多层的脉冲神经元层和一层感知机神经元输出层;
步骤3:开启第一开关,并设置随机数发生器的随机区间为[0,1],设置第二开关的开启预设数值p为0.1至0.5之间;通过学习模块对构建的脉冲神经网络进行学习,首先由前馈网络计算子模块根据步骤1得到的脉冲序列,计算步骤2构建的脉冲神经网络中的脉冲神经元层的输出脉冲,由感知机神经元输出层根据脉冲神经元层的输出脉冲计算输出目标;
当随机数发生器生成的随机数值p′小于预设数值p时,误差反向传播子模块和权重更新子模块处于工作状态,由误差反向传播子模块根据设定的损失函数计算输出目标和设定目标之间的误差,进行反向传播;最后由权重更新子模块根据设定的学习率和误差进行权重的更新;
当随机数发生器生成的随机数值p′大于等于预设数值p时,误差反向传播子模块和权重更新子模块处于关闭状态,跳过误差反向传播子模块和权重更新子模块,进行下一时刻的学习,循环该学习过程;
根据预设的学习轮数,当到达设定的最大轮数时,学习结束,生成模型文件;
步骤4:关闭第一开关,通过推理模块读取网络构建模块配置的脉冲神经网络结构,并加载学习模块生成的模型文件来获得脉冲神经网络参数,得到训练好的脉冲神经网络模型,并将数据预处理模块输出的脉冲序列作为脉冲神经网络模型的输入,得到推理结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010332616.4A CN111582445B (zh) | 2020-04-24 | 2020-04-24 | 一种基于脉冲神经网络的高效学习系统及学习方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010332616.4A CN111582445B (zh) | 2020-04-24 | 2020-04-24 | 一种基于脉冲神经网络的高效学习系统及学习方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111582445A CN111582445A (zh) | 2020-08-25 |
CN111582445B true CN111582445B (zh) | 2023-05-26 |
Family
ID=72127104
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010332616.4A Active CN111582445B (zh) | 2020-04-24 | 2020-04-24 | 一种基于脉冲神经网络的高效学习系统及学习方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111582445B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112085173A (zh) * | 2020-09-18 | 2020-12-15 | 中国科学院自动化研究所 | 基于脉冲神经网络的知识表征方法、系统、装置 |
CN112712170B (zh) * | 2021-01-08 | 2023-06-20 | 西安交通大学 | 基于输入加权脉冲神经网络的神经形态视觉目标分类系统 |
CN113070878B (zh) * | 2021-03-26 | 2022-06-07 | 中国科学院深圳先进技术研究院 | 基于脉冲神经网络的机器人控制方法、机器人及存储介质 |
CN114065922A (zh) * | 2021-11-28 | 2022-02-18 | 重庆大学 | 基于脉冲神经网络的实时深度学习方法、系统及处理器 |
CN114202068B (zh) * | 2022-02-17 | 2022-06-28 | 浙江大学 | 面向类脑计算芯片的自学习实现系统 |
CN114781633B (zh) * | 2022-06-17 | 2022-10-14 | 电子科技大学 | 一种融合人工神经网络与脉冲神经网络的处理器 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108304912A (zh) * | 2017-12-29 | 2018-07-20 | 北京理工大学 | 一种运用抑制信号实现脉冲神经网络监督学习的系统和方法 |
CN108710770A (zh) * | 2018-05-31 | 2018-10-26 | 杭州电子科技大学 | 一种面向多脉冲神经网络监督学习的精确突触调整方法 |
CN110633795A (zh) * | 2018-06-22 | 2019-12-31 | 国际商业机器公司 | 利用脉冲神经网络管理认知存储系统的数据集 |
CN110674928A (zh) * | 2019-09-18 | 2020-01-10 | 电子科技大学 | 一种融合人工神经网络和神经形态计算的在线学习方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10019470B2 (en) * | 2013-10-16 | 2018-07-10 | University Of Tennessee Research Foundation | Method and apparatus for constructing, using and reusing components and structures of an artifical neural network |
-
2020
- 2020-04-24 CN CN202010332616.4A patent/CN111582445B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108304912A (zh) * | 2017-12-29 | 2018-07-20 | 北京理工大学 | 一种运用抑制信号实现脉冲神经网络监督学习的系统和方法 |
CN108710770A (zh) * | 2018-05-31 | 2018-10-26 | 杭州电子科技大学 | 一种面向多脉冲神经网络监督学习的精确突触调整方法 |
CN110633795A (zh) * | 2018-06-22 | 2019-12-31 | 国际商业机器公司 | 利用脉冲神经网络管理认知存储系统的数据集 |
CN110674928A (zh) * | 2019-09-18 | 2020-01-10 | 电子科技大学 | 一种融合人工神经网络和神经形态计算的在线学习方法 |
Non-Patent Citations (2)
Title |
---|
Ma, D.et..Darwin: a neuromorphic hardware co-processor based on spiking neural networks.《Journal of Systems Architecture》.2017,第77卷第43-51页. * |
王秀青等.基于脉冲神经网络的类脑计算.《北京工业大学学报》.2019,第45卷(第12期),第1277-1286页. * |
Also Published As
Publication number | Publication date |
---|---|
CN111582445A (zh) | 2020-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111582445B (zh) | 一种基于脉冲神经网络的高效学习系统及学习方法 | |
US20150134581A1 (en) | Method for training an artificial neural network | |
CN112491094B (zh) | 一种混合驱动的微电网能量管理方法、系统及装置 | |
CN113570039B (zh) | 一种基于强化学习的优化共识的区块链系统 | |
CN111191769B (zh) | 自适应的神经网络训练与推理装置 | |
CN110659730A (zh) | 基于脉冲神经网络的端到端功能性脉冲模型的实现方法 | |
CN110348564B (zh) | 基于systolic阵列的SCNN推理加速装置、处理器及计算机设备 | |
CN113919217B (zh) | 自抗扰控制器自适应参数整定方法及装置 | |
CN112712170B (zh) | 基于输入加权脉冲神经网络的神经形态视觉目标分类系统 | |
CN114091659A (zh) | 基于空时信息的超低延时脉冲神经网络及学习方法 | |
CN117039981A (zh) | 一种面向含新能源的大规模电网优化调度方法、装置、存储介质 | |
CN116300440A (zh) | 基于td3强化学习算法的dc-dc变换器控制方法 | |
CN117272040A (zh) | 一种基于元学习框架的小样本时间序列预测方法 | |
CN117035464A (zh) | 基于时序网络改进循环网络的企业用电碳排放预测方法 | |
CN116706903A (zh) | 光伏发电量预测方法、装置、设备及介质 | |
CN116629332A (zh) | 一种基于光学储备池计算的信号补偿方法 | |
Rafik et al. | Learning and Predictive Energy Consumption Model based on LSTM recursive neural networks | |
CN116165886A (zh) | 多传感器智能协同控制方法、装置、设备及介质 | |
CN113555888B (zh) | 一种微电网储能协调控制的方法 | |
CN115829258A (zh) | 基于多项式混沌近似动态规划的电力系统经济调度方法 | |
CN112949819B (zh) | 基于忆阻器的自供能设备及其脉冲神经网络优化方法 | |
CN114024330A (zh) | 有源配电网电池储能系统的调度方法、装置及设备 | |
Sulaiman et al. | Evolutionary programming versus artificial immune system in evolving neural network for grid-connected photovoltaic system output prediction | |
CN115202202B (zh) | 一种基于人工智能算法的用电设备控制方法及系统 | |
CN116954086B (zh) | 一种抽水蓄能机组调节系统智能预测控制方法及装置 |
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 | ||
GR01 | Patent grant |