[发明专利]机器学习模型的编译优化方法和装置有效
申请号: | 202010366380.6 | 申请日: | 2020-04-30 |
公开(公告)号: | CN111580828B | 公开(公告)日: | 2021-08-27 |
发明(设计)人: | 姜曦楠;朱子霖;周飞虎;郭振宇 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06N20/00 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 江舟 |
地址: | 518000 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 机器 学习 模型 编译 优化 方法 装置 | ||
1.一种机器学习模型的编译优化方法,其特征在于,包括:
运行第一机器学习模型分别对N个数据集进行处理,得到N组模型运行信息,其中,对于每个所述数据集,所述第一机器学习模型被多次运行,得到一组所述模型运行信息,所述第一机器学习模型包括第一组操作,所述第一组操作中的操作为允许被目标编译器处理的操作,每组所述模型运行信息用于指示:在所述多次运行所述第一机器学习模型对一个所述数据集进行处理的过程中,所述第一组操作中的每个操作的输入张量和输出张量的形状是否发生变化,N为大于1的自然数;
根据所述N组模型运行信息,在所述第一组操作中确定出N个操作集合;
根据所述N个操作集合,在所述第一组操作中确定允许被分别编译的多个操作子集合,其中,所述多个操作子集合设置为允许被所述目标编译器分别编译;
使用所述目标编译器分别对与每个编译区域对应的所述操作子集合进行编译;
所述方法还包括:
在所述允许被分别编译的一个操作子集合中包括多个目标操作的情况下,使用所述目标编译器将所述多个目标操作合并成一个操作,保留所述第一机器学习模型中除所述多个目标操作之外的操作,并将所述多个目标操作的输入张量和输出张量转换为所述一个操作的输入张量和输出张量,得到第二机器学习模型;或者
使用所述目标编译器将所述第一机器学习模型中的所述多个目标操作合并成多个操作,保留所述第一机器学习模型中除所述多个目标操作之外的操作,并将所述多个目标操作的输入张量和输出张量转换为合并成的所述多个操作的输入张量和输出张量,得到第二机器学习模型,其中,所述合并成的所述多个操作中操作的数量小于所述多个目标操作中操作的数量;
使用所述目标编译器分别对与每个所述编译区域对应的所述操作子集合进行编译,包括:
将正式数据输入至所述第二机器学习模型;
使用所述目标编译器对所述第二机器学习模型进行编译,得到所述第二机器学习模型对所述正式数据进行处理后输出的处理结果。
2.根据权利要求1所述的方法,其特征在于,每个所述操作集合包括第一操作子集合和第二操作子集合,每个所述第一操作子集合包括在所述多次运行所述第一机器学习模型对一个所述数据集进行处理的过程中输入张量和输出张量的形状均未发生变化的操作,每个所述第二操作子集合包括在所述多次运行所述第一机器学习模型对一个所述数据集进行处理的过程中输入张量和/或输出张量的形状发生变化的操作,其中,所述根据所述N个操作集合,在所述第一组操作中确定允许被分别编译的多个操作子集合,包括:
对于所述N个操作集合中的每个操作集合,执行以下操作,其中,在执行以下操作的过程中,所述每个操作集合被视为当前操作集合:
在所述第一组操作中确定是否存在第三操作子集合,其中,所述第三操作子集合中的操作仅出现在所述当前操作集合中的所述第二操作子集合中、而未出现在所述N个操作集合中除所述当前操作集合之外的操作集合中的所述第二操作子集合中;
其中,在存在所述第三操作子集合的情况下,所述第三操作子集合为所述多个操作子集合中的一个操作子集合。
3.根据权利要求1所述的方法,其特征在于,每个所述操作集合包括第一操作子集合和第二操作子集合,每个所述第一操作子集合包括在所述多次运行所述第一机器学习模型对一个所述数据集进行处理的过程中输入张量和输出张量的形状均未发生变化的操作,每个所述第二操作子集合包括在所述多次运行所述第一机器学习模型对一个所述数据集进行处理的过程中输入张量和/或输出张量的形状发生变化的操作,其中,所述根据所述N个操作集合,在所述第一组操作中确定允许被分别编译的多个操作子集合,包括:
对所述N个操作集合中的所述第一操作子集合取交集,得到第四操作子集合,其中,所述第四操作子集合为所述多个操作子集合中的一个操作子集合。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
对所述N个操作集合中的所述第二操作子集合取交集,得到第五操作子集合;
将所述第五操作子集合中的操作设置为放弃使用搜索目标编译器进行编译。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010366380.6/1.html,转载请声明来源钻瓜专利网。