一种AI模型的开发方法及装置制造方法及图纸

技术编号:24724320 阅读:59 留言:0更新日期:2020-07-01 00:48
本申请实施例公开了一种AI模型的开发方法及装置,涉及AI技术领域,可以在较低的成本下,开发出符合终端的运行环境以及性能要求的AI模型。具体方案为:开发平台获取待生成的AI模型的平台指示信息、业务指示信息和参数要求信息;从算子数据库中选择出与运行平台对应且用于执行第一业务的多个可用算子;从多个可用算子中选择算子并完成选择的算子的参数设置,生成第一候选策略;对第一候选策略进行样本训练得到第一候选AI模型;调用运行平台的模拟器组件运行第一候选AI模型执行第一业务处理测试数据,得到第一运行参数;若第一运行参数与参数要求信息匹配,则确定第一候选AI模型为目标AI模型。

【技术实现步骤摘要】
【国外来华专利技术】一种AI模型的开发方法及装置
本申请实施例涉及人工智能(artificialintelligence,AI)
,尤其涉及一种AI模型的开发方法及装置。
技术介绍
随着通信技术的发展和终端计算能力的增强,移动终端逐渐成为人们生活、娱乐、工作和学习中不可或缺的通用设备,扮演着个人智能助理的角色。AI是移动终端实现人工智能必不可少的技术。传统的,云端可以针对不同的业务需求训练出多个AI模型。移动终端可以通过网络将待处理数据传输至云端的AI服务接口。云端通过相应的AI模型处理待处理数据,然后通过AI服务接口向移动终端传输处理结果。然而,随着人们对个人隐私的重视,AI模型端侧化的需求越来强烈。其中,AI模型的端侧化是指在移动终端中配置AI模型,由移动终端通过AI模型处理待处理数据。一种方案中,可以在移动终端中搭载AI专用处理芯片,如神经网络计算单元(neuralnetworkprocessingunit,NPU)芯片,以及智能视频处理单元(VideoProcessingUnit,VPU)芯片等。但是,上述AI专用处理芯片的开发过程极其繁琐,且开发成本较大。另一种方案中,可以在移动终端中配置云端的AI模型。但是,云端的AI模型通常会占用较大内存空间。并且,移动终端需要具备较强的计算能力,才可以通过该AI模型在较短的时间内得到处理结果。这样,AI模型则不能被广泛配置于移动终端中。即使一些方案中,可以尝试通过对AI模型的剪裁和压缩等技术降低AI模型的大小,提高AI模型的运算速度以降低对移动终端的要求。但是,不同的移动终端的系统不同,其所能够提供的AI模型的运行环境则不同,并且不同移动终端对AI模型的性能(如功耗、存储空间占用情况等)要求也不同。在上述方案中,需要业务能力较高的开发人员,针对每个终端的运行环境和对AI模型的性能要求,对多个AI模型逐个进行优化,调试难度大,开发成本较高。
技术实现思路
本申请实施例提供一种AI模型的开发方法及装置,可以在较低的成本下,开发出符合终端的运行环境以及性能要求的AI模型。第一方面,本申请实施例提供一种AI模型的开发方法,该方法可以包括:开发平台获取待生成的AI模型的平台指示信息、业务指示信息和参数要求信息;其中,平台指示信息用于指示运行待生成的AI模型的运行平台,业务指示信息用于指示待生成的AI模型所要执行的第一业务,参数要求信息用于指示对待生成的AI模型的性能参数的要求;开发平台从算子数据库中选择出与运行平台对应,且用于执行第一业务的多个可用算子;开发平台从多个可用算子中选择算子,并完成选择的算子的参数设置,生成第一候选策略;开发平台对第一候选策略进行样本训练,得到第一候选AI模型;开发平台调用运行平台的模拟器组件,运行第一候选AI模型执行第一业务处理测试数据,得到第一运行参数;若第一运行参数与参数要求信息匹配,开发平台确定第一候选AI模型为目标AI模型。其中,由于开发平台生成AI模型时,不仅参考了平台指示信息,还参考了对运行平台运行AI模型的性能参数的要求;因此,开发平台生成的AI模型符合运行平台的运行环境,可以用于执行第一业务,并且执行第一业务时性能参数符合参数要求信息的要求。并且,可以由开发平台针对不同的业务需求和运行环境,自动生成能够在运行平台上运行的模型代码,并在运行平台部署该模型代码。结合第一方面,在一种可能的设计方式中,开发平台确定第一候选AI模型为目标AI模型之后,可以根据第一候选AI模型,生成能够在运行平台运行的模型代码。开发平台可以向运行平台发送该模型代码。这样,运行平台便可以运行该模型代码,执行第一业务。结合第一方面,在另一种可能的设计方式中,执行第一业务的AI模型的策略结构是一定的。开发平台在第一业务的策略结构中填充对应的算子得到第一候选策略。具体的,上述开发平台从算子数据库中选择出与运行平台对应,且用于执行第一业务的多个可用算子的方法可以包括:开发平台根据所述第一业务,确定待生成的AI模型的策略结构;按照处理数据的逻辑,从算子数据库中选择出与运行平台对应的所述多个可用算子。其中,上述策略结构用于表征待生成的AI模型处理数据的逻辑,策略结构中按照处理数据的逻辑填充算子可以生成第一候选策略。上述开发平台从多个可用算子中选择算子,并完成选择的算子的参数设置,生成第一候选策略的方法可以包括:从多个可用算子中选择算子,在策略结构中填入选择的算子,完成选择的算子的参数设置,生成第一候选策略。结合第一方面,在另一种可能的设计方式中,上述参数要求信息可以包括:参数要求信息包括:对运行平台运行待生成的AI模型的功耗的要求、对运行平台运行所述待生成的AI模型处理数据的准确率的要求、对运行平台运行所述待生成的AI模型处理数据的速度的要求,对待生成的AI模型占用存储空间的要求,以及对运行平台运行待生成的AI模型所需要的存储空间的要求中的至少一项。结合第一方面,在另一种可能的设计方式中,上述第一运行参数可能与上述参数要求信息不匹配。若第一运行参数与所述参数要求信息不匹配,开发平台可以获取第一差异信息。该第一差异信息用于指示第一运行参数和参数要求信息的差异。然后,开发平台根据第一差异信息,调整第一候选策略中的算子,得到第二候选策略。开发平台对第二候选策略进行样本训练,得到第二候选AI模型。开发平台调用模拟器组件,运行第二候选AI模型,得到第二运行参数。若第二运行参数与参数要求信息匹配,开发平台确定第二候选AI模型为目标AI模型。其中,开发平台判断第一运行参数与参数要求信息是否匹配,具体可以包括:开发平台判断运行平台的模拟器组件运行第一候选AI模型的功耗是否小于或者等于参数要求信息要求功耗,开发平台判断模拟器组件运行第一候选AI模型处理数据的准确率是否高于或者等于参数要求信息要求的准确率,开发平台判断模拟器组件运行第一候选AI模型处理数据的速度是否高于或者等于参数要求信息要求的速度,开发平台判断模拟器组件运行第一候选AI模型所占用存储空间(即模拟器组件运行第一候选AI模型的运行内存)是否小于或者等于参数要求信息要求运行内存。其中,参数要求信息要求运行内存是参数要求信息要求运行平台运行第一候选AI模型所占用的存储空间。如果模拟器组件运行第一候选AI模型的功耗小于或者等于参数要求信息要求功耗,模拟器组件运行第一候选AI模型处理数据的准确率高于或者等于参数要求信息要求的准确率,模拟器组件运行第一候选AI模型处理数据的速度高于或者等于参数要求信息要求的速度,且模拟器组件运行第一候选AI模型所占用存储空间小于或者等于参数要求信息要求的运行内存,则表示第一运行参数与参数要求信息匹配,第一候选AI模型符合上述参数要求信息的要求。如果第一运行参数与参数要求信息匹配。如果第一运行参数不满足“模拟器组件运行第一候选AI模型的功耗小于或者等于参数要求信息要求功耗”、“模拟器组件运行第一候选AI模型处理数据的准确率高于或者等于参数要求信息要求的准确率”、“模拟器组件运行第一候选AI模型处理数据的速度高于或者等于参数要求信息要求的速度”和“模拟器组本文档来自技高网
...

