自适应阈值神经元信息处理方法和系统与流程

文档序号:12721588阅读:385来源:国知局
自适应阈值神经元信息处理方法和系统与流程

本发明涉及人工神经网络技术领域,特别是涉及自适应阈值神经元信息处理方法和系统。



背景技术:

如今的人工神经网络研究绝大多数仍是在冯·诺依曼计算机软件并搭配高性能GPGPU(General Purpose Graphic Processing Units通用图形处理单元)平台中实现的,整个过程的硬件开销、能耗和信息处理速度都不容乐观。为此,近几年神经形态计算领域迅猛发展,即采用硬件电路直接构建神经网络从而模拟大脑的功能,试图实现大规模并行、低能耗、可支撑复杂模式学习的计算平台。

然而,传统的神经形态系统中,如何有效均衡整个神经网络中的每个脉冲神经元的发放频率,使得每个脉冲神经元在处理信息时都能够发挥作用,是传统神经网络中亟待解决的问题。



技术实现要素:

基于此,有必要针对如何有效均衡整个神经网络中的每个脉冲神经元的发放频率的问题,提供一种自适应阈值神经元信息处理方法和系统,所述方法包括:

接收前端脉冲神经元输出信息;

读取当前脉冲神经元信息;

根据所述前端脉冲神经元输出信息和所述当前脉冲神经元信息,计算当前脉冲神经元输出信息;

读取当前自适应阈值变量和阈值电位,并根据所述当前自适应阈值变量和所述阈值电位,计算当前自适应阈值;

判断所述当前脉冲神经元输出信息是否大于或等于所述自适应阈值,若是,则输出所述当前脉冲神经元输出信息,并根据第一自适应阈值更新模型更新所述当前自适应阈值变量,若否,

则不输出所述当前脉冲神经元输出信息,并根据第二自适应阈值更新模型更新所述当前自适应阈值变量。

在其中一个实施例中,所述前端脉冲神经元输出信息包括:前端脉冲神经元输出的脉冲尖端信息、前端脉冲神经元与当前脉冲神经元的连接权重索引;

所述当前脉冲神经元信息包括:当前时间窗宽度、当前时间窗内脉冲尖端信息序列、历史膜电位信息和膜电位泄漏信息;

则根据所述前端脉冲神经元输出信息和所述当前脉冲神经元信息,计算当前脉冲神经元输出信息,包括:

根据所述前端脉冲神经元与当前脉冲神经元的连接权重索引,读取前端脉冲神经元与当前脉冲神经元的连接权重;

根据所述前端脉冲神经元输出的脉冲尖端信息,和所述当前时间窗内脉冲尖端信息序列,更新所述当前时间窗内脉冲尖端信息序列,获取当前时间窗内脉冲尖端信息更新序列;

根据所述当前时间窗宽度、所述当前时间窗内脉冲尖端信息更新序列,通过衰减函数计算前端脉冲神经元输入信息;

根据所述前端脉冲神经元输入信息、所述前端脉冲神经元与当前脉冲神经元的连接权重、所述历史膜电位信息、所述膜电位泄露信息,通过脉冲神经元计算模型,计算当前脉冲神经元输出信息。

在其中一个实施例中,所述当所述当前脉冲神经元输出信息大于或等于所述自适应阈值时,输出所述当前脉冲神经元输出信息,并根据第一自适应阈值更新模型更新所述当前自适应阈值变量,还包括:

确定发放触发标志信息为发放触发,所述发放触发标志信息包括发放触发或发放不触发;

复位不应期计时器,并更新所述历史膜电位信息为预设的复位膜电位信息。

在其中一个实施例中,所述则不输出所述当前脉冲神经元输出信息,并根据第二自适应阈值更新模型更新所述当前自适应阈值变量,还包括:

确定所述发放触发标志信息为发放不触发;

读取不应期宽度和不应期计时器的当前时间步;

根据所述不应期宽度和所述不应期计时器的当前时间步,判断当前时间是否在不应期内,若当前时间在所述不应期内,将所述不应期计时器累加计时一个时间步,不更新所述历史膜电位信息;

若当前时间不在所述不应期内,将所述不应期计时器累加计时一个时间步,并更新所述历史膜电位信息为所述当前脉冲神经元输出信息。

在其中一个实施例中,所述读取当前自适应阈值变量和阈值电位,并根据所述当前自适应阈值变量和所述阈值电位,计算当前自适应阈值,包括:

读取随机阈值掩模电位、阈值偏置、当前自适应阈值变量和随机阈值;

将所述随机阈值和所述随机阈值掩模电位进行按位与操作,获取阈值随机叠加量;

根据所述阈值随机叠加量和所述阈值偏置,确定所述阈值电位;

根据所述阈值电位和所述当前自适应阈值变量,确定所述当前自适应阈值。

在其中一个实施例中,所述根据第一自适应阈值更新模型更新所述当前自适应阈值变量,包括:

读取发放阈值增量和所述当前自适应阈值变量;

根据预设的衰减常数和所述当前自适应阈值变量,计算第一阈值;

