一种卷积神经网络池化计算方法、系统、及存储介质技术方案

技术编号:31169215 阅读:11 留言:0更新日期:2021-12-04 13:29
本发明专利技术公开了一种卷积神经网络池化计算方法存储介质包括:接收来自卷积层输出的一维行向量形式的数据输入并存储到池化计算单元;建立行池化缓存,从行向量输入数据中读取每次行池化计算的数据,并基于行向量滑窗依次对每个行向量输入数据进行行池化计算,以得到行池化输出数据存入所述行池化缓存;响应于所述行池化缓存中的行池化输出数据满足列池化计算的所需数据大小,从所述行池化缓存中读取每次列池化计算的数据,并基于列向量滑窗依次对所述行池化输出数据进行列池化计算,以得到列池化输出数据。通过本发明专利技术的方案,实现了输入特征图数据的连续加载与池化计算的连续性,重复加载数据少,提高计算速度能够灵活适应不同类型的卷积神经网络模型。型的卷积神经网络模型。型的卷积神经网络模型。

【技术实现步骤摘要】
一种卷积神经网络池化计算方法、系统、及存储介质


[0001]本专利技术涉及计算机
,尤其涉及一种卷积神经网络池化计算方法、系统、及存储介质。

技术介绍

[0002]卷积神经网络是人工神经网络的一种,广泛应用于图像分类、目标识别、行为识别、语音识别、自然语言处理与文档分类等领域。卷积神经网络的结构一般由输入层、若干隐含层与输出层组成。输入层用于多维输入数据(如彩色图片),输出层用于输出识别结果,隐含层用于神经网络计算。神经网络计算算子包括卷积、激励函数、池化、Batch Norm、全连接计算等。其中第一层隐含层的输入为通过输入层输入的多维输入数据,输出为特征图,其他隐含层的输入都为上一层的特征图,输出为本层特征图。
[0003]近几年,随着计算机计算能力的增长与卷积神经网络结构的发展,卷积神经网络的识别准确度有了很大提高,但与此同时,卷积神经网络的深度也不断加深,网络结构更加复杂,计算量也越来越大,因此需要GPU(Graphics Processing Unit,图形处理器)、FPGA(Field Programmable Gate Array,现场可编程门阵列)、ASIC(Application Specific Integrated Circuit,专用集成电路)等异构计算设备来加速卷积神经网络推理计算。
[0004]池化计算是卷积神经网络中较为常见的计算过程,主要是通过在特征图上划分尺寸为N*N的池化区域,对池化区域数据进行一定的操作,最终得到一个输出结果,从而达到缩小图像数据规模的作用。池化计算方式主要分为最大池化与平均池化两种。最大池化是取池化区域中的最大值作为输出,平均池化是对池化区域内所有数据取平均值作为输出结果。
[0005]现有的卷积神经网络池化计算单元通常采用缓存全部池化区域数据的方式进行池化计算,对池化区域数据采取重复加载或循环更新的方式。对于数据重复加载的方式,每次池化计算开始时,都要重新加载输入特征图的池化区域的数据,而池化计算结果中临近两个输出数据对应的输入特征图池化区域数据有很大一部分是重合的。对于数据循环更新的方式,池化计算进行过程中仅更新池化区域移动所造成的输入数据非重合部分。虽然池化区域循环更新的方式可以避免数据的重复加载,但这两种方式中每次计算所加载的池化区域数据都是二维的非连续存储数据,在加载池化区域数据时将无法发挥存储器最佳访存带宽,并且增加了寻址的计算复杂度。另外,此计算方式对池化区域的尺寸敏感,不同尺寸的池化计算通常需要不同的硬件电路或指令流程实现。
[0006]因此,亟需一种可以解决深度神经网络中池化层数据必须加载完全才可进行池化的池化优化方案。以提高在应用于各种人工智能服务,如人脸识别、语音识别、自然语言处理等的深度神经网络中池化层的池化能力。提供更快速的深度神经网络计算速度。

技术实现思路

