问题标签 [onnxruntime]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
pytorch - 来自 PyTorch 模型的 ONNX 对象,无需导出
是否可以在不导出的情况下将 PyTorch 模型转换为 ONNX,并在脚本中直接将其用作 ONNX 对象。
python - Onnxruntime 错误 9:LeakyRelu 未实现
我已将一个简单的 pytorch 模型转换为 onnx 格式,但未能尝试通过 onnxruntime 在单独的文件中加载和评估模型。它给出了错误消息:
但是文档清楚地列出了leakyrelu 运算符:https ://github.com/microsoft/onnxruntime/blob/master/docs/OperatorKernels.md
转换脚本非常简单。
加载转换模型的脚本也很简单,
打印出来的图是
我想知道是否已经实现了leakyrelu,或者我只是在转换中错过了一些东西。感谢您的帮助!
tensorflow - onnx.onnx_cpp2py_export.checker.ValidationError: No Op 为 _DCNv2 注册,domain_version 为 9
pytorch:1.4.0 ONNX:1.9.0 python:3.6
在 PyTorch 模型上工作以使用 ONNX 转换张量流,但我收到此错误,请帮助解决。
c++ - 在 C++ 中使用 ONNX 推断 tensorflow 训练的模型?
我正在尝试重新创建此视频中完成的工作,CppDay20Interoperable AI: ONNX & ONNXRuntime in C++ (M. Arena, M.Verasani)。演示代码的 github 存储库在这里 。到目前为止,我已经使用 TensorFlow 训练了一个回归模型并已转换为 ONNX 以在 C++ 中进行推理。但是创建的 ONNX 运行时会话无法读取我模型的输入形状;输入形状返回值 -1。
输出 :
有什么建议可以使推理代码起作用吗?
c# - 如何更改 ONNX 结果 = Object {Microsoft.ML.OnnxRuntime.Tensors.DenseTensor} 到某事?
你好!
我对 Microsoft ML ONNX 很陌生。
使用“Visual Studio 2019”、“Windows Forms App”和“.NET framework(C# 7.3 ver)”制作 GUI
我使用 python sklearn 制作简单的 KNN,然后导出为 ONNX 形式。
MS VS Forms 通过串行通信从 DSP 接收 Sensor 数据,然后程序使用传感器数据为 ONNX InferenceSession 制作输入张量(1*3 浮点密集张量)。
我的 ONNX 预测代码如下所示。
在调试状态下,我可以发现“result.ToList()[0]”是 output_label。所以我尝试使用'result.ToList()[0]'的值,但我不能把它变成任何不同的形状。
我尝试张量形式、列表形式、字典形式,但它们返回“null”。当我使用 .ToString() 它返回 'Microsoft.ML.OnnxRuntime.Tensors.DenseTensor'
有谁知道如何将“Object {Microsoft.ML.OnnxRuntime.Tensors.DenseTensor}”的值转换为字符串或整数?
c# - 从 opencv mat/Array 到 OnnxRuntime 张量的转换优化?
我正在使用 ONNXRuntime 来推断 UNet 模型,作为预处理的一部分,我必须将 EMGU OpenCV 矩阵转换为 OnnxRuntime.Tensor。
我使用两个嵌套的 for 循环来实现它,不幸的是这很慢:
然后我发现存在一种将 Array 转换为 DenseTensor 的方法。我想按如下方式使用此方法:
这将大大提高性能,但是输出张量的布局不正确(与 for 循环相同)并且模型显然无法工作。任何建议如何将阵列重塑为正确的布局?
在代码中还执行将 int 0-255 转换为 float 0-1 并将 BGR 布局转换为 RGB 布局。
python - tf2onnx Tensorflow 到 Onnx 输出不一致
我正在尝试创建一个超级简单的 Tensorflow 网络(一个数据处理 Lambda 层),然后将模型转换为 ONNX,并在从 onnxruntime 调用 ONNX 模型时验证结果是否匹配。我正在使用 Tensorflow v2.5.0。& onnxruntime v1.8.1。
型号定义:
然后我可以将我的 example_input2 输入网络:
它提供了所需的输出(只需 tf.roll 操作):
伟大的!现在我可以保存我的 tensorflow 模型,
然后在 shell 中,我可以使用 tf2onnx 将其转换为 ONNX 格式:
然后,回到 python,我可以加载 onnx 模型并尝试输入相同的输入:
它提供与输入匹配的输出,而不是所需的输出(应该是 tf.roll'd by -1):
model.predict
当我从原始 keras 模型上的 python 中调用时,我完全不知道为什么这里的输出不匹配。有任何想法吗?
memory-leaks - 在 GPU 上使用 onnxruntime 时的内存泄漏(CPU 的 RAM)
我正在使用 Pypi 的 Insightface 库(https://pypi.org/project/insightface/),源代码在这里:https://github.com/deepinsight/insightface/blob/master/python-package/洞察脸/model_zoo/scrfd.py。
当我在我的 GPU 上运行它时,CPU 的 RAM 出现严重的内存泄漏,超过 40 GB,直到我停止它(不是 GPU 内存)。
这是我的脚本:
我的设置是(在docker内部):
- Docker 基础镜像 - nvidia/cuda:11.0.3-cudnn8-devel-ubuntu18.04
- 英伟达驱动程序 - 465.27
- 蟒蛇 - 3.6.9
- 洞察面==0.3.8
- mxnet==1.8.0.post0
- mxnet-cu110==2.0.0a0
- numpy==1.18.5
- onnx==1.9.0
- onnxruntime-gpu==1.8.1
tensorflow - ONNX 转换的 TensorFlow 保存模型在 CPU 上运行,但不在 GPU 上
我使用 tf2onnx 将 tensorflow 保存的模型转换为 ONNX 格式:
转换工作正常,我可以使用 CPU 对 ONNX 模型进行推理。
我安装onnxruntime-gpu
以使用 GPU 运行推理并遇到错误:
我是唯一一个使用 Titan RTX(24GB RAM)的 GPU。该模型使用其 tensorflow 保存的模型版本在 GPU 上运行良好,具有 10GB 的 GPU 内存。
版本是:
- 张量流 1.14.0
- CUDA 10.0
- CuDNN 7.6.5
- onnx 1.6.0
- onnxruntime 1.1.0
- tf2onnx 1.9.2
- 蟒蛇3.6
- Ubuntu 18.04