[发明专利]面向向量处理器的卷积神经网络运算向量化方法有效
申请号: | 201810687639.X | 申请日: | 2018-06-28 |
公开(公告)号: | CN108985450B | 公开(公告)日: | 2019-10-29 |
发明(设计)人: | 刘仲;田希;陈海燕;郭阳;扈啸;孙永节;陈跃跃;王丽萍 | 申请(专利权)人: | 中国人民解放军国防科技大学 |
主分类号: | G06N3/063 | 分类号: | G06N3/063;G06F17/15;G06F17/16 |
代理公司: | 湖南兆弘专利事务所(普通合伙) 43008 | 代理人: | 周长清;胡君 |
地址: | 410073 湖南*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 缓冲区 卷积运算 运算 卷积神经网络 向量处理器 向量存储器 输入特征 向量数据 向量化 计算效率 结果传输 卷积计算 向量处理 向量阵列 循环执行 依次读取 并行性 卷积核 累加 移动 处理器 存储 | ||
1.一种面向向量处理器的卷积神经网络运算向量化方法,其特征在于,步骤包括:
S1.将向量存储器的标量存储L1D设置为SRAM方式,并根据向量处理器的体系结构特征参数、输入特征参数和卷积核参数将L1D划分为两个缓冲区以存储输入特征数据;
S2.依次将输入特征数据传入到L1D的两个缓冲区中;
S3.依次将卷积核数据传入到向量存储器的向量阵列中进行存储;
S4.依次开启L1D中两个缓冲区的计算,每个缓冲区计算时从缓冲区中依次选取一个移动卷积运算窗口与向量阵列中存储的所述卷积核数据进行卷积运算,每个所述移动卷积运算窗口进行运算时,依次读取一个输入特征数据并扩展为向量数据,各卷积核分别从向量阵列中读取对应的所述卷积核数据后与扩展得到的向量数据进行乘累加;
S5.由向量处理部件将得到的卷积计算结果传输到片外存储中;
S6.循环执行步骤S2~S5,直至完成所有输入特征数据的卷积运算;
所述步骤S4中每个所述移动卷积运算窗口进行运算时,具体由向量处理器的标量处理部件SPU依次从所述移动卷积运算窗口中读取一个输入特征数据,并扩展到向量处理部件的一个向量数据,得到扩展后向量数据,由向量处理部件VPU对n个卷积核依次读取对应的卷积核的一个卷积核数据后,分别与所述扩展后向量数据进行乘累加,当遍历完所述移动卷积运算窗口内所有输入特征数据后,完成当前移动卷积运算窗口的卷积计算。
2.根据权利要求1所述的面向向量处理器的卷积神经网络运算向量化方法,其特征在于,两个所述缓冲区的数据传输与计算过程为相互重叠,即当一个缓冲区中数据就绪以后进行计算,同时开启另一个缓冲区的数据传输,完成一个缓冲区的计算以后再开启另一个缓冲区的计算。
3.根据权利要求1所述的面向向量处理器的卷积神经网络运算向量化方法,其特征在于,所述步骤S1中划分两个缓冲区的具体步骤为:令t=(w+2p-k)/s+1,其中,w为输入特征的行数、列数,p为填充的数量,k为卷积核的行、列数,s为卷积计算的步长,若t为偶数,则令t1=t2=t/2,若t为奇数,则令t1=(t+1)/2,t2=(t-1)/2,且令w1=(t1-1)*s+k,w2=(t2-1)*s+k;将L1D划分为第一缓冲区Buffer1和第二缓冲区Buffer2,所述第一缓冲区Buffer1存储的输入特征数据的规模为c*r*w1,所述第二缓冲区Buffer2存储的输入特征数据的规模为c*r*w2,其中c为通道数目,r为满足所述第一缓冲区Buffer1与所述第二缓冲区Buffer2的存储数据量之和不超过L1D容量的最大值。
4.根据权利要求3所述的面向向量处理器的卷积神经网络运算向量化方法,其特征在于,所述步骤S2的具体步骤为:每次传入输入特征数据时,所述第一缓冲区Buffer1存储每个通道的前w1列数据,所述第二缓冲区Buffer2存储的是每个通道的后w2列数据,其中将输入特征数据传入到所述第一缓冲区Buffer1时,将c个通道的输入特征数据依次进行存储,且每个通道的输入特征数据存储时,按照r*w1矩阵模式存储数据,即矩阵的行数为r,矩阵的列数为w1;将输入特征数据传入至所述第二缓冲区Buffer2时,将c个通道的输入特征数据依次存储,且每个通道的输入特征数据存储时,按照r*w2矩阵模式存储数据,即矩阵的行数为r,矩阵的列数为w2。
5.根据权利要求1~4中任意一项所述的面向向量处理器的卷积神经网络运算向量化方法,其特征在于,所述步骤S3的具体步骤为:将各个通道的卷积核数据依次存储,且每个通道的n个卷积核数据存储时,按照(k2)*n矩阵模式存储数据,其中k为卷积核的行、列数,n为卷积核的个数,即矩阵的行数为卷积核的行列数乘积(k2),矩阵的列数为卷积核的个数n,使得卷积核的元素全部依次存储在一列上。
6.根据权利要求1~4中任意一项所述的面向向量处理器的卷积神经网络运算向量化方法,其特征在于,所述步骤S4中,具体根据卷积步长s选取所述移动卷积运算窗口,将所述移动卷积运算窗口中输入特征数据与所有需要进行卷积计算的n个卷积核分别进行计算,完成所述移动卷积运算窗口内输入特征数据的卷积运算。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科技大学,未经中国人民解放军国防科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810687639.X/1.html,转载请声明来源钻瓜专利网。