首页> 中国专利> 一种基于仿生分层脉冲神经网络的AER对象识别方法

一种基于仿生分层脉冲神经网络的AER对象识别方法

摘要

本发明为一种基于仿生分层脉冲神经网络的AER对象识别方法,该识别方法的过程是:首先将AER传感器输出的原始事件流数据进行基于脉冲神经元的事件流去噪;然后,将去噪后的事件流输入给时空特征提取和分类模块,最后输出分类结果。将传统图像的基于奖励调节STDP学习规则的脉冲神经网络创造性地应用在AER事件流数据上,可以深入提取事件流数据的时空特征,分类时充分利用了脉冲的时间信息,可以提高分类准确性,能够提取更加复杂的特征。此外采用基于脉冲神经元的事件流去噪方式,综合考虑事件的时间和空间信息,计算简便,去噪效果好,计算量低,速度快,能够提高SNNs提取事件流数据特征的能力和分类性能。

著录项

  • 公开/公告号CN114881070A

    专利类型发明专利

  • 公开/公告日2022-08-09

    原文格式PDF

  • 申请/专利权人 河北工业大学;

    申请/专利号CN202210362159.2

  • 发明设计人 周茜;李小虎;

    申请日2022-04-07

  • 分类号G06K9/00(2022.01);G06K9/62(2022.01);G06F17/16(2006.01);G06N3/04(2006.01);G06N3/06(2006.01);G06N3/08(2006.01);

  • 代理机构天津翰林知识产权代理事务所(普通合伙) 12210;

  • 代理人付长杰

  • 地址 300130 天津市红桥区丁字沽光荣道8号河北工业大学东院330#

  • 入库时间 2023-06-19 16:19:08

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-08-26

    实质审查的生效 IPC(主分类):G06K 9/00 专利申请号:2022103621592 申请日:20220407

    实质审查的生效

  • 2022-08-09

    公开

    发明专利申请公布

说明书

技术领域

本发明涉及一种基于仿生分层脉冲神经网络的AER对象识别方法。

背景技术

神经形态计算作为一种基于生物启发原理的新型计算范式,具有计算效率高,低功耗的特点,已经成为高性能智能计算系统的研究热点之一。近年来受生物视觉系统原理的启发,研究人员开发出神经形态视觉传感器。不同于以恒定速率输出强度图像的传统图像传感器,神经形态视觉传感器只输出像素亮度变化的场景信息,并以地址-事件表示(address-event representation,AER)协议异步输出事件流信息。神经形态视觉传感器也被称为AER传感器。与传统图像传感器相比,AER传感器具有按需输出、高时间分辨率、低延迟和高动态范围等优点。由于AER传感器输出的事件流信息与传统图像传感器输出的二维灰度图像在数据结构上有本质的区别。现有的基于图像的传统计算机视觉算法无法直接处理AER传感器输出的事件流数据,因此需要研究和开发新的处理这些事件流数据的算法。

脉冲神经网络(spiking neural networks,SNNs)使用脉冲信号以异步和稀疏的方式表示和传输信息,能够模拟大脑基于脉冲和事件驱动的计算,具有低功耗和硬件友好的明显优势,是一种理想的仿生神经形态计算范式。SNNs的这些优势使其天然的适合处理事件流数据。近年来受生物视觉皮层启发的仿生分层SNNs在AER对象识别中得到越来越多的关注。HMAX模型是目前使用最多的受视觉皮层信息处理机制启发的分层模型之一。该模型具有四层网络结构(S1-C1-S2-C2),其中S层和C层分别对应于生物视觉皮层中的简单细胞层和复杂细胞层,层次越高提取的特征越复杂。目前应用于AER对象识别的仿生分层SNNs的特征提取部分大多借鉴HMAX模型的前两层结构(S1-C1),通过基于Gabor滤波器的事件驱动卷积层提取事件流数据的特征,然后进行池化操作,之后将特征编码为脉冲信号输入给SNN分类器进行分类。这些仿生分层SNN一方面只提取了事件流数据的初级方向性特征,并没有进行更深层的特征提取,对于事件流数据的特征提取能力和分类能力有待进一步的提升。另一方面,这些网络中特征提取之后的SNN部分只是用于采用全连接结构对提取的特征进行分类,并没有利用SNN的学习能力来提取特征。中国专利ZL201610093545.0公开一种用于AER的多层脉冲神经网络识别系统,虽然有两个特征提取层T1、T2,但两个特征提取层都是采用基于Gabor滤波器的事件驱动卷积提取特征,是按照尺度和角度的不同分配到两个卷积层处理,本质上仍然是在提取初级的方向性特征,并不是进一步提取更复杂的特征。