将所述发放阈值增量叠加至所述第一阈值,获取第二阈值;

根据所述第二阈值更新所述当前自适应阈值变量。

在其中一个实施例中,所述根据第二自适应阈值更新模型更新所述当前自适应阈值变量,包括:

读取所述当前自适应阈值变量;

根据所述预设的衰减常数和所述当前自适应阈值变量,计算第三阈值,

根据所述第三阈值更新所述当前自适应阈值变量。

在其中一个实施例中,所述输出所述当前脉冲神经元输出信息,包括:

读取发放使能标识,所述发放使能标识包括允许发放数据或不允许发放数据,当所述发放使能标识为允许发放数据时,

读取所述发放触发标志信息,当所述发放触发标志信息为发放触发时;

输出所述当前脉冲神经元输出信息。

本发明所提供的自适应阈值神经元信息处理方法,在当前脉冲神经元输出信息的计算中,通过读取当前自适应阈值变量和阈值电位,计算当前自适应阈值;在根据当前自适应阈值,确定是否输出当前脉冲神经元输出信息,并确定更新当前自适应变量的模型。本发明所提供的自适应阈值的神经元信息处理方法,可以使得当前发放了输出信息的神经元阈值升高,下次发放难度增加;而当前未发放输出信息的神经元阈值降低,下次发放难度降低,有效均衡整个网络中每个神经元的发放频率,使得每个神经元都可以在处理信息时发挥作用,大大提高脉冲神经网络的信息处理能力。

在其中一个实施例中,根据所述前端脉冲神经元输出的脉冲尖端信息,和所述当前时间窗内脉冲尖端信息序列,更新所述当前时间窗内脉冲尖端信息序列,获取当前时间窗内脉冲尖端信息更新序列,根据所述当前时间窗宽度、所述前端脉冲神经元与当前脉冲神经元的连接权重,通过衰减函数计算前端脉冲神经元输入信息,可以支持具有时间深度的时空脉冲神经网络模型,相比于时间深度仅仅为一的神经网络技术方案,可以大大提高脉冲神经网络的时空信息编码能力,丰富脉冲神经网络的应用空间。

在其中一个实施例中,通过读取随机阈值掩模电位和阈值偏置,并接收配置寄存器给出的配置值,确定所述阈值电位,使得神经元发放脉冲尖端信息具有一定概率的随机性,无论膜电位有没有超过固定阈值偏置,由于还有一个可正可负的阈值随机叠加量的存在,该神经元胞体都有可能发放脉冲,提高了脉冲神经网络模型的计算能力和信息处理能力

在其中一个实施例中,通过设置发放使能标识和发放触发标志,确定当前脉冲神经元输出信息,使得脉冲神经元的输出的可控性更高,发放使能标志可以配置有的神经元不允许发放数据,而只用作中间辅助计算神经元,这对于一些需要多神经元协作完成的功能是非常必要的。

本发明还提供一种自适应阈值神经元信息处理系统,包括:

前端脉冲神经元输出信息接收模块,用于接收前端脉冲神经元输出信息;

当前脉冲神经元信息读取模块,用于读取当前脉冲神经元信息;

当前脉冲神经元输出信息计算模块,用于根据所述前端脉冲神经元输出信息和所述当前脉冲神经元信息,计算当前脉冲神经元输出信息;

当前自适应阈值计算模块,用于读取当前自适应阈值变量和阈值电位,并根据所述当前自适应阈值变量和所述阈值电位,计算当前自适应阈值;

当前脉冲神经元输出信息输出模块,用于判断所述当前脉冲神经元输出信息是否大于或等于所述自适应阈值,若是,则输出所述当前脉冲神经元输出信息,并根据第一自适应阈值更新模型更新所述当前自适应阈值变量,若否,

则不输出所述当前脉冲神经元输出信息,并根据第二自适应阈值更新模型更新所述当前自适应阈值变量。

则不输出所述当前脉冲神经元输出信息,并根据第二自适应阈值更新模型更新所述当前自适应阈值变量在其中一个实施例中,所述前端脉冲神经元输出信息包括:前端脉冲神经元输出的脉冲尖端信息、前端脉冲神经元与当前脉冲神经元的连接权重索引;

所述当前脉冲神经元信息包括:当前时间窗宽度、当前时间窗内脉冲尖端信息序列、历史膜电位信息和膜电位泄漏信息;

所述当前脉冲神经元输出信息计算模块,包括:

脉冲神经元连接权重读取单元,用于根据所述前端脉冲神经元与当前脉冲神经元的连接权重索引,读取前端脉冲神经元与当前脉冲神经元的连接权重;

时间窗内脉冲尖端信息序列更新单元,用于根据所述前端脉冲神经元输出的脉冲尖端信息,和所述当前时间窗内脉冲尖端信息序列,更新所述当前时间窗内脉冲尖端信息序列,获取当前时间窗内脉冲尖端信息更新序列;

前端脉冲神经元输入信息计算单元,用于根据所述当前时间窗宽度、所述前端脉冲神经元与当前脉冲神经元的连接权重,通过衰减函数计算前端脉冲神经元输入信息;