【技术保护点】
一种人工智能AI模型的开发方法,其特征在于,包括:/n开发平台获取待生成的AI模型的平台指示信息、业务指示信息和参数要求信息,所述平台指示信息用于指示运行所述待生成的AI模型的运行平台,所述业务指示信息用于指示所述待生成的AI模型所要执行的第一业务,所述参数要求信息用于指示对所述待生成的AI模型的性能参数的要求;/n所述开发平台从算子数据库中选择出与所述运行平台对应,且用于执行所述第一业务的多个可用算子,所述算子数据库中保存有多个用于生成AI模型的算子;/n所述开发平台从所述多个可用算子中选择算子,并完成选择的算子的参数设置,生成第一候选策略;所述第一候选策略由多个算子组成;/n所述开发平台对所述第一候选策略进行样本训练,得到第一候选AI模型;/n所述开发平台调用所述运行平台的模拟器组件,运行所述第一候选AI模型执行第一业务处理测试数据,得到第一运行参数;/n若所述第一运行参数与所述参数要求信息匹配,所述开发平台确定所述第一候选AI模型为目标AI模型。/n

【技术特征摘要】
【国外来华专利技术】一种人工智能AI模型的开发方法,其特征在于,包括:
开发平台获取待生成的AI模型的平台指示信息、业务指示信息和参数要求信息,所述平台指示信息用于指示运行所述待生成的AI模型的运行平台,所述业务指示信息用于指示所述待生成的AI模型所要执行的第一业务,所述参数要求信息用于指示对所述待生成的AI模型的性能参数的要求;
所述开发平台从算子数据库中选择出与所述运行平台对应,且用于执行所述第一业务的多个可用算子,所述算子数据库中保存有多个用于生成AI模型的算子;
所述开发平台从所述多个可用算子中选择算子,并完成选择的算子的参数设置,生成第一候选策略;所述第一候选策略由多个算子组成;
所述开发平台对所述第一候选策略进行样本训练,得到第一候选AI模型;
所述开发平台调用所述运行平台的模拟器组件,运行所述第一候选AI模型执行第一业务处理测试数据,得到第一运行参数;
若所述第一运行参数与所述参数要求信息匹配,所述开发平台确定所述第一候选AI模型为目标AI模型。


