模型剪枝方法及装置与流程

文档序号:38869390发布日期:2024-08-02 02:41阅读:11来源:国知局
模型剪枝方法及装置与流程

本公开总体说来涉及机器学习领域,更具体地讲,涉及一种模型剪枝方法及装置。


背景技术:

1、现在的计算机视觉检测任务,由于技术的发展,研究人员往往注重于研究并设计各式各样的大模型,大模型能够在多种数据任务上,获得相比小模型更好的性能。然而,大模型对计算资源有着极高的需求,无法部署到边缘设备诸如手机、摄像头上。因此,对大模型进行裁剪(即,剪枝),是将模型部署到边缘设备上的必要步骤。

2、现有技术中,对大模型进行剪枝时,往往需要研究人员人工指定剪枝比例,以使剪枝后的模型可以达到部署到设备上的精度要求和速度要求。人工指定剪枝比例需要研究人员进行多次试验,从而找出最优的模型剪枝比例,这种方式不仅消耗了大量的人力成本,也会严重影响模型部署的效率。


技术实现思路

1、本公开的示例性实施例在于提供一种模型剪枝方法及装置,其能够自动高效高质量地对模型进行剪枝。

2、根据本公开的示例性实施例,提供一种模型剪枝方法,包括:将待剪枝的目标模型划分为多个模型组,其中,每个模型组包括所述目标模型的一部分;获取在目标设备上每个模型组分别按照不同剪枝比例剪枝后的延迟数据,其中,剪枝后的模型组的延迟数据用于表示所述剪枝后的模型组的执行时间;基于所述延迟数据、预设的在所述目标设备上对剪枝后的目标模型的总延迟要求,确定所述多个模型组各自的最优剪枝比例;按照每个模型组各自的最优剪枝比例,分别对各个模型组进行剪枝,得到剪枝后的目标模型;其中,所述目标设备为待部署剪枝后的目标模型的电子设备。

3、可选地,将待剪枝的目标模型划分为多个模型组的步骤包括:将所述目标模型的用于实现同一子功能的部分,划分为一个模型组;和/或,将所述目标模型的具有耦合关系的部分,划分为一个模型组。

4、可选地,所述目标模型为神经网络模型,其中,将待剪枝的目标模型划分为多个模型组的步骤包括:将所述目标模型所包括的多个块中的至少一个块划分为一个模型组。

5、可选地,获取在目标设备上每个模型组分别按照不同剪枝比例剪枝后的延迟数据的步骤包括:针对每个模型组,分别按照多个不同剪枝比例对所述模型组进行剪枝,得到与所述多个不同剪枝比例分别对应的剪枝后的模型组;针对每个剪枝后的模型组,将延迟测试样本输入至所述目标设备上的所述剪枝后的模型组,得到所述剪枝后的模型组输出的对所述延迟测试样本的处理结果;将所述剪枝后的模型组处理所述延迟测试样本所花费的时间,确定为在所述目标设备上所述剪枝后的模型组的延迟数据。

6、可选地,基于所述延迟数据、预设的在所述目标设备上对剪枝后的目标模型的总延迟要求,确定所述多个模型组各自的最优剪枝比例的步骤包括:基于所述延迟数据,确定每个模型组的剪枝比例与延迟之间的映射关系;基于各个模型组的剪枝比例与延迟之间的映射关系,确定能够满足所述总延迟要求,且使得剪枝后的目标模型相对于原始的目标模型的性能损失最小的所述多个模型组各自的最优剪枝比例。

7、可选地,基于各个模型组的剪枝比例与延迟之间的映射关系,确定能够满足所述总延迟要求,且使得剪枝后的目标模型相对于原始的目标模型的性能损失最小的所述多个模型组各自的最优剪枝比例的步骤包括:根据优化目标,通过优化方法得到优化变量的最优值,并将所述优化变量的最优值作为所述多个模型组各自的最优剪枝比例;其中,所述优化变量包括:所述多个模型组各自的剪枝比例变量;其中,所述优化目标为:在按照所述优化变量剪枝后的所有模型组的延迟数据总和满足所述总延迟要求的情况下,使按照所述优化变量剪枝后的目标模型相对于原始的目标模型的性能损失最小化;其中,按照所述优化变量剪枝后的每个模型组的延迟数据是基于所述模型组的剪枝比例与延迟之间的映射关系得到的。

8、可选地,所述优化目标为:在按照所述优化变量剪枝后的所有模型组的延迟数据总和满足所述总延迟要求的情况下,使所有模型组各自的剪枝比例变量对应的影响权重总和最小化;其中,每个模型组的剪枝比例变量对应的影响权重是基于预设的所述模型组的剪枝比例与影响权重之间的映射关系得到的;其中,每个模型组的不同剪枝比例对应的影响权重用于表征:所述模型组的不同剪枝比例对剪枝后的目标模型相对于原始的目标模型的性能损失的影响程度。