脉冲神经元输出信息计算单元,用于根据所述前端脉冲神经元输入信息、所述当前时间窗内脉冲尖端信息更新序列、所述历史膜电位信息、所述膜电位泄露信息,通过脉冲神经元计算模型,计算当前脉冲神经元输出信息。

在其中一个实施例中,还包括:

发放触发确定单元,用于确定发放触发标志信息为发放触发,所述发放触发标志信息包括发放触发或发放不触发;

发放触发动作单元,用于不应期计时器,并更新所述历史膜电位信息为预设的复位膜电位信息。

在其中一个实施例中,还包括:

当发放触发确定单元,确定的所述发放触发标志信息为发放不触发;

发放不触发动作单元,用于读取不应期宽度和不应期计时器的当前时间步;根据所述不应期宽度和所述不应期计时器的当前时间步,判断当前时间是否在不应期内,若当前时间在所述不应期内,将所述不应期计时器累加计时一个时间步,不更新所述历史膜电位信息;若当前时间不在所述不应期内,将所述不应期计时器累加计时一个时间步,并更新所述历史膜电位信息为所述当前脉冲神经元输出信息。

在其中一个实施例中,所述当前自适应阈值计算模块,包括:

阈值信息接收单元,用于读取随机阈值掩模电位、阈值偏置和随机阈值;

阈值随机叠加量获取单元,用于将所述随机阈值和所述随机阈值掩模电位进行按位与操作,获取阈值随机叠加量;

阈值电位确定单元,用于根据所述阈值随机叠加量和所述阈值偏置,确定所述阈值电位;

当前自适应阈值确定单元,用于根据所述阈值电位和所述当前自适应阈值变量,确定所述当前自适应阈值。

在其中一个实施例中,所述当前脉冲神经元输出信息输出模块,包括:

第一自适应阈值更新单元,用于读取发放阈值增量和所述当前自适应阈值变量;根据预设的衰减常数和所述当前自适应阈值变量,计算第一阈值;将所述发放阈值增量叠加至所述第一阈值,获取第二阈值;根据所述第二阈值更新所述当前自适应阈值变量。

在其中一个实施例中,所述所述当前脉冲神经元输出信息输出模块,包括:

第二自适应阈值更新单元,用于读取所述当前自适应阈值变量;根据所述预设的衰减常数和所述当前自适应阈值变量,计算第三阈值,根据所述第三阈值更新所述当前自适应阈值变量。

在其中一个实施例中,所述当前脉冲神经元输出信息输出模块,包括:

发放使能标识读取单元,用于读取发放使能标识,所述发放使能标识包括允许发放数据或不允许发放数据,当所述发放使能标识为允许发放数据时,

发放触发标志信息读取单元,用于读取所述发放触发标志信息,当所述发放触发标志信息为发放触发时;

当前脉冲神经元输出信息输出单元,用于输出所述当前脉冲神经元输出信息。

本发明所提供的自适应阈值神经元信息处理系统,在当前脉冲光神经输出信息的计算中,通过读取当前自适应阈值变量和阈值电位,计算当前自适应阈值;在根据当前自适应阈值,确定是否输出当前脉冲神经元输出信息,并确定更新当前自适应变量的模型。本发明所提供的自适应阈值的神经元信息处理系统,可以使得当前发放的神经元阈值升高,下次发放难度增加;而当前未发放的神经元阈值降低,下次发放难度降低。如此,可以有效均衡整个网络中每个神经元的发放频率,使得每个神经元都可以在处理信息时发挥作用,大大提高脉冲神经网络的信息处理能力。

在其中一个实施例中,根据所述前端脉冲神经元输出的脉冲尖端信息,和所述当前时间窗内脉冲尖端信息序列,更新所述当前时间窗内脉冲尖端信息序列,获取当前时间窗内脉冲尖端信息更新序列,根据所述当前时间窗宽度、所述前端脉冲神经元与当前脉冲神经元的连接权重,通过衰减函数计算前端脉冲神经元输入信息,可以支持具有时间深度的时空脉冲神经网络模型,相比于时间深度仅仅为一的神经网络技术方案,可以大大提高脉冲神经网络的时空信息编码能力,丰富脉冲神经网络的应用空间。

在其中一个实施例中,通过读取随机阈值掩模电位和阈值偏置,并接收配置寄存器给出的配置值,确定所述阈值电位,使得神经元发放脉冲尖端信息具有一定概率的随机性,无论膜电位有没有超过固定阈值偏置,由于还有一个可正可负的阈值随机叠加量的存在,该神经元胞体都有可能发放脉冲,提高了脉冲神经网络模型的计算能力和信息处理能力。

在其中一个实施例中,通过设置发放使能标识和发放触发标志,确定当前脉冲神经元输出信息,使得脉冲神经元的输出的可控性更高,发放使能标志可以配置有的神经元不允许发放数据,而只用作中间辅助计算神经元,这对于一些需要多神经元协作完成的功能是非常必要的。

