"ML in a Minute" is our conversational series on answering machine learning questions. Have questions you want answered? Tweet at us.
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.