一种池化方法、芯片、设备和存储介质技术

技术编号:28626335 阅读:24 留言:0更新日期:2021-05-28 16:22
本申请提出一种池化方法、芯片、设备和存储介质。其中,上述方法可以包括获取目标特征图。对上述目标特征图进行拆分,得到若干子特征图。其中,上述目标特征图中处于同一池化窗口内的至少部分像素值分别处于不同的子特征图,各池化窗口内处于同一位置的像素值处于同一子特征图。对各子特征图中属于不同池化窗口的像素并行处理,得到上述目标特征图对应的池化结果。

【技术实现步骤摘要】
一种池化方法、芯片、设备和存储介质
本申请涉及计算机技术,具体涉及一种池化方法、芯片、设备和存储介质。
技术介绍
池化处理是指对输入的特征图进行下采样,在保持特征在某些维度(例如,旋转、平移、伸缩)不变性的情形下,减少特征数量,简化卷积网络计算复杂度的处理过程。池化处理可以包括两种方式:第一,平均池化,即对池化窗口内的特征值求平均;第二,最大池化,即对池化窗口内的特征值取最大。池化处理通常需要依赖人工智能芯片(以下简称AI芯片)。目前,亟需对池化处理的加速方法。
技术实现思路
有鉴于此,本申请至少公开一种池化方法,上述方法可以包括:获取目标特征图;对上述目标特征图进行拆分,得到若干子特征图;其中,上述目标特征图中处于同一池化窗口内的至少部分像素值分别处于不同的子特征图,各池化窗口内处于同一位置的像素值处于同一子特征图;对各子特征图中属于不同池化窗口的像素并行处理,得到上述目标特征图对应的池化结果。在示出的一些实施例中,上述对各子特征图中属于不同池化窗口的像素并行处理,得到上述目标特征图对应的池化结果,本文档来自技高网...

【技术保护点】
1.一种池化方法,其特征在于,所述方法包括:/n获取目标特征图;/n对所述目标特征图进行拆分,得到若干子特征图;其中,所述目标特征图中处于同一池化窗口内的至少部分像素值分别处于不同的子特征图,各池化窗口内处于同一位置的像素值处于同一子特征图;/n对各子特征图中属于不同池化窗口的像素并行处理,得到所述目标特征图对应的池化结果。/n

【技术特征摘要】
1.一种池化方法,其特征在于,所述方法包括:
获取目标特征图;
对所述目标特征图进行拆分,得到若干子特征图;其中,所述目标特征图中处于同一池化窗口内的至少部分像素值分别处于不同的子特征图,各池化窗口内处于同一位置的像素值处于同一子特征图;
对各子特征图中属于不同池化窗口的像素并行处理,得到所述目标特征图对应的池化结果。


2.根据权利要求1所述的方法,其特征在于,所述对各子特征图中属于不同池化窗口的像素并行处理,得到所述目标特征图对应的池化结果,包括:
将所述各子特征图分别包括的像素值加载至位移寄存器阵列中,根据池化指令,对所述各子特征图中处于同一位置的像素值并行池化处理,得到与所述目标特征图对应的池化结果。


3.根据权利要求1所述的方法,其特征在于,所述对各子特征图中属于不同池化窗口的像素值并行处理,得到所述目标特征图对应的池化结果,包括:
根据各子特征图中处于同一池化窗口的像素值所处的位置,确定各子特征图分别对应的位移寄存器阵列的移位操作方式;
将所述若干子特征图分别加载至位移寄存器阵列中,并针对每个子特征图,按照为该子特征图确定的位移寄存器阵列的移位操作方式对所述位移寄存器阵列中的位移寄存器存储的像素值执行移位操作,根据池化指令并行得到该特征子图中对应不同池化窗口的部分池化结果;
根据各个子特征图对应不同池化窗口的部分池化结果,确定与所述目标特征图对应的池化结果。


