神经网络处理器的数据处理方法及神经网络处理器技术

技术编号:13876816 阅读:125 留言:0更新日期:2016-10-22 13:13
本发明专利技术实施例提供一种神经网络处理器的数据处理方法及神经网络处理器。该方法包括:通过加法器将输入数据和相应的权重绝对值相加,输入数据为前一级输出的数据,输入数据和权重绝对值为n元向量,依次将输入数据和相应的权重绝对值相加后的n项数据进行n次第一非线性映射。将第一非线性映射后的结果通过累加器进行n次累加操作,累加操作包括权重符号位控制的加法操作和减法操作,将n次累加操作后的结果进行第二非线性映射得到处理结果并进行数据输出,第二非线性映射根据神经网络非线性映射的规律和第一非线性映射的逆映射制定。从而提高了量化效率,降低了数据的存储需求和带宽需求。

【技术实现步骤摘要】

本专利技术实施例涉及电子芯片
,尤其涉及一种神经网络处理器的数据处理方法及神经网络处理器
技术介绍
神经网络及深度学习算法已经获得了非常成功的应用,并处于迅速发展的过程中,业界普遍预期新的计算方式有助于实现更为普遍、复杂的智能应用。神经网络及深度学习算法近年来在图像识别应用领域取得了非常突出的成就,因此业界对神经网络及深度学习算法的优化及高效率实现开始关注并重视,诸如facebook,Qualcomm,baidu,google等公司都投入了神经网络优化算法的研究。Qualcomm公司发布了在下一代芯片中集成神经网络处理模块的计划,提高神经网络算法的处理效率,相关算法的改进,及芯片实现的效率是其关注和研究的核心问题。图1为一个n级(层)的神经网络计算模型示意图,神经网络处理其中的一个神经元的计算形如:y=f(x1*w1+x2*w2+…+xn*wn+b),计算是分级进行的,前一级的输出是后一级的输入。图2为传统的计算方法流程图,前级输出作为数据输入(x1、x2、…xn),x1、x2、…xn分别与对应的权参数相乘,然后由累加器完成x1*w1+x2*w2+…+xn*wn+b的累加操作,再经过非线性映射y=f(累加后的结果)得到计算结果,最后完成数据输出。可以看出,在上述数据处理方法中,由于涉及到的乘法的计算复杂度比较高,在一定计算精度要求下,对应数据的存储需求和带宽需求也比较高,计算效率不高。
技术实现思路
本专利技术实施例提供一种神经网络处理器的数据处理方法及神经网络处理器,以解决现有的处理方法中存在的数据的存储需求和带宽需求较高、计算
率不高的问题。第一方面,本专利技术实施例提供一种神经网络处理器的数据处理方法,该方法包括:首先通过加法器将输入数据和相应的权重绝对值相加,输入数据为前一级输出的数据,输入数据和权重绝对值为n元向量。接着依次将输入数据和相应的权重绝对值相加后的n项数据进行n次第一非线性映射。然后将第一非线性映射后的结果通过累加器进行n次累加操作,累加操作包括权重符号位控制的加法操作和减法操作。最后将n次累加操作后的结果进行第二非线性映射得到处理结果并进行数据输出,第二非线性映射根据神经网络非线性映射的规律和第一非线性映射的逆映射制定。从而实现了将复杂的乘法计算转变为加法计算,提高了量化效率,存储的容量和带宽可以压缩,因此降低了数据的存储需求和带宽需求,提高了计算效率。而且输入数据不限于0/1二元量化,使得计算精度满足实际应用网络的需求,能适用除神经网络计算以外更广范围的应用目标。在一个可能的设计中,第一非线性映射为2的M次幂变换,M为输入数据和相应的权重绝对值相加后的n项数据中的各项。采用2的M次幂变换由于映射关系简单,硬件实现代价低。在一个可能的设计中,当第一非线性映射是m的M次幂变换,m不等于2时,为使电路实现简单,将m的M次幂变换转换为2的M次幂变换,通过加法器将输入数据和相应的权重绝对值相加之前,还包括:对输入数据乘以比例系数K1,和/或,对权重绝对值乘以比例系数K2,K1与K2相等或不等;或者,通过加法器将输入数据和相应的权重绝对值相加之后,还包括:对相加后的n项数据中的各项乘以比例系数K3。其中,K1、K2、K3不等于0。在一个可能的设计中,K1、K2、K3为1+1/2N或1-1/2N。在一个可能的设计中,输入数据或权重绝对值等于0时,累加操作为当前累加项维持不变。权重符号位为负时,累加操作为减法操作。累加器处于维持状态,由于在实际的神经网络计算过程中,无论数输入数据还是权重,存在大量的0,因此这样可以简化处理,降低功耗。在一个可能的设计中,通过模拟电路实现第一非线性映射或第二非线性映射或累加操作。模拟非线性转换,加法的实现都是可以瞬时完成的,不依懒于数字时钟的速率。第二方面,本专利技术实施例提供一种神经网络处理器,包括:加法电路,用于将输入数据和相应的权重绝对值相加,输入数据为前一级输出的数据,输入数据和权重绝对值为n元向量。第一非线性映射电路,用于依次将输入数据和相应的权重绝对值相加后的n项数据进行n次第一非线性映射。累加电路,用于将第一非线性映射后的结果进行n次累加操作,累加操作包括权重符号位控制的加法操作和减法操作。第二非线性映射电路,用于将n次累加操作后的结果进行第二非线性映射得到处理结果并进行数据输出,第二非线性映射根据神经网络非线性映射的规律和第一非线性映射的逆映射制定。在一个可能的设计中,第一非线性映射电路为2的M次幂变换电路,M为输入数据和相应的权重绝对值相加后的n项数据中的各项。在一个可能的设计中,还包括:第一乘法电路,用于在加法电路将输入数据和相应的权重绝对值相加之前,对输入数据乘以比例系数K1;和/或,第二乘法电路,用于在加法电路将输入数据和相应的权重绝对值相加之前,对权重绝对值乘以比例系数K2,K1与K2相等或不等;或者,第三乘法电路,用于在加法电路将输入数据和相应的权重绝对值相加之后,对相加后的n项数据中的各项乘以比例系数K3;其中,K1、K2、K3不等于0。在一个可能的设计中,K1、K2、K3为1+1/2N或1-1/2N。在一个可能的设计中,输入数据或权重绝对值等于0时,累加操作为当前累加项维持不变;权重符号位为负时,累加操作为减法操作。上述第二方面以及上述第二方面的各可能的设计中所提供的神经网络处理器,其有益效果可以参见上述第一方面和第一方面的各可能的设计中所带来的有益效果,在此不再赘述。本专利技术实施例提供的神经网络处理器的数据处理方法及神经网络处理器,通过加法器将输入数据和相应的权重绝对值相加,输入数据为前一级输出的数据,接着依次将输入数据和相应的权重绝对值相加后的n项数据进行n次第一非线性映射,将第一非线性映射后的结果通过累加器进行n次累加操作,累加操作包括权重符号位控制的加法操作和减法操作,最后将n次累加操作后的结果进行第二非线性映射得到处理结果并进行数据输出,第二非线性映射根据神经网络非线性映射的规律和第一非线性映射的逆映射制定。从而实现了将复杂的乘法计算转变为加法计算,提高了量化效率,存储的容
量和带宽可以压缩,因此降低了数据的存储需求和带宽需求,提高了计算效率。而且输入数据不限于0/1二元量化,使得计算精度满足实际应用网络的需求,能适用除神经网络计算以外更广范围的应用目标。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为一个n级(层)的神经网络计算模型示意图;图2为传统的计算方法流程图;图3为本专利技术神经网络处理器的数据处理方法实施例一的流程图;图4为本专利技术神经网络处理器的数据处理方法实施例二的计算框图;图5为本专利技术神经网络处理器的数据处理方法实施例三的计算框图;图6为本专利技术神经网络处理器的数据处理方法实施例三中2的M次幂变换示意图;图7为本专利技术神经网络处理器实施例一的结构示意图;图8为本专利技术神经网络处理器实施例二的结构示意图;图9为本专利技术神经网络处理器实施例三的结构示意图。本文档来自技高网
...

