chevron_LEFT
Glossary

ONNX (Open Neural Network Exchange)

ONNX, or Open Neural Network Exchange, is an open-source format designed to facilitate the interoperability between different deep learning frameworks. Created by Microsoft and Facebook, ONNX provides a common framework for representing machine learning models, enabling models to be easily transferred and used across different platforms without needing to be retrained or significantly modified.

Key features of ONNX include:

  1. Interoperability: ONNX allows machine learning models to be shared between different frameworks, such as PyTorch, TensorFlow, Microsoft Cognitive Toolkit (CNTK), and others. This flexibility enables developers to build and train models in one framework and deploy them in another, streamlining workflows and reducing lock-in to a specific tool.
  2. Cross-Platform Compatibility: ONNX models can be deployed across various environments, from cloud servers to mobile devices and edge computing systems. This makes it easier for developers to deploy trained models in different scenarios, such as mobile apps or IoT devices, using a common representation.
  3. Support for Deep Learning and Traditional Machine Learning Models: While initially developed for deep learning, ONNX has grown to support both deep learning and traditional machine learning models, broadening its applicability to a variety of AI tasks.
  4. Extensibility: ONNX supports the addition of custom operators, making it possible for users to extend the functionality of the models and support operations that may not be natively available in the core ONNX specification. This allows developers to take advantage of advanced or specialized features in their frameworks while still using the     ONNX format.
  5. Model Optimization: ONNX also supports ONNX Runtime, a high-performance engine for optimizing and executing ONNX models across multiple platforms. ONNX Runtime provides hardware-accelerated execution of models, which is beneficial for reducing latency in inference tasks, particularly in production environments.
  6. Broad Industry Adoption: Companies and platforms like Microsoft, Amazon Web Services (AWS), NVIDIA, IBM, and Stream Analyze support ONNX, further expanding its use in both research and production. Its growing ecosystem includes toolkits and libraries for model conversion, deployment, and optimization.


Use cases for ONNX include:

  • Model Deployment: ONNX enables efficient deployment of machine learning models across various platforms, such as cloud services, mobile devices, or edge devices, without the need to retrain or redevelop the model for each specific platform.
  • Model Sharing and Collaboration: Researchers and developers can share pre-trained models in ONNX format, allowing others to use the same model in different frameworks or customize it for specific applications.
  • Optimization for Inference: By using ONNX Runtime, models can be optimized for faster inference, reducing computation time and improving performance, particularly for real-time applications like speech recognition, image classification, and natural language processing.


In summary, ONNX provides a versatile, open standard for representing machine learning models, enabling seamless transitions between different frameworks and platforms. This enhances model portability, streamlines deployment, and fosters collaboration within the AI and machine learning community.

Contact us

We are ready to help you: send us a message to know more about Stream Analyze or to book a demo.

Get insights and stay up-to-date with the latest Edge AI news.

By signing up you agree to receive news and promotional messages from Stream Analyze. You can unsubscribe any time.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form. Please try again.