[0007]有鉴于此,本专利技术提出了一种卷积神经网络池化计算方法、系统、及存储介质,通
过将池化计算分为行池化计算与列池化计算两个步骤,使两个步骤流水并行进行,重复加载数据少,提高了计算速度,实现了输入特征图数据的连续加载与池化计算的连续性,并且通过对行向量输出尺寸、计算类型、滑窗尺寸等的灵活设定,能够灵活适应不同类型的卷积神经网络模型。
[0008]基于上述目的,本专利技术实施例的一方面提供了一种卷积神经网络池化计算方法,其特征在于,包括:
[0009]接收来自卷积层输出的一维行向量形式的数据输入并存储到池化计算单元;建立行池化缓存,从行向量输入数据中读取每次行池化计算的数据,并基于行向量滑窗依次对每个行向量输入数据进行行池化计算,以得到行池化输出数据存入所述行池化缓存;
[0010]响应于所述行池化缓存中的行池化输出数据满足列池化计算的所需数据大小,从所述行池化缓存中读取每次列池化计算的数据,并基于列向量滑窗依次对所述行池化输出数据进行列池化计算,以得到列池化输出数据。
[0011]在本专利技术的一些实施方式中,接收来自卷积层输出的一维行向量形式的数据输入并存储到池化计算单元,还包括:
[0012]建立边缘数据缓存,将行向量输入数据的边缘数据存储到所述边缘数据缓存。
[0013]在本专利技术的一些实施方式中,从行向量输入数据中读取每次行池化计算的数据,还包括:
[0014]响应于本次行池化计算读取的数据包含上一个行向量输入数据的边缘数据,则从所述边缘数据缓存读取本次池化计算的边缘数据。
[0015]在本专利技术的一些实施方式中,方法还包括:
[0016]响应于上一个行向量输入数据的边缘数据被计算完成,将本次行池化计算所在的行向量输入数据的边缘数据存入边缘数据缓存。
[0017]在本专利技术的一些实施方式中,从所述行池化输出数据中读取每次列池化计算的数据,包括:
[0018]从所述行池化输出数据中读取每次列池化计算的行池化输出数据并以输入特征图的形式存入行池化缓存。
[0019]在本专利技术的一些实施方式中,基于列向量滑窗依次对所述行池化输出数据进行列池化计算,以得到列池化输出数据,包括:
[0020]响应于读取的所述行池化输出数据的数量达到预设行输入特征图数据的数量,基于所述列向量滑窗对本次读取的数据与行池化缓存中的数据进行列池化计算,以得到本次列池化输出数据。
[0021]在本专利技术的一些实施方式中,响应于读取的所述行池化输出数据的数量达到预设行输入特征图数据的数量,基于所述列向量滑窗对本次读取的数据与行池化缓存中的数据进行列池化计算,以得到本次列池化输出数据,还包括:
[0022]将本次列池化计算的行池化输出数据存入所述行池化缓存以进行下一次列池化计算并得到下一次列池化计算输出数据。
[0023]本专利技术的又一方面还提出了一种卷积神经网络池化计算系统,包括:
[0024]输入模块,所述输入模块配置为接收来自卷积层输出的一维行向量形式的数据输入并存储到池化计算单元;
[0025]行池化计算模块,所述行池化计算模块配置为建立行池化缓存,从行向量输入数据中读取每次行池化计算的数据,并基于行向量滑窗依次对每个行向量输入数据进行行池化计算,以得到行池化输出数据存入所述行池化缓存;
[0026]列池化计算模块,所述列池化计算模块配置为响应于所述行池化缓存中的行池化输出数据满足列池化计算的所需数据大小,从所述行池化缓存中读取每次列池化计算的数据,并基于列向量滑窗依次对所述行池化输出数据进行列池化计算,以得到列池化输出数据。
[0027]一种卷积神经网络池化计算方法本专利技术实施例的又一方面,还提供了一种计算机设备,包括:至少一个处理器;以及存储器,所述存储器存储有可在所述处理器上运行的计算机程序,所述计算机程序由所述处理器执行时实现如上方法的步骤。
[0028]本专利技术实施例的再一方面,还提供了一种计算机存储介质,计算机存储介质存储有被处理器执行时实现如上方法步骤的计算机程序。
[0029]本专利技术具有以下有益技术效果:通过将本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种卷积神经网络池化计算方法,其特征在于,包括:接收来自卷积层输出的一维行向量形式的数据输入并存储到池化计算单元;建立行池化缓存,从行向量输入数据中读取每次行池化计算的数据,并基于行向量滑窗依次对每个行向量输入数据进行行池化计算,以得到行池化输出数据存入所述行池化缓存;响应于所述行池化缓存中的行池化输出数据满足列池化计算的所需数据大小,从所述行池化缓存中读取每次列池化计算的数据,并基于列向量滑窗依次对所述行池化输出数据进行列池化计算,以得到列池化输出数据。2.根据权利要求1所述的方法,其特征在于,接收来自卷积层输出的一维行向量形式的数据输入并存储到池化计算单元,还包括:建立边缘数据缓存,将行向量输入数据的边缘数据存储到所述边缘数据缓存。3.根据权利要求2所述的方法,其特征在于,从行向量输入数据中读取每次行池化计算的数据,还包括:响应于本次行池化计算读取的数据包含上一个行向量输入数据的边缘数据,则从所述边缘数据缓存读取本次池化计算的边缘数据。4.根据权利要求3所述的方法,其特征在于,还包括:响应于上一个行向量输入数据的边缘数据被计算完成,将本次行池化计算所在的行向量输入数据的边缘数据存入边缘数据缓存。5.根据权利要求1所述的方法,其特征在于,从所述行池化输出数据中读取每次列池化计算的数据,包括:从所述行池化输出数据中读取每次列池化计算的行池化输出数据并以输入特征图的形式存入行池化缓存。6.根据权利要求5所述的方法,其特征在于,基于列向量滑窗依次对所述行池化输出数据进行列池化计算,以得到列池化输出数据,包括:响应于读取的所述行池化输出数据的数量达到预设行输入特征图数据的数量,基...

【专利技术属性】
技术研发人员:徐天赐景璐
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

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

1