一种数据处理方法、电子设备及存储介质技术

技术编号:35817989 阅读:15 留言:0更新日期:2022-12-03 13:42
本申请涉及神经网络技术领域,公开了一种数据处理方法、电子设备及存储介质,该方法包括:获取卷积神经网络模型中的待池化数据;根据深度维度参数d

【技术实现步骤摘要】
一种数据处理方法、电子设备及存储介质


[0001]本申请涉及神经网络领域,特别是涉及一种数据处理方法、电子设备及存储 介质。

技术介绍

[0002]在计算机视觉领域,尤其是无人驾驶汽车、无人机、智能终端等应用领域, 通常需要实时处理大量诸如视频等多媒体数据,卷积神经网络则常常被用来处理 图片,尤其是视频等多媒体数据。
[0003]卷积神经网络的原理是采用卷积,池化等操作从代表图像或视频的数据中提 取特征,以对图像进行识别。卷积神经网络中的池化层则用于对从卷积层提取出 的局部特征进行压缩。池化(polling)运算就是采用最大池化(Max Polling)或 者平均池化(Average Polling)的方式,从卷积层中提取出的特征矩阵的子矩阵, 用子矩阵中数据的最大值或者数据的平均值来代替,以简化后续的计算。
[0004]二维池化(pooling 2d)和三维池化(pooling 3d)都是池化运算中经常使用的算 子,二维池化通常作为处理图像类数据的神经网络算子,三维池化通常作为处理 视频类数据的神经网络算子,常作为神经网络底层算子库存在。现有的硬件平台 通常被用于执行二维池化运算,如果采用现有的硬件平台执行三维池化运算,基 于三维池化运算中输入数据和池化核都是三维,数据量较大,而现有的硬件平台 由于内存资源和处理器的限制,可能导致三维池化运算的计算效率较低,或者可 能无法实现三维池化运算。技术人员通常为了在现有的硬件平台上执行三维池化 运算,而针对现有的硬件平台进行改进,例如,扩大硬件平台的存储空间,增加 硬件平台的处理单元(Processing Element,PE)等,以实现三维池化运算。然而这 些改进措施往往会使硬件平台的体积变大,整体成本增高。
[0005]如果能够采用二维池化运算的方式实现三维池化运算,就能利用现有的支持 二维池化运算的硬件平台来实现三维池化运算,从而不再需要对前述硬件平台做 任何的改进。

技术实现思路

