卷积神经网络模型的分布式推理方法、装置、设备及介质

文档序号:37280197发布日期:2024-03-12 21:18阅读:15来源:国知局
卷积神经网络模型的分布式推理方法、装置、设备及介质

本发明涉及智能应用,特别涉及一种卷积神经网络模型的分布式推理方法、装置、设备及介质。


背景技术:

1、智能设备在工业生产、日常家居和其他各种领域得到广泛应用。随着iot(internet of things,物联网)和深度学习技术的兴起,将cnn(convolutional neuralnetwork,卷积神经网络)模型部署于智能设备完成实时推理的应用场景受到越来越多的关注。但是,智能设备的计算和内存和资源是有限的。而卷积算子和全连接算子作为cnn中的主要算子,在执行推理过程中需要占用大量的计算和内存资源。其中,卷积算子属于计算密集型算子,在算子执行过程中将产生较大的计算开销。全连接算子则属于内存密集型算子,部署到智能设备时会占用大量的内存资源。因此,基于分布式并行计算的模型推理加速方法得了广泛应用。目前,主要的分布式推理方法为数据并行、模型并行和张量并行方法。数据并行方法通常适用于智能的内存可完全容纳整个模型,且可同时提供批量输入数据的场景。但是,目前的模型并行方法在沿着通道维度划分卷积算子时,仅考虑从卷积算子的输出通道维度进行划分,这将导致上下级算子之间的通道数量的不匹配,为了将上级算子的输出作为下级算子的输入进行计算,需要将部署了各子模型的智能设备互相共享该层算子的输出特征图,并沿着通道维度进行拼接,这种划分方式将会产生智能设备间建立连接和传输数据的通信开销,影响模型推理的实时性。

2、由上可见,如何实现无需进行通道维度的拼接即可将上级卷积算子的输出结果直接传递给下级相邻卷积算子,节约通信开销,降低模型推理延迟,并提高模型推理效率是本领域有待解决的问题。


技术实现思路

1、有鉴于此,本发明的目的在于提供一种卷积神经网络模型的分布式推理方法、装置、设备及介质,能够实现无需进行通道维度的拼接即可将上级卷积算子的输出结果直接传递给下级相邻卷积算子,节约通信开销,降低模型推理延迟,并提高模型推理效率。其具体方案如下:

2、第一方面,本技术公开了一种卷积神经网络模型的分布式推理方法,包括:

3、基于卷积神经网络模型确定卷积算子集合,将所述卷积算子集合中各卷积算子所划分的输入通道数和输出通道数作为决策变量;

4、确定模型推理时间,利用所述模型推理时间生成目标函数,基于所述决策变量构建前后级算子通道数量约束条件,并构建内存容量约束条件、输入通道数量约束条件以及输出通道数量约束条件;

5、根据所述目标函数、所述前后级算子通道数量约束条件、所述内存容量约束条件、所述输入通道数量约束条件以及所述输出通道数量约束条件构建组合优化模型;

6、对所述组合优化模型求解,得到划分部署方案,基于所述划分部署方案将所述模型卷积神经网络模型划分部署至预设的智能设备,并实现对所述模型卷积神经网络模型的分布式推理。

7、可选的,所述确定模型推理时间,利用所述模型推理时间生成目标函数,包括:

8、确定模型推理时间;所述模型推理时间包括模型推理的总体计算时间开销和总体通信时间开销;

9、将最小化的所述模型推理时间作为所述目标函数;所述目标函数为:

10、min{tc+td};

11、其中,tc表示完成所述卷积神经网络模型推理所需的总体计算时间开销,td表示完成所述卷积神经网络模型推理所需的所述总体通信时间开销。

12、可选的,所述基于所述决策变量构建前后级算子通道数量约束条件,包括:

13、基于所述决策变量确定卷积算子所划分的输入通道数量和输出通道数量;

14、利用所述输入通道数量和所述输出通道数量构建前后级算子通道数量约束条件;所述前后级算子通道数量约束条件为:

15、

16、其中,表示第i+1卷积算子分配给第j个智能设备的输入通道数量,表示第i个卷积算子划分给第j个智能设备的输出通道数,s.t.表示约束条件。

17、可选的,构建内存容量约束条件,包括:

18、构建所述内存容量约束条件;所述内存容量约束条件为:

19、

