* [TF FE] Handle optional attributes for Convolutional operations (#12230)
* [TF FE] Handle optional attributes for Convolutional operations
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* Apply code-style rules
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* [TF FE] Implement LinSpace and BatchMatMul translators (#12271)
* [TF FE] Implement LinSpace and BatchMatMul translators
It helps to convert STN model (from e2e testing) using TensorFlow frontend
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* Fix BatchMatMul translator
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* Fix LinSpace operation translator
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* Apply code-review feedback
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* Apply code-style rules
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* Apply code style rules
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* [TF FE] Fix conversion of NetVLAD model (#12328)
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* [TF FE] Implement translators for TensorFlow ConvBackpropInput operations (#12356)
* [TF FE] Implement ConvBackPropInput translators
Now the translators supports dynamic input_sizes attribute and different padding modes
including EXPLICIT mode
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* Fix clang-style issue
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* Fix code-style issue
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* Fix code-style issue
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* Apply code-review feedback and fix build issues
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* Apply code-review feedback: check for input size
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* Fix retrieving explicit_padding attribute
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* Fix code style
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* [TF FE] Fix StridedSlice translator for new_axis vector size longer input rank (#12442)
* [TF FE] Fix StridedSlice translator for new_axis vector longer input rank
Currently, new_axis vector is cut by input rank that is correct and leads to the loss of new axes.
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* Use int64 type in mask_to_vector function
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* [TF FE] Refactor translators for Conv2d and Conv3d (#12444)
It allows to convert CNN-Transformer model. Padding was previously incorrect.
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* [TF FE] Implement conversion for Attention OCR model (#12428)
* [TF FE] Implement conversion for Attention OCR model
The following scope of work is done to make Attention OCR convertable:
1. Refactored translators for BiasAdd, Slice, and ArgMax operations. Add translation for StopGradient operation.
2. The previous traversing algorithm to compute topological sorted nodes list was incorrect. Now it is implemented based on topologically_sorted function from core/graph_util.hpp.
3. The unsupported data types are now preliminary converted to undefined type for the purpose of to have them cut off.
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* [TF FE] Refactor MaxPool operation translator for xj_feature model (#12485)
* [TF FE] Refactor MaxPool operation translator for xj_feature model
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* Correct MaxPoolV2 since it has three inputs
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
Signed-off-by: Kazantsev, Roman <roman.kazantsev@intel.com>
* Moved and merged mo/ and extensions/ into openvino/tools/mo
* edited imports
* edited docs to use mo script from entry_point
* edited MO transformations list loading and setup.py
* changed full path -> 'mo' entry point in docs (leftovers)
* corrected package_BOM
* updated resolving --transformation_config in cli_parser.py
* pkgutil-style __init__.py, added summarize_graph into entry points
* updated DOCs for the new --transformations_config
* fix select
* updated install instructions, fixed setup.py for windows and python_version < 3.8
* fixed typo in requirements.txt
* resolved conflicts
* removed creating custom __init__.py from setup.py
* corrected folder with caffe proto
* corrected loading user defined extensions
* fix openvino.tools.mo import in serialize.py
* corrected layer tests for new namespace
* fix in get_testdata.py
* moved model-optimizer into tools/
* renamed import in POT
* corrected mo.yml
* correct CMakeLists.txt for the newest tools/mo
* corrected find_ie_version.py
* docs and openvino-dev setup.py update for the newest tools/mo
* miscellaneous leftovers and fixes
* corrected CI files, pybind11_add_module in CMakeLists.txt and use of tools/mo path instead of tools/model_optimizer
* add_subdirectory pybind11 for tools/mo
* POT path fix
* updated setupvars.sh setupvars.bat
* Revert "updated setupvars.sh setupvars.bat"
This reverts commit c011142340.
* removed model-optimizer env variables from setupvars
* updated CMakeLists.txt to pack MO properly with tests component
* corrected left imports, corrected loading requirements for layer tests
* mo doc typo correction
* minor corrections in docs; removed summarize_graph from entry_points
* get_started_windows.md, MonoDepth_how_to.md corrections, mo path corrections
* add subgraph instead of constant with fixed shape to allow model have undefined batch
* updated transformation (not checked yet)
* changed ReverseV2ToReverseSequence to support dynamic shapes/reshape;
added transformation to reverse_tensor_iterator to support new subgraph got from ReverseV2ToReverseSequence
* remove changes that should not be on this branch
* added tests;
fixed old transformation
* added delete of reversesequences to avoid run of transformation twice
* fixed pattern check for case with dynamic value for input of reversesequence
* Revert "fixed pattern check for case with dynamic value for input of reversesequence"
This reverts commit 0c04164e
* Revert "added delete of reversesequences to avoid run of transformation twice"
This reverts commit fcb7de9c
* reversed changes in reverse_tensorr_iterator for Squeeze case;
update reverse_tensor_iterator with shapeof subgraph
added permutations for attributes to pass layer test
* minor fix for dynamic shape
* updated test;
fixed backward compatibility in reverse_tensor_iterator transformation
* revew comments fixed:
added comments;
refactoring done;
fixed framework name saving for rank = 1
* minor review fixes
* small fix
* MO update for MaxPool-8
* using attrs in op constructor
* remove pads_value attr and pad fusing
* added axis and index_element_type parameters
* updated mo maxpool-8
* added maxpool-8->maxpool-1 transformation, disabled Pad to MaxPool fusing
* added remove_values_output to pooling extractors
* moved remove_values_output attribute to pooling infer function
* fixed ir_comparator tests
* disabled pad to maxpool fusing test
* added downgrade transformation test
* downgrade transformation update
* updated ir reader and tf pooling layer tests
* updated onnx pooling layer tests and MO infer unit test
* updated ir reader extender
* uncommented layer tests code
* disabled MaxPool-8 python binding test
* comment resolving, removed PadMaxPool fusing
* removed test
* downgrade transformation fix, MO codestyle changes
* removed axis check from downgrade transformation
* mark max_pool_test as xfail
* updated downgrade transformation test
* using OPENVINO_RTTI
* Added RandomUniformFusion transformation.
* Extended transformations for case with Convert, extended transformations for general min and max value case.
* Set to const unchanged variables.
* Apply suggestions from code review
Co-authored-by: Gleb Kazantaev <gleb.nnstu@gmail.com>
* Reformat code, small corrections.
* Added const shape checks.
* Fixed transformation for case of different const ranks.
* Added type checks.
* Apply suggestions from code review
Co-authored-by: Gleb Kazantaev <gleb.nnstu@gmail.com>
* United RandomUniformMulFusion and RandomUniformAddFusion to single transformation.
* Added negative tests.
* Used get_constant_from_source().
* Moved transformation to common fusions.
* Added const refs.
* Update inference-engine/src/transformations/src/transformations/common_optimizations/random_uniform_fusion.cpp
Co-authored-by: Gleb Kazantaev <gleb.nnstu@gmail.com>
* Changed to single class.
* Corrected IRs checks in layer tests.
* Small corrections.
Co-authored-by: Gleb Kazantaev <gleb.nnstu@gmail.com>
* added reinterp_shape parameter to tf ss extractor
* removed reinterp_shape
* added transformation to replace ss
* updated bom
* fix for e2e tests
* updated a case when shrink_axis_mask and new_axis_mask are both initialized
* unittests
* added comments
* updated graph_condition
* comments resolving
* updated the case, when shrink_axis_mask and new_axis_mask are both initialized
* added layer tests for squeeze/unsqueeze cases
* remove case when shrink and new axis masks are both set
* gather-8 upgrade/downgrade transforms
* bump to opset8
* add Gather-8 to MO
* fix permutation for Gather
* added TF layer tests, ONNX layer tests for negative indices, and nG python api unit-tests for negative indices
* typo fix, disable downgrading transformation
* disable downgrade in clDNN, line width style fix
* all Gathers are converted to 7th version, transformations will be enabled/disabled while op will be added into plugins
* disabled Gather8LayerTest on GPU
* added common function for Op replacement
* concretized meaning of negative indices, fixed some typos
* applied review comments: left only meaningful layer tests
* removed op replacing functions from common utils
* returned back transformations without subroutines
* corrected style, added comments to common_optimizations.cpp