4.根据权利要求1-3任一所述的方法,其特征在于,所述对所述目标特征图进行拆分,得到若干子特征图,包括:
将所述目标特征图中处于奇数行、奇数列位置的像素值确定为第一子特征图;
将所述目标特征图中处于奇数行、偶数列位置的像素值确定为第二子特征图;
将所述目标特征图中处于偶数行、奇数列位置的像素值确定为第三子特征图;
将所述目标特征图中处于偶数行、偶数列位置的像素值确定为第四子特征图。


5.根据权利要求4所述的方法,其特征在于,所述将所述若干子特征图分别包括的像素值加载至位移寄存器阵列中,根据池化指令,对所述若干子特征图中处于同一位置的像素值并行池化处理,得到与所述目标特征图对应的池化结果位移寄存器阵列,包括:
将所述第一子特征图包括的各像素值分别搬移至所述位移寄存器阵列包括的至少部分位移寄存器中;
将所述第二子特征图包括的各像素值分别搬移至所述部分位移寄存器中,以使与各位移寄存器对应的计算内核根据所述池化指令,对接收的两个像素值进行池化处理,得到第一池化处理结果;
将所述第三子特征图包括的各像素值分别搬移至所述部分位移寄存器中,以使各计算内核根据所述池化指令,对所述第一池化处理结果与接收的像素值进行池化处理,得到第二池化处理结果;
将所述第四子特征图包括的各像素值分别搬移至所述部分位移寄存器中,以使各计算内核根据所述池化指令,对所述第二池化处理结果与接收的像素值进行池化处理,得到第三池化处理结果;
输出各计算内核分别进行池化处理得到的第三池化处理结果,得到与所述目标特征图对应的池化结果。


6.根据权利要求5所述的方法,其特征在于,所述池化处理包括最大池化处理;所述池化指令包括比较两者之间的最大值;
所述将所述第一子特征图包括的各像素值分别搬移至所述位移寄存器阵列包括的至少部分位移寄存器中,包括:
将所述第一子特征图包括的各像素值分别搬移至所述位移寄存器阵列包括的至少部分位移寄存器的第一寄存器中;
所述将所述第二子特征图包括的各像素值分别搬移至所述部分位移寄存器中,以使各计算单元根据所述池化指令,对接收的两个像素值进行池化处理,得到第一池化处理结果,包括:
将所述第二子特征图包括的各像素值分别搬移至所述部分位移寄存器的第二寄存器中,以使各计算单元根据所述池化指令,获取所述第一寄存器与所述第二寄存器中存储的数值中的最大值,并将所述最大值作为所述第一池化处理结果存储在所述第一寄存器中。


7.根据权利要求6所述的方法,其特征在于,所述将所述第三子特征图包括的各像素值分别搬移至所述部分位移寄存器中,以使各计算单元根据所述池化指令,对所述第一池化处理结果与接收的像素值进行池化处理,得到第二池化处理结果,包括:
将所述第三子特征图包括的各像素值分别搬移至所述部分位移寄存器的第二寄存器中,以使各计算单元根据所述池化指令,获取所述第一寄存器与所述第二寄存器中存储的数值中的最大值,并将所述最大值作为所述第二池化处理结果存储在所述第一寄存器中;
所述将所述第四子特征图包括的各像素值分别搬移至所述部分位移寄存器中,以使各计算单元根据所述池化指令,对所述第二池化处理结果与接收的像素值进行池化处理,得到第三池化处理结果,包括:
将所述第四子特征图包括的各像素值分别搬移至所述部分位移寄存器的第二寄存器中,以使各计算单元根据所述池化指令,获取所述第一寄存器与所述第二寄存器中存储的数值中的最大值,并将所述最大值作为所述第三池化处理结果存储在所述第一寄存器中。


8.根据权利要求7所述的方法,其特征在于,所述输出各计算单元所述部分位移寄存器中分别进行池化处理得到的第三池化处理结果,得到与所述目标特征图对应的池化结果,包括:
输出所述部分位移寄存器的第一寄存器中存储的数值,得到与所述目标特征图对应的池化结果。


