感兴趣区域-池化层的计算方法与装置、以及神经网络系统制造方法及图纸

技术编号:27229356 阅读:27 留言:0更新日期:2021-02-04 11:53
一种感兴趣区域

【技术实现步骤摘要】
【国外来华专利技术】感兴趣区域-池化层的计算方法与装置、以及神经网络系统
[0001]版权申明
[0002]本专利文件披露的内容包含受版权保护的材料。该版权为版权所有人所有。版权所有人不反对任何人复制专利与商标局的官方记录和档案中所存在的该专利文件或者该专利披露。


[0003]本申请涉及数据处理领域,并且更为具体地,涉及一种感兴趣区域-池化层的计算方法与装置、以及神经网络系统。

技术介绍

[0004]目前,人工智能(artificial intelligence,AI)的研究获得突飞猛进,尤其卷积神经网络(convolution neural network,CNN)在图像分类和检测等领域的准确率远高于传统机器视觉算法。CNN由若干预先定义好的基本层组合而成,包括卷积层、激活层、池化(pooling)层、全连接层等,其中,池化层可以包括感兴趣区域(region of interest,ROI)-池化层(ROI-pooling层)。
[0005]当前技术中,感兴趣区域-池化层的数据处理通过中央处理器(central process unit,CPU)计算平台或图形处理器(graphics processing unit,GPU)计算平台实现。感兴趣区域-池化层的计算量很大。CPU计算平台的计算吞吐率不高,无法满足感兴趣区域-池化层的计算性能要求。GPU计算平台的功耗过高。可知,传统的CPU或GPU计算方案无法实现计算性能与功耗的平衡。
[0006]因此,需要提出一种功耗较小的感兴趣区域-池化层的处理方案。<br/>
技术实现思路

