[发明专利]一种深度学习推理运算方法及中间件有效
申请号: | 201911325317.1 | 申请日: | 2019-12-20 |
公开(公告)号: | CN111144571B | 公开(公告)日: | 2023-09-05 |
发明(设计)人: | 周正锦;颜银慧;向涛;艾烨霜 | 申请(专利权)人: | 深圳市金溢科技股份有限公司 |
主分类号: | G06N5/04 | 分类号: | G06N5/04;G06N3/063;G06N3/08 |
代理公司: | 深圳鼎合诚知识产权代理有限公司 44281 | 代理人: | 任葵;彭家恩 |
地址: | 518057 广东省深圳市南山区粤海街道科技南*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 深度 学习 推理 运算 方法 中间件 | ||
一种深度学习推理运算方法及中间件,所述方法通过推理中间件用于具有不同推理运算库的硬件平台,所述方法包括:根据硬件环境,初始化所述推理中间件支持的推理运算库;调用当前使用的推理运算库,对数据进行推理运算;输出推理运算的结果。本申请的方法及中间件可以根据不同的硬件平台选择运行模式,选出最适合该硬件平台的推理运算库,使硬件平台发挥最优性能,本申请可根据不同的硬件平台,支持其对应的推理加速方案,无需专业技术人员进行繁琐的移植工作,提高了用户体验。
技术领域
本申请涉及人工智能,尤其涉及一种深度学习推理运算方法及中间件。
背景技术
目前在不同的硬件设备上,有各自不同的推理运算方案。这些推理运算方案都有各自的优点,然而这些推理运算方案还具有一些局限性,比如:只支持单一的硬件平台、只针对单一的硬件平台或系统进行优化等问题。因此,一种深度学习应用从一个硬件平台上移植到另外一个硬件平台上,为了充分利用硬件平台,常常需要做大量繁琐且难度较大的移植工作,部署和升级很麻烦,需专业能力较强技术人员才能解决。
发明内容
本申请提供一种深度学习推理运算方法及中间件。
根据本申请的第一方面,本申请提供一种深度学习推理运算方法,所述方法通过推理中间件用于具有不同推理运算库的硬件平台,所述方法包括:
根据硬件环境,初始化所述推理中间件支持的推理运算库;
调用当前使用的推理运算库,对数据进行推理运算;
输出推理运算的结果。
进一步地,所述推理中间件集成多种硬件加速方案,初始化所述推理中间件支持的推理运算库之前,所述方法还包括:根据不同的硬件平台,从所述推理中间件中读取不同的推理加速方案。
进一步地,调用当前使用的推理运算库,对数据进行推理运算的具体方式为:
针对所述当前使用的推理运算库,对相关数据进行预处理及格式转换;
调用所述当前使用的推理运算库,对转换完成的数据进行推理运算;
将推理运算后得到的结果的数据结构转换为推理中间件对外接口统一的数据结构。
进一步地,所述当前使用的推理运算库,具体通过以下方式确定:
初始化所述推理中间件时,按预设的优先级判断推理运算库是否存在,首次找到的推理运算库为所述当前使用的推理运算库。
进一步地,初始化所述推理中间件支持的推理运算库,包括以下步骤中的至少一个:
判断所述推理中间件相关配置是否正确;
判断当前配置的推理运算库在所述硬件环境下是否支持;
判断模型文件是否支持转换成所述当前使用的推理运算库;
对所述模型文件进行转换;
初始化当前配置的推理运算库作为当前使用的推理运算库。
进一步地,所述对所述模型文件进行转换,包括:
判断当前调用的模型文件的种类;
判断深度学习支持引擎的版本号;
根据所述模型文件的种类,解析模型文件中的参数,根据所述深度学习支持引擎的版本号将模型文件中的参数进行转换;
将转换后的参数重新写入模型定义文件。
进一步地,所述对模型文件进行转换,还包括:
对于所述深度学习支持引擎不支持的模型算法层,将二次开发的推理运算库在,解析模型文件中的参数时进行注册。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市金溢科技股份有限公司,未经深圳市金溢科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911325317.1/2.html,转载请声明来源钻瓜专利网。