根据权利要求1所述的AI模型的开发方法,其特征在于,在所述开发平台确定所述第一候选AI模型为目标AI模型之后,所述方法还包括:
所述开发平台根据所述第一候选AI模型,生成能够在所述运行平台运行的模型代码。


根据权利要求1或2所述的AI模型的开发方法,其特征在于,所述开发平台从算子数据库中选择出与所述运行平台对应,且用于执行所述第一业务的多个可用算子,包括:
所述开发平台根据所述第一业务,确定所述待生成的AI模型的策略结构,所述策略结构用于表征所述待生成的AI模型处理数据的逻辑;
所述开发平台按照所述处理数据的逻辑,从所述算子数据库中选择出与所述运行平台对应的所述多个可用算子;
所述开发平台从所述多个可用算子中选择算子,并完成选择的算子的参数设置,生成第一候选策略;所述第一候选策略由多个算子组成,包括:
所述开发平台从所述多个可用算子中选择算子,在所述策略结构中填入选择的算子,完成选择的算子的参数设置,生成所述第一候选策略。


根据权利要求1-3中任意一项所述的AI模型的开发方法,其特征在于,所述方法还包括:
若所述第一运行参数与所述参数要求信息不匹配,所述开发平台获取第一差异信息,所述第一差异信息用于指示所述第一运行参数和所述参数要求信息的差异;
所述开发平台根据所述第一差异信息,调整所述第一候选策略中的算子,得到第二候选策略;
所述开发平台对所述第二候选策略进行样本训练,得到第二候选AI模型;
所述开发平台调用所述模拟器组件,运行所述第二候选AI模型,得到第二运行参数;
若所述第二运行参数与所述参数要求信息匹配,所述开发平台确定所述第二候选AI模型为目标AI模型。


