Microsoft & Facebook Co-Develop Interoperability of Different AI Models

Tech giants Microsoft and Facebook recently announced the launched of Open Neural Network Exchange (ONNX) – an open source ecosystem that allows different artificial intelligence (AI) models to “interoperate.”

Microsoft and Facebook each use different AI models to develop different AI products. Microsoft has Cognitive Toolkit, previously known as CNTK, while Facebook supports two AI models, PyTorch and Caffe2. AI developers can choose from Cognitive Toolkit, PyTorch and Caffe2 for their AI project.

According to Joaquin Quinonero Candela, Director of Applied Machine Learning at Facebook, organizations may choose one AI model at the start of a project. Many times though, in the course of the project, engineers and researchers may decide to use another AI model. When organizations decide to switch from one AI model to another, engineers and researchers have to resort to a “range of creative workarounds to cope” such as translating models by hand, the Director of Applied Machine Learning of Facebook said.

“We developed ONNX together with Microsoft to bridge this gap and to empower AI developers to choose the framework that fits the current stage of their project and easily switch between frameworks as the project evolves,” Candela said. “Caffe2, PyTorch, and Cognitive Toolkit will all be releasing support for ONNX in September, which will allow models trained in one of these frameworks to be exported to another for inference.”

Interoperability among different AI models, Candela said, will speed up AI innovation.

According to Eric Boyd, Corporate Vice President (CVP) for AI Data and Infrastructure at Microsoft, the failure among AI models to interoperate “leads to inefficiencies from not using the right framework or significant delays as developers convert models between frameworks.” The CVP for AI Data and Infrastructure at Microsoft added, “Frameworks that use the ONNX representation simplify this and enable developers to be more agile.”

ONNX is currently limited to these AI models: Caffe2, PyTorch, and Cognitive Toolkit. The initial version of the ONNX code and documentation are now available on GitHub. Aside from the above-mentioned 3 AI models, AI developers also used other AI models such as Apple’s CoreML and Google’s TensorFlow. These AI models have yet to interoperate.