当前位置: 首页 > 专利查询>之江实验室专利>正文

一种存算一体卷积神经网络图像分类装置及方法制造方法及图纸

技术编号:34936433 阅读:99 留言:0更新日期:2022-09-15 07:33
本发明专利技术公开了一种存算一体卷积神经网络图像分类装置及方法,通过控制器对装置的其他单元、器件的控制;通过数据存储器存储神经网络分类的图像数据,以及中间特征图数据;通过存算一体单元获取的图像数据,并对图像数据进行卷积神经网络中的卷积层以及全连接层的计算,得到特征值;通过激活函数单元对存算一体单元输出的特征值进行非线性操作,得到非线性操作后的特征值;通过池化单元依次对非线性操作后的特征值进行行池化操作和列池化操作,并将最终结果值存入数据存储器;通过分类器获取最后一层神经网络计算对应的存算一体单元的输出,根据分类标签得到分类结果;从而实现数据流的优化,减少数据存取次数,减小所需缓存容量,提升计算效率。提升计算效率。提升计算效率。

【技术实现步骤摘要】
一种存算一体卷积神经网络图像分类装置及方法


[0001]本专利技术涉及新型智能计算
,尤其是涉及一种存算一体卷积神经网络图像分类装置及方法。

技术介绍

[0002]当前阶段冯诺依曼架构的“内存墙”问题日益凸显,同时我们正处于大数据、物联网和人工智能时代,对于数据处理的需求大量增加,传统冯诺依曼架构的性能开始不能满足我们日常数据处理的需求。随着不同架构以及技术被提出,存储与计算融合成为了一种未来的趋势,不仅可以解决“内存墙”问题,同时还可以获得更好的计算效率。
[0003]现有技术中,在具体池化过程中,需要对从图像数据中提取的特征值进行逻辑操作,在逻辑操作的过程中,会对大量的特征值进行提取、逻辑操作、存储,如何减少特征值存取的次数,减少所需缓存的容量,是提升计算机内部性能,提高计算效率的关键。

技术实现思路

