江大白 | AI炼丹ONNX模型实战部署,心得经验分享

本文来源公众号“江大白”,仅用于学术分享,侵权删,干货满满。

原文链接:AI炼丹ONNX模型实战部署,心得经验分享

导读

模型推理部署是AI工程化阶段非常重要的一部分,而其中非常重要的一个中转格式就是onnx,本文讲解了对于onnx部署实战的探索和经验,希望对大家有帮助!

内容介绍

目标检测模型End to End推理方案的探索和尝试,说到推理和部署,其实怎么也绕不开ONNX,ONNX在成立的初衷就是希望解决神经网络在不同的训练框架、推理框架上的转换问题。所以本期的内容会从如何玩转ONNX出发,唠一唠,我们在目标检测部署遇到的那些事情。因为篇幅以及有部分内容我不太了解不敢乱说的关系,我会在这里对开放麦的内容做一点顺序和内容上进行一点的调整,我也会加入自己的一些经历和看法,让大家看得更加轻松有趣一点。

ONNX是什么,如何生成ONNX(ONNX简要的介绍)?

预告:下面用三种方法向大家介绍如何生成Relu的ONNX模型,那么哪种方法才是最强的ONNX的生成方法呢?大家可以思考一下,我们继续往下看~

ONNX的组成

ONNX的静态图主要由Node(节点),Input(输入)和initializer(初始化器)但部分所组成的

  • ✓节点就代表了神经网络模型一层的layer

  • ✓输入代表了输入矩阵的维度信息

  • ✓初始化器通常是存储权重/权值的。

  • 每个组件元素都是hierarchical的结构,都是有着相互依赖关系的;

  • 这是一个双向的链表。(Node、Graph彼此关联有相互关系的);

大家觉得难改,其实很大一部分也是因为ONNX的结构,边与边是一个稳定的结构关系,彼此很大程度上是相互依赖的。所以我们具体要怎么转化模型,怎么修改模型呢?我们接着看下去~

Pytorch导出ONNX模型

Pytorch是可以直接导出ONNX的模型,然后我们可以把导出的模型使用Netron的工具进行可视化工具。

Pytorch-—>ONNX

Numpy出发,揉一个数据结构是可行吗?

ONNX可以在Pytorch,通过转换得到。那么我们假如我们不用Pytorch上的转换,从零开始直接用Numpy人手揉一个ONNX模型是可行的吗?答案是可行的。

ONNX是用protobuf数据格式进行保存的。而protobuf本身也是跨语言的可以支持C, C&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值