加载中…
个人资料
微软中国
微软中国
  • 博客等级:
  • 博客积分:0
  • 博客访问:7,049
  • 关注人气:1,998
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

ONNX合作伙伴研讨会首次在中国举行微软全力支持开放互操作人工智能发展

(2018-11-27 12:05:05)
ONNX合作伙伴研讨会本周在北京微软大厦举行。这是ONNX开源项目成立以来,首次在中国举办落地活动。微软与本土合作伙伴一起,共同分享了ONNX项目的最新进展。

ONNX(Open Neural Network Exchange)“开放神经网络交换”项目是由微软共同发起、旨在为人工智能互操作及创新研究提供全面支持的开放生态系统,其目标是让人工智能更加触手可及,并为更多人创造价值。这一开放标准可以用来表示不同的机器学习模型,让人工智能开发者根据任务的需要选择最合适的开发框架,并让硬件厂商进行最佳优化。

微软项目总经理Venky Veeraraghavan

微软希望能充分发挥人工智能的巨大潜能,帮助增强人类能力。但开发人工智能,特别是构建深度学习模型并非易事,甚至对于很多数据专家来说,这都是专业性要求极高、令人望而生畏的工作。微软相信,我们可以通过建设一个开放的人工智能生态系统,让每一位开发者,在任何平台上,利用任何语言,发挥出人工智能的最大潜力,让人工智能触手可及,并且真正为人们创造价值。为了实现这一目的,微软提供了多样化的第一方平台和工具,例如Azure机器学习服务,它能极大简化和加速构建、训练部署机器学习模型的过程。与此同时,微软也在敞开胸怀,与其它组织积极分享我们的愿景,共同助力人工智能社区的健康发展。

ONNX,快速成长的开放生态系统
去年9月,微软宣布与Facebook、AWS共同创立ONNX开放神经网络交换格式。短短一个月内,这个开放人工智能生态系统便迎来了AMD、ARM、华为、IBM、英特尔、高通等行业领军企业的加盟。目前,已经有超过20家全球企业宣布支持ONNX。
 
微软人工智能平台团队首席项目经理Prasanth Pulavarthi

“微软在Azure上为开源机器学习框架提供了一等一的支持,同时我们也在与其它厂商展开广泛合作,共同推进人工智能社区的发展。”微软人工智能平台团队首席项目经理Prasanth Pulavarthi表示,“微软携手Facebook和AWS共同发起了ONNX,通过支持多种机器学习模型,它将为一个开放生态打造坚实基础,让开发者和数据科学家自由选择适合任务需求的框架,让框架设计者更专注于增加创新能力,让硬件厂商更好地进行优化设计。”

ONNX是一个开源项目,它带来的互操作性可以让各种开发创意更快速地投入生产环境。利用ONNX,数据科学家可以为其工作选择最适合的框架,而开发者只需花费更少的时间就能训练出适合生产环境的机器学习模型,并且将其部署到云端或者是边缘。目前,在多种人工智能开发框架中都能创建ONNX模型,包括PyTorch、Chainer、微软认知工具包(CNTK)、MXNet、ML.Net、TensorFlow、Keras、SciKit-Learn,这个列表还在不断增加。此外,为ONNX模型实现可视化和加速的开发工具生态系统也已初具规模,已经出现了针对典型场景预先训练的ONNX模型。

“中国是全球最具创新活力的市场之一,这里汇聚了众多才华横溢的人工智能开发者和数据科学家,还有大力支持ONNX的企业级合作伙伴。”微软中国人工智能产品部主管唐猛表示,“ONNX合作伙伴研讨会第一次来到中国让我们非常兴奋,我们希望借此机会充分展示这一开放互操作人工智能生态系统的优势,并真正帮助中国的开发者和数据科学家发掘人工智能潜力,共同赢得数字化转型的发展机遇。”

微软全力支持ONNX发展:ONNX Runtime和ONNX.JS

