What is ONNX?
Published Aug 1, 2021 • 1 min read

"ML in a Minute" is our conversational series on answering machine learning questions. Have questions you want answered? Tweet at us.

Be sure to subscribe to our channel: https://bit.ly/rf-yt-sub

What is ONNX?

ONNX is an intermediary machine learning framework used to convert between different machine learning frameworks. So let's say you're in TensorFlow, and you want to get to TensorRT, or you're in PyTorch, and you want to get to TFLite, or some other machine learning framework. ONNX is a good intermediary to use to convert your model as you're going through these different machine learning frameworks.

ONNX has worked really hard to basically implement all kinds of different neural network functions and different functionalities in these machine learning models, so we can support this cross functionality to have baseline, common framework to convert into.

Any Pitfalls when Working with ONNX?

One thing is that as ONNX (an open source tool) builds, they're building new functions into it. They're trying to keep track of all the new research that's being done in machine learning, but these versions can fall behind and you can, you know, have one version of TensorFlow, which is not compatible with one version of ONNX and you have to be upgrading and downgrading these versions to try to find the pathway through them all or maybe even editing your model.

Liked this? Be sure to also check out the computer vision glossary.

Cite this Post

Use the following entry to cite this post in your research:

Joseph Nelson. (Aug 1, 2021). What is ONNX?. Roboflow Blog: https://blog.roboflow.com/what-is-onnx/

Discuss this Post

If you have any questions about this blog post, start a discussion on the Roboflow Forum.

Written by

Joseph Nelson
Roboflow cofounder and CEO. On a mission to transform every industry by democratizing computer vision. Previously founded and sold a machine learning company.