一种用于卷积神经网络加速的多层数据分区域联合计算方法技术

技术编号:22077068 阅读:54 留言:0更新日期:2019-09-12 14:36
本发明专利技术提供一种用于卷积神经网络加速的多层数据分区域联合计算方法,包括如下步骤:步骤1,将第一全连接层图像划分为若干个第一全连接层区域,反向推导各第一全连接层区域的图像数据所分别对应的输入图像数据,按照反向推导结果将输入图像划分为若干个与第一全连接层区域一一对应的输入图像区域;步骤2,对各输入图像区域依次进行卷积运算直到各自对应的第一全连接层区域,在对后一个输入图像区域进行卷积运算的过程中,对前一个输入图像区域对应的第一全连接层区域的权值数据进行读取和运算。降低了运算时硬件系统所需的带宽及存储量,平衡了卷积神经网络卷积层与全连接层对硬件资源的需求关系。

A Joint Multilayer Data Subarea Computing Method for Convolutional Neural Network Acceleration

【技术实现步骤摘要】
一种用于卷积神经网络加速的多层数据分区域联合计算方法
本专利技术涉及卷积神经网络运算的数据流调度技术,具体涉及一种用于卷积神经网络加速的多层数据分区域联合计算方法。
技术介绍
深度学习是近几年机器学习的一个研究热点,在许多方向都取得了优异的成果。现在,深度学习在许多学科领域都具备越来越重要的作用。然而受限于硬件设备,深度学习的运算速度要慢于传统的人工神经运算网络以及一些其他的机器学习方法。因此在一些需要高性能的计算和电脑运算领域,深度学习的加速显得格外重要。对于深度学习算法的硬件加速,目前通常有三类实现方式,包括多核CPU、GPU和FPGA,它们的共同特点是可以实现高并行度的计算。然而,因为这些方法需求大量的运算硬件并消耗很多能耗,并不适合于移动设备。深度学习神经网络有非常多的分类,比较著名的有卷积神经网络(CNN)以及循环神经网络(RNN)。CNN是一种生物自然视觉认知机制启发而来的神经网络,对于视觉图像的处理有着独特的优势,近几年来,CNN网络已经由最初的LeNet-5逐渐演变出了AlexNet、VGG、GoogLeNet等新的结构。如何灵活、高效地完成各类网络成为当前研究热点。目前常见的加速策略是根据算法架构,设计相应的网络数据流调度,提高数据复用和计算并行度。专用集成电路(ASIC)是针对一种确定算法而设计的电路,速度快,效率高,然而ASIC的面积和资源有限,所以需要通过设计相应的网络数据流调度机制来对资源进行合理的分配利用。Google在设计实现TPU架构过程中,利用脉动阵列对数据流进行调度;美国MIT提出RowSaturation(RS)数据流对卷积运算数据流进行调度;清华大学提出的paralleloutputorientedmapping(POOM)数据流,根据不同卷积层的特点采用权值复用或者图像数据复用的数据流调度。但是,目前的这些网络数据流调度机制均是按照逐层计算模式进行的。通常卷积的计算模式如图1所示,卷积核在输入图像上滑动做卷积计算。该层的卷积核和整个输入图像计算得到输出图像,即下一层的输入图像。以AlexNet为例,图3中所示的是AlexNet的算法架构,从图中可以看出,卷积神经网络算法结构也是按照逐层进行排布的,这样的逐层计算模式更加符合卷积神经网络的算法架构。然而,卷积神经网络的运算量大,会产生大量中间计算数据,逐层计算模式下,对于硬件的存储大小以及存储带宽要求会很高。此外,卷积神经网络在卷积层通过少量的数据进行大量的复用计算,这样卷积层的计算特点是计算密集型,相反,卷积神经网络在全连接层时属于存储密集型。这样的特性在硬件加速时会产生以下问题:计算卷积层时需要大量的计算资源,对数据存取带宽要求不高;计算全连接层时,需要高的数据存取带宽,这样的不平衡会给硬件设计带来困难。
技术实现思路
针对现有技术中存在的问题,本专利技术提供一种用于卷积神经网络加速的多层数据分区域联合计算方法,降低了运算时硬件系统所需的带宽及存储量,平衡了卷积神经网络卷积层与全连接层对硬件资源的需求关系。本专利技术是通过以下技术方案来实现:一种用于卷积神经网络加速的多层数据分区域联合计算方法,包括如下步骤:步骤1,将第一全连接层图像划分为若干个第一全连接层区域,反向推导各第一全连接层区域的图像数据所分别对应的输入图像数据,按照反向推导结果将输入图像划分为若干个与第一全连接层区域一一对应的输入图像区域;步骤2,对各输入图像区域依次进行卷积运算直到各自对应的第一全连接层区域,在对后一个输入图像区域进行卷积运算的过程中,对前一个输入图像区域对应的第一全连接层区域的权值数据进行读取和运算。优选的,步骤1中,各第一全连接层区域均为正方形。进一步的,步骤1中,各第一全连接层区域面积相等。优选的,步骤1中,将第一全连接层图像按照九宫格的形式划分为9个第一全连接层区域。优选的,卷积神经网络为AlexNet架构,步骤1中,将第一全连接层图像按照九宫格的形式,均分为9个2×2的第一全连接层区域。优选的,步骤2具体是:对输入图像区域和第一全连接层区域分别进行编号,相对应的输入图像区域和第一全连接层区域的编号相同;对1号输入图像区域进行卷积运算直到1号第一全连接层区域,然后对2号输入图像区域进行卷积运算直到2号第一全连接层区域,在对2号输入图像区域进行卷积运算的过程中对1号第一全连接层区域的权值数据进行读取和运算,以此类推,直至完成所有输入图像区域的运算。与现有技术相比,本专利技术具有以下有益的技术效果:本专利技术分区域联合计算方法将输入图像分区域调度计算,在对后一个输入图像区域进行卷积运算的过程中,对前一个输入图像区域对应的第一全连接层区域的权值数据进行读取和运算。这种数据调度机制,一方面,降低每次第一全连接层权值数据读取的数据量,降低了运算时硬件系统所需的带宽,针对卷积神经网络卷积层计算密集和全连接层存储密集的特点,分区域联合计算平衡了卷积层对计算资源的需求和全连接层对存储资源的需求;另一方面,每次运算产生的中间数据量大大减少,降低了存储器容量要求,可以降低硬件资源消耗,使卷积神经网络可以在便携式设备上运行;再一方面,将卷积神经网络中的卷积层计算和全连接层权值数据读取的时间进行了重叠处理,提高硬件资源工作时的使用率,提高了整体运算速度。本专利技术数据流调度采用流水线的方式,可以高效的完成卷积神经网络的前馈计算过程。附图说明图1为卷积神经网络的计算模式;图2为本专利技术分区域联合计算的计算模式示意图;图3为AlexNet的架构及其逐层加速模式;图4为本专利技术分区域联合计算机制用于AlexNet的示意图;图5为逐层加速和分区域加速的中间数据存储数量对比。具体实施方式下面结合具体的实施例对本专利技术做进一步的详细说明,所述是对本专利技术的解释而不是限定。本专利技术多层数据分区域联合计算是通过将输入图像数据分成不同的区域,然后对这些区域逐个进行加速计算,从而完成对卷积神经网络的整体加速。主要目的是通过分区域联合计算可以将卷积神经网络全连接层的数据存取时间和卷积层的计算时间进行重叠,平衡了卷积神经网络的卷积层计算密集和全连接层的数据存储密集。计算模式如图2所示,对卷积层的输入图像进行区域划分,形成多个输入图像区域,在卷积层中卷积核和1号输入图像区域做卷积,得到输出图像,直到计算到第一全连接层,即完成1号输入图像区域的卷积神经网络计算;然后再计算2号输入图像区域,此时,可以进行第一全连接层中与1号输入图像区域对应的1号第一全连接层区域运算的权值数据读取,使得2号输入图像区域的卷积层运算与1号第一全连接层区域运算时间重叠。从而实现卷积神经网络的整体加速。本专利技术所提出的多层分区域联合加速计算的数据流调度具体步骤如下,以AlexNet为例,如图4所示,包括如下步骤:第一步:首先基于所需要运算的CNN网络,确定该CNN网络第一全连接层图像尺寸,第一全连接层图像的尺寸为6×6(不考虑三维的通道数,只做平面的区域划分)。第二步:将第一全连接层图像按照九宫格的形式,均分为2×2大小的9个不同第一全连接层区域,第一全连接层区域编号为1~9。根据AlexNet的卷积架构,反向推导得到1~9号第一全连接层区域的图像数据所分别对应的输入图像数据,即为所划分的输入图像区域,共9个不同的输入图像本文档来自技高网
...

