
ONNX
文章平均质量分 61
工头阿乐
实践是检验真理的唯一标准。
展开
-
onnx模型动态输入形状转静态输入形状
早期tf生成的模型,因为是静态图,定义模型时输入的是tf.placeholder ,导出的pb 或都saved model,总是动态,至少batch size 这一维是动态,即[None,H,W,3],H,W有具体值;如果是支持多尺度的输入的话,那输入形状是[None,None,None,3]。以上None部分,也可能是用户常常自定义的一个名称。在pytorch导出onnx时,可以设置是使事使用dynamic,dynamic的价值也就是可以变输入。但在部分边端芯片上部署模型时,通常是必须固定形状的。原创 2024-11-13 10:42:38 · 396 阅读 · 0 评论 -
理解BatchNormalization层的作用
Batch Normalization作为最近一年来DL的重要成果,已经广泛被证明其有效性和重要性。虽然有些细节处理还解释不清其理论原因,但是实践证明好用才是真的好,别忘了DL从Hinton对深层网络做Pre-Train开始就是一个经验领先于理论分析的偏经验的一门学问。本文是对论文《Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift》的导读。原创 2023-12-01 18:02:13 · 613 阅读 · 0 评论 -
如何查看onnx网络结构和参数
https://github.com/DefTruth/lite.ai.toolkithttps://www.zhihu.com/question/386526462原创 2023-10-19 17:26:55 · 825 阅读 · 0 评论 -
polygraphy深度学习模型调试器使用教程
Polygraphy在我进行模型精度检测和模型推理速度的过程中都有用到,因此在这做一个简单的介绍。使用多种后端运行推理计算,包括 TensorRT, onnxruntime, TensorFlow;比较不同后端的逐层计算结果;由模型生成 TensorRT 引擎并序列化为.plan;查看模型网络的逐层信息;修改 Onnx 模型,如提取子图,计算图化简;分析 Onnx 转 TensorRT 失败原因,将原计算图中可以 / 不可以转 TensorRT 的子图分割保存;原创 2023-04-14 16:45:01 · 3072 阅读 · 0 评论 -
pth模型文件转为onnx格式
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。原创 2023-04-14 14:52:09 · 10208 阅读 · 0 评论 -
PyTorch C++系列教程2:使用自定义数据集
在上一篇文章中,我们讨论了如何使用 PyTorch C++ API 实现 VGG-16 来识别 MNIST 数据集。这篇文章我们讨论一下如何用 C++ API 使用自定义数据集。在下一篇教程中,我们将介绍如何在 CNN 中使用自定义的 data loader。原创 2023-04-04 20:38:19 · 436 阅读 · 0 评论 -
PyTorch C++系列教程1:用 VGG-16 识别 MNIST
本文讲解如何用 PyTorch C 实现 VGG-16 来识别 MNIST 数据集。完整代码请参考:参考资料。原创 2023-04-04 20:11:24 · 559 阅读 · 0 评论 -
模型部署入门教程汇总
OpenMMLab 的算法如何部署?是很多社区用户的困惑。而模型部署工具箱 MMDeploy 的开源,强势打通了从算法模型到应用程序这 “最后一公里”!原创 2023-04-03 20:10:06 · 510 阅读 · 0 评论 -
人脸情绪识别开源代码、模型以及说明文档
各个模型我们存放在百度云盘 https://pan.baidu.com/s/1mM-APWoLV5P3nvrzmG–Jg 提取码 1gyh。我们将上述八个模型的结果进行集成,最终生成的文件放在prediction_result下面的result.csv文件中。上述8个模型的预测结果统一放在user_data/tmp_data里面,下面使用集成方法对上述八个模型的结果进行整合。是你训练得到模型的名字,如果你自己训练了其中的一些模型,请将对应的名称修改为训练得到模型的名称。因为是训练八个模型,分别是。原创 2023-03-31 10:38:28 · 918 阅读 · 0 评论 -
PyTorch框架训练的几种模型区别
在PyTorch中,.pt、.pth和.pth.tar都是用于保存训练好的模型的文件格式,它们之间的主要区别如下:.pt文件是PyTorch 1.6及以上版本中引入的新的模型文件格式,它可以保存整个PyTorch模型,包括模型结构、模型参数以及优化器状态等信息。.pt文件是一个二进制文件,可以通过torch.save()函数来保存模型,以及通过torch.load()函数来加载模型。.pth文件是PyTorch旧版本中使用的模型文件格式,它只保存了模型参数,没有保存模型结构和其他相关信息。原创 2023-03-29 15:42:13 · 10129 阅读 · 0 评论 -
PyTorch训练模型时RuntimeError: CUDA out of memory. Tried to allocate 2.24 GiB (GPU 0; 1.83 GiB total capa
【代码】PyTorch训练模型时RuntimeError: CUDA out of memory. Tried to allocate 2.24 GiB (GPU 0;原创 2023-03-26 15:08:57 · 653 阅读 · 0 评论 -
PyTorch训练模型出现RuntimeError: Unable to find a valid cuDNN algorithm to run convolution问题
PyTorch训练模型出现RuntimeError: Unable to find a valid cuDNN algorithm to run convolution问题。原创 2023-03-26 10:45:26 · 881 阅读 · 0 评论 -
PyTorch训练模型时出现RuntimeError: cuDNN error: CUDNN_STATUS_NOT_INITIALIZED报错
PyTorch训练模型时出现RuntimeError: cuDNN error: CUDNN_STATUS_NOT_INITIALIZED报错。原创 2023-03-26 10:32:07 · 953 阅读 · 0 评论 -
DLA模型不支持Flatten层的修改方法
在模型部署的时候遇到Nvidia DLA不支持的层,见下文:原ONNX模型中Flatten层中ATTRIBUTES的axis=1,type:int64, 见下图:下面是一个使用ONNX模型中的Reshape层替代Flatten层的示例代码:在上面的代码中,我们使用了helper.make_node函数来创建一个Reshape节点,并将其输入张量设置为原模型中Flatten层的输入张量,输出张量设置为原模型中Flatten层的输出张量。在Reshape节点的参数中,我们将shape设置为[0, -1],其原创 2023-03-24 10:07:52 · 331 阅读 · 0 评论 -
ONNXRuntime概览
以上就是ONNXRuntime的整体概览,由于ONNXRuntime仅仅是一个推理引擎,运行过程是线性的,逻辑也比较简单易懂。接下来的几篇文章会针对ONNXRuntime的一些核心功能(如内存管理,OpKernel注册,模型切分等)的代码进行详细剖析。原创 2022-12-16 15:12:40 · 9542 阅读 · 0 评论