微软不但是ONNX的联合创始人,同时也是全力支持ONNX发展的顶级技术贡献者。例如,Windows机器学习(WinML)为ONNX提供了操作系统层面的支持,可利用任何支持DirexctX的GPU为其提供硬件加速,现在从服务器到物联网的各个版本的Windows都能提供这项功能。

ONNX Runtime现已开放预览,这是专为ONNX格式机器学习模型设计的高性能推理引擎。ONNX Runtime兼容ONNX 1.2版本,自带支持CPU和GPU的Python包,可在Azure机器学习服务或任何运行Ubuntu 16的Linux设备上进行推理运算。

ONNX Runtime的发布进一步扩展了微软对ONNX的支持,让ONNX模型推理可以在多种平台和设备上运行。ONNX Runtime全面覆盖和支持ONNX定义的所有运算符。出于对扩展性与性能表现的特别关注,ONNX Runtime能为一系列不同平台和硬件的组合提供多种定制化的加速器,从而保证为推理运算提供最佳的整体性能表现。

插件式的执行者界面意味着ONNX Runtime可以快速适应软件和硬件的改进。执行者界面是硬件加速器向ONNX Runtime报告其性能的标准方式。英特尔、英伟达都在积极将ONNX Runtime整合到他们的硬件加速器中,目前英特尔的MKL-DNN、nGraph编译器以及英伟达优化的TensorRT推理引擎都已完成整合。

ONNX.JS让web开发者可以直接在浏览器中运行训练好的ONNX模型,不但能够减少服务器到端的通信需求、保护用户隐私,还提供了免安装、跨平台的浏览器内置机器学习体验。ONNX.JS支持CPU和GPU运行,可以借助一系列优化技术减少CPU和GPU间的数据传输,减少GPU处理的循环次数,从而将性能推向最大化。
 
利用Azure简化人工智能开发
在全力支持ONNX建设开放互操作人工智能生态系统的同时,微软也在全力将Azure打造成最佳人工智能云平台,从预先训练好的模型到帮助构建模型的云服务,Azure提供了完善的机器学习平台。

为了简化语音、视觉、语言相关机器学习解决方案的开发,微软在认知服务中提供了一系列强大的预先训练模型。微软在云端提供了多样化的机器学习服务,从Azure DatabricksAzure机器学习服务机器学习虚拟机,可以满足不同规模的使用需求。为了帮助开发者更快速地构建和训练模型,微软还提供了大规模GPU集群上的分布式深度学习能力。硬件(FPGA)加速模型能以很低的成本提供高速的图像分类和识别功能。一旦完成了模型的训练,开发者可以自由选择将其部署到本地、云端,或者是包括离线环境在内的边缘环境中。

在不久前召开的微软Ignite 2018大会上,微软宣布Azure机器学习服务的一些新服务已经开启预览。
· 自动机器学习和超参数调整能够更快速地分辨合适的算法、功能和机器学习管道,从而加速模型开发的成功率。
· 分布式深度学习可以利用大规模托管GPU集群更快速地开发深度学习方案。
· 硬件加速推理可将强大的FPGA用于高速图像分类和识别场景。支持的模型包括ResNet 50、ResNet 152、VGG-16、SSD-VGG,以及可以用自有数据训练的DenseNet-121。
· 全新的Python SDK可以从Visual Studio Code、Visual Studio、PyCharm、Azure Databricks 记事本或者Jupyter记事本等Python开发环境中,直接连接Azure机器学习服务。
· 模型管理功能可以利用整合到持续开发/持续部署(CI/CD)管道中的模型和镜像注册表,来管理托管的容器化模型。

 “借助Azure机器学习服务,”澳大利亚保险巨头TAL公司的创新总经理Dan Talor表示,“我们成功将机器学习模型的训练时间从原来的的两个月,减少到了只要几个小时。”

关于ONNX的更多信息,请访问其官方网站(https://onnx.ai/)。关于Azure积极学习的最新进展,请访问(https://azure.microsoft.com/zh-cn/services/machine-learning-service/)。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有