附图说明

图1为一个实施例的自适应阈值神经网络信息处理方法的流程示意图;

图2为另一个实施例的自适应阈值神经网络信息处理方法的流程示意图;

图3为又一个实施例的自适应阈值神经网络信息处理方法的流程示意图;

图4为再一个实施例的自适应阈值神经网络信息处理方法的流程示意图;

图5为再一个实施例的自适应阈值神经网络信息处理方法的流程示意图;

图6为再一个实施例的自适应阈值神经网络信息处理方法的流程示意图;

图7为一个实施例的自适应阈值神经网络信息处理系统的结构示意图;

图8为另一个实施例的自适应阈值神经网络信息处理系统的结构示意图;

图9为又一个实施例的自适应阈值神经网络信息处理系统的结构示意图;

图10为再一个实施例的自适应阈值神经网络信息处理方系统的结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

图1为一个实施例的自适应阈值神经网络信息处理方法的流程示意图,如图1所示的自适应阈值神经网络信息处理方法,包括:

步骤S100,接收前端脉冲神经元输出信息。

具体的,所述前端脉冲神经元输出信息,是与当前脉冲神经元的连接的前端的脉冲神经元输出的脉冲信息。

步骤S200,读取当前脉冲神经元信息。

具体的,所述当前脉冲神经元信息,包括当前神经元存储的前端脉冲神经元发送的历史脉冲信息序列等。

步骤S300,根据所述前端脉冲神经元输出信息和所述当前脉冲神经元信息,计算当前脉冲神经元输出信息。

具体的,当前脉冲神经元根据接收到的前端脉冲神经元输出的脉冲信息,和读取到的当前脉冲神经元信息,计算出当前脉冲神经元输出信息。

步骤S400,读取当前自适应阈值变量和阈值电位,并根据所述当前自适应阈值变量和所述阈值电位,计算当前自适应阈值。

具体的,所述自适应阈值变量,是根据当前脉冲神经元上一个时间步计算得出的当前脉冲神经元输出信息(即spike),是否最终被发送确定的。若上一个时间步的脉冲信息未被发送,则所述自适应阈值变量在上一个时间步的基础上继续衰减,以使下一个时间步的脉冲序列的发放难度降低,若上一个时间步的脉冲信息被发送,则所述自适应阈值变量在上一个时间步的基础上衰减后,增加一个固定的增量,以使下一个时间步的脉冲序列的发放难度增加。

步骤S500,当所述当前脉冲神经元输出信息是否大于或等于所述自适应阈值时,若是,则接步骤S600,否则跳至步骤S700。

具体的,判断当前脉冲神经元输出信息是否大于或等于所述自适应阈值,以便后续步骤根据判断结果确定是否发送所述当前脉冲神经元输出信息。

步骤S600,输出所述当前脉冲神经元输出信息,并根据第一自适应阈值更新模型更新所述当前自适应阈值变量。

具体的,若当前脉冲神经元输出信息大于或等于所述自适应阈值,则发送所述当前脉冲神经元输出信息,根据所述第一自适应阈值更新模型更新所述当前自适应阈值变量,以使所述当前自适应阈值变量在下一个时间步的计算中,增加一个固定的增量,增加下一个时间步计算出的当前脉冲神经元输出信息的发放难度。

步骤S700,则不输出所述当前脉冲神经元输出信息,并根据第二自适应阈值更新模型更新所述当前自适应阈值变量。

具体的,若当前脉冲神经元输出信息小于所述自适应阈值,则不发送所述当前脉冲神经元输出信息,根据所述第二自适应阈值更新模型更新所述当前自适应阈值变量,以使所述当前自适应阈值变量在下一个时间步的计算中,继续衰减,降低下一个时间步计算出的当前脉冲神经元输出信息的发放难度。

本发明所提供的自适应阈值神经元信息处理方法,在当前脉冲神经元输出信息的计算中,通过读取当前自适应阈值变量和阈值电位,计算当前自适应阈值;在根据当前自适应阈值,确定是否输出当前脉冲神经元输出信息,并确定更新当前自适应变量的模型。本发明所提供的自适应阈值的脉冲神经元信息处理方法,可以使得当前发放了输出信息的神经元阈值升高,下次发放难度增加;而当前未发放输出信息的神经元阈值降低,下次发放难度降低,有效均衡整个网络中每个神经元的发放频率,使得每个神经元都可以在处理信息时发挥作用,大大提高脉冲神经网络的信息处理能力。

图2为另一个实施例的自适应阈值神经网络信息处理方法的流程示意图,如图2所示的自适应阈值神经网络信息处理方法,包括:

步骤S100b,接收前端脉冲神经元输出的脉冲尖端信息、前端脉冲神经元与当前脉冲神经元的连接权重索引。

具体的,所述前端脉冲神经元与当前脉冲神经元的连接权重索引,是前端神经元与所述前端脉冲神经元输出信息一同发送的权重索引,用于指示当前神经元权重的提取。所述前端脉冲神经元输出的脉冲尖端信息,为前端脉冲神经元发送的脉冲尖端信号(spike)。

