Microsoft宣布DirectML作为独立API公开发布

阅读时间图标 6分钟读


读者帮助支持 MSpoweruser。如果您通过我们的链接购买,我们可能会获得佣金。 工具提示图标

阅读我们的披露页面,了解如何帮助 MSPoweruser 维持编辑团队 查看更多

超分辨率样本

今天,Microsoft宣布将DirectML公开发布,作为Win32,UWP和WSL应用程序的独立API。

DirectML 可用于全球十亿台 Windows 10 设备中的每一台,并且已经有超过一百个应用程序利用了 DirectML——每天在 Windows 上执行超过两亿次 GPU 硬件加速推理。

这些应用程序包括照片编辑应用程序,可通过AI带来新用户体验的工具,以及可利用任何DirectX 12 GPU的计算能力来帮助您轻松地为应用程序训练机器学习模型的工具。

为了让应用程序更容易利用 DirectML,Microsoft 将 DirectML 作为独立 API 发布在单个 NuGet 包中, 微软.AI.DirectML.

请参阅下面有关如何使用它的示例:

使用 Windows ML 在边缘进行模型推理

机器学习是 帮助 人们工作 更多 有效 和 直接机器学习 提供 此 性能、一致性和低级控制开发人员 需要 实现这些体验。 ˚F像 Windows机器语言 和 ONNX运行时  在 DirectML 之上博士开发的技术萃取的 it 便于 集成高性能 机器学习 进入您的应用程序许可. 

一旦成为科幻小说的领域,现在就可以使用情境感知算法来实现诸如“增强”图像之类的场景,该算法比传统的图像处理技术更智能地填充像素。 DxO 的 深度PRIME 技术说明了使用神经网络同时去噪和 去马赛克 数码影像. DXO 杠杆 Windows ML 和 DirectML 以利用性能和质量 其 用户期望。 

医疗保健是另一个以有趣的方式利用机器学习技术的领域。 考虑使用超声设备评估患者怀孕期间胎儿大脑发育的超声医师。 获取所需的平面并为此进行所需的测量具有挑战性,因为它需要超声医师的大量手动输入。 这就是 GE Healthcare 的 Voluson™ 超声设备派上用场的地方:预先训练的神经网络帮助使用超声探头的超声医师自动从体积中分割特定的成像平面并执行手动测量。 以前识别合适的平面和测量需要耗时的手动调整。 GE Healthcare 依靠 Windows ML 和 DirectML 在其广泛的超声设备上提供一致且可靠的结果。

GE Healthcare的SonoCNS帮助捕获胎儿大脑评估所需的测量值。

在性能至关重要的视频游戏中,机器学习和实时图形的交集是令人兴奋的增长领域。 在该领域的早期应用包括使用神经网络进行出色的图像放大,并填补光线跟踪图像的采样间隙。 这些技术使呈现高分辨率游戏成为可能,而无需花费高分辨率渲染。 的 DirectML超分辨率示例 展示了DirectML如何与这些实时图形密集型应用程序无缝集成。

DirectML超分辨率示例的示例图像。

机器学习是一个快速发展的领域,每天都会推出类似这样的新应用:模型用于转录音频、将手写笔记翻译成文本、制造中的故障检测等等! 自 Windows 10 版本 1903 以来,DirectML 已经为这些场景提供了所需的硬件加速支持。现在,DirectML NuGet 包可以更快地为框架和应用程序开发人员提供我们最新的硬件加速投资。 如果您的模型可以使用 ONNX 格式表示,那么您也可以使用 DirectML。

TensorFlow和Lobe的训练模型

加速推理是 DirectML 开始的地方:下一步是支持 Windows 生态系统中广泛的 GPU 的训练工作负载。 2020 年 XNUMX 月,微软 DirectML开源TensorFlow 为流行的 TensorFlow 框架带来跨供应商加速。 该项目旨在通过简单无痛的设置过程在您的 PC 上实现快速实验和训练,无论您的设备上有哪个 GPU。 微软还知道,许多机器学习开发人员依赖于仅适用于类 Unix 操作系统的工具、库和容器化工作负载,因此 DirectML 在 Windows  适用于 Linux 的 Windows 子系统。 DirectML 使您可以轻松地使用已有的环境和 GPU。

通过带有DirectML的TensorFlow,使用YOLOv4模型在视频上运行对象检测。

机器学习也越来越可以通过诸如  – 一个易于使用的应用程序,拥有将机器学习想法变为现实所需的一切。 首先,收集并标记您的图像,Lobe 将自动为您训练自定义机器学习模型。 在 Windows 上,Lobe 使用 DirectML 在各种 GPU 上提供出色的性能。 训练完成后,您可以试用您的模型并将其发送到您选择的任何平台。

DirectML入门

如果您是希望通过DirectML受益于硬件加速的机器学习的开发人员,请立即开始使用最适合您的框架,软件包或应用程序:

Windows机器语言 带有DirectML的ONNX运行时 使用DirectML的TensorFlow 直接机器学习
用例 在 Windows 上进行 ONNX 模型推理的最佳开发人员体验。 用于ONNX模型推断的跨平台C API。 在任何DirectX 12 GPU上进行硬件加速的模型训练。 一个易于使用的应用程序,具有训练自定义机器学习模型所需的一切。 通过直接访问DirectX 12资源提供高性能框架和应用程序的灵活性。
配套文档 微软文件 GitHub上 GitHub上微软文件 洛贝 GitHub上微软文件
配电系统 Windows SDK中 或NuGet: Microsoft.AI。机器学习 NuGet: Microsoft.ML.OnnxRuntime.DirectML PyPI软件包: 张量流直接 应用: Windows SDK中 或NuGet: 微软.AI.DirectML
DirectML支持 推理 推理 推理与训练 推理与训练 推理与训练

除了Microsoft更新的所有投资之外 他们的文件 与新的代码示例和学习资源一起带来比以往更多的细节,从而使DirectML与您的应用程序集成变得更加容易。 微软还为开发人员添加了新内容。 DirectML GitHub 回购:

· 直接MLX,这是一个新的C ++库,其中封装了DirectML以实现更轻松的使用,尤其是用于将运算符组合为块或什至完整模型时。

· PyDirectML,这是一个Python绑定,可以快速试验DirectML和Python示例,而无需编写完整的C ++示例。

· 样例应用 同时 C + +中 和 蟒蛇,包括使用以下内容进行实时对象检测的完整端到端实现: YOLOv4.

这篇文章只是初步介绍了机器学习和DirectML可能实现的功能,Microsoft很高兴看到开发人员下一步将采用DirectML。

AI开发人员可以关注 DirectML GitHub 有关Microsoft正在进行的投资的新资源和未来更新。

有关主题的更多信息: ai, 开发, 直接机器学习