对于开发深度学习模型的工程师和研究人员来说,通常会遇到的一个问题:一旦他们选择了一种框架进行开发,就必须得在这个框架下进行修改。但开发过程中,只有项目进行了一段时间后问题才会出现,这时候再想改换框架是非常困难的。
两家公司本周四宣布,建立开放式神经网络交流(ONNX)格式。该格式目前支持Facebook的Caffe2、微软的Cognitive Toolkit和PyTorch三种开源框架,允许AI开发者在此间自由切换。
为了解决这个问题,当地时间9月8日,Facebook和微软对外宣布,双方将联手建立开放式神经网络交流(?Open Neural Network Exchange?,ONNX)格式。该格式目前不仅支持Facebook的Caffe2、微软的Cognitive Toolkit和PyTorch三种开源框架,还允许人工智能开发者在此间自由切换。
Facebook在官方博客上写道:“我们会与微软一起开发了ONNX,以弥合这一鸿沟,并授权人工智能开发人员选择符合项目当前阶段的框架,并随着项目的发展,在框架之间轻松地切换。?我们会邀请更多的开发框架加入,并努力让它们支持ONNX的生态系统。?实现不同框架之间的互操作性,简化从研究到生产的路径,将有助于提高AI社区创新的速度。”
在人工智能程序的开发中,人工智能框架为开发人员提供了基础路线图,让他们知道自己的应用程序如何从这些模型提供的训练数据中进行学习。一旦应用方法正确无误,它们就会成为强大的工具。
不过,目前这个领域还是太新了,很多开发人员一开始并不一定知道哪种方法可以满足他们的需要,必须要到项目进行了很长一段时间后才有点眉目。
微软和Facebook认为,在理想状态下,ONNX将鼓励更多开发人员开始在其应用程序中开发人工智能模型,因为他们知道,在开始阶段选择了一个框架,如果遇到瓶颈,可以随时退出。
据Facebook的博客透露,Caffe2,PyTorch和Cognitive Toolkit都会在9月份发布对ONNX的支持版本,这将允许开发人员在其中一个框架中训练的模型导出到另一个框架来进行推理。同时,Facebook也希望更多的开发人员能在使用ONNX后给出反馈,帮助他们更好的完善这一系统。