Skip to content

2.0.22

Choose a tag to compare

@PINTO0309 PINTO0309 released this 24 Feb 13:39
· 2121 commits to main since this release
be56218

2.0.22

Summary

This PR improves flatbuffer_direct lowering coverage and removes redundant layout conversion chains.

1) Builtin lowering coverage

  • Add ONNX InstanceNormalization lowering to builtin TFLite ops (MEAN/SUB/MUL/ADD/SQRT/DIV chain)
  • Add ONNX Dropout lowering (inference-time no-op + optional mask generation path)
  • Register/import new builders and validators in dispatch registry

2) Reshape/shape robustness

  • Allow Reshape dynamic shape input (INT32/INT64, rank-1) in validation/lowering
  • Add static-template inference for dynamic reshape patterns built from CONCAT + SHAPE
  • Avoid clobbering dynamic reshape options in runtime-shape cases

3) Layout/transpose optimization improvements

  • Add/extend transpose-chain rewrites including:
    • transpose_slice_logistic_concat_reshape_tail NHWC rewrite
    • ShuffleNet-style transpose/shuffle chain rewrites
    • Pre-ADD / MUL-const / reshape-suffix rewrite refinements
    • New transpose_pre_unary_reshape_transpose_suffix rewrite
    • New transpose_logistic_muladd_prepost rewrite
  • Re-run optimization sequences in recovery sweeps where needed

4) Shape reconciliation safety

  • Prevent unsafe static rewrite of dynamic SLICE begin/size when input dimensions are dynamic

5) Tests and docs

  • Expand tests/test_tflite_builder_direct.py with new coverage for:
    • Dropout, InstanceNormalization
    • Dynamic-slice reconciliation safety
    • New transpose optimization patterns
  • Update README op coverage table and container/version references
  • Bump version to 2.0.22 and sync dependency/lock updates (sne4onnx/sng4onnx 2.0.1)

Validation

  • pytest -q tests/test_tflite_builder_direct.py -k "transpose_pre_unary_reshape_transpose_suffix_nhwc_chain_optimized or transpose_logistic_muladd_prepost_nhwc_chain_optimized"
  • pytest -q tests/test_tflite_builder_direct.py -k "transpose_add_reshape_transpose_suffix_optimization or transpose_mulconst_add_reshape_transpose_suffix_optimization or transpose_pre_unary_reshape_transpose_suffix_nhwc_chain_optimized or transpose_pre_add_mul_add_prelu_nhwc_chain_optimized or transpose_logistic_muladd_prepost_nhwc_chain_optimized"
  • Manual conversion check:
    • onnx2tf -i shadowformer_istd_160x240_split.onnx -cotof -tb flatbuffer_direct --report_op_coverage

What's Changed

  • feat(flatbuffer_direct): add builtin coverage and reduce transpose chains by @PINTO0309 in #884

Full Changelog: 2.0.21...2.0.22