本技术涉及互联网,尤其涉及一种模型转换方法、装置、设备及存储介质。
背景技术:
1、随着ai模型的不断发展与广泛应用,开发厂商和技术开发人员,会构建云平台的ai模型。
2、然而,现有技术无法将云平台的ai模型转换成鸿蒙设备的ai模型,不利于提高鸿蒙设备的ai模型的转换效率。其原因在于,云平台的ai模型与鸿蒙设备的ai模型的格式不同,因此,云平台的ai模型无法直接部署在鸿蒙设备,也无法将云平台的ai模型转换成鸿蒙设备的ai模型,因此,不利于提高鸿蒙设备的ai模型的转换效率。
技术实现思路
1、本技术实施例提供一种模型转换方法、装置、设备及存储介质,以解决上述现有技术无法将云平台的ai模型转换成鸿蒙设备的ai模型,不利于提高鸿蒙设备的ai模型的转换效率的技术问题。
2、第一方面,本技术实施例提供了一种模型转换方法,所述模型转换方法包括:
3、获取鸿蒙设备发送的数据集和目标功能;
4、将所述数据集和所述目标功能输入到预设的机器学习框架中,获取所述机器学习框架基于所述数据集和所述目标功能输出的第一执行文件,所述第一执行文件为第一ai模型的执行文件,所述第一ai模型为云平台的ai模型;
5、对所述第一ai模型进行解析操作,确定所述第一ai模型的第一算子信息,所述第一算子信息包括多个第一算子和多个所述第一算子之间的关系,所述第一算子为所述第一ai模型的算子;
6、将所述第一算子与第二算子进行映射,将多个所述第一算子之间的关系与多个所述第二算子之间的关系进行映射,根据映射结果,得到第二算子信息,所述第二算子为开放神经网络交换格式的算子;
7、在所述第二算子信息中,获取所述第二算子的源代码和参数;
8、对所述源代码和所述参数进行编译处理,确定第二执行文件,所述第二执行文件为第二ai模型的执行文件,所述第二ai模型为所述鸿蒙设备的ai模型;
9、向所述鸿蒙设备发送所述第二执行文件,以使所述鸿蒙设备根据所述第二执行文件运行所述第二ai模型。
10、作为一个可选的实施方式,所述对所述第一ai模型进行解析操作,确定所述第一ai模型的第一算子信息,包括:
11、获取所述第一ai模型的适配芯片和适配系统;
12、判断所述适配芯片是否为所述鸿蒙设备的芯片,同时判断所述适配系统是否为鸿蒙系统;
13、如果判断所述适配芯片不为所述鸿蒙设备的芯片,且所述模型标识的所述适配系统不为鸿蒙系统,就对所述第一ai模型进行解析操作,确定所述第一ai模型的第一算子信息。
14、作为一个可选的实施方式,所述将所述第一算子与第二算子进行映射,将多个所述第一算子之间的关系与多个所述第二算子之间的关系进行映射,根据映射结果,得到第二算子信息,包括:
15、将所述第一算子转换成图结构的节点,将多个所述第一算子之间的关系转换成多个所述节点之间的连线;
16、获取第二算子,将所述节点与所述第二算子进行映射,得到所述映射结果的第一映射表,将多个所述节点之间的连线与多个所述第二算子之间的关系进行映射,得到所述映射结果的第二映射表,结合所述第一映射表和所述第二映射表,得到第二算子信息。
17、作为一个可选的实施方式,在所述第二算子信息中,获取所述第二算子的源代码和参数,包括:
18、在所述第二算子信息中,获取由所述第二算子组成的神经网络;
19、采用预设的量化方式,对所述神经网络的网络层进行量化,获取量化后的所述神经网络的所述源代码和所述参数,所述量化方式包括线性量化方式和kl散度量化方式中的其中一种或其组合。
20、作为一个可选的实施方式,所述对所述源代码和所述参数进行编译处理,确定第二执行文件,包括:
21、在所述第二算子信息中,获取所述第二算子的逻辑运算,当所述逻辑运算为卷积时,识别所述第二算子为卷积算子;
22、获取所述卷积算子的输入数据,判断所述输入数据的数据类型是否所述卷积算子对应的目标类型;
23、如果所述输入数据的数据类型为所述卷积算子对应的目标类型,对所述源代码和所述参数进行编译处理,确定所述第二执行文件。
24、作为一个可选的实施方式,所述向所述鸿蒙设备发送所述第二执行文件,以使所述鸿蒙设备根据所述第二执行文件运行所述第二ai模型,包括:
25、获取运行指令,所述运行指令用于指示所述鸿蒙设备运行所述第二执行文件;
26、通过预设网络,向所述鸿蒙设备发送所述第二执行文件以及所述运行指令,以使所述鸿蒙设备根据所述运行指令和所述第二执行文件运行所述第二ai模型。
27、作为一个可选的实施方式,所述预设网络包括3g网络、4g网络、5g网络、wifi网络、以太网中的其中一种或其组合。
28、第二方面,本技术实施例还提供了一种模型转换装置,所述模型转换装置包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时执行上述的模型转换方法。
29、第三方面,本技术实施例还提供了一种设备,所述设备包括如上述的模型转换装置。
30、第四方面,本技术实施例还提供了一种存储介质,所述存储介质用于存储计算机程序,所述计算机程序被处理器执行时使所述处理器实现上述的模型转换方法。
31、本技术实施例提供了一种模型转换方法、装置、设备及存储介质,方法包括:获取鸿蒙设备发送的数据集和目标功能;
32、将所述数据集和所述目标功能输入到预设的机器学习框架中,获取所述机器学习框架基于所述数据集和所述目标功能输出的第一执行文件,所述第一执行文件为第一ai模型的执行文件,所述第一ai模型为云平台的ai模型;
33、对所述第一ai模型进行解析操作,确定所述第一ai模型的第一算子信息,所述第一算子信息包括多个第一算子和多个所述第一算子之间的关系,所述第一算子为所述第一ai模型的算子;
34、将所述第一算子与第二算子进行映射,将多个所述第一算子之间的关系与多个所述第二算子之间的关系进行映射,根据映射结果,得到第二算子信息,所述第二算子为开放神经网络交换格式的算子;
35、在所述第二算子信息中,获取所述第二算子的源代码和参数;
36、对所述源代码和所述参数进行编译处理,确定第二执行文件,所述第二执行文件为第二ai模型的执行文件,所述第二ai模型为所述鸿蒙设备的ai模型;
37、向所述鸿蒙设备发送所述第二执行文件,以使所述鸿蒙设备根据所述第二执行文件运行所述第二ai模型。
38、本技术实施例有益效果在于两方面,一方面,对所述源代码和所述参数进行编译处理,确定第二执行文件,所述第二执行文件为第二ai模型的执行文件,所述第二ai模型为所述鸿蒙设备的ai模型,因此,本技术能将云平台的ai模型转换成鸿蒙设备的ai模型,有利于提高鸿蒙设备的ai模型的转换效率;另一方面,向所述鸿蒙设备发送所述第二执行文件,以使所述鸿蒙设备根据所述第二执行文件运行所述第二ai模型,有利于提高鸿蒙设备的ai模型的运行效率。