看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!
下一轮 Windows 10 更新为 Windows 应用程序与人工智能功能的集成提供了新途径,将直接令数以亿计的个人电脑、平板、IoT 边缘设备等 Windows 设备受益。
新版 Windows ML 平台可供开发者直接通过 Visual Studio 将预先训练好的深度学习模型与自己的应用程序集成,在导入 VS 工具前,模型必须转换为 Open Neural Network Exchange( ONNX )格式。
ONNX 是一种开源的机器学习框架,由微软和Facebook 在2017 年9 月发布,随后AWS 也加入了这一项目。ONNX 使得不同神经网络框架可以相互移植,将使用诸如 Pytorch 、 Apache MxNet 、 caffe2 或 Microsoft Cognitive Toolkit( CNTK )等工具训练的模型能够转换为 ONNX 格式,并应用在 Windows 应用程序中。包括 NVIDIA、Intel、Qualcomm 以及 AMD 在内的众多 Windows 硬件供应商已经开始支持该格式,并发布了面向 ONNX 优化的硬件。
微软的很多应用程序和服务中均已广泛应用了人工智能技术,例如图像和面容处理、搜索结果相关性、语音识别以及数据安全等。这些 AI 功能依赖在云端训练的模型,需要耗费密集的计算资源。然而对于云端 API 的以来会导致产品功能在使用过程中遇到延迟,让用户产生与数据隐私有关的顾虑,并且会增加设备能耗。
借助 Windows ML 与 ONNX 的配合,需要耗费大量计算能力的模型训练过程依然可以放在云端进行,但推理和计算操作可以直接在应用程序中进行。这样便可脱机使用,可降低能耗,避免需要外传私密数据,同时由于延迟大幅降低还可实现实时处理。在构建模型的过程中,开发者和数据科学家依然可以根据习惯选择自己最适应的框架,随后可将训练好的模型转换为 ONNX 格式,并将转换后的模型集成到 Windows 应用程序中。
据 Gartner 的调研,设备上的人工智能能力,其潜在用例主要将围绕个人助理、欺诈检测、设备资源优化或虚拟现实等。嵌入式的人工智能能力还能让需要直接使用用户私密数据的应用程序,如医疗健康诊断、个性化书写工具、生物特征身份验证等工具获益。
Windows ML 并非仅限深度学习模型,同样可用于导入来自其他框架的经典机器学习模型,例如 Core ML 、 Scikit-Learn 、 XGBoost 以及 LibSVM 。
Apple 也按照类似方式提供了 CoreML 模型格式。CoreML 是一种 Python 软件包,可将多种类型的模型转换为 CoreML 模型格式,并集成到 macOS 和 iOS 应用中。CoreML 更倾向于经典机器学习模型,例如Scikit-Learn、LIBSVM 和XGBoost,并且仅支持Caffe V1 和Keras 1.2 这两个深度学习框架。此外Google 也在通过 TensorFlow Lite 框架将机器学习能力带到运行Android 的移动设备上。
虽然TensorFlow 和Core ML 并不兼容ONNX,但社区项目提供的 ONNX-TensorFlow 以及 ONNX-CoreML 库可分别将相应的模型转换为 ONNX 格式。
人工智能技术的应用范围正在飞速增加,而这一趋势与将一定程度的机器学习能力嵌入IoT 设备以改善效率的做法不谋而合。通过将人工智能能力直接推进到距离最终用户更近的设备和应用程序中,微软、Google 和Apple 正在努力跑完人工智能之路的最后一公里。
阅读英文原文: Microsoft Embeds Artificial Intelligence in Windows 10 Update
评论