0

要将训练有素的 Onnx 模型与 WPF .Net Core 3.1 应用程序打包在一起,我想知道这两种方法是否有区别:Microsoft.ML.OnnxRuntime 和 Microsoft.AI.MachineLearning (WinML)?OnnxRuntime 似乎更容易用 C# 实现,而 WinML 的桌面应用程序示例使用 C++。

使用 OnnxRuntime 为公共用户部署 Onnx 模型有什么缺点吗?或者它是否需要特定的推理环境?

如果它们本质上是相同的,为什么微软需要维护两种不同的方法?

4

1 回答 1

2

谢谢你的好问题。使用 Microsoft.AI.MachineLearning 可为您在任何 Windows 设备上进行 ML 推理提供高性能和可靠的硬件加速。ONNX 运行时专注于成为跨平台推理引擎。Microsoft.AI.MachineLearning 实际上利用 ONNX 运行时优化 CPU 性能,并利用 DirectML 后端优化 GPU 加速。此图说明了 Windows ML 的完整堆栈。

于 2021-01-25T18:52:46.617 回答