The update of the exchange format for machine learning models enables more selective loading of schemas and now also supports MobileNetV3 and YOLOv5.
Dating back to Facebook and Microsoft and now by the Linux Foundation as part of an LF AI & The Open Neural Network Exchange (ONNX) format supported by the Data Foundation Graduate Project is now available in version 1.9. Among other things, the release provides more selective loading of schemas and supports other models for object recognition – including MobileNetV3 and YOLOv5.
More selective loading of schemas
To reduce memory requirements at runtime, the ONNX 1.9 more flexible options when loading schemes of certain operator set versions. As an extension to RegisterOnnxOperatorSetSchema, a version can be defined via opset_version, whereby only the last, previously used version is then kept. The loaded versions can be traced using a status variable.
HardSwish and Trilu have been added as new operators, and the extended type support now includes uint8, int8, uint16 and int16. In addition, onnx.OnnxParser is available to users as a new parser for a textual syntax of ONNX models. ONNX 1.9 also has revised tools for dividing several GBytes of large models into separate files.
Updated to Python 3.9
Around half a year after the release of ONNX 1.8, ONNX team updated the software under the hood to Python 3.9 in all release pipelines, while version 3.5 of the programming language is being dropped. The binary packages for Linux and macOS should be more compact in the future. All other details and innovations for the current version ONNX 1.9 can be found in the release notes on GitHub. Interested parties can find further information on the project and its operators on the ONNX website.