[0007]本申请提供一种感兴趣区域-池化层的计算方法与装置、以及神经网络系统,可以有效提高感兴趣区域-池化层的计算效率,同时不会造成较大的功耗。
[0008]第一方面提供一种感兴趣区域-池化层的计算装置。该计算装置包括配置接口与S个计算单元,S为大于1的整数。该配置接口被配置为,向S个计算单元中的N个计算单元传输指示N个感兴趣区域的位置的配置信息,其中,N个感兴趣区域与N个计算单元一一对应,N为小于或等于S的正整数。N个计算单元中每个计算单元被配置为,对与之对应的感兴趣区域进行池化处理,获得对应感兴趣区域的输出数据。
[0009]第二方面提供一种感兴趣区域-池化层的计算方法。该计算方法包括:获取指示N个感兴趣区域的位置的配置信息,N为正整数;根据配置信息,对N个感兴趣区域进行并行池化处理,获得相应感兴趣区域的输出数据。
[0010]第三方面提供一种神经网络系统,该神经网络系统包括第一方面的感兴趣区域-池化层的计算装置。
[0011]本申请提供的计算装置包括多个计算单元,可以支持实现多个感兴趣区域的并行
池化处理,因此,可以提高感兴趣区域-池化层的处理效率。
附图说明
[0012]图1为感兴趣区域-池化层的功能示意图。
[0013]图2为感兴趣区域-池化的示意图。
[0014]图3为根据本申请实施例的计算装置的示意性框图。
[0015]图4为本申请实施例中获取数据窗口区域的输出数据的示意性流程图。
[0016]图5为感兴趣区域-池化的另一示意图。
[0017]图6为感兴趣区域-池化的又一示意图。
[0018]图7为感兴趣区域-池化的再一示意图。
[0019]图8为本申请实施例的计算单元的示意性框图。
[0020]图9为本申请实施例的计算单元的另一示意性框图。
[0021]图10为根据本申请实施例的计算装置的另一示意性框图。
[0022]图11为根据本申请实施例的感兴趣区域-池化层的计算方法的示意性流程图。
[0023]图12为根据本申请实施例的神经网络系统的示意性框图。
具体实施方式
[0024]下面将结合附图,对本申请实施例中的技术方案进行描述。
[0025]除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的
的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本申请。
[0026]为了更好地理解本申请实施例,下文先介绍感兴趣区域-池化层(下文记为ROI-pooling层)的相关概念。
[0027]如图1所示,ROI-pooling层的功能是对特征图中的感兴趣区域(ROI)进行下采样。
[0028]ROI-pooling层的输入数据(input feature map,IFM)是上一层的输出。ROI-pooling层的输入数据可以为一张特征图(feature map)组成的数组,也可以为多张特征图组成的3D的数组。如图1所示,ROI-pooling层的输入数据为L张特征图,每张特征图的分辨率为H(高)
×
W(宽)。
[0029]ROI-pooling层的输出数据(output feature map,OFM)由若干个立方体组成,如图1的右侧所示,共有M个立方体,ROI-pooling层输出的立方体的个数由输入特征图中的感兴趣区域(ROI)的数量决定。
[0030]每个立方体的维度都是相同的,例如,在图1的示例中,每个立方体由L张输出特征图组成。其中,每张输出特征图的分辨率是相同的,例如,在图1的示例中,立方体中的每张输出特征图的分辨率均为E(高)
×
F(宽)。
[0031]ROI-pooling层的功能是输入的特征图中的感兴趣区域进行下采样。例如,在图1的示例中,以L张特征图中的一张特征图为例,ROI-pooling层将分辨率为H
×
W的输入特征图下采样处理为分辨率为E
×
F的输出特征图。
[0032]ROI-pooling层输出的特征图的分辨率可以预先定义,例如,在图1的示例中,输出的立方体的分辨率E
×
F可以是预定义的。
[0033]ROI-pooling层池化处理的映射方式也可以预先定义,一般为求最大(max)或者求平均(avg)两种。
[0034]可以理解到,ROI-pooling层的特点是,待进行池化处理的感兴趣区域的尺寸可以不固定,每个感兴趣区域对应的输出特征图的尺寸是固定的。
[0035]作为示例而非限定,在图1中,ROI-pooling层的计算过程为:根据输出的立方体的分辨率E
×
F、输入特征图中的感兴趣区域的位置,逐点反推出输出数据在输入特征图上对应的数据窗口区域;对该数据窗口区域内的数据进行运算处理,获得对该数据窗口区域对应的输出数据。这里的运算处理可以是求最大值,或者是求平均值。
[0036]为了便于理解与描述,而非限定,下文先对本申请涉及的概念与术语进行说明。
[0037]1、感兴趣区域
[0038]感兴趣区域表示,输入特征图上待进行池化处理(即下采样处理)的区域。
[0039]2、池化输出框的分辨率
[0040]池化本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种感兴趣区域-池化层的计算装置,其特征在于,所述计算装置包括配置接口与S个计算单元,所述S为大于1的整数;所述配置接口被配置为,向所述S个计算单元中的N个计算单元传输指示N个感兴趣区域的位置的配置信息,其中,所述N个感兴趣区域与所述N个计算单元一一对应,所述N为小于或等于所述S的正整数;所述N个计算单元中每个计算单元被配置为,对与之对应的感兴趣区域进行池化处理,获得对应感兴趣区域的输出数据。2.根据权利要求1所述的计算装置,其特征在于,所述N个计算单元中的第一计算单元被配置为,对第一感兴趣区域进行池化处理,获得所述第一感兴趣区域的输出数据;其中,所述对第一感兴趣区域进行池化处理,获得所述第一感兴趣区域的输出数据,包括:获取输入特征图的数据,所述输入特征图包括K个感兴趣区域,所述K为不小于所述N的正整数;根据所述第一感兴趣区域的位置,以及池化输出框的分辨率,获得所述第一感兴趣区域的待输出数据在所述第一感兴趣区域上对应的数据窗口区域;从所获取的输入特征图的数据中选择落入所述数据窗口区域的数据;对落入所述数据窗口区域的数据进行运算处理,获得所述数据窗口区域的输出数据。3.根据权利要求2所述的计算装置,其特征在于,所述对落入所述数据窗口区域的数据进行运算处理,获得所述数据窗口区域的输出数据,包括:获取落入所述数据窗口区域的每一行数据的列处理结果;对所述列处理结果进行行处理,获得所述数据窗口区域的输出数据。4.根据权利要求2所述的计算装置,其特征在于,所述对落入所述数据窗口区域的数据进行运算处理,获得所述数据窗口区域的输出数据,包括:若所述第一感兴趣区域包括具有行重叠区域的第一数据窗口区域和第二数据窗口区域,则在获取所述第一数据窗口区域的输出数据的过程中,缓存所述行重叠区域的第一列处理结果;在计算所述第二数据窗口区域的输出数据的过程中,对所述第二数据窗口区域中除所述行重叠区域之外的行数据进行列处理,获得第二列处理结果,对所述第二列处理结果与所缓存的所述第一列处理结果进行行处理,获得所述第二数据窗口的输出数据。5.根据权利要求2所述的计算装置,其特征在于,所述对落入所述数据窗口区域的数据进行运算处理,获得所述数据窗口区域的输出数据,包括:,包括:若所述第一感兴趣区域包括具有行重叠区域的第一数据窗口区域和第二数据窗口区域,在获取所述第一数据窗口区域的输出数据的过程中,缓存所述行重叠区域的第一列处理结果的行处理结果;在计算所述第二数据窗口区域的输出数据的过程中,对所述第二数据窗口区域中除所述行重叠区域之外的行数据进行列处理,获得第二列处理结果,对所述第二列处理结果与所缓存的所述行重叠区域的第一列处理结果的行处理结果进行行处理,获得所述第二数据窗口的输出数据。6.根据权利要求1至5中任一项所述的计算装置,其特征在于,所述计算装置还包括数
据输入接口;其中,所述配置接口还被配置为,向所述数据输入接口传输指示所述输入特征图在外部存储设备中的起始位置,以及指示所述输入特征图的分辨率的配置信息;所述数据输入接口被配置为:根据所述起始位置,以及所述输入特征图的分辨率,从所述外部存储设备中读取所述输入特征图的数据;将读取的所述输入特征图的数据广播至所述N个计算单元中。7.根据权利要求6所述的计算装置,其特征在于,所述计算装置还包括缓存单元;其中,所述数据输入接口被配置为:以行主序,从所述外部存储设备中并行读取所述输入特征图的数据;将所述并行读取的输入特征图的数据缓存到所述缓存单元中;对所述缓存单元中的输入特征图的数据进行并-串转换处理;将所述并-串转换处理得到的输入特征图的数据广播至所述N个计算单元中。8.根据权利要求6或7所述的计算装置,其特征在于,所述计算装置还包括:数据输出接口,被配置为将所述N个计算单元计算得到的输出数据输出到所述外部存储设备中。9.根据权利要求8所述的计算装置,其特征在于,所述计算装置还包括:仲裁单元,被配置为将所述N个计算单元计算得到的输出数据按照预设顺序依次传输至所述数据输出接口。10.根据权利要求6至9中任一项所述的计算装置,其特征在于,所述S与所述数据输入接口读取数据的颗粒度以及所述计算单元在每个时钟周期处理像素点的数量相关。11.根据权利要求10所述的计算装置,其特征在于,所述计算单元在每个时钟周期处理一个像素点。12.根据权利要求2至5中任一项所述的计算装置,其特征在于,所述第一计算单元包括:运算模块,被配置为对落入所述数据窗口区域的数据进行所述运算处理,得到所述数据窗口区域的输出数据。13.根据权利要求12所述的计算装置,其特征在于,所述运算模块的数量与所述池化输出框的宽度相关。14.根据权利要求2至5中任一项所述的计算装置,其特征在于,所述第一计算单元还包括:存储模块,被配置为缓存所接收的所述输入特征图的数据。15.根据权利要求1至14中任一项所述的计算装置,其特征在于,所述配置接口被配置为:在所述计算装置完成所述N个感兴趣区域的池化处理之后,向所述S个计算单元中的P个计算单元传输指示P个感兴趣区域的位置的配置信息,所述P个感兴趣区域与所述P个计算单元一一对应,所述P为小于或等于所述S的正整数;其中,所述P个感兴趣区域为当前张输入特征图上未进行池化处理的感兴趣区域,或者,所述P个感兴趣区域为下一张输入特征图上的感兴趣区域。
16.根据权利要求1至15中任一项所述的计算装置,其特征在于,所述计算装置为专用集成电路ASIC或现场可编程门阵列FPGA。17.一种感兴趣区域-池化层的计算方法,其特征在于,包括:获取指示输入特征图上的N个感兴趣区域的位置的配...

【专利技术属性】
技术研发人员:谷骞高明明杨康
申请(专利权)人:深圳市大疆创新科技有限公司
类型:发明
国别省市:

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

1
相关领域技术
  • 暂无相关专利