步骤S200b,读取当前时间窗宽度、当前时间窗内脉冲尖端信息序列、历史膜电位信息和膜电位泄漏信息。

具体的,所述当前时间窗内脉冲尖端信息序列,是指在所述当前时间窗宽度内,将过去一定范围内的时间步接收到的脉冲尖端信息,按时间顺序依次缓存的一个信息序列。

步骤S300b,根据所述前端脉冲神经元与当前脉冲神经元的连接权重索引,读取前端脉冲神经元与当前脉冲神经元的连接权重。

具体的,所述前端脉冲神经元与当前脉冲神经元的连接权重索引,是一个地址信息,当前神经元根据接收到的所述前端脉冲神经元与当前脉冲神经元的连接权重索引,在当前神经元内的存储器中,读取到前端脉冲神经元与当前脉冲神经元的连接权重,根据所述的连接权重信息,可以将前端神经元的输出信息,在参与当前神经元输出信息的计算过程中,更准确的反应出前端神经元的输出信息的权重,携带更丰富的信息。

步骤S400b,根据所述前端脉冲神经元输出的脉冲尖端信息,和所述当前时间窗内脉冲尖端信息序列,更新所述当前时间窗内脉冲尖端信息序列,获取当前时间窗内脉冲尖端信息更新序列。

具体的,所述脉冲尖端信息序列,在每个脉冲神经元的操作步,在序列头存储一个新的脉冲尖端信息后,删除一个序列尾位置上的脉冲尖端信息,更新一次所述脉冲尖端序列。

步骤S500b,根据所述当前时间窗宽度、所述当前时间窗内脉冲尖端信息更新序列,通过衰减函数计算前端脉冲神经元输入信息。

具体的,利用计算所述前端脉冲神经元输入信息,其中,Tw为所述时间窗宽度,δj为前端神经元j在当前时间窗内发放spike后,在所述当前时间窗内脉冲尖端信息更新序列内的时间步。K(Δt)为一个衰减函数,随着Δt增大而迅速减小。

步骤S600b,根据所述前端脉冲神经元输入信息、所述前端脉冲神经元与当前脉冲神经元的连接权重、所述历史膜电位信息、所述膜电位泄露信息,通过脉冲神经元计算模型,计算当前脉冲神经元输出信息。

具体的,利用如下公式表示前端脉冲神经元输入信息的计算:

其中Wij为所述前端脉冲神经元j和当前脉冲神经元i的连接权重,Tw为所述时间窗宽度,δj为前端神经元j在当前时间窗内发放spike后,在所述当前时间窗内脉冲尖端信息更新序列内的时间步。K(Δt)为一个衰减函数,随着Δt增大而迅速减小。Vleak为泄漏值信息。在胞体处的基本模型可以简化为:

VSNN=f(V+Vinput+Vleak)

发放模型和复位模型不变,其中V是存储器保存的历史膜电位信息,

Vinput是当前拍累加的输入,等效于上述的Vleak为泄漏值信息。

在本实施例中,根据所述前端脉冲神经元输出的脉冲尖端信息,和所述当前时间窗内脉冲尖端信息序列,更新所述当前时间窗内脉冲尖端信息序列,获取当前时间窗内脉冲尖端信息更新序列,根据所述当前时间窗宽度、所述前端脉冲神经元与当前脉冲神经元的连接权重,通过衰减函数计算前端脉冲神经元输入信息,可以支持具有时间深度的时空脉冲神经网络模型,相比于时间深度仅仅为一的神经网络技术方案,可以大大提高脉冲神经网络的时空信息编码能力,丰富脉冲神经网络的应用空间。

图3为又一个实施例的自适应阈值神经网络信息处理方法的流程示意图,如图3所示的自适应阈值神经网络信息处理方法,包括:

步骤S100c,计算出当前脉冲神经元输出信息和自适应阈值。

步骤S200c,判断所述当前脉冲神经元输出信息是否大于或等于所述自适应阈值时,根据所述比较结果确定发放触发标志信息为发放触发,所述发放触发标志信息包括发放触发或发放不触发,当确定发放触发标志信息为发放触发时,接步骤S300c,当确定发放触发标志信息为发放不触发时,跳至步骤S400c。

具体的,根据所述自适应阈值电位,与所述当前脉冲神经元输出信息进行比较,并根据比较结果确定发放触发标志信息。只有所述当前脉冲神经元输出信息大于所述自适应阈值电位时,所述当前脉冲神经元输出信息才会被发送。

步骤S300c,复位不应期计时器,并更新所述历史膜电位信息为预设的复位膜电位信息。

具体的,当所述发放触发标志信息为发放触发时,所述当前脉冲神经元输出信息被发送,不应期计时器被复位后,重新计算不应期,并更新所述历史膜电位信息为预设的膜电位信息,且所述的历史膜电位信息更新,根据配置的复位类型,选择性将膜电位复位为当前膜电位、当前膜电位和阈值电位差值,或固定复位电压。

