ML.NET 在 uwp 上 运行 失败

ML.NET fails to run on uwp

我在 Visual Studio 2017 年构建了一个 UWP 应用程序,还在 运行 ML.NET 的解决方案中添加了一个 class 库,但每次我 运行我收到异常的应用程序

PlatformNotSupportedException. Retrieving information about local processes is not supported on this platform

可能是什么问题?

ML.NET 目前仅支持 x64 项目。您的项目是 x86 项目吗?

这是一个 .NET Standard 异常,当库试图访问 API 时发生,该 API 实际上并未在平台上实现,但存在是为了使平台符合 .NET Standard。在这种情况下,似乎 ML.NET 正在尝试获取尚未在 UWP 中实现的进程信息,因此它因给定的异常而失败。

我建议在 ML.NET GitHub issues 中将此作为问题提交,以获得第一方建议,了解是否有解决方法,或通知团队开发人员需要此才能在 UWP 中使用库.

我想出了解决问题的方法。我决定首先在 .NET Core 控制台应用程序上训练模型,然后在我的 UWP 应用程序中导出经过训练的模型。它工作得很好。 感谢this post

ML.Net 0.7 现在支持 x86 和 x64 平台...还不支持 ARM。

https://blogs.msdn.microsoft.com/dotnet/2018/11/08/announcing-ml-net-0-7-machine-learning-net/