一种数据处理方法、装置、芯片、设备及介质制造方法及图纸

技术编号:32271594 阅读:13 留言:0更新日期:2022-02-12 19:35
本申请公开了一种数据处理方法、装置、芯片、设备及介质,用以解决现有技术神经网络的计算速度慢的问题。由于在本申请中,电子设备可以根据内存的存储空间和神经网络层中卷积核的第一尺寸,确定输出数据的第二尺寸和卷积核的数量;根据所述输出数据的第二尺寸,确定输入数据的第三尺寸;根据所述输入数据的第三尺寸和所述卷积核的数量,对外存中的数据进行切分,将切分后的数据输入到内存中,无需每次计算时都进行一次数据搬运,可以降低数据搬运次数和搬运重复率,以及可以提高数据的复用率,进而提高神经网络的计算速度。进而提高神经网络的计算速度。进而提高神经网络的计算速度。

【技术实现步骤摘要】
一种数据处理方法、装置、芯片、设备及介质


[0001]本申请涉及深度学习
,尤其涉及一种数据处理方法、装置、芯片、设备及介质。

技术介绍

[0002]随着芯片计算能力的增强,神经网络尤其是图像处理的神经网络中,每个神经网络层都会有大量特征数据和卷积核数据的输入输出。大量的特征数据和卷积核数据通常保存在存储空间大但读取速度较慢的外存中,每次使用时需要将这些数据从外存搬运到存储空间较小但读取速度较快的内存中,供芯片进行使用。
[0003]由于内存大小有限,可能无法将外存中的特征数据和卷积核数据一次性搬运到内存中。一般这种情况下,按照芯片使用数据的先后顺序,先从外存中获取本层当前所需输入的特征数据和卷积核数据,可能包括前一个神经网络层输出的特征数据,搬运至内存中进行乘加计算单元、激活计算单元以及池化计算单元等计算,然后将输出的特征数据搬运至外存中作为下一个神经网络层的输入,重复多次,直至完成所有神经网络层的计算。
[0004]可见,每次计算时都从外存中获取所需的特征数据和卷积核数据,以及在每次计算后将输出的特征数据保存在外存中,特征数据和卷积核数据的搬运量较多,导致神经网络的计算速度较慢。

技术实现思路

[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]切分模块,用于根据所述输入数据的第三尺寸和所述卷积核的数量,对外存中的数据进行切分,将切分后的数据输入到内存中。
[0030]本申请实施例还提供一种芯片,所述芯片用于执行上述任一的数据处理方法的步骤。
[0031]本申请实施例还提供一种电子设备,所述电子设备至少包括处理器和存储器,所述处理器用于执行存储器中存储的计算机程序时实现上述任一的数据处理方法的步骤。
[0032]本申请实施例还提供一种计算机可读存储介质,其存储有计算机程序,所述计算机程序被处理器执行时实现上述任一的数据处理方法的步骤。
[0033]由于本申请实施例中根据内存的存储空间和神经网络层中卷积核的第一尺寸,得到输入数据的尺寸和卷积核的数量,然后对外存中的数据进行切分搬运,无需每次计算时都进行一次数据搬运,可以降低数据搬运次数和搬运重复率,以及可以提高数据的复用率,进而提高神经网络的计算速度。
附图说明
[0034]为了更清楚地说明本申请或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0035]图1为本申请一些实施例提供的一种数据处理过程示意图;
[0036]图2为本申请一些实施例提供的一种数据处理流程示意图;
[0037]图3为本申请一些实施例提供的一种数据处理过程示意图;
[0038]图4为本申请一些实施例提供的一种数据重新排布流程示意图;
[0039]图5为本申请一些实施例提供的一种数据重新排布流程示意图;
[0040]图6为本申请一些实施例提供的一种数据处理装置的结构示意图;
[0041]图7为本申请一些实施例提供的一种电子设备的结构示意图。
具体实施方式
[0042]为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0043]为了提高神经网络的计算速度,本申请实施例提供了一种数据处理方法、装置、芯片、设备及介质。
[0044]实施例1:
[0045]图1为本申请实施例提供的一种数据本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,所述方法包括:根据内存的存储空间和神经网络层中卷积核的第一尺寸,确定输出数据的第二尺寸和卷积核的数量;根据所述输出数据的第二尺寸,确定输入数据的第三尺寸;根据所述输入数据的第三尺寸和所述卷积核的数量,对外存中的数据进行切分,将切分后的数据输入到内存中。2.如权利要求1所述的方法,其特征在于,所述根据内存的存储空间和神经网络层中卷积核的第一尺寸,确定输出数据的第二尺寸和卷积核的数量,包括:根据所述卷积核的第一尺寸、所述卷积核的第一通道数和一组卷积核的数量,确定所述一组卷积核对应的第一数据量;根据输出数据的初始尺寸,确定输入数据的初始尺寸;根据所述第一数据量、所述输出数据的初始尺寸和所述输入数据的初始尺寸,确定一次计算对应的第二数据量;如果所述第二数据量超过所述内存的存储空间,和/或如果所述输入数据的初始尺寸大于或等于设定尺寸,对所述输出数据的初始尺寸进行调整,直至调整后的第二数据量小于或等于所述内存的存储空间,且调整后的输入数据的初始尺寸小于所述设定尺寸;如果所述第二数据量超过所述内存的存储空间,且所述输入数据的初始尺寸小于所述设定尺寸,将所述输出数据的初始尺寸确定为所述输出数据的第二尺寸。3.如权利要求2所述的方法,其特征在于,所述根据内存的存储空间和神经网络层中卷积核的第一尺寸,确定卷积核的数量,包括:根据所述内存的存储空间、所述输出数据的第二尺寸和所述一组卷积核对应的第一数据量,确定卷积核的组数,并确定所述组数的卷积核的数量。4.如权利要求1

3任一项所述的方法,其特征在于,所述对外存中的数据进行切分,包括:对所述外存中的数据进行重新排布,对重新排布后的数据进行切分。5.如权利要...

【专利技术属性】
技术研发人员:张静周全
申请(专利权)人:青岛信芯微电子科技股份有限公司
类型:发明
国别省市:

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

1