掌桥专利:专业的专利平台
掌桥专利
首页

一种残差网络内存优化方法、装置、设备及介质

文献发布时间:2024-04-18 19:52:40


一种残差网络内存优化方法、装置、设备及介质

技术领域

本发明涉及残差网络、嵌入式设备技术领域,特别涉及一种残差网络内存优化方法、装置、设备及介质。

背景技术

近年来,深度学习神经网络模型被广泛应用在许多领域,并取得了非常好的效果。模型推理作为模型使用的阶段,与运行模型的硬件、环境等关系密切,出现了适配不同硬件的模型推理框架。另外,嵌入式设备功耗低,计算能力和内存资源有限,对深度学习模型的部署提出了较高的要求。在模型推理阶段,最突出的问题就是内存占用大,尤其是激活值占用内存大,与嵌入式设备有限的内存资源形成冲突。残差网络是卷积神经网络中一个重要的模块,出现在很多重要的卷积神经网络中,包括MobileNetV2,ResNet等常用的卷积神经网络。在嵌入式设备中,内存资源非常有限,而残差网络的Add算子往往是内存占用的瓶颈,因为需要两个输出张量相加,而输出张量是模型推理中内存占用最高的部分。为了降低输出张量占用的内存,通常使用量化的方式,即在每层卷积节点中,采用量化后的权重和输入计算卷积,并逆量化到INT8类型作为输出,相对于32位浮点数类型,8位整型大大降低了内存占用情况。但是,对于残差网络中的Add节点,如果将两个卷积节点INT8输出相加,写会导致数据溢出的情况。因此对于Add节点的输入,只能采用32位数据,往往前面的卷积节点会逆量化到INT32数据类型作为输出,这样就避免了数据的溢出,但又会导致内存占用瓶颈问题。

综上,如何避免残差网络在嵌入式设备上推理时出现内存瓶颈是目前有待解决的问题。

发明内容

有鉴于此,本发明的目的在于提供一种残差网络内存优化方法、装置、设备及介质,能够避免残差网络在嵌入式设备上推理时出现内存瓶颈。其具体方案如下:

第一方面,本申请公开了一种残差网络内存优化方法,应用于嵌入式设备,包括:

获取训练后的深度学习模型,并将所述深度学习模型中残差网络的各Add节点的输入量化类型设置为INT32类型,以及搭建基于嵌入式设备的深度学习推理框架;

在服务器上利用所述深度学习推理框架对所述深度学习模型进行推理,以从各所述Add节点中确定出导致内存瓶颈的目标Add节点;

将所述目标Add节点的输入量化类型设置为INT7类型,并基于所述INT7类型在所述深度学习推理框架中更新相应的量化因子,以及在所述深度学习推理框架中增加具有INT32类型数据相加功能的第一Add算子和具有INT8类型数据相加功能的第二Add算子,以得到优化后深度学习推理框架。

可选的,所述基于所述INT7类型在所述深度学习推理框架中更新相应的量化因子,包括:

基于所述INT7类型在所述深度学习推理框架中更新与所述目标Add节点输入对应的量化因子,并更新与所述目标Add节点的上层节点输出对应的逆量化因子。

可选的,所述得到优化后深度学习推理框架之后,还包括:

利用所述优化后深度学习推理框架对所述深度学习模型进行推理。

可选的,所述利用所述优化后深度学习推理框架对所述深度学习模型进行推理的过程中,还包括:

基于残差网络中当前Add节点设置的输入量化类型获取上层节点输出的目标数据,以将所述目标数据作为所述当前Add节点的输入数据;

基于所述当前Add节点的输入量化类型确定出目标Add算子,并利用所述目标Add算子对所述输入数据进行处理,以得到输出结果。

可选的,所述基于所述当前Add节点的输入量化类型确定出目标Add算子,并利用所述目标Add算子对所述输入数据进行处理,以得到输出结果,包括:

若所述当前Add节点的输入量化类型为INT32类型,则对应的目标Add算子为具有INT32类型数据相加功能的第一Add算子,并利用所述第一Add算子对所述输入数据进行处理,以得到INT32类型的输出结果;

