要将经过训练的.Net模型打包到WPF Core3.1应用程序中,我想知道这两种方法: Microsoft.ML.OnnxRuntime和Microsoft.AI.MachineLearning (WinML)是否有什么不同?OnnxRuntime似乎更容易用C#实现,而WinML的桌面应用程序示例是在C++中实现的。
对于公共用户,使用OnnxRuntime部署Onnx模型有什么缺点吗?或者它需要特定的环境来进行推理?
为什么微软需要维护两种不同的方法,如果它们本质上是相同的?
发布于 2021-01-26 02:52:47
谢谢你这个很棒的问题。使用Microsoft.AI.MachineLearning可以为任何Windows设备上的ML推断提供高性能和可靠的硬件加速。ONNX运行时专注于成为一个跨平台的推理引擎。Microsoft.AI.MachineLearning实际上利用ONNX来优化CPU性能,并利用DirectML后端来优化GPU加速。This diagram展示了Windows的完整堆栈。
https://stackoverflow.com/questions/65212704
复制相似问题