CN111582445B - 一种基于脉冲神经网络的高效学习***及学习方法 - Google Patents

一种基于脉冲神经网络的高效学习***及学习方法 Download PDF

Info

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
Application number
CN202010332616.4A
Other languages
English (en)
Other versions
CN111582445A (zh
Inventor
朱晓雷
赵百新
唐华锦
马德
潘纲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Zhejiang Lab
Original Assignee
Zhejiang University ZJU
Zhejiang Lab
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU, Zhejiang Lab filed Critical Zhejiang University ZJU
Priority to CN202010332616.4A priority Critical patent/CN111582445B/zh
Publication of CN111582445A publication Critical patent/CN111582445A/zh
Application granted granted Critical
Publication of CN111582445B publication Critical patent/CN111582445B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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神经元模型具体为:
Figure BDA0002465501830000031
Figure BDA0002465501830000032
Figure BDA0002465501830000033
Figure BDA0002465501830000034
Figure BDA0002465501830000035
其中,U表示膜电位,S表示脉冲,Q、P和R分别表示注入电流、膜电位和不应期的变化量,α、β和γ是衰减因子,τs、τm和τr是时间常数,Θ表示阶跃函数,[t]表示在t时刻,
Figure BDA0002465501830000036
表示第l-1层第j个神经元的注入电流变化量,/>
Figure BDA0002465501830000037
表示第l-1层第j个神经元的膜电位变化量,/>
Figure BDA0002465501830000038
表示第l-1层第j个神经元的不应期变化量,/>
Figure BDA0002465501830000039
表示第l层第i个神经元的膜电位,
Figure BDA00024655018300000310
表示第l层第i个神经元与表示第l-1层第j个神经元连接的突触权重,/>
Figure BDA00024655018300000311
表示第l层第i个神经元发放的脉冲;
所述的感知机神经元输出层根据最后一层脉冲神经元层发放的脉冲来输出目标,表示为:
Figure BDA00024655018300000312
其中,Ym[t]表示在t时刻,输出层第m个神经元的输出目标;Gmn表示最后一层脉冲神经元层第n个神经元与输出层第m个神经元连接的权重,
Figure BDA00024655018300000313
表示在t时刻,最后一层脉冲神经元层第n个神经元发放的脉冲,L表示脉冲神经元的层数。/>
作为本发明的优选,所述的学习模块包含前馈网络计算子模块、误差反向传播子模块和权重更新子模块;
所述的前馈网络计算子模块根据数据预处理模块提供的脉冲数据作为输入,依次根据LIF神经元模型和网络连接方式计算脉冲神经元层,然后由感知机神经元输出层根据脉冲神经元层的输出脉冲计算输出目标;
所述的误差反向传播子模块根据设定的损失函数计算输出目标和设定目标之间的误差,进行反向传播;
所述的权重更新子模块根据设定的学习率和误差进行权重的更新。
作为本发明的优选,所述的学习模块设有第二开关和随机数发生器,所述的第二开关用于控制误差反向传播子模块和权重更新子模块是否执行,第二开关的开启和关闭状态由随机数发生器产生的随机数值与预设数值比较决定。
作为本发明的优选,所述的推理模块由模型加载子模块和前馈网络计算子模块组成;所述的模型加载子模块读取网络构建模块配置的脉冲神经网络结构,并加载由学习模块生成的模型文件,获得训练好的脉冲神经网络模型;所述的前馈网络计算子模块根据数据预处理模块提供的脉冲数据作为输入,计算脉冲神经网络模型中的脉冲神经元层,然后由感知机神经元输出层根据脉冲神经元层的输出脉冲得到输出目标。
相对于现有技术,本发明具有如下有益效果:
(1)本发明所述学习***中的网络构建模块支持多种形式的网络,可以基于基本的网络框架灵活配置。
(2)本发明提供了一种简化后的LIF神经元模型,由该神经元模型构成的脉冲神经网络实现了在时间上的解耦,能够构建时序无关的高效学习脉冲神经网络模型,且支持自动微分,兼容现有的自动微分工具包,且基于本发明的学习***易于实现。
(3)本发明提供的学习***具有学习和推理两种工作模式,不同的工作模式运行不同的模块,减少了不必要的运行程序,且本发明中的数据预处理模块能够处理静态图像数据和动态神经形态数据,所述的学习模块通过开关控制是否执行误差反向传播和权重更新步骤,忽略了大量的计算步骤,节省了计算资源,提高了学习效率。
附图说明
图1为本发明所提供的学习***的结构示意图。
图2为本发明中学习模块的学习过程示例图。
具体实施方式
通过以下具体实例对本发明作进一步的说明,其目的在于帮助更好的理解本发明的内容。本发明中各个实施方式的技术特征在没有相互冲突的前提下,均可进行相应组合。
如图1所示,一种基于脉冲神经网络的学习***,所述的学习***由数据预处理模块101、网络构建模块102、学习模块103和推理模块104组成;所述的学习***包含学习和推理两种工作模式,通过开关控制。当学习***为学习模式时,过程为数据预处理模块、网络构建模块、学习模块到推理模块;当学习***为推理模式时,过程为数据预处理模块、网络构建模块到推理模块。
数据预处理模块101用于将输入数据转化为脉冲序列,支持静态图像数据和动态神经形态数据的处理。对于静态图像数据,将像素值缩放到区间[0,1]后,将像素值等效为对应的概率值,根据此概率值生成基于泊松分布或伯努利分布的脉冲序列;对于动态神经形态数据,则直接处理成脉冲序列。
网络构建模块102根据基本的网络框架支持构建多种形式的脉冲神经网络,包括全连接网络、卷积神经网络和残差网络。网络框架由一层或多层的脉冲神经元层与一层感知机神经元输出层构成。网络构建完毕后,由数据预处理模块提供的脉冲数据作为网络的输入。
在本发明的一个具体实施中,所述的脉冲神经元层采用LIF神经元模型,具体为:
Figure BDA0002465501830000051
Figure BDA0002465501830000052
Figure BDA0002465501830000053
Figure BDA0002465501830000054
Figure BDA0002465501830000055
其中,U表示膜电位,S表示脉冲,Q、P和R分别表示注入电流、膜电位和不应期的变化量,α、β和γ是衰减因子,τs、τm和τr是时间常数;在t时刻,第l层的神经元i接收到第l-1层的神经元j的脉冲刺激后,其膜电位
Figure BDA0002465501830000056
由突触权重/>
Figure BDA0002465501830000057
与膜电位变化量/>
Figure BDA0002465501830000058
加权求和后,减去不应期变化量得到。Θ表示阶跃函数,当膜电位的值大于0时,发放脉冲;否则不发放。[t]表示在t时刻,/>
Figure BDA0002465501830000059
表示第l-1层第j个神经元的注入电流变化量,/>
Figure BDA00024655018300000510
表示第l-1层第j个神经元的膜电位变化量,/>
Figure BDA0002465501830000061
表示第l-1层第j个神经元的不应期变化量,/>
Figure BDA0002465501830000062
表示第l层第i个神经元的膜电位,/>
Figure BDA0002465501830000063
表示第l层第i个神经元与表示第l-1层第j个神经元连接的突触权重,/>
Figure BDA0002465501830000064
表示第l层第i个神经元发放的脉冲;
所述的感知机神经元输出层根据最后一层脉冲神经元层(L)的输出脉冲
Figure BDA0002465501830000065
与固定的权重Gmn加权后,预测输出目标,表示为:
Figure BDA0002465501830000066
其中,Ym[t]表示在t时刻,输出层第m个神经元的输出目标;Gmn表示最后一层脉冲神经元层第n个神经元与输出层第m个神经元连接的权重,
Figure BDA0002465501830000067
表示在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]与设定目标
Figure BDA0002465501830000068
的误差,进行误差反向传播。误差反向传播后,根据设定的学习率更新权重。
为了进一步优化学习过程,误差反向传播和权重更新通过开关控制是否执行。当随机数发生器产生的随机数值小于预设数值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:关闭第一开关,通过推理模块读取网络构建模块配置的脉冲神经网络结构,并加载学习模块生成的模型文件来获得脉冲神经网络参数,得到训练好的脉冲神经网络模型,并将数据预处理模块输出的脉冲序列作为脉冲神经网络模型的输入,得到推理结果。
根据本学***。预设数值p设定区间从0.5至0.1时,可减少约4.2%至21.0%的学习时间,大大提高了学习效率。
由简化后的LIF神经元模型构成的脉冲神经网络实现了在时间上的解耦,能够构建时序无关的高效学习脉冲神经网络模型,使得本发明中的学习***支持自动微分,兼容各种自动微分工具,易于实现;支持多种形式的脉冲神经网络,可以灵活配置;通过开关控制是否执行误差反向传播和权重更新步骤,忽略了大量的计算步骤,节省了计算资源,提高了学习效率。
以上列举的仅是本发明的具体实施例。显然,本发明不限于以上实施例,还可以有许多变形。本领域的普通技术人员能从本发明公开的内容直接导出或联想到的所有变形,均应认为是本发明的保护范围。