若所述当前Add节点的输入量化类型为INT7类型,则对应的目标Add算子为具有INT8类型数据相加功能的第二Add算子,并利用所述第二Add算子对所述输入数据进行处理,以得到INT8类型的输出结果。

可选的,所述利用所述目标Add算子对所述输入数据进行处理,以得到输出结果之后,还包括:

若所述输出结果为INT32类型,则按照IN8类型对所述输出结果进行量化处理,并将量化后输出结果作为下层节点输入;

若所述输出结果为INT8类型,则直接将所述输出结果作为下层节点输入。

可选的,所述在服务器上利用所述深度学习推理框架对所述深度学习模型进行推理,以从各所述Add节点中确定出导致内存瓶颈的目标Add节点,包括:

在服务器上利用所述深度学习推理框架对所述深度学习模型进行推理,以从各所述Add节点中确定出占用内存较高的Add节点以及相应的内存占用信息;

将所述内存占用信息与所述嵌入式设备的内存信息进行比对,以从占用内存较高的Add节点中确定出导致内存瓶颈的目标Add节点。

第二方面,本申请公开了一种残差网络内存优化装置,应用于嵌入式设备,包括:

框架搭建模块,用于获取训练后的深度学习模型,并将所述深度学习模型中残差网络的各Add节点的输入量化类型设置为INT32类型,以及搭建基于嵌入式设备的深度学习推理框架;

模型推理模块,用于在服务器上利用所述深度学习推理框架对所述深度学习模型进行推理,以从各所述Add节点中确定出导致内存瓶颈的目标Add节点;

框架优化模块,用于将所述目标Add节点的输入量化类型设置为INT7类型,并基于所述INT7类型在所述深度学习推理框架中更新相应的量化因子,以及在所述深度学习推理框架中增加具有INT32类型数据相加功能的第一Add算子和具有INT8类型数据相加功能的第二Add算子,以得到优化后深度学习推理框架。

第三方面,本申请公开了一种电子设备,包括:

存储器,用于保存计算机程序;

处理器,用于执行所述计算机程序,以实现前述公开的残差网络内存优化方法的步骤。

第四方面,本申请公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的残差网络内存优化方法的步骤。

可见,本申请公开了一种应用于嵌入式设备的残差网络内存优化方法,通过获取训练后的深度学习模型,并将所述深度学习模型中残差网络的各Add节点的输入量化类型设置为INT32类型,以及搭建基于嵌入式设备的深度学习推理框架;在服务器上利用所述深度学习推理框架对所述深度学习模型进行推理,以从各所述Add节点中确定出导致内存瓶颈的目标Add节点;将所述目标Add节点的输入量化类型设置为INT7类型,并基于所述INT7类型在所述深度学习推理框架中更新相应的量化因子,以及在所述深度学习推理框架中增加具有INT32类型数据相加功能的第一Add算子和具有INT8类型数据相加功能的第二Add算子,以得到优化后深度学习推理框架。由此可见,本申请首先获取到训练后的深度学习模型,并将深度学习模型中残差网络的各Add节点的输入量化类型设置为INT32类型,以避免数据的溢出问题;再搭建嵌入式设备的深度学习推理框架,并在服务器上利用深度学习推理框架对深度学习模型进行推理,以从各Add节点中确定出导致内存瓶颈的目标Add节点,以将目标Add节点的输入量化类型设置为INT7类型,也即,本申请并非是对所有的Add节点都采用INT7量化,而是对其中占用内存较高的、导致内存瓶颈的目标Add节点采用INT7量化,如此一来,既能避免内存瓶颈,又能避免了INT7量化导致的精度下降问题;此外,再基于INT7类型在深度学习推理框架中更新相应的量化因子,以及在深度学习推理框架中增加具有INT32类型数据相加功能的第一Add算子和具有INT8类型数据相加功能的第二Add算子,以得到优化后深度学习推理框架,以便利用优化后深度学习推理框架对深度学习模型进行推理。通过上述方案,本申请能够有效解决残差网络在嵌入式设备上推理时出现的内存瓶颈问题。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本申请公开的一种残差网络内存优化方法流程图;

