[发明专利]一种针对基于FPGA的卷积神经网络加速器的数据结构和加速方法在审
申请号: | 201811581380.7 | 申请日: | 2018-12-24 |
公开(公告)号: | CN109409509A | 公开(公告)日: | 2019-03-01 |
发明(设计)人: | 姜凯;于治楼;高岩 | 申请(专利权)人: | 济南浪潮高新科技投资发展有限公司 |
主分类号: | G06N3/04 | 分类号: | G06N3/04 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 陈婷婷 |
地址: | 250100 山东省济南市*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据结构 卷积神经网络 量化参数 加速器 形状参数 连接层 卷积 偏置 右移 数据传输效率 计算单元 计算效率 配置数据 神经网络 数据格式 智能计算 填充 优化 | ||
1.一种针对基于FPGA的卷积神经网络加速器的数据结构,其特征在于该数据结构包含以下参数:量化参数、量化参数的右移位数、0点参数、偏置项和卷积层/全连接层形状参数。
2.根据权利要求1所述的一种针对基于FPGA的卷积神经网络加速器的数据结构,其特征在于所述0点参数为2个,用Z1、Z2表示。
3.根据权利要求1所述的一种针对基于FPGA的卷积神经网络加速器的数据结构,其特征在于所述卷积层/全连接层的形状参数分别用R、S、C、K/C、K表示。
4.根据权利要求3所述的一种针对基于FPGA的卷积神经网络加速器的数据结构,其特征在于在卷积层中,R表示卷积核高度,S表示卷积核宽度,C表示通道数,K表示卷积核的个数;
在全连接层中,C表示上一层神经元个数,K表示当前层神经元个数。
5.根据权利要求1或2或3所述的一种针对基于FPGA的卷积神经网络加速器的数据结构,其特征在于用M表示量化参数,用Right_shift表示量化参数的右移位数,用Bias表示偏置项。
6.根据权利要求5所述的一种针对基于FPGA的卷积神经网络加速器的数据结构,其特征在于所述量化参数为32位整形,量化参数的右移位数为8为整形,0点参数为8位整形,偏置项为8位整形,卷积层/全连接层形状参数为8位整形。
7.根据权利要求6所述的一种针对基于FPGA的卷积神经网络加速器的数据结构,其特征在于该数据结构还包括参数weight和参数padding,
参数weight表示卷积核/全连接层的权重值,其序列元素个数为所有卷积层/全连接层形状参数的乘积;
参数padding用于补齐数据结构至32位。
8.根据权利要求7所述的一种针对基于FPGA的卷积神经网络加速器的数据结构,其特征在于所述参数weight为8位整形序列,参数padding为8位整形。
9.一种针对基于FPGA的卷积神经网络加速器的加速方法,其特征在于针对FPGA进行卷积神经网络计算的数据格式,配置数据空间,设计数据结构,将卷积神经网络计算单元需求的参数进行填充;
所述数据结构包含以下参数:量化参数、量化参数的右移位数、0点参数、偏置项和卷积层/全连接层形状参数。
10.根据权利要求9所述的一种针对基于FPGA的卷积神经网络加速器的加速方法,其特征在于用M表示量化参数,M为32位整形数据;用Right_shift表示M右移位数,Right_shift为8为整形数据;用Z1、Z2表示0点参数,Z1、Z2均为8位整形数据;用Bias表示偏置项,Bias为8位整形数据;用R、S、C、K表示卷积层/全连接层的形状,R、S、C、K/C、K均为8位整形数据;
另外,该数据结构还包括参数Weight和参数Padding,
Weight为8位整形序列,序列元素为R、S、C、K/C、K的乘积,用于表示卷积核/全连接层的权重值;
Padding为8位整形数据,用于补齐数据结构至32位。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于济南浪潮高新科技投资发展有限公司,未经济南浪潮高新科技投资发展有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811581380.7/1.html,转载请声明来源钻瓜专利网。