9.根据权利要求4所述的方法,其特征在于,所述对各子特征图中属于不同池化窗口的像素并行处理,得到所述目标特征图对应的池化结果,包括:
将所述第一子特征图包括的各像素值分别搬移至所述位移寄存器阵列包括的至少部分位移寄存器中;
根据所述池化指令,对所述位移寄存器阵列包括的任意四个上下左右相邻的位移寄存器中的像素值进行池化操作,得到第一部分池化处理结果,并将所述第一部分池化处理结果存储至所述四个上下左右相邻的位移寄存器中处于预设位置的目标位移寄存器内;
将所述第二子特征图包括的各像素值分别搬移至所述部分位移寄存器中;
根据所述池化指令,对所述位移寄存器阵列包括的任意两个上下相邻的位移寄存器中的像素值进行池化操作,得到第二部分池化处理结果,并将所述第二部分池化处理结果存储至所述目标位移寄存器;
将所述第三子特征图包括的各像素值分别搬移至所述部分位移寄存器中;
根据所述池化指令,对所述位移寄存器阵列包括的任意两个左右相邻的位移寄存器中的像素值进行池化操作,得到第三部分池化处理结果,并将所述第三部分池化处理结果存储至所述目标位移寄存器;
将所述第四子特征图包括的各像素值分别搬移至所述部分位移寄存器中,并将所述部分位移寄存器中各位移寄存器中的像素值搬移至所述目标位移寄存器;
根据所述位移寄存器阵列包括的各目标位移寄存器内的第一部分池化处理结果、第二部分池化处理结果、第三部分池化处理结果以及所述第四子特征图,得到与所述目标特征图对应的池化结果。


10.根据权利要求9所述的方法,其特征在于,所述池化处理包括最大池化处理;所述池化指令包括比较两者之间的最大值;所述预设位置包括任意四个上下左右相邻的位移寄存器中的左下角位置;所述目标位移寄存器包括所述四个上下左右相邻的位移寄存器中的左下角位置的位移寄存器;
所述将所述第一子特征图包括的各像素值分别搬移至所述位移寄存器阵列包括的至少部分位移寄存器中,包括:
将所述第一子特征图包括的各像素值分别搬移至所述位移寄存器阵列包括的至少部分位移寄存器的第一寄存器中;
所述根据所述池化指令,对所述位移寄存器阵列包括的任意四个上下左右相邻的位移寄存器中的像素值进行池化操作,得到第一部分池化处理结果,并将所述第一部分池化处理结果存储至所述四个上下左右相邻的位移寄存器中处于预设位置的目标位移寄存器内,包括:
将所述部分位移寄存器中各第一位移寄存器的第一寄存器中的数值搬移至该第一位移寄存器右方的第二位移寄存器的第二寄存器中;
将各第二位移寄存器中第一寄存器与第二寄存器中较大的数值存储至各第二位移寄存器的第一寄存器中;
将所述各第二位移寄存器中第一寄存器中的数值搬移至该第二位移寄存器下方的第三位移寄存器的第二寄存器中;
将各第三位移寄存器中第一寄存器与第二寄存器中较大的数值存储至各第三位移寄存器的第一寄存器中;
将所述各第三位移寄存器中第一寄存器中的数值搬移至该第三位移寄存器左方的目标位移寄存器的第二寄存器中;
将各目标位移寄存器中第一寄存器与第二寄存器中较大的数值作为所述第一部分池化处理结果,存储至各目标位移寄存器的第一寄存器中。


11.根据权利要求10所述的方法,其特征在于,所述将所述第二子特征图包括的各像素值分别搬移至所述部分位移寄存器中...

【专利技术属性】
技术研发人员:周军常亮周亮王文强杨雨桐其他发明人请求不公开姓名
申请(专利权)人:成都商汤科技有限公司电子科技大学
类型:发明
国别省市:四川;51

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

1