此外,由于AER传感器输出的是场景的亮度变化信息,并且对自身元器件、电路结构、外界环境的影响具有非常高的灵敏度,因此AER传感器输出的事件流数据含有噪声事件,会对识别网络的分类精度产生不利影响。目前的多层脉冲神经网络识别系统都没有对事件流数据进行去噪,都是通过聚类方式基于事件表面进行去噪,计算成本较高且去噪能力有限。

发明内容

本发明的目的是提供一种基于仿生分层脉冲神经网络的AER对象识别方法,用以提高受生物视觉皮层启发的分层SNNs提取事件流数据特征的能力和分类性能。

为实现上述目的,本发明的技术方案是:

第一种技术方案,一种基于仿生分层脉冲神经网络的AER对象识别方法的过程是:首先将AER传感器输出的原始事件流数据进行基于脉冲神经元的事件流去噪;然后,将去噪后的事件流输入给时空特征提取和分类模块,最后输出分类结果;

基于脉冲神经元的事件流去噪:

首先将原始事件流数据输入给由LIF神经元组成的脉冲神经元层,该层大小与输入事件的分辨率相同。事件的每个像素位置对应一个LIF神经元。将AER传感器输出的第i个事件记为e

E

其中,m,n∈[1,2,…,S],i为输出事件的索引序号。每个像素位置的LIF神经元接收该像素位置所产生的所有事件。每个事件都会向对应位置的LIF神经元产生一个突触后电位,每个LIF神经元通过突触后电位的叠加来累积该像素位置的所有事件。像素位置(m,n)处所有事件累积的神经元总膜电压V(

其中,

为了进一步过滤掉在空间域上孤立的噪声事件,在使用上述方法去噪之后,继续通过利用事件的空间信息计算像素位置内事件与其周围空间邻域内事件之间的相关性来过滤掉空间域上孤立的噪声事件。具体过程如下:用像素位置(m,n)处的神经元总膜电压与高斯核函数G的卷积表示该像素位置的事件与其周围邻域内事件的空间相关性,用δ

每个像素位置的空间邻域面积设为2R×2R,(j,k)表示空间邻域内某一像素位置,其中,j∈[m-R,m+R],k∈[n-R,n+R]且j,k为整数。所使用的高斯核函数的表达式为

其中,σ表示标准偏差,x、y表示高斯核函数的两个变量。

通过设置合适的空间相关性阈值δ

第一种技术方案,一种基于仿生分层脉冲神经网络的AER对象识别方法的过程是:首先将AER传感器输出的原始事件流数据进行去噪;然后,将去噪后的事件流输入给时空特征提取和分类模块,最后输出分类结果;

所述时空特征提取和分类模块用于事件流时空特征提取和分类:

时空特征提取和分类的流程图如图2所示,采用基于奖励调节STDP(R-STDP)学习算法的仿生分层SNN来进行时空特征提取和分类,使用的网络结构与HMAX模型相同,有S1-C1-S2-C2四层。

(1)S1层特征提取:去噪后的事件流数据输入给S1层进行初级时空特征提取,在这里共使用16个不同的Gabor滤波器(4个不同尺度和4个不同方向)密集覆盖输入场景。每个输入事件与这些Gabor滤波器进行事件驱动卷积。Gabor滤波器卷积核G

其中X=x cosθ+y sinθ,Y=-x sinθ+y cosθ,x和y是分别是像素的水平和垂直位置,参数λ是余弦因子的波长,θ是方向,σ是有效宽度,γ为纵横比。进行事件驱动卷积时,首先将S1层各特征图的初始响应值设置为0,当输入某个事件时,将每个卷积核覆盖到对应特征图上,卷积核的中心位置对应于该事件的像素位置。通过将卷积核的每个元素添加到该特征图来更新特征图的响应。同时特征图中的每个值的大小随时间按照恒定的变化率τ

(2)S1层特征编码:将事件驱动卷积后得到的S1层特征值编码成脉冲时间,以输入给后面的网络层进行后续的特征提取和分类。在这里使用强度到延迟的编码方案:对于S1层的每个二维特征图,如果其某位置的特征值为r,则该位置对应的神经元脉冲放电时间为1/r。这样将S1层特征值编码成脉冲时间,得到S1层各层每个位置的神经元的脉冲时间。

(3)C1层池化操作:将S1层编码后的脉冲时间输入给C1层进行池化操作,每个C1神经元从其相应池化窗口接收输入脉冲,引入侧向抑制机制为:如果C1层某特征图上某个位置的神经元放电,则位于该层其他特征图上相同位置的C1神经元的电位被重置为0,使其不放电。每个池化窗口只输出该窗口接收到的最早脉冲。此脉冲时间即为该C1神经元的放电时间。

(4)S2层特征提取:C1层神经元的放电脉冲输入给R-STDP卷积层(S2层)来提取更复杂的特征。每个S2层神经元接收S2层同一卷积窗口内C1层神经元的放电脉冲。在每个时间步长,S2层第l个神经元的膜电位更新如下:

V

其中V

其中W

(5)C2层网络分类决策:将S2层神经元的放电脉冲输入给网络的决策层(C2层)执行全局最大池化操作并进行网络决策。C2层根据S2层神经元发出的最早的脉冲信号进行决策。在网络学习之前,将C2层神经元根据输入类别的数量分成若干组,每组C2神经元对应于一种输入类别的标签,网络对输入样本类别的决策被定义为在该层最早放电的神经元所在组的标签。当网络训练次数达到预先设定值时,会输出分类结果,反之将继续执行训练。训练完成后,将网络S2层的突触权值保存下来。测试样本需要先进行S1层特征提取、S1特征编码和C1层池化操作,然后将C1层输出与保存的S2层突触权值进行卷积操作,将卷积之后的结果输入给C2层进行决策,最后输出测试样本的分类精度。

所述的基于仿生分层脉冲神经网络的AER对象识别方法可处理AER视觉传感器输出的原始事件流数据,例如MNIST-DVS数据集、Poker-DVS数据集或N-CARS数据集等AER数据集中的原始事件流数据。

本发明还提供一种计算机可读介质,其上存储有计算机程序,其中,所述计算机程序在被处理核执行时实现所述的基于仿生分层脉冲神经网络的AER对象识别方法。

与现有技术相比,本发明的有益效果是:

本发明提出的基于奖励调节STDP学习规则(STDP的英文全称为spike-timing-dependent plasticity,汉语释义为脉冲时间依赖突触可塑性)的仿生分层脉冲神经网络将传统图像的基于奖励调节STDP学习规则的脉冲神经网络创造性地应用在AER事件流数据上,可以深入提取事件流数据的时空特征,分类时充分利用了脉冲的时间信息,可以提高分类准确性,能够提取更加复杂的特征。

本发明识别方法中采用基于脉冲神经元的事件流去噪方式,综合考虑事件的时间和空间信息,计算简便,去噪效果好,计算量低,速度快。

本申请在基于Gabor滤波器的事件驱动卷积层提取事件流数据的初级特征之后,采用基于奖励调节STDP算法的卷积层进一步提取复杂特征,之后利用基于脉冲神经元的全局池化层进行分类决策。本网络与其他仿生分层SNNs在三种常用的AER基准数据集上分类精度,本发明识别方法的分类精度都优于对比算法,其中对于较简单的Poker-DVS数据集,本网络的分类精度达到了100%,对于较复杂的MNIST-DVS数据集,本网络在该数据集上获得94.99%的分类精度,比Gabor滤波器和基于软概率分类器结合的SNN方法、Gabor滤波器和基于Tempotron规则的全连接SNN结合的方法、以及Gabor滤波器和基于STDP规则的全连接SNN结合的方法,精度分别高出16.86%、6.85%、和5.03%。而对于在现实环境中记录的N-CARS数据集,特征更复杂识别难度更大,本网络在该数据集上获得87.54%的分类精度,分别比Gabor滤波器和基于软概率分类器结合的SNN方法、Gabor滤波器和基于Tempotron规则的全连接SNN结合的方法高出31.44%和12.74%。实验结果表明,将事件驱动卷积和基于奖励调节STDP学习算法的卷积相结合,可以更加充分的提取事件流数据的时空特征,并且分类性能有很大的提高。

附图说明

图1是本发明提出的AER对象识别方法的总体结构流程示意图。

图2是本发明事件流数据时空特征提取和分类的流程图。

图3是AER数据集为MNIST-DVS数据集时,图片去噪前后的二维重构图像。

图4是AER数据集为N-CARS数据集时,图片去噪前后的二维重构图像。

具体实施方式

下面结合实施例及附图进一步解释本发明,但并不以此作为对本申请保护范围的限定。需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互结合。

实施例1

本实施例提供一种了面向AER传感器事件流数据的对象识别方法,可以直接处理AER传感器输出的原始事件流数据,完成事件流数据的去噪、特征提取和分类识别。

下面以一个AER数据集(MNSIT-DVS,(Mixed National Institute of Standardsand Technology database)是美国国家标准与技术研究院收集整理的大型手写数字数据库,MNSIT-DVS事件流形式的数据集)为例,详细介绍该数据集去噪、特征提取和分类识别的全过程。

MNSIT-DVS数据集共10000个事件流数据样本,样本分辨率为28×28,其中9000个样本构成训练集,其余1000个样本构成测试集。

首先使用本发明提出的基于脉冲神经元的事件流去噪方式对MNSIT-DVS数据集的训练集和测试集样本进行去噪。对于每个事件流样本,将其输入给LIF神经元层,样本的每个像素位置都有一个LIF神经元接收该像素位置所产生的所有事件。该事件流样本的所有事件都输入给LIF神经元层后,像素位置(m,n)处所有事件累积的神经元总膜电压V(

其中,

在时间域上去噪之后,用像素位置(m,n)处的神经元总膜电压与高斯核函数G的卷积表示该像素位置的事件与其周围邻域内事件的空间相关性,用δ

每个像素位置的空间邻域面积都设为2R×2R,(j,k)表示空间邻域内某一像素位置,其中,j∈[m-R,m+R],k∈[n-R,n+R]且j,k为整数。所使用的高斯核函数的表达式为

其中,σ表示标准偏差。本实施例中R取值为2,σ取值为1。

如果像素位置(m,n)所产生的事件与其周围邻域内事件的相关性δ

这里相关性阈值δ

整个MNSIT-DVS数据集共10000个事件流数据样本,样本分辨率为28×28,用本发明提出的去噪方法,去噪过程用时1699.44s,平均每个样本去噪用时为0.17s。去噪效果示意图如图3所示。实验在Win10操作系统的计算机上完成,CPU为Intel Core i7-87003.20GHz CPU,内存为32G;GPU为NVIDIAGeForce RTX 2080TI GPU,内存为11GB。

采用基于脉冲神经元的事件流去噪方式,综合考虑事件的时间和空间信息,去噪效果好,计算量低,速度快。

实施例2

本实施例面向AER传感器事件流数据的对象识别方法,可以直接处理AER传感器输出的原始事件流数据,完成事件流数据的去噪、特征提取和分类识别。

将去噪之后的事件流训练样本数据集输入给仿生分层脉冲神经网络进行时空特征提取和分类,流程图如图2所示。首先事件流数据输入给S1层进行初级特征提取,在S1层使用了16个Gabor滤波器(4个不同尺度和4个不同方向)密集覆盖输入场景,即在输入场景的每个像素位置处使用了16个滤波器。每个输入事件e

X=x cosθ+y sinθ

Y=-x sinθ+y cosθ

其中,x和y是像素的水平和垂直位置,X和Y用于实现定向过滤器的旋转,参数λ是余弦因子的波长。θ是方向。σ是有效宽度。γ称为纵横比。对于MNIST-DVS数据集,所使用的Gabor滤波器的各参数如表1所示。

表1MNIST-DVS数据集对应的S1层Gabor滤波器参数

事件驱动卷积的操作如下:首先将S1层的特征图初始值设置为0,当输入事件e

然后使用强度到延迟的脉冲时间编码方案将MNIST-DVS数据集每个样本的16个S1特征图编码成脉冲时间序列。对于每一个S1特征图,如果像素位置(x,y)处的特征值为r,则该位置对应的神经元脉冲放电时间为1/r。也就是说在S1层特征图中强度值越大,相应的脉冲延迟时间越短,即脉冲时间越早。将编码后的所有脉冲时间按照数量平均分配到15个脉冲时间数据包中。这些数据包按照时间先后顺序依次传给网络后续各层,且在每个时间步长,网络每层只处理一个脉冲时间数据包。

接下来将MNIST-DVS数据集每个样本的16个S1层特征图编码后的脉冲时间序列输入给C1层进行池化操作。每个C1神经元从其池化窗口接收输入脉冲后,将池化窗口内的最早脉冲时间记为该C1神经元的脉冲时间。如果C1层某特征图上某个位置的神经元放电,则位于该层其他特征图上相同位置的C1神经元的电位被重置为0,使其不放电。

经过C1层池化操作之后,MNIST-DVS数据集的每个样本有16个C1特征图,特征图的每个值为对应位置C1神经元的脉冲。将C1特征图输入给R-STDP卷积层(S2层)来提取更复杂的特征。对于MNIST-DVS数据集,S2层有150个特征图。每个特征图的每个S2神经元接收其卷积窗口内C1层各特征图的神经元脉冲。在接收输入脉冲后,S2神经元更新其膜电位值。在每个时间步长,S2层第l个神经元的膜电位更新如下:

V

其中V

其中W

经过S2层卷积操作之后,每个S2层特征图的每个位置的输出为对应位置S2神经元的脉冲。最后将S2层得到的特征图输入给网络的决策层(C2层)执行全局最大池化操作并进行网络决策,即每个C2神经元的脉冲时间为其对应的池化窗口内的最早放电的S2神经元的脉冲时间。

在网络学习之前,将C2神经元根据输入类别的数量分成若干组,每组神经元对应于一种输入类别的标签。对于10分类的MNIST-DVS数据集,C2神经元被分成10组,每组设置了15个神经元,每组对应于一种类别的标签。通过这种方式,网络对MNIST-DVS训练数据集中的每个样本类别的决策被定义为在决策层中放电最早的C2神经元所在分组的标签。如果网络的决策是正确的(不正确的),网络将会获得奖励(惩罚)信号,该信号被用来调节R-STDP卷积层输入突触权值的修改。对于MNIST-DVS数据集当网络训练次数达到epoch=80时,表示网络训练完成,反之将继续执行训练。

训练完成后,将网络S2层的突触权值矩阵保存下来。然后将MNIST-DVS数据集的1000个测试样本经过去噪处理后,依次输入给仿生分层脉冲神经网络,这里网络S2层的突触权值不再根据奖励调节STDP算法修改,使用训练完成后保存的突触权值。由C2层进行每个样本类别的判别,最后输出MNIST-DVS数据集测试样本的分类精度为94.99%。

表2本网络与其他仿生分层SNNs在三种事件流数据集上分类精度

本发明未述及之处适用于现有技术。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号