根据权利要求1-3中任意一项所述的AI模型的开发方法,其特征在于,在所述开发平台从所述多个可用算子中选择算子,并完成选择的算子的参数设置,生成第一候选策略之前,所述方法还包括:
所述开发平台确定所述第一业务的标杆模型,所述标杆模型是用于处理所述第一业务的AI模型;其中,所述待生成的AI模型的策略结构为所述标杆模型的策略结构,所述策略结构用于表征所述标杆模型处理数据的逻辑;
所述开发平台从所述多个可用算子中选择算子,并完成选择的算子的参数设置,生成第一候选策略,包括:
所述开发平台按照所述标杆模型的策略结构从所述多个可用算子中随机选择算子,采用随机选择的算子替换所述标杆模型中、与所述运行平台不对应的算子,并调整各个算子的参数,得到所述第一候选策略。


根据权利要求1-3或5中任意一项所述的AI模型的开发方法,其特征在于,所述方法还包括:
若所述第一运行参数与所述参数要求信息不匹配,所述开发平台获取第一差异信息和第二差异信息;所述第一差异信息用于指示所述第一运行参数和所述参数要求信息的差异;所述第二差异信息用于指示所述第一运行参数和第三运行参数的差异,所述第三运行参数是标杆模型执行所述第一业务处理所述测试数据得到的运行参数;
所述开发平台根据所述第一差异信息和所述第二差异信息,调整所述第一候选策略中的算子,得到第二候选策略;
所述开发平台对所述第二候选策略进行样本训练,得到第二候选AI模型;
所述开发平台调用所述模拟器组件,运行所述第二候选AI模型,得到第二运行参数;
若所述第二运行参数与所述参数要求信息匹配,所述开发平台确定所述第二候选AI模型为目标AI模型。


根据权利要求1-6中任意一项所述的AI模型的开发方法,其特征在于,在所述生成第一候选策略之后,所述方法还包括:
所述开发平台采用压缩算法压缩所述第一候选策略,得到压缩后的第一候选策略;
其中,所述开发平台对所述第一候选策略进行样本训练,得到第一候选AI模型,包括:
所述开发平台对压缩后的第一候选策略进行样本训练,得到所述第一候选AI模型。


根据权利要求1-7中任意一项所述的AI模型的开发方法,其特征在于,在所述生成第一候选策略之后,所述方法还包括:
所述开发平台对所述第一候选策略进行编码,得到所述第一候选策略的二进制数串;
其中,所述开发平台对所述第一候选策略进行样本训练,得到第一候选AI模型,包括:
所述开发平台对所述第一候选策略的二进制数串进行样本训练,得到所述第一候选AI模型。


根据权利要求1-8中任意一项所述的AI模型的开发方法,其特征在于,所述参数要求信息包括:对所述运行平台运行所述待生成的AI模型的功耗的要求、对所述运行平台运行所述待生成的AI模型处理数据的准确率的要求、对所述运行平台运行所述待生成的AI模型处理数据的速度的要求,对所述待生成的AI模型占用存储空间的要求,以及对所述运行平台运行所述待生成的AI模型所需要的存储空间的要求中的至少一项。


根据权利要求9所述的AI模型的开发方法,其特征在于,所述参数要求信息至少包括:对所述待生成的AI模型占用存储空间的要求;
在所述开发平台对所述第一候选策略进行样本训练,得到第一候选AI模型之前,所述方法还包括:
所述开发平台判断所述第一候选策略是否满足预设条件;所述预设条件包括:所述第一候选策略所需的存储空间满足所述参数要求信息对所述待生成的AI模型占用存储空间的要求;
其中,所述开发平台对所述第一候选策略进行样本训练,得到第一候选AI模型,包括:
若所述第一候选策略满足所述预设条件,所述开发平台对所述第一候选策略进行样本训练,得到所述第一候选AI模型。