步骤S400c,读取不应期宽度和不应期计时器的当前时间步。

具体的,当所述发放触发标志信息为发放不触发时,所述当前脉冲神经元输出信息不被发送,进一步判断当前是否在不应期内。所述不应期宽度为不应期的时长范围,所述不应期计时器利用时间步的方式计时。

步骤S500c,根据所述不应期宽度和所述不应期计时器的当前时间步,判断当前时间是否在不应期内,若当前时间在所述不应期内,接步骤S600c,否则跳至步骤S700c。

具体的,根据所述不应期计时器的当前时间步的累计计算,可以判断出当前时间步是否还在不应期内。

步骤S600c,将所述不应期计时器累加计时一个时间步,不更新所述历史膜电位信息。

具体的,若当前时间在所述不应期内,根据脉冲神经网络的仿生特点,不对所述脉冲神经输出信息进行任何回应,不更新历史膜电位信息,所述历史膜电位信息,是下一个时间步的脉冲神经元需要读取的信息,即在不应期内,本次计算出的脉冲神经元输出信息不参与下一个时间步的计算。

步骤S700c,将所述不应期计时器累加计时一个时间步,并更新所述历史膜电位信息为所述当前脉冲神经元输出信息。

具体的,如在不应外,则将所述历史膜电位信息为所述当前脉冲神经元输出信息,参与下一个时间步的计算。

在本实施例中,通过自适应阈值电位,使得神经元发放脉冲尖端信息与上一个时间步是否发放了所述当前脉冲神经元输出信息相关,可以有效均衡整个网络中每个神经元的发放频率,使得每个神经元都可以在处理信息时发挥作用,大大提高脉冲神经网络的信息处理能力。

在其中一个实施例中,所述输出所述当前脉冲神经元输出信息,包括读取发放使能标识,所述发放使能标识包括允许发放数据或不允许发放数据,当所述发放使能标识为允许发放数据时,读取所述发放触发标志信息,当所述发放触发标志信息为发放触发时;输出所述当前脉冲神经元输出信息。

在本实施例中,通过设置发放使能标识和发放触发标志,确定当前脉冲神经元输出信息,使得脉冲神经元的输出的可控性更高,发放使能标志可以配置有的神经元不允许发放数据,而只用作中间辅助计算神经元,这对于一些需要多神经元协作完成的功能是非常必要的。

图4为再一个实施例的自适应阈值神经网络信息处理方法的流程示意图,如图4所示的自适应阈值神经网络信息处理方法,包括:

步骤S410,读取随机阈值掩模电位、阈值偏置、当前自适应阈值变量和随机阈值。

具体的,所述当前自适应阈值变量,是在一个任务开始时,根据一个预设的自适应阈值初值、预设的衰减系数和发放阈值增量,根据每一个时间步逐步衰减或升高,得出的自适应阈值变量值。所述当前自适应阈值变量,为当前脉冲神经元读取到的当前时间步的自适应阈值变量。所述随机阈值通过配置寄存器给出一个随机数种子,通过伪随机数发生器产生。

步骤S420,将所述随机阈值和所述随机阈值掩模电位进行按位与操作,获取阈值随机叠加量。

具体的,所述随机阈值掩模电位用于限制阈值增量的范围。

步骤S430,根据所述阈值随机叠加量和所述阈值偏置,确定所述阈值电位。

具体的,将所述阈值随机叠加量和所述阈值偏置相加,获取所述阈值电位。

步骤S440,根据所述阈值电位和所述当前自适应阈值变量,确定所述当前自适应阈值。

具体的,将所述阈值电位和所述当前自适应阈值变量相加,确定所述当前自适应阈值。其中,将所述阈值随机叠加量与预设的阈值偏置Vth0相加,产生真正的阈值电位Vth。其中,伪随机数发生器的种子由配置寄存器Vseed给出。掩模电位Vmask用于限制阈值增量的范围:若Vmask=0,则阈值随机叠加量也为0,发放模式退化为固定阈值发放,固定阈值为Vth0;若Vmask≠0,则发放模式为部分概率阈值发放。当极端情况Vth0=0,则发放模式为完全概率阈值发放。

在本实施例中,通过读取随机阈值掩模电位和阈值偏置,并接收配置寄存器给出的配置值,确定所述阈值电位,使得神经元发放脉冲尖端信息具有一定概率的随机性,无论膜电位有没有超过固定阈值偏置,由于还有一个可正可负的阈值随机叠加量的存在,该神经元胞体都有可能发放脉冲,提高了脉冲神经网络模型的计算能力和信息处理能力。

图5为再一个实施例的自适应阈值神经网络信息处理方法的流程示意图,如图5所示的自适应阈值神经网络信息处理方法,为图1中,根据第一自适应阈值更新模型更新所述当前自适应阈值变量部分的详细步骤,包括:

步骤S610,读取发放阈值增量和所述当前自适应阈值变量。

具体的,所述发放阈值增量为预设的值,可根据任务的需求设定。

步骤S620,根据预设的衰减常数和所述当前自适应阈值变量,计算第一阈值。

