Skip to content

Releases: fdwr/Onnx2Text

20240624

25 Jun 01:16
Compare
Choose a tag to compare
  • (bug fix) When printing the model information operator list, ignore empty domain names. Otherwise it appears as ".Conv" instead of "Conv", because some models include a domain as an empty string rather than simply eliding the domain altogether like most models do.

20240606

06 Jun 22:57
Compare
Choose a tag to compare

20230609

09 Jun 22:46
Compare
Choose a tag to compare
  • For -information, display the opset domain/version and graph transputs name, type, and dimensions.
  • Cast tensor values if an explicit -datatype is passed (e.g. source tensor is float16 and you want to upcast it to float32).
  • Support bfloat16 tensor data type. Add some short aliases for data type names (e.g. f32 for float32)
  • Support scale and normalizeValues parameter with float16/bfloat16.

20221021

21 Oct 20:35
Compare
Choose a tag to compare
  • Fix console output issue on Windows 11 when leaving off the output parameter would not print to the screen (it actually dumped into a file called con.txt). It now requires the output name parameter, but you can still type "con" or "con:" as an output name to print to the console. e.g. Onnx2Text input.onnx con:
  • Add small testData directory with file types: .onnx, .prototxt, .npy, .png, .onnxtensor.

20220630

01 Jul 05:04
Compare
Choose a tag to compare
  • Rename project to Onnx2Text which is clearer in intention (as the old name (ConvertOnnxModel was too generic, given it didn't convert between model types like PyTorch or TensorFlow).
  • Export ONNX model to GraphViz .dot file (you can then use dot.exe output.dot -Tpng -O or -Tsvg).

image

20220518

19 May 04:36
Compare
Choose a tag to compare
  • Update ONNX protobuf for ONNX 1.11 (includes optional tensors).
  • Add -scale, -inversescale, -normalizevalues parameters.
  • Treat .pb file as tensor by default.
  • Add -information switch for more detailed info.
  • Add .bmp to list of input image types.

20211005

06 Oct 04:09
Compare
Choose a tag to compare
  • Add scalar 0D support to -dimensions option via (), useful for a single value CSV input to ONNX/NumPy tensor.

20210707

08 Jul 06:38
Compare
Choose a tag to compare
  • Update zeromodelvalues parameter to avoid zeroing tiny 1D tensors (<= 8 elements) used by Shape/Expand/ConstantOfShape, which causes shape inference errors otherwise. All other large tensors, like convolution weights, are still zeroed. This is a reasonable enough heuristic - a more advanced algorithm would identify Shape/Expand/ConstantOfShape nodes and backtrace any operators whose outputs fed into their shape tensor (such as a Mul or Where statement) and also should not have their tensors zeroed, as that could produce an invalid shape.

20210425

25 Apr 09:46
Compare
Choose a tag to compare
  • Fix NumPy tensor reading for rare MSB-first NumPy tensors (I've never encountered any real ones to test with, since the majority of x86 compatible machines where ML is performed are logical LBS-first endian).
  • Fix issue reading past end of header dictionary which would return an error and fail to load the file. <sarcasm>Thank you MSVC for treating characters from 0 to 255 like -128 to 127 - what a ridiculous default behavior, sign extending char like 'Ä' as if it was 0xFFFFFFC4, given that code points are always unsigned 🤦‍♀️).</sarcasm>

20201105

06 Nov 00:47
Compare
Choose a tag to compare
  • Clarify usage in readme and help output with more explanatory usage examples.
  • Add -zeromodelvalues option to clear all the values in a model's tensors to zeros. This can be useful if you want to share a model with someone but don't want to expose your trained data (which might have IP).
  • Hide "complex64" and "complex128" types for now since they don't do what is expected (they only use the real component, stripping imaginary).