本发明提出了一种算法平台一站式深度学习模型转换组件方法和系统,属于组件转换。
背景技术:
1、当前主流的算法平台,一些缺少模型格式转换相关组件,一些有相关的组件但是支持的格式不多。对于算法平台训练出来的模型,要将其部署在不同的嵌入式设备上,需要针对该设备进行模型格式转换,而算法平台缺少实现相关功能的组件或支持的格式不多。
技术实现思路
1、本发明提供了一种算法平台一站式深度学习模型转换组件方法和系统,用以解决现有技术中算法平台缺少实现相关功能的组件或支持的格式不足的问题,所采取的技术方案:
2、一种算法平台一站式深度学习模型转换组件方法,所述算法平台一站式深度学习模型转换组件方法包括:
3、获取目标用户的需求信息,根据所述获取目标用户的需求信息对开发环境进行配置;
4、根据目标用户的需求信息调取深度学习模型,并根据用户的训练操作获取完成训练的深度学习模型;
5、对所述完成训练的深度学习模型进行验证和测试,获得完成测试的深度学习模型,并将所述深度学习模型进行导出。
6、进一步地,获取获取目标用户的需求信息,根据所述获取目标用户的需求对开发环境进行配置,包括:
7、实时监测是否接收到目标用户的需求信息;
8、当检测到所述目标用户的需求信息后,获取目标用户的需求信息,其中,所述目标用户的需求信息包括需要支持的深度学习框架(如pytorch、tensorflow)、目标格式(如onnx、wk、tensorrt、joint等)以及需要转换的模型类型;
9、根据所述目标用户的需求确定组件的整体构架,其中,所述组件整体构架包括输入输出接口、模型格式转换流程、集成的工具链(如tf2onnx、onnx、tensorrt、nnie mapper、pulsar build等)的调用方式以及用户界面需要;
10、对开发环境进行配置并加载模型文件导入组件。
11、进一步地,对开发环境进行配置并加载模型文件导入组件,包括:
12、对开发环境进行配置;
13、当所述开发环境完成配置后,在所述开发环境中加载导入组件,其中,所述导入组件用户允许用户导入以训练好的模型文件。
14、进一步地,根据目标用户的需求信息调取深度学习模型,并根据用户的训练操作获取完成训练的深度学习模型,包括:
15、根据目标用户的需求信息从数据库中调取与目标用户的需求信息对应的深度学习模型;
16、将所述与目标用户的需求信息对应的深度学习模型发送至目标用户终端;
17、目标用户终端根据目标用户上传的训练数据对所述深度学习模型进行训练,获得完成训练的深度学习模型;
18、其中,将所述训练数据集按照按照比例h进行数据集划分,获得第一训练数据集和第二训练数据集,并且,所述第一训练数据集的数据量比例为h,所述第二训练数据集的数据量比例为1-h;其中,h=(1.18-1/c)×78%,c表示目标用户上传训练数据集的总次数;同时,利用第一训练数据集对所述深度学习模型进行第一训练,并利用第二训练数据集对完成第一训练的深度学习模型进行第二训练,并在所述第二训练完成之后,利用第二训练数据集对完成第二训练的深度学习模型进行初步验证,获得验证结果,当所述验证结果满足预设的初步验证要求时,则认定当前深度学习模块完成训练;当所述验证结果不满足预设的初步验证要求时,则通知所述目标用户重新上传区别与所述训练数据;
19、将所述完成训练的深度学习模型通过加载导入组件载入开发环境。
20、进一步地,对所述完成训练的深度学习模型进行验证和测试,获得完成测试的深度学习模型,并将所述深度学习模型进行导出,包括:
21、从所述目标用户终端调取验证数据集和测试数据集;
22、利用所述验证数据集对已完成训练的深度学习模型进行验证处理,获得完成验证的深度学习模型;
23、利用所述测试数据集对已完成训练的深度学习模型进行测试处理,获得完成测试的深度学习模型;
24、将所述完成测试的深度学习模型进行导出。
25、一种算法平台一站式深度学习模型转换组件系统,所述算法平台一站式深度学习模型转换组件系统包括:
26、需求信息获取模块,用于获取目标用户的需求信息,根据所述获取目标用户的需求信息对开发环境进行配置;
27、深度学习模型获取模块,用于根据目标用户的需求信息调取深度学习模型,并根据用户的训练操作获取完成训练的深度学习模型;
28、测试及导出模块,用于对所述完成训练的深度学习模型进行验证和测试,获得完成测试的深度学习模型,并将所述深度学习模型进行导出。
29、进一步地,所述需求信息获取模块包括:
30、实时监测模块,用于实时监测是否接收到目标用户的需求信息;
31、信息获取模块,用于当检测到所述目标用户的需求信息后,获取目标用户的需求信息,其中,所述目标用户的需求信息包括需要支持的深度学习框架(如pytorch、tensorflow)、目标格式(如onnx、wk、tensorrt、joint等)以及需要转换的模型类型;
32、整体构架确定模块,用于根据所述目标用户的需求确定组件的整体构架,其中,所述组件整体构架包括输入输出接口、模型格式转换流程、集成的工具链(如tf2onnx、onnx、tensorrt、nnie mapper、pulsar build等)的调用方式以及用户界面需要;
33、配置及导入模块,用于对开发环境进行配置并加载模型文件导入组件。
34、进一步地,所述配置及导入模块包括:
35、配置执行模块,用于对开发环境进行配置;
36、导入组件加载模块,用于当所述开发环境完成配置后,在所述开发环境中加载导入组件,其中,所述导入组件用户允许用户导入以训练好的模型文件。
37、进一步地,所述深度学习模型获取模块包括:
38、深度学习模型调取模块,用于根据目标用户的需求信息从数据库中调取与目标用户的需求信息对应的深度学习模型;
39、深度学习模型发送模块,用于将所述与目标用户的需求信息对应的深度学习模型发送至目标用户终端;
40、深度学习模型训练模块,用于目标用户终端根据目标用户上传的训练数据对所述深度学习模型进行训练,获得完成训练的深度学习模型;
41、其中,将所述训练数据集按照按照比例h进行数据集划分,获得第一训练数据集和第二训练数据集,并且,所述第一训练数据集的数据量比例为h,所述第二训练数据集的数据量比例为1-h;其中,h=(1.18-1/c)×78%,c表示目标用户上传训练数据集的总次数;同时,利用第一训练数据集对所述深度学习模型进行第一训练,并利用第二训练数据集对完成第一训练的深度学习模型进行第二训练,并在所述第二训练完成之后,利用第二训练数据集对完成第二训练的深度学习模型进行初步验证,获得验证结果,当所述验证结果满足预设的初步验证要求时,则认定当前深度学习模块完成训练;当所述验证结果不满足预设的初步验证要求时,则通知所述目标用户重新上传区别与所述训练数据;
42、将所述完成训练的深度学习模型通过加载导入组件载入开发环境。
43、进一步地,所述测试及导出模块包括:
44、数据集调取模块,用于从所述目标用户终端调取验证数据集和测试数据集;
45、深度学习模型验证模块,用于利用所述验证数据集对已完成训练的深度学习模型进行验证处理,获得完成验证的深度学习模型;
46、深度学习模型测试模块,用于利用所述测试数据集对已完成训练的深度学习模型进行测试处理,获得完成测试的深度学习模型;
47、模型导出模块,用于将所述完成测试的深度学习模型进行导出。
48、本发明有益效果:
49、本发明提出的一种算法平台一站式深度学习模型转换组件方法和系统提供了一种算法平台组件,该组件整合tf2onnx、onnx、tensorrt、nnie mapper、pulsar build等工具,实现了一站式将pytorch、tensorflow训练出来的模型转为onnx模型、wk模型、engine模型、joint模型等格式的功能。当前主流的算法平台,一些缺少模型格式转换相关组件,一些有相关的组件但是支持的格式不多。对于算法平台训练出来的模型,要将其部署在不同的嵌入式设备上,需要进行格式转换。本专利的技术实现了一站式的模型的格式转换,可以导出为中间模型onnx、wk模型、engine模型、joint模型等格式的模型,从而方便将算法平台训练的模型部署在各类嵌入式设备上。