具体的,将读取到的当前自适应阈值变量,按照预设的衰减系数计算,获取第一阈值,所述第一阈值为本时间步执行衰减后的自适应阈值变量。

步骤S630,将所述发放阈值增量叠加至所述第一阈值,获取第二阈值。

具体的,在本时间步执行衰减后,再将预设的所述发放阈值增量叠加值所述第一阈值,获取第二阈值。

步骤S640,根据所述第二阈值更新所述当前自适应阈值变量。

具体的,将所述当前自适应阈值变量更新为所述第二阈值。因所述第二阈值,是在自适应变量执行了衰减计算后,又叠加了预设的发放阈值增量,使得下一个时间步读出的自适应阈值增加,提高了下一个时间步的当前脉冲神经元输出信息的发放难度。

本实施例中所提供的第一自适应阈值更新模型,在当前脉冲神经元输出信息发送的情况下,将当前自适应阈值执行衰减后,叠加一个预设的增量,使得下一个时间步的当前脉冲神经元输出信息的发放难度增加。通过这种方式为阈值添加柔性特征,可以使得整个网络的发放率比较均匀,每个神经元均有机会学习出各自的输入感受野。

图6为再一个实施例的自适应阈值神经网络信息处理方法的流程示意图,如图6所示的自适应阈值神经网络信息处理方法,为图1中,根据第二自适应阈值更新模型更新所述当前自适应阈值变量部分的详细步骤,包括:

步骤S710,读取所述当前自适应阈值变量。

具体的,由于当前脉冲神经元输出信息没有被发送,则不需要提高自适应阈值。

步骤S720,根据所述预设的衰减常数和所述当前自适应阈值变量,计算第三阈值。

具体的,将读取到的当前自适应阈值变量,按照预设的衰减系数计算,获取第三阈值,所述第三阈值为本时间步执行衰减后的自适应阈值变量。

步骤S730,根据所述第三阈值更新所述当前自适应阈值变量。

具体的,将衰减后的自适应变量,即第三阈值设定为当前自适应阈值增量,降低了下一个时间步的当前脉冲神经元输出信息的发放难度。

本实施例中所提供的第二自适应阈值更新模型,在当前脉冲神经元输出信息不发送的情况下,将当前自适应阈值执行衰减,使得下一个时间步的当前脉冲神经元输出信息的发放难度降低。通过这种方式为阈值添加柔性特征,可以使得整个网络的发放率比较均匀,每个神经元均有机会学习出各自的输入感受野。

图7为一个实施例的自适应阈值神经网络信息处理系统的结构示意图,如图7所示的自适应阈值神经网络信息处理系统,包括:

前端脉冲神经元输出信息接收模块100,用于接收前端脉冲神经元输出信息;所述前端脉冲神经元输出信息包括:前端脉冲神经元输出的脉冲尖端信息、前端脉冲神经元与当前脉冲神经元的连接权重索引。

当前脉冲神经元信息读取模块200,用于读取当前脉冲神经元信息;所述当前脉冲神经元信息包括:当前时间窗宽度、当前时间窗内脉冲尖端信息序列、历史膜电位信息和膜电位泄漏信息。

当前脉冲神经元输出信息计算模块300,用于根据所述前端脉冲神经元输出信息和所述当前脉冲神经元信息,计算当前脉冲神经元输出信息;

当前自适应阈值计算模块400,用于读取当前自适应阈值变量和阈值电位,并根据所述当前自适应阈值变量和所述阈值电位,计算当前自适应阈值;

当前脉冲神经元输出信息输出模块500,用于当所述当前脉冲神经元输出信息大于或等于所述自适应阈值时,输出所述当前脉冲神经元输出信息,并根据第一自适应阈值更新模型更新所述当前自适应阈值变量,否则则不输出所述当前脉冲神经元输出信息,并根据第二自适应阈值更新模型更新所述当前自适应阈值变量。

本发明所提供的自适应阈值神经元信息处理系统,在当前脉冲光神经输出信息的计算中,通过读取当前自适应阈值变量和阈值电位,计算当前自适应阈值;在根据当前自适应阈值,确定是否输出当前脉冲神经元输出信息,并确定更新当前自适应变量的模型。本发明所提供的自适应阈值的神经元信息处理系统,可以使得当前发放的神经元阈值升高,下次发放难度增加;而当前未发放的神经元阈值降低,下次发放难度降低。如此,可以有效均衡整个网络中每个神经元的发放频率,使得每个神经元都可以在处理信息时发挥作用,大大提高脉冲神经网络的信息处理能力。

图8为另一个实施例的自适应阈值神经网络信息处理系统的结构示意图,如图8所示的自适应阈值神经网络信息处理系统,是图7中所述当前脉冲神经元输出信息计算模块300,包括:

脉冲神经元连接权重读取单元100b,用于根据所述前端脉冲神经元与当前脉冲神经元的连接权重索引,读取前端脉冲神经元与当前脉冲神经元的连接权重;