9、可选地,按照每个模型组各自的最优剪枝比例,分别对各个模型组进行剪枝,得到剪枝后的目标模型的步骤包括:使用剪枝算法,按照每个模型组各自的最优剪枝比例,分别对各个模型组进行剪枝,得到剪枝后的目标模型。

10、根据本公开的示例性实施例,提供一种模型剪枝装置,包括:模型组划分单元,被配置为将待剪枝的目标模型划分为多个模型组,其中,每个模型组包括所述目标模型的一部分;延迟数据获取单元,被配置为获取在目标设备上每个模型组分别按照不同剪枝比例剪枝后的延迟数据,其中,剪枝后的模型组的延迟数据用于表示所述剪枝后的模型组的执行时间;剪枝比例确定单元,被配置为基于所述延迟数据、预设的在所述目标设备上对剪枝后的目标模型的总延迟要求,确定所述多个模型组各自的最优剪枝比例;剪枝单元,被配置为按照每个模型组各自的最优剪枝比例,分别对各个模型组进行剪枝,得到剪枝后的目标模型;其中,所述目标设备为待部署剪枝后的目标模型的电子设备。

11、可选地,模型组划分单元被配置为:将所述目标模型的用于实现同一子功能的部分,划分为一个模型组;和/或,将所述目标模型的具有耦合关系的部分,划分为一个模型组。

12、可选地,所述目标模型为神经网络模型,其中,模型组划分单元被配置为:将所述目标模型所包括的多个块中的至少一个块划分为一个模型组。

13、可选地,延迟数据获取单元被配置为:针对每个模型组,分别按照多个不同剪枝比例对所述模型组进行剪枝,得到与所述多个不同剪枝比例分别对应的剪枝后的模型组;针对每个剪枝后的模型组,将延迟测试样本输入至所述目标设备上的所述剪枝后的模型组,得到所述剪枝后的模型组输出的对所述延迟测试样本的处理结果;将所述剪枝后的模型组处理所述延迟测试样本所花费的时间,确定为在所述目标设备上所述剪枝后的模型组的延迟数据。

14、可选地,剪枝比例确定单元被配置为:基于所述延迟数据,确定每个模型组的剪枝比例与延迟之间的映射关系;基于各个模型组的剪枝比例与延迟之间的映射关系,确定能够满足所述总延迟要求,且使得剪枝后的目标模型相对于原始的目标模型的性能损失最小的所述多个模型组各自的最优剪枝比例。

15、可选地,剪枝比例确定单元被配置为:根据优化目标,通过优化方法得到优化变量的最优值,并将所述优化变量的最优值作为所述多个模型组各自的最优剪枝比例;其中,所述优化变量包括:所述多个模型组各自的剪枝比例变量;其中,所述优化目标为:在按照所述优化变量剪枝后的所有模型组的延迟数据总和满足所述总延迟要求的情况下,使按照所述优化变量剪枝后的目标模型相对于原始的目标模型的性能损失最小化;其中,按照所述优化变量剪枝后的每个模型组的延迟数据是基于所述模型组的剪枝比例与延迟之间的映射关系得到的。

16、可选地,所述优化目标为:在按照所述优化变量剪枝后的所有模型组的延迟数据总和满足所述总延迟要求的情况下,使所有模型组各自的剪枝比例变量对应的影响权重总和最小化;其中,每个模型组的剪枝比例变量对应的影响权重是基于预设的所述模型组的剪枝比例与影响权重之间的映射关系得到的;其中,每个模型组的不同剪枝比例对应的影响权重用于表征:所述模型组的不同剪枝比例对剪枝后的目标模型相对于原始的目标模型的性能损失的影响程度。

17、可选地,剪枝单元被配置为:使用剪枝算法,按照每个模型组各自的最优剪枝比例,分别对各个模型组进行剪枝,得到剪枝后的目标模型。

18、根据本公开的示例性实施例,提供一种包括至少一个计算装置和至少一个存储指令的存储装置的系统,其中,所述指令在被所述至少一个计算装置运行时,促使所述至少一个计算装置执行如上所述的模型剪枝方法。

19、根据本公开的示例性实施例,提供一种存储指令的计算机可读存储介质,其中,当所述指令被至少一个计算装置运行时,促使所述至少一个计算装置执行如上所述的模型剪枝方法。

20、根据本公开的示例性实施例的模型剪枝方法及装置,能够基于对剪枝后的模型的延迟要求,自动高效高质量地对模型进行剪枝,以实现在边缘设备上自动部署模型。

21、将在接下来的描述中部分阐述本公开总体构思另外的方面和/或优点,还有一部分通过描述将是清楚的,或者可以经过本公开总体构思的实施而得知。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1