一种开发平台,其特征在于,所述开发平台包括:处理器、存储器和多个模拟器组件;所述存储器、所述多个模拟器组件与所述处理器耦合;所述多个模拟器组件中包括运行平台的模拟器组件,所述存储器用于存储计算机程序代码;所述计算机程序代码包括计算机指令,当所述处理器执行上述计算机指令时,
所述处理器,用于获取待生成的人工智能AI模型的平台指示信息、业务指示信息和参数要求信息,所述平台指示信息用于指示运行所述待生成的AI模型的运行平台,所述业务指示信息用于指示所述待生成的AI模型所要执行的第一业务,所述参数要求信息用于指示对所述待生成的AI模型的性能参数的要求;从算子数据库中选择出与所述运行平台对应,且用于执行所述第一业务的多个可用算子,所述算子数据库中保存有多个用于生成AI模型的算子;从所述多个可用算子中选择算子,并完成选择的算子的参数设置,生成第一候选策略;所述第一候选策略由多个算子组成;对所述第一候选策略进行样本训练,得到第一候选AI模型;
所述处理器,还用于调用所述多个模拟器组件中、所述运行平台的模拟器组件,运行所述第一候选AI模型执行所述第一业务处理测试数据,得到第一运行参数;若所述第一运行参数与所述参数要求信息匹配,确定所述第一候选AI模型为目标AI模型。


根据权利要求11所述的开发平台,其特征在于,所述处理器,还用于在确定所述第一候选AI模型为所述目标AI模型之后,根据所述第一候选AI模型,生成能够在所述运行平台运行的模型代码。


根据权利要求11或12所述的开发平台,其特征在于,所述处理器,用于从算子数据库中选择出与所述运行平台对应,且用于执行所述第一业务的多个可用算子,包括:
所述处理器,用于根据所述第一业务,确定所述待生成的AI模型的策略结构,所述策略结构用于表征所述待生成的AI模型处理数据的逻辑,所述策略结构中按照所述处理数据的逻辑填充算子生成所述第一候选策略;按照所述处理数据的逻辑,从所述算子数据库中选择出与所述运行平台对应的所述多个可用算子;
所述处理器,用于从所述多个可用算子中选择算子,并完成选择的算子的参数设置,生成第一候选策略;所述第一候选策略由多个算子组成,包括:
所述处理器,用于从所述多个可用算子中选择算子,在所述策略结构中填入选择的算子,完成选择的算子的参数设置,生成所述第一候选策略。


根据权利要求11-13中任意一项所述的开发平台,其特征在于,所述处理器,还用于若所述第一运行参数与所述参数要求信息不匹配,获取第一差异信息,所述第一差异信息用于指示所述第一运行参数和所述参数要求信息的差异;根据所述第一差异信息,调整所述第一候选策略中的算子,得到第二候选策略;对所述第二候选策略进行样本训练,得到第二候选AI模型;
所述处理器,还用于调用所述运行平台的模拟器组件,运行所述第二候选AI模型,得到第二运行参数;若所述第二运行参数与所述参数要求信息匹配,确定所述第二候选AI模型为目标AI模型。


根据权利要求11-13中任意一项所述的开发平台,其特征在于,所述处理器,还用于在从所述多个可用算子中选择算子,并完成选择的算子的参数设置,生成第一候选策略之前,确定所述第一业务的标杆模型,所述标杆模型是用于处理所述第一业务的AI模型;其中,所述待生成的AI模型的策略结构为所述标杆模型的策略结构,所述策略结构用于表征所述标杆模型处理数据的逻辑;
所述处理器,用于从所述多个可用算子中选择算子,并完成选择的算子的参数设置,生成第一候选策略,包括:
所述处理器,用于按照所述标杆模型的策略结构从所述多个可用算子中随机选择算子,采用随机选择的算子替换所述标杆模型中、与所述运行平台不对应的算子,并调整各个算子的参数,得到所述第一候选策略。
...

【专利技术属性】
技术研发人员:于超谢淼许翔
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1