【技术保护点】
一种神经网络处理器的数据处理方法,其特征在于,包括:通过加法器将输入数据和相应的权重绝对值相加,所述输入数据为前一级输出的数据,所述输入数据和所述权重绝对值为n元向量;依次将所述输入数据和相应的权重绝对值相加后的n项数据进行n次第一非线性映射;将第一非线性映射后的结果通过累加器进行n次累加操作,所述累加操作包括权重符号位控制的加法操作和减法操作;将n次累加操作后的结果进行第二非线性映射得到处理结果并进行数据输出,所述第二非线性映射根据神经网络非线性映射的规律和所述第一非线性映射的逆映射制定。

【技术特征摘要】
1.一种神经网络处理器的数据处理方法,其特征在于,包括:通过加法器将输入数据和相应的权重绝对值相加,所述输入数据为前一级输出的数据,所述输入数据和所述权重绝对值为n元向量;依次将所述输入数据和相应的权重绝对值相加后的n项数据进行n次第一非线性映射;将第一非线性映射后的结果通过累加器进行n次累加操作,所述累加操作包括权重符号位控制的加法操作和减法操作;将n次累加操作后的结果进行第二非线性映射得到处理结果并进行数据输出,所述第二非线性映射根据神经网络非线性映射的规律和所述第一非线性映射的逆映射制定。2.根据权利要求1所述的方法,其特征在于,所述第一非线性映射为2的M次幂变换,M为所述输入数据和相应的权重绝对值相加后的n项数据中的各项。3.根据权利要求1或2所述的方法,其特征在于,所述通过加法器将输入数据和相应的权重绝对值相加之前,还包括:对所述输入数据乘以比例系数K1,和/或,对所述权重绝对值乘以比例系数K2,K1与K2相等或不等;或者,所述通过加法器将输入数据和相应的权重绝对值相加之后,还包括:对相加后的n项数据中的各项乘以比例系数K3;其中,K1、K2、K3不等于0。4.根据权利要求3所述的方法,其特征在于,K1、K2、K3为1+1/2N或1-1/2N。5.根据权利要求1-4任一项所述的方法,其特征在于,所述输入数据或所述权重绝对值等于0时,所述累加操作为当前累加项维持不变;所述权重符号位为负时,所述累加操作为减法操作。6.根据权利要求1-5任一项所述的方法,其特征在于,通过模拟电路实现所述第一非线性映射或所述第二非线性映射或所述累加操作。7.一种神经网络处理器,其特征在于...

【专利技术属性】
技术研发人员:费旭东
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1