专利汇可以提供一种基于快速滤波算法的卷积神经网络加速器电路专利检索,专利查询,专利分析的服务。并且本 发明 请求 保护一种基于快速滤波 算法 的 卷积神经网络 加速 器 电路 。为了减少卷积神经网络算法(CNN)的计算量,本发明利用快速滤波算法消除了二维卷积运算中卷积窗口之间重叠区域计算的冗余,使得算法强度缩减,提高了卷积计算效率。接着,本发明设计了4并行快速滤波算法的卷积计算加速单元,该单元采用若干小 滤波器 组成的复杂度较低的并行滤波结构来实现。这对于可编程的FPGA设计来说,不仅可以降低 硬件 资源的消耗,还可以提升运行速度。同时本文还对激活函数进行了优化设计,利用查找表和多项式结合的分段拟合方法设计了激活函数(sigmoid)的硬件电路,以保证近似的激活函数的硬件电路不会使 精度 下降。,下面是一种基于快速滤波算法的卷积神经网络加速器电路专利的具体信息内容。
1.一种基于快速滤波算法的卷积神经网络加速器电路,其特征在于,包括:输入数据缓存RAM单元、卷积核系数及偏置值缓存RAM单元、行缓存FIFO单元、卷积计算加速单元、偏置&激活函数&池化计算单元、全连接层权值缓存RAM单元、池化层RAM阵列单元、激活函数sigmoid模块及全连接层计算单元。同时,控制单元包括输入数据及卷积核数据缓存控制单元、行缓存循环控制单元、池化数据RAM存储器控制单元、全连接层权值缓存控制单元。所述输入数据缓存RAM单元分别和输入数据及卷积核数据缓存控制单元、行缓存FIFO单元相连接,所述行缓存FIFO单元分别和卷积计算加速单元、池化层RAM阵列单元相连接,卷积核系数及偏置值缓存RAM单元分别和输入数据及卷积核数据缓存控制单元、卷积计算加速单元相连接,所述卷积计算加速单元和偏置&激活函数&池化计算单元相连接,池化层RAM阵列单元分别和池化数据RAM存储器控制单元、行缓存FIFO单元、偏置&激活函数&池化计算单元及全连接层计算单元相连接,全连接层计算单元分别和激活函数sigmoid模块、全连接层权值缓存RAM单元相连接,所述全连接层权值缓存RAM单元和全连接层权值缓存控制单元相连接,其中,输入数据缓存RAM单元用于存储原始图像数据,卷积核系数及偏置值缓存RAM单元用于存储不同的卷积层中卷积核数据及偏置值数据,行缓存FIFO单元用于缓存卷积运算中卷积窗口内的特征数据,卷积计算加速单元用于实现快速滤波算法,以完成特征提取的任务,偏置&激活函数&池化计算单元用于实现非线性变换及下采样,全连接层权值缓存RAM单元用于存储完成神经元全连接的权值数据,池化层RAM阵列单元用于存储池化层中下采样的结果,激活函数sigmoid模块用于实现激活函数的拟合,及全连接层计算单元用于实现特征分类的硬件电路。
2.根据权利要求1所述的一种基于快速滤波算法的卷积神经网络加速器电路,其特征在于,所述卷积神经网络加速器电路是在FPGA上实现的逐层加速硬件架构,通过利用快速滤波算法,该架构并没有为每层都设计特定的硬件,而是设计一组硬件,然后将其重用于所需要使用的不同层中,其中行缓存循环控制单元决定了何时启动每个硬件单元,实现CNN中多个层的计算,实现了一个卷积层,该卷积层被重用于网络中的任何卷积层。
3.根据权利要求1所述的一种基于快速滤波算法的卷积神经网络加速器电路,其特征在于,所述卷积计算加速单元是基于快速滤波算法实现的,二维的快速滤波算法更适用于卷积神经网络的二维矩阵卷积,当为4并行输出时,为了便于理解,只演示一张输入特征图的卷积过程,卷积核用x(i,j)表示,输出用Y(m,n)表示,卷积计算公式如式(1)所示,其中N表示卷积核的尺寸;M表示输出特征图的尺寸,当用快速滤波器算法实现二维卷积运算时,当为4并行输出时,滤波器系数x(i,j)和滤波器输入h(i,j)从i的方向上按间隔2顺序取值如下:
x(i,j)'=[x(i,j),x(i+2,j),…,x(i+N-2,j)]T (2)
h(i,j)'=[h(i,j),h(i+2,j),…,h(i+N-2,j)]T (3)
2
然后,再从j的方向上组成Xij和Hij,矢量Xij和Hij的长度为N/4;
Xij=[x(i,j)',x(i,j+2)',…,x(i,j+N-2)']T (4)
Hij=[h(i,j)',h(i,j+2)',…,h(i,j+N-2)']T (5)
其中每个元素分别是当前N×N卷积窗口中(i,j)处的卷积核系数和图像像素,因此,对于公式(4)的4并行输出:Y(2m,2n),Y(2m+1,2n),Y(2m,2n+1),Y(2m+1,2n+1),可写成公式(6)的形式,4并行输出其实是输出特征图中一个2×2的矩阵块:
在等式(6)的右侧中,H矩阵在对角线方向上有4个相同的矢量对:H2m+1,2n,H2m+1,2n+
1,H2m+1,2n+1,H2m+1,2n+2,因此可以将(6)分解为式(7)的形式;
其中Bi,j和A0,A1可用下列式子表示,
Bi,j=Hi,j+Hi+1,j (8)
A0=X00-X10 (9)
A1=X01-X11 (10)
其中的乘积项(B2m,2n+B2m,2n+1)X00等是二维滤波器,这个4并行快速滤波器算法将二维卷积运算分解为9个子滤波器和预/后处理来计算一个4输出的块,这些预/后处理运算是通过增加加减法运算数目来减少乘法运算数目,如果忽略这些小开销,对于4并行快速滤波器算法,每个输出采样的乘法复杂度从N2减小到9N2/16。
4.根据权利要求1所述的一种基于快速滤波算法的卷积神经网络加速器电路,其特征在于,所述卷积计算加速单元包括:像素数据预处理运算模块、卷积核系数预处理运算模块、二维子滤波通道模块和二维滤波后处理模块,所述像素数据预处理运算模块、卷积核系数预处理运算模块与二维子滤波通道模块的输入端相连接,所述二维子滤波通道模块的输出端与二维滤波后处理模块的输入端相连接,所述二维滤波后处理的输出端输出卷积结果信号,其中,二维子滤波通道模块共包含9个并行的子滤波通道,每一个子滤波通道均为N2/
4阶的滤波器,令N为偶数。二维子滤波通道模块的输出经过二维滤波后处理模块将其转化成后置加法矩阵中的数据形式,并通过加法运算将输出作为卷积结果信号。
5.根据权利要求1-4之一所述的一种基于快速滤波器算法的卷积神经网络加速器电路,其特征在于,所述全连接层计算单元包括:内积运算模块和激活函数sigmoid运算模块,内积运算模块用于把所有局部特征结合起来抽象成全局特征,激活函数sigmoid运算模块用于非线性变换,非线性函数sigmoid在FPGA上不能直接实现,使用查找表和多项式相结合的方法对sigmoid函数进行分段逼近。
标题 | 发布/更新时间 | 阅读量 |
---|---|---|
一种FHSS-GMSK系统多重同步方法 | 2020-05-08 | 901 |
一种基于双光梳光谱技术的温度和浓度测量系统和方法 | 2020-05-08 | 600 |
一种PGC相位解调法中相位延迟提取与补偿方法 | 2020-05-08 | 551 |
一种基于单张图片的三维头发重建方法 | 2020-05-08 | 414 |
载波多普勒及其变化率的高精度测量方法 | 2020-05-08 | 293 |
一种磁轴承控制方法及其控制平台 | 2020-05-08 | 802 |
一种特征权重自学习的睡眠质量检测关键脑区判定方法 | 2020-05-08 | 594 |
一种基于深度卷积神经网络的深度图增强方法 | 2020-05-08 | 646 |
电磁近场相干传感的方法和系统 | 2020-05-11 | 177 |
一种基于蓝牙技术的踢脚线取暖器远程控制系统 | 2020-05-11 | 424 |
高效检索全球专利专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。
我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。
专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。