图2为本申请公开的一种具体的残差网络内存优化方法流程图;

图3为本申请公开的一种具体的残差网络内存优化流程示意图;

图4为本申请公开的一种残差网络内存优化装置结构示意图;

图5为本申请公开的一种电子设备结构图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

当前,为了降低残差网络中Add节点的输出张量占用的内存,通常使用量化的方式,即在每层卷积节点中,采用量化后的权重和输入计算卷积,并逆量化到INT8类型作为输出,相对于32位浮点数类型,8位整型大大降低了内存占用情况。但是,对于残差网络中的Add节点,如果将两个卷积节点INT8输出相加,写会导致数据溢出的情况。因此对于Add节点的输入,只能采用32位数据,往往前面的卷积节点会逆量化到INT32数据类型作为输出,这样就避免了数据的溢出,但又会导致内存占用瓶颈问题。为此,本申请实施例公开了一种残差网络内存优化方法、装置、设备及介质,能够避免残差网络在嵌入式设备上推理时出现内存瓶颈。

参见图1所示,本申请实施例公开了一种残差网络内存优化方法,应用于嵌入式设备,该方法包括:

步骤S11:获取训练后的深度学习模型,并将所述深度学习模型中残差网络的各Add节点的输入量化类型设置为INT32类型,以及搭建基于嵌入式设备的深度学习推理框架。

本实施例中,首先获取训练后的深度学习模型,并将深度学习模型中残差网络的各Add节点的输入量化类型设置为INT32类型,以避免两个INT8类型的数据相加导致溢出的情况,故残差网络的Add节点采用逆量化到INT32类型的数据计算,再搭建基于嵌入式设备的深度学习推理框架。此外,上述获取训练后的深度学习模型也可以是当前对深度学习模型进行训练得到的。

步骤S12:在服务器上利用所述深度学习推理框架对所述深度学习模型进行推理,以从各所述Add节点中确定出导致内存瓶颈的目标Add节点。

本实施例中,进一步评估Add节点的内存占用情况,具体为在服务器上利用深度学习推理框架对深度学习模型进行推理,以从各Add节点中确定出导致内存瓶颈的目标Add节点。

步骤S13:将所述目标Add节点的输入量化类型设置为INT7类型,并基于所述INT7类型在所述深度学习推理框架中更新相应的量化因子,以及在所述深度学习推理框架中增加具有INT32类型数据相加功能的第一Add算子和具有INT8类型数据相加功能的第二Add算子,以得到优化后深度学习推理框架。

本实施例中,对内存占用瓶颈的目标Add节点,设置其输入量化类型为INT7类型。也即,本申请并非是对所有的Add节点都采用INT7量化,而是对其中占用内存较高的、导致内存瓶颈的目标Add节点采用INT7量化,如此一来,既能避免内存瓶颈,又能避免了INT7量化导致的精度下降问题。需要指出的是,这里的INT7只表示量化范围为[-63,63],但数据类型仍然采用INT8数据类型,以支持通用的嵌入式设备。然后基于INT7类型在深度学习推理框架中更新相应的量化因子,也即对算子类型为Add且设置为INT7量化类型的节点,需对其相应的量化因子进行更新。在具体实施方式中,上述基于所述INT7类型在所述深度学习推理框架中更新相应的量化因子,包括:基于所述INT7类型在所述深度学习推理框架中更新与所述目标Add节点输入对应的量化因子,并更新与所述目标Add节点的上层节点输出对应的逆量化因子。可以理解的是,在更新相应的量化因子时,需更新与目标Add节点输入对应的量化因子,还需更新与目标Add节点的上层节点输出对应的逆量化因子。具体的,将Add节点输入的量化因子除以2,从INT8量化转化为INT7量化,并更新以Add节点输入作为输出的节点的逆量化因子,即上层节点的逆量化因子,逆量化因子乘以2。