【技术保护点】
1.一种用于卷积神经网络加速的多层数据分区域联合计算方法,其特征在于,包括如下步骤:步骤1,将第一全连接层图像划分为若干个第一全连接层区域,反向推导各第一全连接层区域的图像数据所分别对应的输入图像数据,按照反向推导结果将输入图像划分为若干个与第一全连接层区域一一对应的输入图像区域;步骤2,对各输入图像区域依次进行卷积运算直到各自对应的第一全连接层区域,在对后一个输入图像区域进行卷积运算的过程中,对前一个输入图像区域对应的第一全连接层区域的权值数据进行读取和运算。

【技术特征摘要】
1.一种用于卷积神经网络加速的多层数据分区域联合计算方法,其特征在于,包括如下步骤:步骤1,将第一全连接层图像划分为若干个第一全连接层区域,反向推导各第一全连接层区域的图像数据所分别对应的输入图像数据,按照反向推导结果将输入图像划分为若干个与第一全连接层区域一一对应的输入图像区域;步骤2,对各输入图像区域依次进行卷积运算直到各自对应的第一全连接层区域,在对后一个输入图像区域进行卷积运算的过程中,对前一个输入图像区域对应的第一全连接层区域的权值数据进行读取和运算。2.根据权利要求1所述的用于卷积神经网络加速的多层数据分区域联合计算方法,其特征在于,步骤1中,各第一全连接层区域均为正方形。3.根据权利要求2所述的用于卷积神经网络加速的多层数据分区域联合计算方法,其特征在于,步骤1中,各第一全连接层区域面积相等。4.根据权利要求1所述的用于卷积神经网络加...

【专利技术属性】
技术研发人员:杨晨张海波王逸洲王小力耿莉
申请(专利权)人:西安交通大学
类型:发明
国别省市:陕西,61

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

1