一种面向低位宽卷积神经网络的可重构激活量化池化系统的制作方法

文档序号:16976129发布日期:2019-02-26 19:00阅读:575来源:国知局
一种面向低位宽卷积神经网络的可重构激活量化池化系统的制作方法

本发明属于人工智能算法硬件加速领域,尤其涉及一种面向低位宽卷积神经网络的可重构激活量化池化系统。



背景技术:

低位宽卷积神经网络一般表示为4bit及以下的量化卷积神经网络,其不同于传统的卷积神经网络,它的权重和图像输入数据可以仅用几个bit来表示,例如二值化网络、三值化网络以及其他低位宽量化神经网络。二值化网络的权重和图像输入数据可只用0或1表示;三值化网络的权重只用0或1表示,图像输入数据表征为-1、0或1;在许多其他的低位宽量化神经网络中,常用某种比特组合方式来表达某个数,例如2bit的“01”表示数值0.5。

在低位宽卷积神经网络中,除了传统网络中包含的卷积层、激活层、池化层,还会专门设计一个量化操作,将生成的图像输出数据再次量化到原来设定的位宽。

近些年来针对这种低位宽卷积神经网络的硬件设计越来越多,卷积层通常的处理流程为顺序执行以下操作:卷积、批标准化、激活、量化和池化,有的卷积层没有池化操作;全连接层通常处理流程为顺序执行以下操作:全连接、批标准化、激活和量化。但是这样的串行操作会降低处理效率,带来额外的硬件开销,不能很好地满足实际应用的需求。



技术实现要素:

本发明的目的在于克服以上现有技术之不足,提供一种有效地提高激活、量化、池化操作的灵活性,降低功耗,减少硬件开销的面向低位宽卷积神经网络的可重构激活量化池化系统,具体由以下技术方案实现:

所述面向低位宽卷积神经网络的可重构激活量化池化系统,接收卷积层结果数据,该系统包括:

若干个可重构激活量化池化处理单元,用于执行激活、量化、池化操作,并且执行工作模式激活-量化工作模式或激活-量化-池化工作模式的可重构操作;

存储单元控制器,用于控制不同配置下可重构激活量化池化单元和存储单元的数据传输;

存储单元,用于暂存池化操作中所需的卷积层结果数据。

所述面向低位宽卷积神经网络的可重构激活量化池化系统的进一步设计在于,可重构激活量化池化处理单元在激活-量化的工作模式下数据从卷积处理单元传输到可重构激活量化池化处理单元,经过处理后,直接输出结果数据;在激活-量化-池化的工作模式下接收所述卷积层结果数据,先存入到存储单元,在存储单元控制器的控制下,传入可重构激活量化池化处理单元处理,处理结果依然存回存储单元。

所述面向低位宽卷积神经网络的可重构激活量化池化系统的进一步设计在于,所述可重构激活量化池化处理单元中的激活函数如式(1),

xo=min(abs(xi),1)(1)

其中,xi代表卷积处理完后的数据、xo表示经过激活后的激活值。

可重构激活量化池化处理单元中的量化函数如式(2),

其中,k表示量化后的比特位宽,该处xi表示激活值,xo表示量化后的量化值。

且对应的池化核大小为2x2,如式(3):

xo(i,j)=max(x(2i,2j),x(2i,2j+1),x(2i+1,2j),x(2x+1,2j+1))(3)

其中,i,j分别表示在单通道输入图像中的坐标位置,该处xi表示量化值,xo表示池化后的池化值。

所述面向低位宽卷积神经网络的可重构激活量化池化系统的进一步设计在于,所述系统的工作流程包括如下步骤:

首先确定工作模式;若工作模式为激活-量化,通过分析不同的低比特卷积神经网络的激活函数、量化方法,确定激活函数、量化方法的一系列特性或参数;然后确定激活函数和量化方法输出范围的交叉冗余部分,将这部分简化;

若工作模式为激活-量化-池化,需要在激活-量化的算法优化基础上分析池化核大小;优化后,将池化操作被融入进激活-量化操作,形成新的激活-量化-池化操作。

所述面向低位宽卷积神经网络的可重构激活量化池化系统的进一步设计在于,所述存储单元支持乒乓操作,一部分存储单元存放卷积层传入的数据,另一部分存储单元存放可重构激活量化池化处理单元所需的数据。

所述面向低位宽卷积神经网络的可重构激活量化池化系统的进一步设计在于,所述可重构激活量化池化处理单元包括三个阶段单元,分别第一阶段单元、第二阶段单元以及第三阶段单元,每个阶段单元均包含比较器、选通器以及寄存器,第一阶段单元中的比较器两输入为外部图像输入数据和阈值3,第二阶段单元中的比较器两输入为从第一阶段单元输出的数据和阈值2,第三阶段单元中的比较器两输入为从第二阶段单元输出的数据和阈值1。

本发明的优点如下:

本发明的面向低位宽卷积神经网络的可重构激活量化池化系统主要针对低位宽的卷积神经网络特性,实现多种类型激活量化池化的软硬件优化;该设计方法所具有的灵活性高、计算复杂度低、面积小、功耗低等特性。

附图说明