进一步的,还需要在深度学习推理框架中增加具有INT32类型数据相加功能的第一Add算子和具有INT8类型数据相加功能的第二Add算子,以得到优化后深度学习推理框架。也即,深度学习推理框架中除了支持INT32类型数据相加的第一Add算子之外,还需增加支持INT8类型数据相加的第二Add算子,以得到优化后深度学习推理框架。需要指出的是,后续需注意检查输入数据是否在INT7数据范围内,以避免数据溢出情况。

可见,本申请公开了一种应用于嵌入式设备的残差网络内存优化方法,通过获取训练后的深度学习模型,并将所述深度学习模型中残差网络的各Add节点的输入量化类型设置为INT32类型,以及搭建基于嵌入式设备的深度学习推理框架;在服务器上利用所述深度学习推理框架对所述深度学习模型进行推理,以从各所述Add节点中确定出导致内存瓶颈的目标Add节点;将所述目标Add节点的输入量化类型设置为INT7类型,并基于所述INT7类型在所述深度学习推理框架中更新相应的量化因子,以及在所述深度学习推理框架中增加具有INT32类型数据相加功能的第一Add算子和具有INT8类型数据相加功能的第二Add算子,以得到优化后深度学习推理框架。由此可见,本申请首先获取到训练后的深度学习模型,并将深度学习模型中残差网络的各Add节点的输入量化类型设置为INT32类型,以避免数据的溢出问题;再搭建嵌入式设备的深度学习推理框架,并在服务器上利用深度学习推理框架对深度学习模型进行推理,以从各Add节点中确定出导致内存瓶颈的目标Add节点,以将目标Add节点的输入量化类型设置为INT7类型,也即,本申请并非是对所有的Add节点都采用INT7量化,而是对其中占用内存较高的、导致内存瓶颈的目标Add节点采用INT7量化,如此一来,既能避免内存瓶颈,又能避免了INT7量化导致的精度下降问题;此外,再基于INT7类型在深度学习推理框架中更新相应的量化因子,以及在深度学习推理框架中增加具有INT32类型数据相加功能的第一Add算子和具有INT8类型数据相加功能的第二Add算子,以得到优化后深度学习推理框架,以便利用优化后深度学习推理框架对深度学习模型进行推理。通过上述方案,本申请能够有效解决残差网络在嵌入式设备上推理时出现的内存瓶颈问题。

参见图2和图3所示,本申请实施例公开了一种具体的残差网络内存优化方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体包括:

步骤S21:获取训练后的深度学习模型,并将所述深度学习模型中残差网络的各Add节点的输入量化类型设置为INT32类型,以及搭建基于嵌入式设备的深度学习推理框架。

步骤S22:在服务器上利用所述深度学习推理框架对所述深度学习模型进行推理,以从各所述Add节点中确定出占用内存较高的Add节点以及相应的内存占用信息。

本实施例中,评估内存占用瓶颈,具体为在服务器上利用深度学习推理框架对深度学习模型进行推理,以输出占用内存较高的Add节点,以及相应的内存占用信息,即从各Add节点中确定出占用内存较高的Add节点以及相应的内存占用信息。

步骤S23:将所述内存占用信息与所述嵌入式设备的内存信息进行比对,以从占用内存较高的Add节点中确定出导致内存瓶颈的目标Add节点。

本实施例中,获取当前选用的嵌入式设备的内存信息,并与上述内存占用信息进行比对,以确定出导致内存瓶颈的目标Add节点。可以理解的是,本申请实施例先确定出占用内存较高的Add节点,再根据嵌入式设备的内存信息确定出其中导致内存瓶颈的目标Add节点。也即,本申请只是对少量的内存占用高的且导致内存瓶颈的目标Add节点采用INT7量化,避免了INT7量化导致的精度下降问题,也避免了内存瓶颈。可以理解的是,在实际使用中,成为瓶颈的Add节点往往很少,比如在MobileNetV2中,只有第一个Add节点占用内存非常高。

步骤S24:将所述目标Add节点的输入量化类型设置为INT7类型,并基于所述INT7类型在所述深度学习推理框架中更新相应的量化因子,以及在所述深度学习推理框架中增加具有INT32类型数据相加功能的第一Add算子和具有INT8类型数据相加功能的第二Add算子,以得到优化后深度学习推理框架。

