@liuhui0803
2018-03-21T05:51:27.000000Z
字数 1613
阅读 1572
Windows10
人工智能
数据科学
深度学习
机器学习
摘要:
下一轮Windows 10更新为Windows应用程序与人工智能功能的集成提供了新途径。届时,开发者将能把预先训练好的深度学习模型转换为ONNX框架并集成到Windows应用程序中。
正文:
下一轮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正在努力跑完人工智能之路的最后一公里。
作者:Alexis Perrier,阅读英文原文:Microsoft Embeds Artificial Intelligence in Windows 10 Update