Claims (7)

1.一种基于脉冲神经网络的学习***,其特征在于,包括:
数据预处理模块:用于将输入数据转化为脉冲序列;所述的数据预处理模块包括静态图像数据处理模式和动态神经形态数据处理模式;当数据预处理模块处于静态图像数据处理模式时,将输入的静态图像数据缩放至[0,1]区间,等效为概率值后生成基于泊松分布或伯努利分布的脉冲序列;当数据预处理模块处于动态神经形态数据处理模式时,将输入的动态神经形态数据直接处理成脉冲序列;
网络构建模块:用于根据基本网络框架配置多种脉冲神经网络;
学习模块:用于根据数据预处理模块得到的脉冲序列,对网络构建模块得到的脉冲神经网络进行学习,并生成模型文件;
推理模块:读取网络构建模块配置的脉冲神经网络结构,并加载学习模块生成的模型文件来获得脉冲神经网络参数,得到训练好的脉冲神经网络模型,并将数据预处理模块输出的脉冲序列作为脉冲神经网络模型的输入,得到推理结果;
所述的数据预处理模块、网络构建模块、学习模块、推理模块顺次连接,且学习模块设有第一开关,当学习***处于学习模式时,第一开关控制学习模块开启,网络构建模块的输出经学习模块后进入推理模块;当学习***处于推理模式时,第一开关控制学习模块关闭,网络构建模块的输出直接进入推理模块。
2.根据权利要求1所述的基于脉冲神经网络的学习***,其特征在于,所述的网络构建模块根据基本网络框架配置多种脉冲神经网络;所述的基本网络框架由一层或多层的脉冲神经元层和一层感知机神经元输出层组成;所述的脉冲神经元层采用LIF神经元模型。
3.根据权利要求2所述的基于脉冲神经网络的学习***,其特征在于,所述的LIF神经元模型具体为:
Figure QLYQS_1
Figure QLYQS_2
Figure QLYQS_3
Figure QLYQS_4
Figure QLYQS_5
其中,U表示膜电位,S表示脉冲,Q、P和R分别表示注入电流、膜电位和不应期的变化量,α、β和γ是衰减因子,τs、τm和τr是时间常数,Θ表示阶跃函数,[t]表示在t时刻,
Figure QLYQS_6
表示第l-1层第j个神经元的注入电流变化量,/>
Figure QLYQS_7
表示第l-1层第j个神经元的膜电位变化量,
Figure QLYQS_8
表示第l-1层第j个神经元的不应期变化量,/>
Figure QLYQS_9
表示第l层第i个神经元的膜电位,/>
Figure QLYQS_10
表示第l层第i个神经元与表示第l-1层第j个神经元连接的突触权重,/>
Figure QLYQS_11
表示第l层第i个神经元发放的脉冲;
所述的感知机神经元输出层根据最后一层脉冲神经元层的输出脉冲,计算得到输出目标,表示为:
Figure QLYQS_12
其中,Ym[t]表示在t时刻,输出层第m个神经元的输出目标;Gmn表示最后一层脉冲神经元层第n个神经元与输出层第m个神经元连接的权重,
Figure QLYQS_13
表示在t时刻,最后一层脉冲神经元层第n个神经元的输出脉冲,L表示脉冲神经元的层数。
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:关闭第一开关,通过推理模块读取网络构建模块配置的脉冲神经网络结构,并加载学习模块生成的模型文件来获得脉冲神经网络参数,得到训练好的脉冲神经网络模型,并将数据预处理模块输出的脉冲序列作为脉冲神经网络模型的输入,得到推理结果。
CN202010332616.4A 2020-04-24 2020-04-24 一种基于脉冲神经网络的高效学习***及学习方法 Active CN111582445B (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9798751B2 (en) * 2013-10-16 2017-10-24 University Of Tennessee Research Foundation Method and apparatus for constructing a neuroscience-inspired artificial neural network

Patent Citations (4)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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
CN113570039B (zh) 一种基于强化学习的优化共识的区块链***
CN106920014A (zh) 一种短时负荷预测方法及装置
CN111191769B (zh) 自适应的神经网络训练与推理装置
CN110348564B (zh) 基于systolic阵列的SCNN推理加速装置、处理器及计算机设备
CN112700060A (zh) 站所终端负荷预测方法和预测装置
CN113919217B (zh) 自抗扰控制器自适应参数整定方法及装置
CN112712170B (zh) 基于输入加权脉冲神经网络的神经形态视觉目标分类***
CN114091659A (zh) 基于空时信息的超低延时脉冲神经网络及学习方法
CN116562908A (zh) 一种基于双层vmd分解和ssa-lstm的电价预测方法
CN114970351A (zh) 基于注意力机制和深度强化学习的电网潮流调整方法
CN117039981A (zh) 一种面向含新能源的大规模电网优化调度方法、装置、存储介质
CN114648147A (zh) 一种基于ipso-lstm的风电功率预测方法
CN116706903B (zh) 光伏发电量预测方法、装置、设备及介质
CN117035464A (zh) 基于时序网络改进循环网络的企业用电碳排放预测方法
CN116300440A (zh) 基于td3强化学习算法的dc-dc变换器控制方法
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

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