[发明专利]深度学习模型的执行代码的确定方法、装置及存储介质在审
申请号: | 201911356174.0 | 申请日: | 2019-12-25 |
公开(公告)号: | CN113031952A | 公开(公告)日: | 2021-06-25 |
发明(设计)人: | 王劭杰;章放;刘伟良;韩新承;江欣聪 | 申请(专利权)人: | 上海高德威智能交通系统有限公司 |
主分类号: | G06F8/40 | 分类号: | G06F8/40 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 李珂珂 |
地址: | 201821 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 深度 学习 模型 执行 代码 确定 方法 装置 存储 介质 | ||
本申请公开了一种深度学习模型的执行代码的确定方法、装置及存储介质,属于数据处理技术领域。所述方法包括:基于深度学习模型的中间代码的数据处理方式,确定中间代码对应的至少一个预处理中间代码,至少一个预处理中间代码互不相同;将每个预处理中间代码转换成可执行代码,得到至少一个可执行代码;从至少一个可执行代码中确定深度学习模型的执行代码。本申请根据中间代码的数据处理方式不同确定至少一个预处理中间代码,从而对应得到至少一个可执行代码,以便于可以从至少一个可执行代码中确定一个运行效率最高的深度学习模型的执行代码,避免只能按照固定模式确定深度学习模型的执行代码的问题。
技术领域
本申请涉及数据处理技术领域,特别涉及一种深度学习模型的执行代码的确定方法、装置及存储介质。
背景技术
随着数据处理技术的快速发展,深度学习模型广泛应用于计算机视觉、自然语言处理等领域。一般来说,深度学习模型的源代码无法适用于不同类型的硬件平台,为此在使用过程中通常需要将深度学习模型的源代码转换为中间代码,再基于具体的硬件平台的配置文件,将中间代码转换为该硬件平台的可执行代码,得到可运行于硬件平台中的深度学习模型的执行代码。
然而,上述提供的代码转换过程是按照固定模式进行的,深度学习模型的执行代码的确定方式比较单一,使得深度学习模型的执行代码的运行效率较差。
发明内容
本申请提供了一种深度学习模型的执行代码的确定方法、装置、设备及存储介质,可以解决相关技术的深度学习模型的执行代码的运行效率较差的问题。
所述技术方案如下:
一方面,提供了一种深度学习模型的执行代码的确定方法,所述方法包括:
基于深度学习模型的中间代码的数据处理方式,确定所述中间代码对应的至少一个预处理中间代码,所述数据处理方式包括数据重复使用和/或数据不重复使用,所述至少一个预处理中间代码互不相同;
将每个预处理中间代码转换成可执行代码,得到至少一个可执行代码;
从所述至少一个可执行代码中确定所述深度学习模型的执行代码。
在本申请一种可能的实现方式中,所述方法应用于目标检测、目标跟踪、语义分割、语音识别、文字识别、自然语言处理中的任一场景。
在本申请一种可能的实现方式中,所述中间代码包括多个中间代码块,每个中间代码块分别用于处理不同的张量数据,所述基于深度学习模型的中间代码的数据处理方式,确定所述中间代码对应的至少一个预处理中间代码,包括:
将所述中间代码作为一个预处理中间代码;和/或,
基于各个中间代码块的数据处理方式,对所述多个中间代码块中的至少一个中间代码块进行缓存优化处理;
将缓存优化处理后的至少一个中间代码块和未进行缓存优化处理的所有中间代码块构成的中间代码作为一个预处理中间代码。
在本申请一种可能的实现方式中,所述基于各个中间代码块的数据处理方式,对所述多个中间代码块中的至少一个中间代码块进行缓存优化处理,包括:
当所述多个中间代码块的数据处理方式均包括数据不重复使用时,对所述多个中间代码块中的至少一个中间代码块进行双缓存优化处理;
所述将缓存优化处理后的至少一个中间代码块和未进行缓存优化处理的所有中间代码块构成的中间代码作为一个预处理中间代码,包括:
将双缓存优化处理后的至少一个中间代码块和未进行双缓存优化处理的所有中间代码块构成的中间代码作为一个预处理中间代码。
在本申请一种可能的实现方式中,所述基于各个中间代码块的数据处理方式,对所述多个中间代码块中的至少一个中间代码块进行缓存优化处理,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海高德威智能交通系统有限公司,未经上海高德威智能交通系统有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911356174.0/2.html,转载请声明来源钻瓜专利网。