发行说明
此页面记录 Windows 10 SDK 和 NuGet 包最新版本中的 Windows ML 更新。
Windows ML NuGet 包 - 版本 1.9
- 在此处下载 NuGet。
- 基于 ONNX Runtime 1.9 而构建.
- WinML - DLL 依赖项修复支持 Windows 8.1 上的学习模型。
Windows ML NuGet 包 - 版本 1.8
- 在此处下载 NuGet。
- 基于 ONNX Runtime 1.8 而构建。
- 新的原生 WinML API
SetIntraOpThreadSpinning
。 此 API 用于切换 IntraOp 线程旋转行为。 启用后,如果没有当前工作负载,IntraOp 线程将持续运行一段时间,因为它会等待其他工作完成。 这可提升当前工作负载的性能,但可能会影响其他不相关工作负载的性能。 默认情况下此切换处于启用状态。
Windows ML NuGet 包 - 版本 1.7
- 在此处下载 NuGet
- 基于 ONNX Runtime 1.7 而构建
- .NET5 支持 - 将与 .NET5 标准 2.0 投影一起使用。
- 图像描述符公开 NominalPixelRange 属性
- 为图像模型中的其他像素范围[0..1]和[-1..1]添加了本机支持。
- 向 ImageFeatureDescriptor runtimeclass 添加了新属性,以在 ImageFeatureDescriptor 中公开 ImageNominalPixelRange 属性。 公开的其他类似属性是图片的 BitmapPixelFormat 和 BitmapAlphaMode。
- Bug 修复和性能改进。
- 向 Redist 添加了 DirectML PIX 标记,以在操作员级别启用分析图表。
- 已应用修复程序,以确保在 Visual Studio 中的 C# UWP 项目中正确安装包。
Windows ML NuGet 包 - 版本 1.6
- 在此处下载 NuGet
- 基于 ONNX Runtime 1.6 而构建
- 对于 CPU 和 GPU,支持面向 Windows 应用商店部署的 UWP 应用程序。
- WindowsAI Redist 现在包含一个静态链接的 C 运行时包,以提供其他部署选项。
- 较小的 API 改进:用户现在可以将 Iterable 绑定为输入和输出,并可以通过多个缓冲区创建 Tensor*。
Windows ML NuGet 包 - 版本 1.5
- 支持面向 Windows 应用商店部署的 UWP 应用程序(仅限 CPU)。
- 支持 .NET 和 .NET Framework 应用程序。
- 对 RUST 开发人员的支持 - 可查看示例和文档
- 用于其他性能控制的新 API:
- IntraopNumThreads:使能够更改线程池中用于通过 LearningModelSessionOptions 对 CPU 运算符进行运算符内执行的线程数。
- [SetNamedDimensionOverrides]((/native-apis/SetNamedDimensionOverrides.md):提供通过 LearningModelSessionOptions 将已命名的输入维度替代为具体值的功能,从而提高运行时性能。
- 支持其他 ONNX 格式图像类型注释 - 灰度 8,规范化 [0..1] 和规范化 [-1..1]。
- 通过将调试符号分隔到单独的分发包中,减少了包大小。
Windows ML NuGet 包 - 版本 1.4
- 在此处下载 NuGet
- 基于 ONNX Runtime 1.4 而构建
- 支持 ONNX 1.6 和 opset 11。
- 一般可用性和性能改进。
Windows ML NuGet 包 - 版本 1.3
- 在此处下载 NuGet
- 基于 ONNX Runtime 1.3 而构建
- 对应于 MachineLearningContract v3。
- 支持 ONNX 1.6 和 opset 11。
- 对于 CPU 执行,支持的最低版本为 Windows 8.1;对于 GPU 执行,支持的最低版本为 Windows 10 版本 1709。
- 经过认证的已知测试路径是使用 C++ 的桌面应用程序。 目前还不支持 Store 应用程序和 Windows 应用程序认证工具包。
内部版本 19041(Windows 10 版本 2004)
支持 ONNX 1.4 和 opset 9(CPU 和 GPU)
API 表面添加项:
- CloseModelOnSessionCreation:添加了新的 LearningModelSessionOptions 参数,可以对该参数进行配置以减少工作内存。
工具:
- WinMLTools 转换器支持新的 ONNX 版本和 opset
- 优化了 WinMLRunner(公开了新的性能指标)
内部版本 18362(Windows 10 版本 1903)
以前的外部测试版的所有功能和更新:
- ONNX 1.3 支持
- 支持通过后期训练权重量化来缩减模型大小。 可以使用最新版本的 WinMLTools 将模型的权重打包为 int8。
- 从 Windows 10 SDK 中移除 mlgen,改用以下 Visual Studio 扩展之一:
- Visual Studio 2017:Windows 机器学习代码生成器 VS 2017
- Visual Studio 2019:Windows 机器学习代码生成器
内部版本 18829
- 已从 Windows 10 SDK 中删除 mlgen。 请改为安装以下 Visual Studio 扩展之一,具体取决于你的版本:
- Visual Studio 2017:Windows 机器学习代码生成器 VS 2017
- Visual Studio 2019:Windows 机器学习代码生成器
内部版本 18290
- 支持的最低 ONNX 版本 = 1.2.2 (opset 7)
- 支持的最高 ONNX 版本 = 1.3 (opset 8)
- 支持通过后期训练权重量化来缩减模型大小。 可以使用最新版本的 WinMLTools 将模型的权重打包为 int8。
内部版本 17763(Windows 10 版本 1809)
- Windows 机器学习的首个官方版本。
- 需要 ONNX v1.2。
- Windows.AI.MachineLearning.Preview 命名空间已弃用,目的是支持 Windows.AI.MachineLearning 命名空间。
已知问题
- 如果模型包含序列,MLGen 会生成 IList<Dictionary<key, value>>,而不是正确的 IList<IDictionary<key, value>>,导致结果为空。 若要解决此问题,只需将自动生成的代码替换为适当的 IList<IDictionary<key, value>> 即可。
版本 17723
- 需要 ONNX v1.2。
- 支持模型推断是基于 GPU 的 F16 数据类型,以便提高性能并降低模型的内存占用量。 可以使用 WinMLTools 将模型从 FP32 转换为 FP16。
- 允许桌面应用将 Windows.AI.MachineLearning API 与 WinRT/C++ 配合使用。
注意
使用以下资源可获取有关 Windows ML 的帮助:
- 若要提出或回答有关 Windows ML 的技术问题,请在 Stack Overflow 上使用 windows-machine-learning 标记。
- 若要报告 bug,请在 GitHub 上提交问题。