本实施例中,用于对深度学习推理框架中的量化模块和Add算子实现模块进行优化,即更新量化化因子,和增加Add算子。

步骤S25:利用所述优化后深度学习推理框架对所述深度学习模型进行推理。

本实施例中,在得到优化后深度学习推理框架后,则使用优化后深度学习推理框架对深度学习模型进行推理。在具体实施方式中,上述利用所述优化后深度学习推理框架对所述深度学习模型进行推理的过程中,还包括:基于残差网络中当前Add节点设置的输入量化类型获取上层节点输出的目标数据,以将所述目标数据作为所述当前Add节点的输入数据;基于所述当前Add节点的输入量化类型确定出目标Add算子,并利用所述目标Add算子对所述输入数据进行处理,以得到输出结果。可以理解的是,在卷积神经网络中,上层卷积节点的输出即为当前卷积节点的输入,本实施例中基于残差网络中当前Add节点设置的输入量化类型获取上层节点输出的目标数据,以将该目标数据作为当前Add节点的输入数据,也即通过残差网络中当前Add节点设置的输入量化类型即可确定出当前Add节点输入数据的类型,同时也确定出了上层节点的输出数据的类型。然后基于当前Add节点的输入量化类型确定出对应的目标Add算子,并利用目标Add算子对输入数据进行处理,以得到输出结果。

进一步的,上述基于所述当前Add节点的输入量化类型确定出目标Add算子,并利用所述目标Add算子对所述输入数据进行处理,以得到输出结果,包括:若所述当前Add节点的输入量化类型为INT32类型,则对应的目标Add算子为具有INT32类型数据相加功能的第一Add算子,并利用所述第一Add算子对所述输入数据进行处理,以得到INT32类型的输出结果;若所述当前Add节点的输入量化类型为INT7类型,则对应的目标Add算子为具有INT8类型数据相加功能的第二Add算子,并利用所述第二Add算子对所述输入数据进行处理,以得到INT8类型的输出结果。也即,若当前Add节点设置的输入量化类型为INT32类型,则对应的目标Add算子为具有INT32类型数据相加功能的第一Add算子,利用第一Add算子对输入数据进行处理后得到的输出结果为INT32类型的数据,以保证整体模型精度;若当前Add节点的输入量化类型为INT7类型,则对应的目标Add算子为具有INT8类型数据相加功能的第二Add算子,利用第二Add算子对输入数据进行处理后得到的输出结果为INT8类型的数据。

此外,上述利用所述目标Add算子对所述输入数据进行处理,以得到输出结果之后,还包括:若所述输出结果为INT32类型,则按照IN8类型对所述输出结果进行量化处理,并将量化后输出结果作为下层节点输入;若所述输出结果为INT8类型,则直接将所述输出结果作为下层节点输入。也即,针对于目标Add节点的下层节点,如果目标Add节点输出数据类型为INT32,则需要量化到INT8,再进行计算;如果Add节点输出数据类型为INT8,则直接进行计算。

其中,关于上述步骤S21和S24更加具体的处理过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。

可见,本申请实施例在确定出导致内存瓶颈的目标Add节点时,具体先利用深度学习推理框架对深度学习模型进行推理,以输出占用内存较高的Add节点,以及相应的内存占用信息,再将上述内存占用信息与当前选用的嵌入式设备的内存信息进行比对,以确定出导致内存瓶颈的目标Add节点,以便只对目标Add节点采用INT7量化,避免INT7量化导致的精度下降问题。此外,在得到优化后深度学习推理框架后,则使用优化后深度学习推理框架对深度学习模型进行推理,首先基于当前Add节点设置的输入量化类型获取上层节点输出的目标数据,以将目标数据作为当前Add节点的输入数据,再使用与输入量化类型对应的目标Add算子对输入数据进行处理,以得到输出结果。如果设置了INT7量化,则使用INT8类型数据相加的第二Add算子,否则,继续使用INT32类型数据相加的第一Add算子,保证整体模型精度。通过上述方案,本申请能够有效解决残差网络在嵌入式设备上推理时出现的内存瓶颈问题。