[0006]有鉴于此,本申请实施例提供了一种数据处理方法、电子设备及存储介质, 可以通过将三维数据进行降维分割后,采用两次二维池化运算,以及两次重新组 合运算,达到采用二维池化运算实现三维池化运算的目的。
[0007]第一方面,本申请提供一种数据处理方法,应用于电子设备,包括:
[0008]获取卷积神经网络模型中的待池化数据,其中,待池化数据的大小为[d
in
, h
in
,w
in
,c],w
in
为待池化数据的宽度维度参数,h
in
为待池化数据的高度维度参数, c为待池化数据的通道维度参数,d
in
为待池化数据的深度维度参数,w
in
,h
in
,c 和d
in
都为大于0的自然数;
[0009]根据深度维度参数d
in
将待池化数据分为d
in
个大小为[h
in
,w
in
,c]的第一数据 块;
[0010]对每一个第一数据块做第一二维池化运算,获得第一二维池化结果块;
[0011]对第一二维池化结果块进行第一重新组合计算获得第一组合数据块,其中, 第一组合数据块在每一个通道中的元素对应于k
d
个第一二维池化结果块在同一 个通道中的所有元素,k
d
为三维池化核的深度维度参数;
[0012]对第一组合数据块做第二二维池化运算,获得第二二维池化结果块;
[0013]对第二二维池化结果块进行第二重新组合计算获得输出数据。
[0014]在上述第一方面一种可能的实现方式,对第一数据块做第一二维池化运算, 获得第一二维池化结果块,包括:
[0015]卷积神经网络模型中的三维池化核的大小为[k
d
,k
h
,k
w
,c],三维池化步长的大 小为[s
d
,s
h
,s
w
],其中,k
d
为三维池化核的深度维度参数,k
h
为三维池化核的高度 维度参数,k
w
为三维池化核的宽度维度参数,c为三维池化核的通道维度参数, s
d
为三维池化步长的深度维度参数,s
h
为三维池化步长的高度维度参数,s
w
为三 维池化步长的宽度维度参数,k
d
,k
h
,k
w
,c,s
d
,s
h
,s
w
都为大于0的自然数;
[0016]根据三维池化核和三维池化步长确定第一二维池化核的大小为[k
h
,k
w
,c],第 一二维池化步长的大小为(S
h
,S
w
);
[0017]根据第一二维池化核和第一二维池化步长对第一数据块进行第一二维池化 运算,获得d
in
个第一二维池化结果块;
[0018]其中,第一二维池化结果块为d_pool1(m),且第一二维池化结果块的大小为 [h
out
,w
out
,c],w
out
为第一二维池化结果块的宽度维度参数,h
out
为第一二维池化结 果块的高度维度参数,c为第一二维池化结果块的通道维度参数,h
out
,w
out
和c 都为大于0的自然数。
[0019]在上述第一方面一种可能的实现方式,对第一二维池化结果块进行第一重新 组合计算获得第一组合数据块,包括:
[0020]将{d_pool1(m),d_pool1(m+1)

d_pool1(m+k
d

1)}中的k
d
个第一二维池化结 果块进行第一重新组合计算获得第一组合数据块;
[0021]其中,第一重新组合计算的步骤包括:
[0022]将第一二维池化结果块的每一个通道的h
out
×
w
out
个元素,依照高度维度的 次序,从第一高度维度的w
out
个元素开始,依次排列在同一个高度维度上,获得 k
d
个包含元素数量为(h
out
×
w
out
)的数组;
[0023]在每一个通道上,将k
d
个数组按照其对应的第一二维池化结果块的序号, 在高度维度的方向依次排列获得第一组合数据块;
[0024]其中,第一组合数据块为d_shape1(n),n的取值范围为[0,d
out

1],m=n
×
S
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,应用于电子设备,其特征在于,包括:获取卷积神经网络模型中的待池化数据,其中,所述待池化数据的大小为[d
in
,h
in
,w
in
,c],w
in
为所述待池化数据的宽度维度参数,h
in
为所述待池化数据的高度维度参数,c为所述待池化数据的通道维度参数,d
in
为所述待池化数据的深度维度参数,w
in
,h
in
,c和d
in
都为大于0的自然数;根据深度维度参数d
in
将所述待池化数据分为d
in
个大小为[h
in
,w
in
,c]的第一数据块;对每一个所述第一数据块做第一二维池化运算,获得第一二维池化结果块;对所述第一二维池化结果块进行第一重新组合计算获得第一组合数据块,其中,所述第一组合数据块在每一个通道中的元素对应于k
d
个所述第一二维池化结果块在同一个通道中的所有元素,k
d
为三维池化核的深度维度参数;对所述第一组合数据块做第二二维池化运算,获得第二二维池化结果块;对所述第二二维池化结果块进行第二重新组合计算获得输出数据。2.根据权利要求1所述的方法,其特征在于,所述根据深度维度参数d
in
将所述待池化数据分为d
in
个第一数据块,包括:根据所述深度维度参数d
in
,将所述待池化数据分为d
in
个第一数据块,其中,所述第一数据块data_in(m)的大小为[h
in
,w
in
,c],m为大于0的自然数,m的取值范围为[0,d
in

1]。3.根据权利要求2所述的方法,其特征在于,所述对所述第一数据块做第一二维池化运算,获得第一二维池化结果块,包括:所述卷积神经网络模型中的三维池化核的大小为[k
d
,k
h
,k
w
,c],三维池化步长的大小为[s
d
,s
h
,s
w
],其中,k
d
为三维池化核的深度维度参数,k
h
为三维池化核的高度维度参数,k
w
为三维池化核的宽度维度参数,c为三维池化核的通道维度参数,s
d
为三维池化步长的深度维度参数,s
h
为三维池化步长的高度维度参数,s
w
为三维池化步长的宽度维度参数,k
d
,k
h
,k
w
,c,s
d
,s
h
,s
w
都为大于0的自然数;根据所述三维池化核和所述三维池化步长确定第一二维池化核的大小为[k
h
,k
w
,c],第一二维池化步长的大小为(s
h
,s
w
);根据所述第一二维池化核和所述第一二维池化步长对所述第一数据块进行第一二维池化运算,获得d
in
个第一二维池化结果块;其中,所述第一二维池化结果块为d_pool1(m),且所述第一二维池化结果块的大小为[h
out
,w
out
,c],w
out
为所述第一二维池化结果块的宽度维度参数,h
out
为所述第一二维池化结果块的高度维度参数,c为所述第一二维池化结果块的通道维度参数,h
out
,w
out
和c都为大于0的自然数。4.根据权利要求3所述的方法,其特征在于,所述对所述第一二维池化结果块进行第一重新组合计算获得第一组合数据块,包括:将{d_pool1(m),d_pool1(m+1)

d_pool1(m+k
d

1)}中的k
d
个第一二维池化结果块进行第一重新组合计算获得第一组合数据块;其中,所述第一重新组合计...

【专利技术属性】
技术研发人员:黄嘉胜黄敦博潘阿成
申请(专利权)人:安谋科技中国有限公司
类型:发明
国别省市:

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

1