Towards a Neural Network Exchange

September 8th, 2017 by

Microsoft and Facebook have recently announced an open-source project that seeks to create a shared representation for neural networks across different programming frameworks. The model, called the Open Neural Network Exchange (ONNX), is expected to make it possible to share models across the Cognitive Toolkit, PyTorch, and Caffe2. The project seeks to solve one of the current key issues in machine learning – the abundance of different frameworks to set up and execute neural networks and other machine learning systems. All of these frameworks are different, and they are not interoperable. Using ONNX, it is possible to export a trained model created with PyTorch and use it in Caffe2 for inference. The system traces how a neural network in one of the frameworks executes at runtime, and then uses that information to create a computation graph that can be moved to another framework. ONNX is not yet compatible with the TensorFlow and Apache MXNet machine learning frameworks.