时间窗内脉冲尖端信息序列更新单元200b,用于根据所述前端脉冲神经元输出的脉冲尖端信息,和所述当前时间窗内脉冲尖端信息序列,更新所述当前时间窗内脉冲尖端信息序列,获取当前时间窗内脉冲尖端信息更新序列;

前端脉冲神经元输入信息计算单元300b,用于根据所述当前时间窗宽度、所述前端脉冲神经元与当前脉冲神经元的连接权重,通过衰减函数计算前端脉冲神经元输入信息;

脉冲神经元输出信息计算单元400b,用于根据所述前端脉冲神经元输入信息、所述当前时间窗内脉冲尖端信息更新序列、所述历史膜电位信息、所述膜电位泄露信息,通过脉冲神经元计算模型,计算当前脉冲神经元输出信息。

在本实施例中,根据所述前端脉冲神经元输出的脉冲尖端信息,和所述当前时间窗内脉冲尖端信息序列,更新所述当前时间窗内脉冲尖端信息序列,获取当前时间窗内脉冲尖端信息更新序列,根据所述当前时间窗宽度、所述前端脉冲神经元与当前脉冲神经元的连接权重,通过衰减函数计算前端脉冲神经元输入信息,可以支持具有时间深度的时空脉冲神经网络模型,相比于时间深度仅仅为一的神经网络技术方案,可以大大提高脉冲神经网络的时空信息编码能力,丰富脉冲神经网络的应用空间。

图9为又一个实施例的自适应阈值神经网络信息处理系统的结构示意图,如图9所示的自适应阈值神经网络信息处理系统,为图7中所述当前脉冲神经元输出信息输出模块,包括:

发放触发确定单元100c,用于确定发放触发标志信息为发放触发,所述发放触发标志信息包括发放触发或发放不触发;

发放触发动作单元200c,用于不应期计时器,并更新所述历史膜电位信息为预设的复位膜电位信息。

当发放触发确定单元100c,确定的所述发放触发标志信息为发放不触发;

发放不触发动作单元300c,用于读取不应期宽度和不应期计时器的当前时间步;根据所述不应期宽度和所述不应期计时器的当前时间步,判断当前时间是否在不应期内,若当前时间在所述不应期内,将所述不应期计时器累加计时一个时间步,不更新所述历史膜电位信息;若当前时间不在所述不应期内,将所述不应期计时器累加计时一个时间步,并更新所述历史膜电位信息为所述当前脉冲神经元输出信息。

第一自适应阈值更新单元400c,用于读取发放阈值增量和所述当前自适应阈值变量;根据预设的衰减常数和所述当前自适应阈值变量,计算第一阈值;将所述发放阈值增量叠加至所述第一阈值,获取第二阈值;根据所述第二阈值更新所述当前自适应阈值变量。

第二自适应阈值更新单元500c,用于读取所述当前自适应阈值变量;根据所述预设的衰减常数和所述当前自适应阈值变量,计算第三阈值,根据所述第三阈值更新所述当前自适应阈值变量。

发放使能标识读取单元600c,用于读取发放使能标识,所述发放使能标识包括允许发放数据或不允许发放数据,当所述发放使能标识为允许发放数据时,

发放触发标志信息读取单元700c,用于读取所述发放触发标志信息,当所述发放触发标志信息为发放触发时。

当前脉冲神经元输出信息输出单元800c,用于输出所述当前脉冲神经元输出信息。

本实施例中所提供的自适应阈值更新模型,在当前脉冲神经元输出信息被发送的情况下,将当前自适应阈值执行衰减后,叠加一个预设的增量,使得下一个时间步的当前脉冲神经元输出信息的发放难度增加。在当前脉冲神经元输出信息不发送的情况下,将当前自适应阈值执行衰减,使得下一个时间步的当前脉冲神经元输出信息的发放难度降低。通过这种方式为阈值添加柔性特征,可以使得整个网络的发放率比较均匀,每个神经元均有机会学习出各自的输入感受野。

图10为再一个实施例的自适应阈值神经网络信息处理方系统的结构示意图,如图10所示的自适应阈值神经网络信息处理系统,为图7中的当前自适应阈值计算模块400,包括:

阈值信息接收单元410,用于读取随机阈值掩模电位、阈值偏置和随机阈值;

阈值随机叠加量获取单元420,用于将所述随机阈值和所述随机阈值掩模电位进行按位与操作,获取阈值随机叠加量;

阈值电位确定单元430,用于根据所述阈值随机叠加量和所述阈值偏置,确定所述阈值电位;

当前自适应阈值确定单元440,用于根据所述阈值电位和所述当前自适应阈值变量,确定所述当前自适应阈值。

在本实施例中,通过读取随机阈值掩模电位和阈值偏置,并接收配置寄存器给出的配置值,确定所述阈值电位,使得神经元发放脉冲尖端信息具有一定概率的随机性,无论膜电位有没有超过固定阈值偏置,由于还有一个可正可负的阈值随机叠加量的存在,该神经元胞体都有可能发放脉冲,提高了脉冲神经网络模型的计算能力和信息处理能力。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1