[0004]为解决现有技术的不足,实现数据流的优化,减少数据存取次数,减小所需缓存容量,提升计算效率的目的,本专利技术采用如下的技术方案:一种存算一体卷积神经网络图像分类装置,包括控制器、数据存储器、存算一体单元、激活函数单元、池化单元以及分类器,所述池化单元包括行池化单元和列池化单元,存算一体单元分别与激活函数单元和分类器连接,激活函数单元依次与池化单元和列池化单元连接;所述控制器,用于对装置的其他单元、器件的控制;所述数据存储器,用于存储神经网络分类的图像数据,以及中间特征图数据;所述存算一体单元,用于获取的图像数据,并对图像数据进行卷积神经网络中的卷积层以及全连接层的计算,得到特征值;所述激活函数单元,对存算一体单元输出的特征值进行非线性操作,得到非线性操作后的特征值;所述行池化单元,对非线性操作后的特征值进行行池化操作,得到行池化结果值;所述列池化单元,对行池化结果值进行列池化操作,得到最终结果值作为中间特征图数据存入数据存储器;所述分类器,用于获取最后一层神经网络计算对应的存算一体单元的输出,根据分类标签得到分类结果。
[0005]进一步地,所述行池化单元,包括第一逻辑单元和第一寄存器,若获取的数据为非线性操作后池化行窗口内的第一个值,则直接存储在第一寄存器中;若获取的数据不满足池化行的覆盖范围,则依据当前设置的行池化操作,将不满足覆盖范围的所述数据与第一寄存器中的值,通过第一逻辑单元进行逻辑操作,并将结果存储在第一寄存器中;若获取的数据满足池化行的覆盖范围,则依据当前设置的行池化操作,将满足覆盖范围的所述数据
与第一寄存器中的值,通过逻辑单元进行逻辑操作,并直接作为行池化结果值输出。
[0006]进一步地,所述行池化单元还包括第一多路器和第二多路器,所述第一逻辑单元采用的运算逻辑能够由控制器进行配置;对于尺寸为的池化窗口,对应的行池化窗口为;当存算一体单元的输出数据为所在行池化窗口的第个数,且时,则通过第一多路器,将激活后的直接写入到第一寄存器中;当为第个数,且时,通过第一多路器,将第一寄存器中的值和第个激活后的通过第一逻辑单元进行逻辑运算,将逻辑运算后的值写入第一寄存器中;当为第个数,且时,通过第一多路器,将第一寄存器中的值和第个激活后的通过第一逻辑单元进行逻辑运算,将逻辑运算后的值通过第二多路器选出,作为当前行池化的结果值。一个集合在中间计算过程仅需1个寄存器当缓存,极大的减少了存储器数据访问以及缓存空间的需求。
[0007]进一步地,所述列池化单元,包括第二逻辑单元、先进先出存储器和第二寄存器,若获取的行池化结果值为当前中间特征图的位于列池化窗口的第一行的值,则直接存入先进先出存储器中;若获取的行池化结果值为当前中间特征图的位于列池化窗口覆盖范围且不为第一行的值时,则直接存入第二寄存器中,并依据当前设置的列池化操作,对第二寄存器中的值与先进先出存储器读端口的值,通过逻辑运算模块进行逻辑操作,得到列池化中间结果值;若获取的行池化结果值不为当前中间特征图的位于列池化窗口覆盖范围最后一行,则将列池化中间结果值写回先进先出存储器;若获取的行池化结果值为当前池化覆盖范围的最后一行的值,则将列池化中间结果值作为最终结果值。该值即为当前计算出特征图中的一个特征值。此处的FIFO深度需求,需要根据最大特征图的列数来得出。其中至少需要将第一行的数据全部缓存到FIFO,等到第二行的数据从行池化单元流出,不需要将该行数据全部缓存,仅需将该行数据缓存在寄存器中,并与缓存在FIFO中的第一行数据进行逻辑运算。对于特征图大小为N1×
N2的行池化输出中间特征图来说,不需要将N1×
N2个数据全部缓存起来,只需要缓存一行加一个数据,即(N2+1)个数据,大大减小了需要缓存的数据量以及数据搬运量。
[0008]所述分类装置仅对输入图像和输入特征图在数据存储器中进行访问存取,中间的计算值不涉及对数据存储器的访问,仅通过寄存器和先进先出存储器进行存取。
[0009]进一步地,根据行池化输出最大的中间特征图行的尺寸,配合设置深度为二以上先进先出存储器和第二寄存器,用于对两行及以上的中间特征图进行缓存。并非必须是偶数行,即缓存需要通过列池化的,并非第一行,如果采用尺寸更大的池化,需要缓存多次,如3
×
3的池化中3行数据需要进行列池化,则需要先缓存第一行的值,再缓存第一行与第二行通过逻辑运算后的值,采用一个FIFO存储器用于存储一行的数据。
[0010]进一步地,所述列池化单元还包括第三多路器和第四多路器,所述第二逻辑单元的运算能够由控制器进行配置;对于尺寸为的池化窗口和尺寸为的行池化输出的中间特征图,对应的单列的列池化窗口为且行池化输出的中间特征图的列的列池化窗口为;当行池化的结果值为所在列的列池化窗口的第个数,且的商为0时,通过第三多路器写入到先进先出存储器中;当为第个数,且的商小于时,通过第三多路器写入第二寄存器中,将第二寄存器中的值与先进先出读端口的值通过
第二逻辑单元进行逻辑运算,将逻辑运算后的中间结果值写回到先进先出存储器中;当为第个数,且的商等于时,通过第三多路器写入第二寄存器中,将第二寄存器中的值与先进先出读端口的值通过第二逻辑单元进行逻辑运算,将逻辑运算后的值作为最终结果值,通过第四多路器输出,该值就是当前神经网络层经过计算并通过激活池化操作后的特征值。一个集合在中间计算过程需要一个深度为集合列数的FIFO存储器以及一个寄存器当缓存,极大的减少了存储器数据访问以及缓存空间的需求。
[0011]进一步地,所述先进先出存储器包括两个指针,一个是读操作的地址指针,指向下一次数据读出的地址,即得到读端口的值;一个是写操作的地址指针,指向下一次数据写入的地址,每读写一次,读、写指针分别加1;在列池化过程中,每当第二寄存器中的值与先进先出读端口的值进行逻辑运算,先进先出存储器视为读出一次,读指针加1,数据读出的顺序按照数据写入的顺序一次被读出。
[0012]进一步地,所述控制器包括一组配置寄存器,用于不同网络结构的配置,包括卷积层中的卷积核大小、输入维度大小、输出维度大小、激活池化操作,以及权重存储在存算一体单元中的位置信息、全连本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种存算一体卷积神经网络图像分类装置,包括控制器、数据存储器、存算一体单元、激活函数单元、池化单元以及分类器,其特征在于:所述池化单元包括行池化单元和列池化单元,存算一体单元分别与激活函数单元和分类器连接,激活函数单元依次与池化单元和列池化单元连接;所述控制器,用于对装置的其他单元、器件的控制;所述数据存储器,用于存储神经网络分类的图像数据,以及中间特征图数据;所述存算一体单元,用于获取的图像数据,并对图像数据进行卷积神经网络中的卷积层以及全连接层的计算,得到特征值;所述激活函数单元,对存算一体单元输出的特征值进行非线性操作,得到非线性操作后的特征值;所述行池化单元,对非线性操作后的特征值进行行池化操作,得到行池化结果值;所述列池化单元,对行池化结果值进行列池化操作,得到最终结果值作为中间特征图数据存入数据存储器;所述分类器,用于获取最后一层神经网络计算对应的存算一体单元的输出,根据分类标签得到分类结果。2.根据权利要求1所述的一种存算一体卷积神经网络图像分类装置,其特征在于:所述行池化单元,包括第一逻辑单元和第一寄存器,若获取的数据为非线性操作后池化行窗口内的第一个值,则直接存储在第一寄存器中;若获取的数据不满足池化行的覆盖范围,则依据当前设置的行池化操作,将不满足覆盖范围的所述数据与第一寄存器中的值,通过第一逻辑单元进行逻辑操作,并将结果存储在第一寄存器中;若获取的数据满足池化行的覆盖范围,则依据当前设置的行池化操作,将满足覆盖范围的所述数据与第一寄存器中的值,通过逻辑运算模块进行逻辑操作,并直接作为行池化结果值输出。3.根据权利要求2所述的一种存算一体卷积神经网络图像分类装置,其特征在于:所述行池化单元还包括第一多路器和第二多路器,所述第一逻辑单元采用的运算逻辑能够由控制器进行配置;对于尺寸为的池化窗口,对应的行池化窗口为;当存算一体单元的输出数据为所在行池化窗口的第个数,且时,则通过第一多路器,将激活后的直接写入到第一寄存器中;当为第个数,且时,通过第一多路器,将第一寄存器中的值和第个激活后的通过第一逻辑单元进行逻辑运算,将逻辑运算后的值写入第一寄存器中;当为第个数,且时,通过第一多路器,将第一寄存器中的值和第个激活后的通过第一逻辑单元进行逻辑运算,将逻辑运算后的值通过第二多路器选出,作为当前行池化的结果值。4.根据权利要求1所述的一种存算一体卷积神经网络图像分类装置,其特征在于:所述列池化单元,包括第二逻辑单元、先进先出存储器和第二寄存器,若获取的行池化结果值为当前中间特征图的位于列池化窗口的第一行的值,则直接存入先进先出存储器中;若获取的行池化结果值为当前中间特征图的位于列池化窗口覆盖范围且不为第一行的值时,则直接存入第二寄存器中,并依据当前设置的列池化操作,对第二寄存器中的值与先进先出存储器读端口的值,通过逻辑运算模块进行逻...

【专利技术属性】
技术研发人员:顾子熙时拓刘琦高丽丽张程高卢建张徽
申请(专利权)人:之江实验室
类型:发明
国别省市:

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

1