专利类型:发明专利
语 言:中文
申 请 号:CN201810523617.X
申 请 日:20180528
申 请 人:重庆大学
申请人地址:400044 重庆市沙坪坝区沙坪坝正街174号
公 开 日:20181113
公 开 号:CN201810523617.X
代 理 人:胡荣珲;代婵
代理机构:重庆志合专利事务所(普通合伙) 50210
摘 要:本发明公开了一种用于卷积神经网络硬件加速的数据处理方法,其通过分析卷积神经网络并行特征,结合硬件的并行处理能力,对卷积神经网络进行硬件加速,加速方案从3个方面对Tiny?yolo网络进行加速改进:(1)通过多通道并行输入提升Tiny?yolo网络的处理速度,(2)通过并行计算提升Tiny?yolo网络卷积计算的速度,(3)通过池化嵌入减少Tiny?yolo网络的池化过程时间。其大大提高了卷积神经网络的检测速度。
主 权 项:1.一种用于卷积神经网络硬件加速的数据处理方法,其特征在于,将卷积神经网络的池化操作对应嵌入卷积计算,包括如下步骤:1)当卷积神经网络的卷积层的输出特征图尺寸为M*M时,预设一个行缓冲器pool_buf,行缓冲器pool_buf的长度为M/2;2)池化操作在有卷积输出时就开始进行,卷积计算完成的同时也完成池化:在所述卷积层的每个输入通道的卷积计算过程中,当卷积输出第一行的第2个卷积输出值output_2时,将卷积输出第一行的第2个卷积输出值output_2与第1个卷积卷积输出值output_1进行比较,选取其中较大值存入行缓冲器pool_buf的第一个位置,当卷积输出第一行的第4个卷积输出值output_4时,将卷积输出第一行的第4个卷积输出值output_4与第3个卷积卷积输出值output_3进行比较,选取其中较大值存入行缓冲器pool_buf的第二个位置,依次类推,直到卷积输出第一行的第M个卷积输出值output_M时,行缓冲器pool_buf中已经存入了M/2个待比较值;然后等到卷积输出第二行的第2个卷积输出值output_(M+2)时,将卷积输出第二行的第2个卷积输出值output_(M+2)与第1个卷积输出值output_(M+1)进行比较,选取其中较大值与行缓冲器pool_buf中第一个位置缓存的数据进行比较,得到最大值即池化输出值后直接输出,并将行缓冲器pool_buf中第一个位置清空,依此类推,当输出M/2个池化输出值时,行缓冲器pool_buf里面已经全部清空,完成对前两行卷积输出的池化操作,当卷积输出第三行的卷积输出值时,重复卷积输出第一行的操作,将每相邻2个卷积输出值进行比较并选取其中较大值存入行缓冲器pool_buf,直到卷积输出第三行的第M个卷积输出值output_3M时,M/2个待比较值又缓存在行缓冲器pool_buf里,然后等到卷积输出第四行的卷积输出值时,重复卷积输出第二行的操作,将每相邻2个卷积输出值进行比较并选取其中较大值后与行缓冲器pool_buf中对应位置缓存的待比较值进行比较,得到最大值即池化输出值后直接输出,并将行缓冲器pool_buf中对应位置清空,当再次输出M/2个池化输出值时,行缓冲器pool_buf里面已经全部清空,依此类推,直至完成整个卷积输出的特征图的池化操作。
关 键 词:
法律状态:生效
IPC专利分类号:G06N3/04;G06N3/00;G;G06;G06N;G06N3;G06N3/04;G06N3/00