【技术实现步骤摘要】
神经网络加速器、卷积运算实现方法、装置及存储介质
本专利技术涉及人工智能领域,尤其涉及一种神经网络加速器、卷积运算实现方法、装置及存储介质。
技术介绍
近些年来,人工智能技术在在全世界范围内得到了迅猛的发展,业界投入了大量的精力开展人工智能技术的研究工作,取得了显著的成果,特别是在图像检测和识别以及语言识别等方向上,人工智能的识别率已经超过了人类。神经网络处理是实现人工智能的重要处理技术,不过,神经网络规模的不断增长,导致典型的神经网络动辄几十层甚至上百层,神经元之间的连接数以亿记,即随着算法的性能指标不断提升,计算量不断的增加,完成推理需要的时间也需来越长。因此,神经网络的硬件加速器或处理器如何降低处理时间,提高处理效能,是目前业界都在关注的重点技术问题。
技术实现思路
本专利技术实施例提供的神经网络加速器、卷积运算实现方法、装置及存储介质,主要解决的技术问题是如何降低神经网络硬件加速器或处理器的处理时间,提高处理效能。为解决上述技术问题,本专利技术实施例提供一种神经网络卷积运算实现方法,包括:获取原始卷积核对应的子卷积核、压缩子卷积核以及权重索引,子卷积核通过对原始卷积核进行切分处理得到,压缩子卷积核和权重索引通过去除子卷积核中的零值权重,对剩余权重值进行重排得到;从待处理的原始数据中读取规格与子卷积核规格相匹配的原始数据块;控制计算单元阵列根据原始数据块、压缩子卷积核以及权重索引执行迭代流程,计算单元阵列中包括多个乘累加计算器;迭代流程结束后, ...
【技术保护点】
1.一种神经网络卷积运算实现方法,包括:/n获取原始卷积核对应的子卷积核、压缩子卷积核以及权重索引,所述子卷积核通过对所述原始卷积核进行切分处理得到,所述压缩子卷积核和所述权重索引通过去除所述子卷积核中的零值权重,对剩余权重值进行重排得到;/n从待处理的原始数据中读取规格与所述子卷积核规格相匹配的原始数据块;/n控制计算单元阵列根据所述原始数据块、压缩子卷积核以及权重索引执行迭代流程,所述计算单元阵列中包括多个乘累加计算器;/n迭代流程结束后,获取所述计算单元阵列的输出结果。/n
【技术特征摘要】
1.一种神经网络卷积运算实现方法,包括:
获取原始卷积核对应的子卷积核、压缩子卷积核以及权重索引,所述子卷积核通过对所述原始卷积核进行切分处理得到,所述压缩子卷积核和所述权重索引通过去除所述子卷积核中的零值权重,对剩余权重值进行重排得到;
从待处理的原始数据中读取规格与所述子卷积核规格相匹配的原始数据块;
控制计算单元阵列根据所述原始数据块、压缩子卷积核以及权重索引执行迭代流程,所述计算单元阵列中包括多个乘累加计算器;
迭代流程结束后,获取所述计算单元阵列的输出结果。
2.如权利要求1所述的神经网络卷积运算实现方法,其特征在于,所述迭代流程包括:将所述压缩子卷积核中的权重值按照所述计算单元阵列的计算节拍逐渐从所述计算单元阵列的第一侧输入,同时随着所述计算节拍根据所述权重索引的指示从所述原始数据块中读取数据自所述计算单元阵列的第二侧输入,一个所述压缩子卷积核中的各权重值将按照所述计算节拍逐渐流向与所述第一侧相对的第三侧,所述数据将按照所述计算节拍逐渐流向与所述第二侧相对的第四侧;所述计算单元阵列的输出结果作为下一次迭代的原始数据块。
3.如权利要求2所述的神经网络卷积运算实现方法,其特征在于,所述控制计算单元阵列根据所述原始数据块、压缩子卷积核以及权重索引执行迭代流程之前,还包括:
确定所述压缩子卷积核为支持威诺格拉德Winograde算法的卷积核;
将所述压缩子卷积核与所述原始数据块转换到Winograde域;
所述控制计算单元阵列根据所述原始数据块、压缩子卷积核以及权重索引执行迭代流程包括:控制所述计算单元阵列在所述Winograde域下根据所述权重索引执行所述压缩子卷积与所述原始数据块之间的卷积运算;
所述获取所述计算单元阵列的输出结果之后,还包括:
将获取的输出结果转换到数字域得到本次神经网络卷积运算的最终结果。
4.如权利要求2所述的神经网络卷积运算实现方法,其特征在于,所述将所述压缩子卷积核中的权重值按照所述计算单元阵列的计算节拍逐渐从所述计算单元阵列的第一侧输入,同时随着所述计算节拍根据所述权重索引的指示从所述原始数据块中读取数据从所述计算单元阵列的第二侧输入包括:
将所述压缩子卷积核中的权重值按照所述计算节拍逐渐从所述计算单元阵列的上边缘输入所述计算单元阵列,并随着所述计算节拍根据所述权重索引的指示从所述原始数据块中读取数据自所述计算单元阵列的左边缘输入所述计算单元阵列。
5.如权利要求2所述的神经...
【专利技术属性】
技术研发人员:余金清,闫盛男,汪立林,张鹤,
申请(专利权)人:中兴通讯股份有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。