
onnxcustom: custom ONNX#

Examples, tutorial on how to convert machine learned models into ONNX, implement your own converter or runtime, or even train with ONNX / onnxruntime.
The function check or the command line python -m onnxcustom check
checks the module is properly installed and returns processing
time for a couple of functions or simply:
import onnxcustom
onnxcustom.check()
The documentation also introduces onnx, onnxruntime for inference and training. The tutorial related to scikit-learn has been merged into sklearn-onnx documentation. Among the tools this package implements, you may find:
a tool to convert NVidia Profilder logs into a dataframe,
a SGD optimizer similar to what scikit-learn implements but based on onnxruntime-training and able to train an CPU and GPU,
functions to manipulate onnx graph.
Installation of onnxruntime-training
onnxruntime-training is only available on Linux. The CPU can be installed with the following instruction.
pip install onnxruntime-training --extra-index-url https://download.onnxruntime.ai/onnxruntime_nightly_cpu.html
Versions using GPU with CUDA or ROCm are available. Check download.onnxruntime.ai to find a specific version. You can use it on Windows inside WSL (Windows Linux Subsystem) or compile it for CPU:
python tools\ci_build\build.py --skip_tests --build_dir .\build\Windows --config Release --build_shared_lib --build_wheel --numpy_version= --cmake_generator="Visual Studio 16 2019" --enable_training --enable_training_ops
GPU versions work better on WSL, see Build onnxruntime on WSL (Windows Linux Subsystem). onnxcustom can be installed from pypi.