时间:2017-11-17 来源:互联网 浏览量:
安妮 编译整理
量子位 出品 | 公众号 QbitAI
今天,亚马逊AWS宣布加入微软和Facebook的“框架联盟”,ONNX开始支持Apache MXNet了。
目前,ONNX总共支持微软的CNTK、Facebook的Caffe2、PyTorch和亚马逊的MXNet这四种框架,开发人员可灵活地选择其中一种框架构建和训练模型,再导入其他框架中完成推理任务。
框架间已经形成抱团形势,这是想三家结盟挑战TensorFlow霸权?
何为ONNX今年9月,Facebook和微软在各自博客中发布了一种“开放神经网络转换”工具,它能将一种框架训练的模型转换成另一种框架所需的格式,比如实现Pytorch训练模型到Caffe2的转换,让开发者更灵活地选择框架。
不错,这个工具就是ONNX。
ONNX是Facebook建立开放生态的第一步,但这第一步也并不好走。据Keras作者、Google深度学习研究院François Chollet上月公布的GitHub上深度学习框架排名情况来看,目前使用人数最多的框架还是Google的TensorFlow,MXNet和PaddlePaddle在框架领域的地位都举足轻重。
△ 深度学习框架GitHub综合指数
ONNX-MXNetONNX-MXNet是一个将ONNX深度学习模型导入到Apache MXNet中的开源Python包。作为一个功能全面的深度学习框架,MXNet提供了跨语言的API,如Python、Scala和R等。
在ONNX的支持下,开发人员可以在其他框架上构建和训练模型。利用其优化的可扩展的引擎,可以之后将模型导入到MXNet中运行,继而进行推理等任务。
这次亚马逊收编的MXNet加入ONNX联盟,是“开放生态”愿景的一次前进。Facebook在官方博客上表示,ONNX的合作伙伴和社区将继续开发ONNX和生态系统。
“我们将添加更多的互操作性,扩展ONNX-MXNet功能,并将ONNX引入MXNet的核心API。我们的任务是让开发人员有机会在所有框架中自由地工作。”Facebook在博客中写着。
MXNet的加盟其实也是开发人员的福音,AI框架间的互操作性越大,从研发到产品化所消耗的时间就越容易缩短。研究的商业化进程就越快。
小插曲其实,为了应对深度学习框架的多样化,亚马逊在上个月还推出了一个端对端深度学习编译器NNVW compiler。
“支持将包括mxnet、Pytorch、caffe2、coreml等在内的深度学习模型编译部署到硬件上并提供多级别联合优化。速度更快,部署更加轻量级。支持包括树莓派,服务器和各种移动式设备和cuda,opencl,metal,javascript以及其它各种后端。”项目作者之一陈天奇曾在微博上这样介绍NNVM。
相关资料ONNX-MXNet代码:
https://github.com/onnx/onnx-mxnet
官方使用示例:
https://github.com/onnx/onnx-mxnet/blob/master/onnx_mxnet/tests/test_super_resolution.py
ONNX项目地址:
http://onnx.ai/
AWS博客介绍:
https://amazonaws-china.com/cn/blogs/ai/announcing-onnx-support-for-apache-mxnet/
Facebook博客介绍:
https://research.fb.com/amazon-to-join-onnx-ai-format-drive-mxnet-support/
微软博客介绍:
https://www.microsoft.com/en-us/cognitive-toolkit/blog/2017/11/framework-support-open-ai-ecosystem-grows/
— 完 —
诚挚招聘
量子位正在招募编辑/记者,工作地点在北京中关村。期待有才气、有热情的同学加入我们!相关细节,请在量子位公众号(QbitAI)对话界面,回复“招聘”两个字。
量子位 QbitAI · 头条号签约作者
վ'ᴗ' ի 追踪AI技术和产品新动态