【YOLOV5从开发到部署实战】十、ONNX推理
2023-09-27 14:23:04 时间
简介
Open Neural Network Exchange(ONNX,开放神经网络交换)格式,是一个用于表示深度学习模型的标准,可使模型在不同框架之间进行转移。
ONNX是一种针对机器学习所设计的开放式的文件格式,用于存储训练好的模型。它使得不同的人工智能框架(如Pytorch,
MXNet)可以采用相同格式存储模型数据并交互。 ONNX的规范及代码主要由微软,亚马逊 ,Facebook 和 IBM
等公司共同开发,以开放源代码的方式托管在Github上。目前官方支持加载ONNX模型并进行推理的深度学习框架有: Caffe2,
PyTorch, MXNet,ML.NET,TensorRT 和 Microsoft CNTK,并且 TensorFlow
也非官方的支持ONNX。—维基百科
假设一个场景:现在某组织因为主要开发用TensorFlow为基础的框架,现在有一个深度算法,需要将其部署在移动设备上,以观测变现。传统地我们需要用caffe2重新将模型写好,然后再训练参数;试想下这将是一个多么耗时耗力的过程。
此时,ONNX便应运而生,Caffe2,PyTorch,Microsoft Cognitive Toolkit,Apache MXNet等主流框架都对ONNX有着不同程度的支持。这就便于了我们的算法及模型在不同的框架之间的迁移。
ONNX
开放式神经网络交换(ONNX)是迈向开放式生态系统的第一步,它使AI开发人员能够随着项目的发展选择合适的工具。 ONNX为AI模型提供开源格式。 它定义了可扩展的计算图模型,以及内置运算
相关文章
- Laravel 的 Homestead 开发环境部署
- 英伟达 Jetson Nano 新手必备:Hello AI World —— 部署深度学习开发环境
- Watson Explorer 入门(6):开发和部署UIMA管道
- 开源对话机器人框架:Rasa概述【中小型公司使用Rasa框架,降低准入门槛。灵活性不够高】【可以本地部署】【保护数据隐私(其他框架需要将自己的数据上传到框架官方云服务器,不安全)】【可以重写一些类】
- 服务端部署PyTorch模型-方法(一):Flask/Django
- AI工程部署(二):CI/CD自动化【核心:①流水线:将开发之后的单元测试、构建Docker镜像、接口测试、部署、压测等所有过程定义为流水线;②自动化:将流水线中每个过程编为脚本,可以自动执行】
- SpringBoot项目war包部署
- OpenStack Swift跨地域存储集群的部署与优化
- Office 365 – SharePoint 2013 Online 之WebPart开发、部署教程
- Spring Boot 五种热部署方式,极速开发就是生产力!
- 【YOLOV5从开发到部署实战】YOLOV5的可拓展性
- 【YOLOV5从开发到部署实战】一、cuda和cudnn安装
- 【YOLOV5从开发到部署实战】三、数据标注与数据格式转化
- 【YOLOV5从开发到部署实战】五、模型测试
- 【YOLOV5从开发到部署实战】七、在U版YOLOV5上添加CBAM、CA、SE、ECA注意力模块(全网最简单易懂)
- 【YOLOV5从开发到部署实战】八、YOLO项目代码加密
- 【YOLOV5从开发到部署实战】九、YOLO训练出的模型权重加解密方法
- Linux下DNS服务(Bind9)之Web管理利器-NamedManager部署说明
- OpenGauss3.1.0 单机版安装部署过程
- OpenEuler2203 基于容器和本地文件部署Redis Cluster的过程以及简单性能测试
- windows7_下Eclipse中部署tomcat7.0进行JSP+servlet开发
- AspNetCore容器化(Docker)部署(四) —— Jenkins自动化部署
- beego-vue URL重定向(beego和vue前后端分离开发,beego承载vue前端分离页面部署)
- 阿里天蝎计划 服务器部署效率提升10倍
- 改善安全性能 企业BYOD部署MDM分析
- 开发微信公众平台--新建新浪云sae部署server
- Docker自动部署Apache Tomcat
- django部署后样式加载不出来解决方案
- Apache Flink 开发环境搭建和应用的配置、部署及运行
- JBPM流程部署之部署解析器相关对象扩展
- 使用VS Code 开发.NET Core 应用程序 部署到Linux 跨平台
- 有意思的Python:开发和部署一览
- Mongodb 笔记09 备份、部署MongoDB