参见图4所示,本申请实施例公开了一种残差网络内存优化装置,应用于嵌入式设备,该装置包括:

框架搭建模块11,用于获取训练后的深度学习模型,并将所述深度学习模型中残差网络的各Add节点的输入量化类型设置为INT32类型,以及搭建基于嵌入式设备的深度学习推理框架;

模型推理模块12,用于在服务器上利用所述深度学习推理框架对所述深度学习模型进行推理,以从各所述Add节点中确定出导致内存瓶颈的目标Add节点;

框架优化模块13,用于将所述目标Add节点的输入量化类型设置为INT7类型,并基于所述INT7类型在所述深度学习推理框架中更新相应的量化因子,以及在所述深度学习推理框架中增加具有INT32类型数据相加功能的第一Add算子和具有INT8类型数据相加功能的第二Add算子,以得到优化后深度学习推理框架。

可见,本申请公开了一种应用于嵌入式设备的残差网络内存优化方法,通过获取训练后的深度学习模型,并将所述深度学习模型中残差网络的各Add节点的输入量化类型设置为INT32类型,以及搭建基于嵌入式设备的深度学习推理框架;在服务器上利用所述深度学习推理框架对所述深度学习模型进行推理,以从各所述Add节点中确定出导致内存瓶颈的目标Add节点;将所述目标Add节点的输入量化类型设置为INT7类型,并基于所述INT7类型在所述深度学习推理框架中更新相应的量化因子,以及在所述深度学习推理框架中增加具有INT32类型数据相加功能的第一Add算子和具有INT8类型数据相加功能的第二Add算子,以得到优化后深度学习推理框架。由此可见,本申请首先获取到训练后的深度学习模型,并将深度学习模型中残差网络的各Add节点的输入量化类型设置为INT32类型,以避免数据的溢出问题;再搭建嵌入式设备的深度学习推理框架,并在服务器上利用深度学习推理框架对深度学习模型进行推理,以从各Add节点中确定出导致内存瓶颈的目标Add节点,以将目标Add节点的输入量化类型设置为INT7类型,也即,本申请并非是对所有的Add节点都采用INT7量化,而是对其中占用内存较高的、导致内存瓶颈的目标Add节点采用INT7量化,如此一来,既能避免内存瓶颈,又能避免了INT7量化导致的精度下降问题;此外,再基于INT7类型在深度学习推理框架中更新相应的量化因子,以及在深度学习推理框架中增加具有INT32类型数据相加功能的第一Add算子和具有INT8类型数据相加功能的第二Add算子,以得到优化后深度学习推理框架,以便利用优化后深度学习推理框架对深度学习模型进行推理。通过上述方案,本申请能够有效解决残差网络在嵌入式设备上推理时出现的内存瓶颈问题。

图5为本申请实施例提供的一种电子设备的结构示意图。具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的由电子设备执行的残差网络内存优化方法中的相关步骤。

本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口24能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。

其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。

另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源包括操作系统221、计算机程序222及数据223等,存储方式可以是短暂存储或者永久存储。

其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,以实现处理器21对存储器22中海量数据223的运算与处理,其可以是Windows、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的残差网络内存优化方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。数据223除了可以包括电子设备接收到的由外部设备传输进来的数据,也可以包括由自身输入输出接口25采集到的数据等。

进一步的,本申请实施例还公开了一种计算机可读存储介质,所述存储介质中存储有计算机程序,所述计算机程序被处理器加载并执行时,实现前述任一实施例公开的由残差网络内存优化过程中执行的方法步骤。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上对本发明所提供的一种残差网络内存优化方法、装置、设备及存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

相关技术
  • 一种内存优化的数据文件格式转化方法、装置及存储介质
  • 内存优化方法、装置、计算机装置以及存储介质
  • 一种处理网络资源的方法、装置、设备及可读存储介质
  • 一种网络安全态势预测方法、装置、设备及存储介质
  • 一种报文发送方法、装置、网络设备和计算机可读介质
  • 融合残差网络与U-Net网络的图像变化检测方法、装置、存储介质及设备
  • 一种基于残差网络的图像分类方法、装置、设备及介质
技术分类

06120116331912