20、其中,ω表示由所部署子模型权重内存占用,max(ai,i)表示最大激活输出的内存占用,rj表示单个智能设备的最大容量限制,m表示所述智能设备的集合,n表示所述卷积算子集合。

21、可选的,构建输入通道数量约束条件,包括:

22、构建所述输入通道数量约束条件;所述输入通道数量约束条件为:

23、

24、其中,表示第i个卷积算子划分给所述智能设备j的输入通道数量为大于等于零的整数,z表示整数集合,n表示所述卷积算子集合,i∈n表示具有n层的所述卷积神经网络模型中的第i个卷积算子,表示第i个卷积算子划分给第j个智能设备的输入通道数,表示第i个卷积算子的输入通道数量。

25、可选的,构建输出通道数量约束条件,包括:

26、构建所述输出通道数量约束条件;所述输出通道数量约束条件为:

27、

28、其中,表示第i个卷积算子划分给第j个智能设备的输出通道数量为大于等于零的整数,z表示整数集合,表示第i个卷积算子划分给第j个智能设备的输出通道数,表示第i个卷积算子的输出通道数量。

29、可选的,所述基于所述划分部署方案将所述模型卷积神经网络模型划分部署至预设的智能设备,并实现对所述模型卷积神经网络模型的分布式推理,包括:

30、将所述划分部署方案发送至客户端,以便所述客户端根据所述划分部署方案将所述模型卷积神经网络模型划分部署至预设的智能设备,并实现对所述智能设备上部署的所述模型卷积神经网络模型的分布式推理。

31、第二方面,本技术公开了一种卷积神经网络模型的分布式推理装置,包括:

32、决策变量确定模块,用于基于卷积神经网络模型确定卷积算子集合,将所述卷积算子集合中各卷积算子所划分的输入通道数和输出通道数作为决策变量;

33、约束条件构建模块,用于确定模型推理时间,利用所述模型推理时间生成目标函数,基于所述决策变量构建前后级算子通道数量约束条件,并构建内存容量约束条件、输入通道数量约束条件以及输出通道数量约束条件;

34、模型构建模块,用于根据所述目标函数、所述前后级算子通道数量约束条件、所述内存容量约束条件、所述输入通道数量约束条件以及所述输出通道数量约束条件构建组合优化模型;

35、分布式推理模块,用于对所述组合优化模型求解,得到划分部署方案,基于所述划分部署方案将所述模型卷积神经网络模型划分部署至预设的智能设备,并实现对所述模型卷积神经网络模型的分布式推理。

36、第三方面,本技术公开了一种电子设备,包括:

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

38、处理器,用于执行所述计算机程序,以实现前述的卷积神经网络模型的分布式推理方法。

39、第四方面,本技术公开了一种计算机存储介质,用于保存计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的卷积神经网络模型的分布式推理方法的步骤。

40、可见,本技术提供了一种卷积神经网络模型的分布式推理方法,包括基于卷积神经网络模型确定卷积算子集合,将所述卷积算子集合中各卷积算子所划分的输入通道数和输出通道数作为决策变量;确定模型推理时间,利用所述模型推理时间生成目标函数,基于所述决策变量构建前后级算子通道数量约束条件,并构建内存容量约束条件、输入通道数量约束条件以及输出通道数量约束条件;根据所述目标函数、所述前后级算子通道数量约束条件、所述内存容量约束条件、所述输入通道数量约束条件以及所述输出通道数量约束条件构建组合优化模型;对所述组合优化模型求解,得到划分部署方案,基于所述划分部署方案将所述模型卷积神经网络模型划分部署至预设的智能设备,并实现对所述模型卷积神经网络模型的分布式推理。本技术将卷积算子所划分的输入通道数和输出通道数作为决策变量,并生成目标函数,构建前后级算子通道数量约束条件、建内存容量约束条件、输入通道数量约束条件以及输出通道数量约束条件,以构建组合优化模型,从而得到卷积神经网络模型的划分部署方案,按照划分部署方案对智能设备上部署的卷积神经网络模型进行划分部署,实现相邻卷积算子的交错式划分策略,无需进行通道维度的拼接即可将上级卷积算子的输出结果直接传递给下级相邻卷积算子,并且按照划分部署方案进行划分部署能够有效减少智能设备间由于共享特征图各通道数据时建立通信连接的次数,从而提高模型推理效率,并且能够节约通信开销,减少降低模型推理延迟,能够适用于对响应时间具有较为严格要求的边缘智能应用场景。

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