卷积神经网络计算的方法和装置制造方法及图纸

技术编号:24458943 阅读:40 留言:0更新日期:2020-06-10 16:24
本申请提供一种卷积神经网络计算的方法和装置,卷积神经网络的第i层卷积层包括K个卷积核,每个卷积核有M个权值通道,M个输入数据矩阵的数据变换矩阵的每一行有X个非零元素,该方法包括:将第j个输入数据矩阵的卷积数据框中的X行数据进行winograd变换,X小于第j个输入数据矩阵的卷积数据框的行数;将经过winograd变换后的变换结果与经过winograd变换后的第j个卷积核矩阵中的一行权重进行点乘运算,得到中间结果;将M个权值通道对应的中间结果进行累加,得到累加结果;将累加结果进行winograd反变换,得到卷积数据框的计算结果,本申请提供的方法,降低了单次计算所需的资源和计算量,提高计算速率。

Method and device of convolution neural network calculation

【技术实现步骤摘要】
卷积神经网络计算的方法和装置
本申请涉及人工智能领域,并且更具体地,涉及一种卷积神经网络计算的方法和装置。
技术介绍
人工智能(artificialintelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式作出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。人工智能领域的研究包括机器人,自然语言处理,计算机视觉,决策与推理,人机交互,推荐与搜索,AI基础理论等。在卷积神经网络中的计算中,winograd是一种有效的加速算法,它的优势是可以减少乘法运算的数量,同时增加的额外运算(例如,加、减、移位)代价很小,因此,可明显提升计算性能。但是利用winograd算法,计算引擎的输入数据和权重带宽需求较大,造成硬件资源开销较大,计算的效率较低。专利
技术实现思路
本申本文档来自技高网
...

【技术保护点】
1.一种卷积神经网络计算的方法,其特征在于,所述卷积神经网络的第i层卷积层包括K个卷积核,每个卷积核有M个权值通道,所述M个权值通道对应M个输入数据矩阵,所述M个输入数据矩阵的数据变换矩阵中每一行有X个非零元素,所述方法包括:/n将第j个输入数据矩阵的卷积数据框中的X行数据进行winograd变换,j为小于或者等于M的正整数,X小于所述第j个输入数据矩阵的卷积数据框的行数;/n将经过winograd变换后的变换结果与经过winograd变换后的第j个卷积核矩阵中的一行权重进行点乘运算,得到所述第j个输入数据矩阵的卷积数据框的中间结果;/n将所述M个权值通道对应的所述中间结果进行累加,得到累加结...

【技术特征摘要】
1.一种卷积神经网络计算的方法,其特征在于,所述卷积神经网络的第i层卷积层包括K个卷积核,每个卷积核有M个权值通道,所述M个权值通道对应M个输入数据矩阵,所述M个输入数据矩阵的数据变换矩阵中每一行有X个非零元素,所述方法包括:
将第j个输入数据矩阵的卷积数据框中的X行数据进行winograd变换,j为小于或者等于M的正整数,X小于所述第j个输入数据矩阵的卷积数据框的行数;
将经过winograd变换后的变换结果与经过winograd变换后的第j个卷积核矩阵中的一行权重进行点乘运算,得到所述第j个输入数据矩阵的卷积数据框的中间结果;
将所述M个权值通道对应的所述中间结果进行累加,得到累加结果;
将所述累加结果进行winograd反变换,得到所述第j个输入数据矩阵的卷积数据框的卷积结果。


2.根据权利要求1所述的方法,其特征在于,X等于2,所述将第j个输入数据矩阵的卷积数据框中的两行数据进行winograd变换,包括:
将所述第j个输入数据矩阵的卷积数据框中的第一行和第三行数据进行winograd变换,得到第一变换结果;
将所述第j个输入数据矩阵的卷积数据框中的第二行和第三行数据进行winograd变换,得到第二变换结果和得到第三变换结果;
将所述第j个输入数据矩阵的卷积数据框中的第二行和第四行数据进行winograd变换,得到第四变换结果。


3.根据权利要求2所述的方法,其特征在于,所述将经过winograd变换后的变换结果与经过winograd变换后的第j个卷积核矩阵中的矩阵的一行数据进行点乘运算,包括:
将所述第一变换结果与经过winograd变换后的所述第j个卷积核矩阵中的第一行数据进行点乘运算,得到所述第j个输入数据矩阵的卷积数据框的第一计算结果;
将所述第二变换结果与经过winograd变换后的所述第j个卷积核矩阵中的第二行数据进行点乘运算,得到所述第j个输入数据矩阵的卷积数据框的第二计算结果;
将所述第三变换结果与经过winograd变换后的所述第j个卷积核矩阵中的第三行数据进行点乘运算,得到所述第j个输入数据矩阵的卷积数据框的第三计算结果;
将所述第四变换结果与经过winograd变换后的所述第j个卷积核矩阵中的第四行数据进行点乘运算,得到所述第j个输入数据矩阵的卷积数据框的第四计算结果。


4.根据权利要求3所述的方法,其特征在于,所述将所述M个权值通道对应的所述中间结果进行累加,得到累加结果,包括:
将所述M个权值通道中每个权值通道对应的所述第一计算结果相加,得到第一累加结果;
将所述M个权值通道中每个权值通道对应的所述第二计算结果相加,得到第二累加结果;
将所述M个权值通道中每个权值通道阵对应的所述第三计算结果相加,得到第三累加结果;
将所述M个权值通道中每个权值通道对应的所述第四计算结果相加,得到第四累加结果。


5.根据权利要求4所述的方法,其特征在于,所述将所述累加结果进行winograd反变换,得到所述第j个输入数据矩阵的卷积数据框的卷积结果,包括:
分别将所述第一累加结果、所述第二累加结果、所述第三累加结果、所述第四累加结果与反变换矩阵的转置矩阵相乘,分别得到第一反变换结果、第二反变换结果、第三反变换结果和第四反变换结果;
将所述第一反变换结果、所述第二反变换结果、所述第三反变换结果和所述第四反变换结果进行累加,得到所述第j个数据矩阵的卷积数据框的卷积结果。


6.根据权利要求1至5中任一项所述的方法,其特征在于,所述第j个输入数据矩阵的卷积数据框的大小为4×4的数据矩阵,所述卷积核矩阵为3×3的矩阵。


7.一种卷积...

【专利技术属性】
技术研发人员:王明书何占盈张佳
申请(专利权)人:深圳市海思半导体有限公司
类型:发明
国别省市:广东;44

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

1