本发明涉及人工智能领域,尤其涉及一种均衡延迟和精度的ann-snn转换方法、装置和介质。
背景技术:
1、ann(artificial neural network,人工神经网络)是指由大量的处理单元(神经元)互相连接而形成的复杂网络结构,是对人脑组织结构和运行机制的某种抽象、简化和模拟。以数学模型模拟神经元活动,这是基于模仿大脑神经网络结构和功能而建立的一种信息处理系统。ann在目前的许多领域都有应用,包括自然语言处理、人脸识别、自动驾驶、ai助手等。但其也有许多的局限性,比如ann通常需要大量的数据来进行训练,从而产生了大量的能耗。而且在概括方面的能力表现不佳。虽然ann脱胎于对人脑机制的模仿,但是并没有模仿生物大脑神经元的机制。
2、为了弥合神经科学和机器学习之间的差距,snn(spiking neural network,脉冲神经网络)应运而生。snn属于第三代神经网络模型,实现了更高级的生物神经模拟水平。除了神经元和突触状态之外,snn还将时间概念纳入了其操作之中,是模拟大脑神经元动力学的一类很有前途的模型。因为snn是由事件驱动的,具有稀疏矩阵,因此具有较低的能耗,所以snn可以在神经网络芯片上大放异彩。
3、目前,获得多层snn的方法有两种:(1)直接训练snn网络,主要包括无监督的尖峰时间相关塑性(stdp,spike timing dependnt plasticity)方法和基于尖峰的误差反向传播方法。但这仍然是不成熟的,并不能达到ann的精度。(2)将训练好的神经网络转化为神经网络。snn使用与ann相同的结构,并直接映射ann的参数,从而节省了额外的训练时间和资源。这是目前获得较高精度的snn所使用的主要办法,本发明就是在此方法基础之上进行改进。
4、与ann中的推理不同,snn中的推理使用t个时间步长来获得最终精度,这在精度和能量消耗之间有一些取舍:更高的精度需要更大的时间步长,因此需要更多的能耗。在更少的时间步长内获得令人满意的精度是研究人员追求的目标。虽然目前所用ann-snn方法有很多优点,但现在的方法在前几个时间步的精度难以令人满意,并且非常大的时间步导致了较大的推理延迟和功耗。
5、本发明所提的方法适用于在ann转换snn过程中,在之前ann-snn方法的基础上,使用奖惩阈值的方式在初始步长内实现了高性能,同时降低了在较大时间步中的大功耗的问题。
技术实现思路
1、本发明的目的在于针对现有技术的不足,提供一种均衡延迟和精度的ann-snn转换方法、装置和介质。
2、本发明的目的是通过以下技术方案来实现的:本发明实施例第一方面提供了一种均衡延迟和精度的ann-snn转换方法,包括以下步骤:
3、(1)对ann网络进行修改:将ann网络中的激活函数替换为relu激活函数,并将所有的池化操作替换为平均池化操作,以获取修改好的ann网络;
4、(2)对ann网络进行训练:使用训练数据集对所述步骤(1)获取的修改好的ann网络进行训练,并采用梯度下降法反向更新ann网络的参数,以获取训练好的ann网络及其对应的权重和偏差;
5、(3)对snn网络进行转换:将所述步骤(2)获取的训练好的ann网络对应的权重和偏差复制到snn网络对应的层中,并将snn网络中的阈值参数修改为奖惩阈值,以获取转换后的snn网络。
6、进一步地,所述奖惩阈值的表达式为:
7、
8、其中,表示奖惩阈值,参数α为奖励因子,参数β为惩罚因子,表示膜电位。
9、进一步地,所述奖励因子的表达式为:
10、
11、其中,t表示时间步长,reward mode表示奖励模式,silent表示静默模式。
12、进一步地,所述惩罚因子的表达式为:
13、
14、其中,γ表示惩罚模式下的阈值,penalty mode表示惩罚模式。
15、进一步地,所述惩罚模式下的阈值γ的表达式为:
16、
17、其中,表示实际速率阈值,l表示层数,i表示神经元编号,t表示时间步数,rth表示预期的速率阈值。
18、进一步地,所述奖惩阈值的设置取决于硬件的可负担性。
19、本发明实施例第二方面提供了一种均衡延迟和精度的ann-snn转换装置,包括一个或多个处理器,用于实现上述的均衡延迟和精度的ann-snn转换方法。
20、本发明实施例第三方面提供了一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时,用于实现上述的均衡延迟和精度的ann-snn转换方法。
21、本发明的有益效果是,本发明通过在原有的ann-snn转换方法中引入了奖惩阈值来达到推理延迟和推理精度的平衡,不仅可以在初始的时间步长中仅增加较少能耗就达到较高性能以及较高精度,并且在更大的时间步长中消耗更低的能量。
1.一种均衡延迟和精度的ann-snn转换方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的均衡延迟和精度的ann-snn转换方法,其特征在于,所述奖惩阈值的表达式为:
3.根据权利要求2所述的均衡延迟和精度的ann-snn转换方法,其特征在于,所述奖励因子的表达式为:
4.根据权利要求2所述的均衡延迟和精度的ann-snn转换方法,其特征在于,所述惩罚因子的表达式为:
5.根据权利要求4所述的均衡延迟和精度的ann-snn转换方法,其特征在于,所述惩罚模式下的阈值γ的表达式为:
6.根据权利要求1所述的均衡延迟和精度的ann-snn转换方法,其特征在于,所述奖惩阈值的设置取决于硬件的可负担性。
7.一种均衡延迟和精度的ann-snn转换装置,其特征在于,包括一个或多个处理器,用于实现权利要求1-6中任一项所述的均衡延迟和精度的ann-snn转换方法。
8.一种计算机可读存储介质,其特征在于,其上存储有程序,该程序被处理器执行时,用于实现权利要求1-6中任一项所述的均衡延迟和精度的ann-snn转换方法。