图1为面向低位宽卷积神经网络的可重构激活量化池化系统的模块示意图。

图2是可重构激活量化池化处理单元示意图。

图3是可重构激活量化池化处理单元配置示意图。

图4是系统在激活量化工作模式下工作示意图。

图5是系统在量化池化工作模式下工作示意图。

具体实施方式

下面结合附图对本发明方案进行详细说明。

如图1,本实施例的面向低位宽卷积神经网络的可重构激活量化池化系统包括多个可重构激活量化池化处理单元、存储单元控制器以及存储单元;可重构激活量化池化单元用于执行激活、量化、池化操作;存储单元控制器用于控制不同配置下可重构激活量化池化单元和存储单元的数据传输;存储单元用于暂存池化操作中所需的卷积层结果数据。

图1中,虚线表示激活-量化的工作模式下数据流向,数据从卷积处理单元传输到可重构激活量化池化处理单元,经过处理后,直接输出结果数据;实线表示激活-量化-池化的工作模式下的数据流向,卷积层结果数据传输到该模块,先存入到存储单元,在存储单元控制器的控制下,传入可重构激活量化池化处理单元处理,处理结果依然存回存储单元;该存储单元支持乒乓操作,以保证执行过程不会间断。

下面结合一个具体的低位宽卷积神经网络,阐述该设计方法的具体运用方法。该低位宽卷积神经网络图像输入数据位宽为2bit,权重为1bit;激活函数和量化函数分别如下:

xo=min(abs(xi),1)(4)

且池化核大小为2x2,如下:

xo(i,j)=max(x(2i,2j),x(2i,2j+1),x(2i+1,2j),x(2x+1,2j+1))(6)

该系统首先优化软件算法,根据具体的低位宽卷积神经网络的参数可知k=2。根据分析,可得激活函数输出范围在[0,1],量化函数的输入范围即为激活函数的输出范围;该量化函数的阈值为1/6、1/2、5/6,通过量化函数量化后,输出将落在0、1/3,2/3,1这四个数值上;可通过以下系列比较代替激活和量化函数,如果输入大于5/6,则量化值取1;如果输入大于1/2小于等于5/6,则量化值取2/3;如果输入大于1/6小于等于1/2,则量化值取1/3;若x小于等于1/6,则量化值取0。

该系统对硬件部分进行优化设计,因为该网络的图像输入数据的位宽为2bit,所以该多阶段单元流水处理架构的阶段数为3,如图2所示;每个阶段单元均中包含一个比较器、若干选通器和寄存器。阶段单元1中的比较器两输入为外部图像输入数据和阈值3,阶段单元2中的比较器两输入为从阶段单元1输出的数据和阈值2,阶段单元3中的比较器两输入为从阶段单元2输出的数据和阈值1。图中的配置字用于配置该单元的工作模式,配置字为1时该单元工作模式为激活-量化-池化,配置字为0时,该单元工作在激活-量化的模式下,具体的数值配置如图3所示。

激活-量化-池化工作模式下的该单元具体执行流程,参见图4。当比较器上方操作数大于下方操作数时,比较器输出1,否则输出0;假设(a,b,c,d)为图像一个2x2子区域的四个像素值,3个阈值与这四个值的关系为:a>阈值3>b>阈值2>c>阈值1>d;在时刻1,像素值a与阈值3进行比较,比较1置1,存储在使能1中,量化值4则为a的量化结果,存在寄存器1中;在时刻2中,像素b进入阶段单元1,因为使能1已经在上一时刻被置为1,因此无论b和阈值3之间的大小关系,比较1将会保持为1,因此寄存器1中的值并不会改变,与此同时,在寄存器1中的量化值4被传输入阶段单元2,并与阈值2进行比较,虽然阈值2大于阈值1,但是选通22受控于从阶段单元1的使能1,依然保持为0,存在寄存器2中的数也为上一个阶段单元的比较结果阈值3;以此类推,当输出使能信号置高时,存储在寄存器3中的阈值3作为该子区域池化操作的结果将会被输出;图4中灰色背景则代表被关断的阶段单元。

激活-量化工作模式下的该单元具体执行流程,参见图5。配置字置0后,比较信号将不会受该阶段单元上一时刻的使能信号影响,但依然会受到上一个阶段单元的使能信号控制;因为与激活-量化-池化模式相比,它需要对每一个输入的数都进行量化后输出,并不需要关断子区域内后续输入的较小数。

该阶段如果在某个阶段单元,输入大于阈值,使能信号将会置1,以从纵横两个方向来关断后续的操作,纵向表示剩余的图像输入数据,横向表示处理当前图像输入数据的剩余阶段单元内部的操作。

该系统从软件和硬件两个角度进行优化设计,以多阶段单元流水处理架构为基础,以可重构技术为支撑,以阶段关断低功耗技术为导向,可使激活量化池化模块的功耗降低、面积减少、灵活性提升。

以上所述,仅是本发明的较佳实施例,并非是对本发明作其它形式的限制,任何熟悉本专业的技术人员可能利用上述揭示的技术内容加以变更或改型为等同变化的等效实施例。但是凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与改型,仍属于本发明技术方案的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1