一种模型推理加速方法、装置、设备及存储介质与流程

文档序号:38746364发布日期:2024-07-24 22:51阅读:20来源:国知局
一种模型推理加速方法、装置、设备及存储介质与流程

本发明涉及人工智能,具体而言,涉及一种模型推理加速方法、装置、设备及存储介质。


背景技术:

1、在深度学习模型框架中,首先需要在大规模数据集上对创建的深度学习模型进行训练和优化,再将经过训练和优化的模型部署到生产环境,在模型部署之后,利用深度学习模型对用户请求进行推理以便实时响应用户请求,例如将深度学习模型应用于车控云系统场景下进行用户信息处理。

2、目前,模型部署和推理场景下,当用户请求数量剧增,用户请求的并发量增大时,后端往往会启动模型推理加速,通过提高模型推理效率来保证服务的质量和用户响应速度。相关技术中,主要通过拷贝模型实例来构建新的模型实例,生成的新实例与模型原实例相同,然后通过构建的多个模型实例(多线程)处理用户请求来实现模型推理加速,但模型实例的增多通常会造成过大的资源占用和成本开销。


技术实现思路

1、本发明解决的问题是如何平衡模型推理过程中的推理效率和成本开销。

2、为解决上述问题,本发明提供一种模型推理加速方法、装置、设备及存储介质。

3、第一方面,本发明提供一种模型推理加速方法,包括:

4、响应于模型推理加速的启动指令,根据所述模型的当前实例进行模型优化处理,生成多个新实例,其中,所述模型优化处理包括模型量化、算子融合和模型剪枝中的至少一者;

5、基于多个所述新实例和所述当前实例对请求数据进行并行处理,确定各个所述请求数据对应的推理结果。

6、可选地,所述根据所述模型的当前实例进行模型优化处理,生成多个新实例包括:

7、拷贝所述当前实例以构建多个初始实例,通过所述模型量化减少所述初始实例的参数位数和/或计算操作的精度,和/或通过所述算子融合合并所述初始实例的多个计算操作,和/或通过所述模型剪枝去除所述初始实例中的部分参数和/或部分计算操作,生成多个所述新实例。

8、可选地,所述请求数据由前端获取并传输至负载均衡端,再由所述负载均衡端传输至后端,所述后端部署有所述模型;所述响应于模型推理加速的启动指令,根据所述模型的当前实例进行模型优化处理之前,所述模型推理加速方法还包括:

9、根据所述前端接收到的所述请求数据的第一请求量、所述负载均衡端接收到的所述请求数据的第二请求量和所述后端接收到的所述请求数据的第三请求量判断是否启动所述模型推理加速。

10、可选地,所述根据所述前端接收到的所述请求数据的第一请求量、所述负载均衡端接收到的所述请求数据的第二请求量和所述后端接收到的所述请求数据的第三请求量判断是否启动所述模型推理加速包括:

11、统计所述前端接收到的所述请求数据的所述第一请求量,根据所述第一请求量判断是否启动所述模型推理加速;

12、当根据所述第一请求量确定不启动所述模型推理加速时,统计所述负载均衡端接收到的所述请求数据的所述第二请求量,根据所述第二请求量判断是否启动所述模型推理加速;

13、当根据所述第二请求量判断不启动所述模型推理加速时,统计所述后端接收到的所述请求数据的所述第三请求量,根据所述第三请求量判断是否启动所述模型推理加速。

14、可选地,所述根据所述第一请求量判断是否启动所述模型推理加速包括:

15、确定所述第一请求量对应的第一触发概率,基于所述第一触发概率判断是否启动所述模型推理加速;

16、和/或,确定所述第一请求量对应的第一预设权重,确定所述第一请求量与所述第一预设权重的乘积,得到第一计算结果,将所述第一计算结果与预设阈值进行对比,根据对比结果判断是否启动所述模型推理加速。

17、可选地,所述根据所述第二请求量判断是否启动所述模型推理加速包括:

18、确定所述第二请求量对应的第二触发概率,基于所述第二触发概率判断是否启动所述模型推理加速,其中,所述第二触发概率大于所述第一请求量对应的第一触发概率;

19、和/或,确定所述第一请求量对应的第一预设权重和所述第二请求量对应的第二预设权重,基于所述第一预设权重和所述第二预设权重对所述第一请求量和所述第二请求量进行加权求和,得到第二计算结果,将所述第二计算结果与预设阈值进行对比,根据对比结果判断是否启动所述模型推理加速。

20、可选地,所述根据所述第三请求量判断是否启动所述模型推理加速包括:

21、确定所述第三请求量对应的第三触发概率,基于所述第三触发概率判断是否启动所述模型推理加速,其中,所述第三触发概率大于所述第二请求量对应的第二触发概率,所述第二触发概率大于所述第一请求量对应的第一触发概率;

22、和/或,确定所述第一请求量对应的第一预设权重、所述第二请求量对应的第二预设权重和所述第三请求量对应的第三预设权重,基于所述第一预设权重、所述第二预设权重和所述第三预设权重,对所述第一请求量、所述第二请求量和所述第三请求量进行加权求和,得到第三计算结果,将所述第三计算结果与预设阈值进行对比,根据对比结果判断是否启动所述模型推理加速。

23、可选地,所述模型推理加速方法还包括:

24、通过模型压力测试确定所述后端进行模型推理时能处理的最大并发数;

25、根据所述最大并发数确定所述预设阈值。

26、可选地,所述根据所述模型的当前实例进行模型优化处理,生成多个新实例包括:

27、当连续多次得到的统计结果均大于所述预设阈值时,生成的所述新实例的数量呈指数级增加,所述统计结果包括所述第一计算结果、所述第二计算结果或所述第三计算结果;

28、当连续多次得到的所述统计结果均小于所述预设阈值时,释放和回收空闲的所述新实例和/或所述当前实例。

29、可选地,所述基于多个所述新实例和所述当前实例对请求数据进行并行处理包括:

30、若所述当前实例的精度与所述新实例的精度的差值在预设范围内,则采用所述新实例替代所述当前实例,由各个所述新实例并行处理所述请求数据;

31、若所述当前实例的精度与所述新实例的精度的差值小于预设精度阈值,则同时启用所述新实例和所述当前实例,由各个所述新实例和所述当前实例并行处理所述请求数据。

32、第二方面,本发明提供一种模型推理加速装置,包括:

33、生成模块,用于响应于模型推理加速的启动指令,根据所述模型的当前实例进行模型优化处理,生成多个新实例,其中,所述模型优化处理包括模型量化、算子融合和模型剪枝中的至少一者;

34、推理模块,用于基于多个所述新实例和所述当前实例对请求数据进行并行处理,确定各个所述请求数据对应的推理结果。

35、第三方面,本发明提供一种电子设备,包括存储器和处理器;

36、所述存储器,用于存储计算机程序;

37、所述处理器,用于当执行所述计算机程序时,实现如上模型推理加速方法。

38、第四方面,本发明提供一种存储介质,所述存储介质上存储有计算机程序,当所述计算机程序被处理器执行时,实现如上模型推理加速方法。

39、本发明首先响应于模型推理加速的启动指令,根据模型的当前实例进行模型优化处理,从而生成多个新实例,模型优化处理方式包括模型量化、算子融合和模型剪枝中的至少一者,相较于现有技术中直接拷贝模型生成的新实例,本发明通过模型优化处理生成的新实例的计算量和占用的存储空间更小,可以有效减小高并发场景下的推理资源开销,例如存储、内存拷贝和计算开销等,且能够有效在并发数增大时完成推理能力的自动扩容;然后在后端部署新实例,基于新实例和当前实例对请求数据进行并行处理,从而确定各个请求数据对应的推理结果,通过多个实例的并行处理提高模型推理效率。因此,本发明降低了模型推理时延和模型多线程处理请求数据过程中的资源占用,在提高推理效率的同时降低了成本开销,实现了模型推理过程中提高推理效率和降低成本开销之间的平衡。

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