ONNX 运行时上的反向传播

Backpropagation on ONNX runtime

提问人:Haris Naveed 提问时间:10/9/2023 更新时间:10/11/2023 访问量:35

问:

我想在 C++ 中的 ONNX 模型上实现反向传播。流程如下,我在 pytorch 中训练了模型,然后将其导出到 ONNX。我使用 ONNX 运行时导入模型,现在我的目标是在我导入的这个模型上实现反向传播。我是 ONNX 的新手,尝试在互联网上搜索,但找不到任何有用的东西。

简单来说,我想在 GPU 上运行反向传播。

我搜索了有关训练的 ONNX 运行时文档,但它没有提供任何与反向传播相关的信息。

如果有人能就这个问题提供一些指导方针,我将很高兴。

C++ 反向传播 onnxruntime

评论

0赞 Haris Naveed 10/10/2023
@kiner_shah请使用您提供的链接添加详细信息。我已经对这个链接有了想法。

答:

0赞 Haris Naveed 10/11/2023 #1

在互联网上搜索了一段时间后,我在 Github 上找到了一篇帖子,它让我了解如何更新 ONNX 模型的权重。下面是链接。

https://github.com/onnx/onnx/issues/2978

从 ONNX 模型中获取权重,提供输入数据,获取预测,然后实现反向传播,并在最后计算更新的权重,替换它们,保存模型。