* Add host_tesnor_2_vector() implementation and unit tests. One reference OP refactored to use it.
* Ngraph assertion message refactored.
Co-authored-by: Tomasz Dołbniak <tomasz.dolbniak@intel.com>
* Fix style.
Co-authored-by: Tomasz Dołbniak <tomasz.dolbniak@intel.com>
* Fixed visitor for Interpolate-1 and Interpolate-4
* Code style fix
* Remove unnecessary changes
* Fixed compilation on Linux for Atttribute visitor of vector<size_t>
* Added unit test for IE IR Reader for Interpolate-4
* Updated unit test for IR Reader for Interpolate-4
* Updated unit test
* validate_and_infer_types() implementation
* input parameter validation for LSTM, GRU and RNN
* style-check applied
* Add LSTMSequence dynamic shape validation and test props for RNNCell, GRUCell, LSTMCell and LSTMSequence.
* recurrent_sequence.hpp moved to ngraph/core/include/ngraph/op/util/
* style check applied
* removed unused variable from LSTMSequence::validate_and_infer_types
* Add missing newline mark at the end of file.
* Add supression macro for FusedOp deprecation.
* Add element type initialization
* Apply PR review remarks
* Rewrite tests to use gtest exception assertions.
* Fixed prototype of evaluate method.
* Rewritten Interpolate-4 ctors (added argument output_shape). Corrected tests.
* Fixed typo.
* Fixed number of args of make_shared in op::v4::Interpolate::clone_with_new_inputs.
* Fixes in Interpolate-4 tests.
* Now ONNX Upsample-1 is readed as Interpolate-4 with 4 inputs.
* Code style fixes.
* Some fixes in Interpolate-4 layer test.
* Now ONNX Upsample-9 is readed as Interpolate-4 with 4 inputs.
* Small fixes.
* Some changes.
* Fixed processing of 'scales' input in evaluation of Interpolate-4: now 'scales' contains scales only from 'axes'.
* Fixes in documentation.
* Now reference implementation of Interpolate-4 is rewritten for using 3 required inputs.
* Some code style fixes.
* Small fix.
* Started to write tests for method evaluate() of Interpolate-4.
* Continued to write tests for evaluate() of Interpolate-4.
* Some fixes.
* Some additions.
* Written draft of tests for 'cubic' mode with using scales.
* Some changes.
* Started to write tests for 'nearest' mode.
* Started to write tests for 'linear_onnx' mode.
* Some changes.
* Small fixes.
* Added setup of output type.
* Small addition.
* Added debug print into Interpolate-4 evaluate.
* Now in Interpolate-4 evaluation tests 3 inputs of Interpolate are Constants.
* Small changes.
* Added some debug print.
* Added more debug print.
* Some fixes.
* Now 4th argument of runtime::interpolate has type std::vector<int64_t>.
* Added checks for result of calculations.
* Added another expected values vector for the mode 'cubic'.
* Temporarily commented result value checks for the cubic mode.
* Written tests for 'nearest' mode.
* Some reorganization.
* Written tests for 'linear_onnx' mode.
* Fixed padding loop.
* Fixed docs for 'linear_onnx' mode.
* Written tests for 'cubic' mode.
* Deleted debug print.
* Fixed code style.
* Enabled CPU layer tests for Interpolate-4.
* Reverted changes of this file.
* Now ONNX importer reads Resize-1 as Interpolate-4 with 4 inputs.
* Now ONNX importer reads Resize-11 as Interpolate-4 with 4 inputs.
* Small fixes.
* Fixed docs.
* Added small epsilon in the shape calculation in the function op::v4::Interpolate::infer_using_scales.
* Small fix.
* Reduced size of the template function eval().
* Now the 'nearest' mode is rewritten to CoordinateTransfom instead of NDim* classes
* Now the 'cubic' mode is rewritten to use CoordinateTransformation instead of NDim classes.
* Started to rewrite 'linear' mode using CoordinateTransform.
* Started to write helper class.
* Small fix.
* Small changes.
* Some fix.
* Fixed typo.
* Now the preamble of 'linear_onnx' mode implementation is a method of helper class.
* Now the function clip_coord is the method of helper class, and the mode 'linear' uses CoordinateTransform instead of NDim classes.
* Deleted NDim classes.
* Some fixes.
* Some refactoring.
* Some refactoring: now inner calculation of 'linear' is in helper class.
* Moved reference implementation of Interpolate-4 into library with reference implementations.
* Small fix.
* Deleted commented tests.
* Code stile fixes.
* Deleted redundant type prop tests for Interpolate-4.
* Documentation fixes.
* Disabled IE_CPU tests for ONNX Resize: Interpolate-4 is not implemented in plugins.
* Temporarily disabled some ONNX tests.
* Some refactoring: deleted redundant attributes of InterpolateEval class.
* Small fix.
* Added NGRAPH_RTTI_DECLARATION and NGRAPH_RTTI_DEFINITION.
* Added debug print to 'cubic' mode calculation.
* Some deletions.
* Small fix.
* Fixed typos.
* Added another debug print.
* Now indices_shape is constructed from std::vector<std::size_t>(num_of_axes, 4) again.
* Fixed CMakeLists.txt.
* Small fix.
* Added more debug print.
* Fixed typo.
* Fixed calculation of the first argument of helper.clip_coord in the inner loop of cubic_func.
* Some code style fixes.
* Alphabetically sorted operations of opset4.
* Deleted constant cannot_define_axes.
* Used std::iota instead of loop.
* Renamed structure InfoToCallReference.
* Now void op::v4::Interpolate::validate_and_infer_types() checks an element type of an input tensor.
* Code style fix.
* Changes in reading of ONNX Resize and Upsample: we generate Interpolate-4 without 'axes' input.
* Now bodies of functions evaluate_interpolate_v4() and inline bool evaluate() are moved in the method bool op::v4::Interpolate::evaluate.
* Fixes in example of the documentation of Interpolate-4.
* Fixed typos.
* Small fix.
* Some fixes.
* Deleted some type aliases.
* Uncommented a test for 'cubic' mode.
* Small code style fix in bool op::v4::Interpolate::evaluate.
* Uncommented more test for Interpolate-4 reference implementation.
* Added more debug print.
* Some changes.
* Uncommented all tests for Interpolate-4 evaluate().
* Deleted debug print.
* Deleted 'simple' mode from the map nearest_mode_map.
* Code style fixes.
* Disabled some CPU tests.
* Some fixes.
* Small fixes.
* Some fixes.
* Fixed typo.
* Fixed typo.
* Small change.
* Fixed some typos.
* Fixed some typos.
* Fix in operator() of the class GetOriginalCoordinate.
* Disabled some CPU tests.
* Small changes.
* Deleted template function from resize.cpp.
* Code style fixes.
* Refactored the method op::v4::Interpolate::evaluate.
* Added documentation for infer_using_scales() and infer_using_shapes().
* Added documentation for classes GetNearestPixel and GetOriginalCoordinate.
* Small fixes.
* Some code style fixes.
* Small fixes.
* Some changes.
* Added NGRAPH_SUPPRESS_DEPRECATED_START and NGRAPH_SUPPRESS_DEPRECATED_END for using v0::InterpolateAttrs; and using v0::Interpolate;
* Code style fix.
* Enabled ONNX import only tests for Resize-10, Upsample-8, Upsample-9.
* Fixed element type for scales_const. Fixed targetShapes and pads in single layer tests.
* Small changes.
* Added conversion from NGRAPH to CNNLayer.
* Added documentation for the class InterpolateEval.
* Now 'nearest' mode has special tests in cpu single layer tests.
* Small changes.
* Fixes in cpu single layer tests.
* Temporarily commented Interpolate-4 in ConvertFunctionToCNNNetworkTests.
* Added some docs.
* Enabled some tests for Resize-11.
* Added test.
* Corrected expected values in the resize_downsample_scales_align_corners case.
* Added more test for the 'cubic' mode.
* Added more test for linear_onnx mode.
* Deleted debug print for linear_onnx mode.
* Deleted debug prints. Added yet another test for 'nearest' mode.
* Fixes for import of ONNX Resize-10 and Upsamples.
* Applyed Evgeny Lazarev fix for Interpolate-4 infer function.
* Code style fixes.
* Some tests were deleted from unit_test.manifest file for INTERPRETER.
* Deleted test for downscale Resize-10: results of infer are correct, but comparison is not.
* Enabled test INTERPRETER.onnx_empty_initializers_handling.
* Some fixes.
* Added the method run_with_tolerance_as_fp() to the class TestCase and the method compare_results_with_tolerance_as_fp() to the class TestCaseEngine.
* Small fix.
* Small fix.
* Added yet another type_prop test.
* Disabled CPU test IE_CPU.onnx_empty_initializers_handling.
* Code style fixes.
* Enabled some ONNX tests.
* Some changes.
* Code style fix.
* Enabled test INTERPRETER.onnx_model_round.
* Disabled tests with behavior as behavior of INTERPRETER.onnx_resize11_scales_down_linear.
* Changed tolerance for test onnx_empty_initializers_handling.
* Changed tolerance in the test onnx_resize11_sizes_linear (otherwise this test is failed in MacOS). Disabled test INTERPRETER.onnx_resize11_sizes_nearest_asymmetric_floor, because this test failed in MacOS only.
* Multiple fixes.
1. Fixes SpaceToBatch transformation to not crash if inputs are not Constant
2. Fixed eliminate_squueze, eliminate_unsqueeze to not crash when input has dynamic rank
3. Added reference implementation for the FloorMod operation
* Code style fixes
* Update floor_mod.hpp
Removed unnecessary function
* initial commit
* first reshap-able variant
* right version for reshape
* comment update
* fixes for failed e2e
* set data type to ngraph TensorIterator
* Fix dynamic shapes for cells ops
* clean up
Co-authored-by: yegor.kruglov <ykruglov@nnlvdp-mkaglins.inn.intel.com>
* Introduce Quantize-Dequantize to FakeQuantize transformation
* Revert changes in DequantizeLinear
* apply code format
* Changes after review:
- description for transformation
- remove NGRAPH_CHECK and move some checks from callback to predicates in pattern
- check if out_low/high are broadcastable for FQ's first input
- fix params to copy_runtime_info
* Add type_matches and type_matches_any predicates
* Use get_single_value
* Changes after review:
- add brief description of transformation
- use get_pattern_value_map instead of get_pattern_map
- change opset1 to opset4
- fix params to copy_runtime_info
* Check result of dynamic_pointer_cast
* partial revert a commit with reference implementations of PriorBox(Clustered), disable references for this ops
* ngraph codestyle
* disable const folding unit tests for PriorBox(Clustered)
* fix arm build
* fix unit test
* Revert "fix unit test"
This reverts commit 1fe59e55d6.
* 1d case optimization
* code refactor
* concat optimization
* removed using template for concat
* unit tests to concat constant folding
* synchro with current master
* v1::Pad reference implementation
* ut fix: pad_negative_exterior_1d
* ut fix: pad_negative_exterior_1d_check_limits & pad_edge_1d
* Code formatting
* ut fix: pad_edge_1d_top_neg & pad_edge_1d_top_neg_bigger_than_tensor
* More Pad UT fixes
* Pad UT fixes: REFLECT mode
* Fix all Pad UTs
* Switch Pad evaluation in INT backend
* Non-template solution to v1::Pad::evaluate
* Always create v1::Pad with 4 inputs
* VS compilation error fix
* Python test fix
* Remove the v0::Pad constant folding pass
* Some extra checks in v1::Pad evaluator
* Code formatting
* Remove an obsolete CF test
* Added bool to u8 conversion
* Added opset1::ShapeOf handler
* Added ReduceLogicalAnd/Or support in ConvertPrecision pass
* Moved static map inside function; Updated callbacks
* Removed header
* Fixed tyle relaxed for cases when the same output consumes by multiple inputs in the same operation; added tests; fixed input types setting for already created type relaxed operations
* Removed reference implementations from public API
* Remove coordinate_transform from public API
* Introduced static library with reference implementations
* Initial version of ReduceL1, ReduceL2 and ReduceLp enabling in the MO
* Added operations ReduceL1 and ReduceL2 to nGraph
* Removed ReduceLp. Added ReduceL1 and ReduceL2
* Separated specification of ReduceLp into ReduceL1 and ReduceL2
* Updated ReduceL1 and ReduceL2 specification
* Fixed ReduceL1 and ReduceL2 type prop tests
* Implemented nGraph transformation to decompose ReduceL1 and ReduceL2. Disabled them for CPU and GPU plugins
* Updated supported framework layers
* Added unit tests for ReduceL1 and ReduceL2 reference implementation
* Fixed ReduceXXX operations reference implementation by adding support for a new parameter 'keep_dims'
* Fixed constant folding for v0::Any
* Added ReduceL1 and ReduceL2 to Python API
* Implemented ReduceL1 and ReduceL2 decomposition tests and fixed ReduceL2 decomposition
* Added specific creator for ReduceXXX operations instead of NodeBuilders
* Fixed conversion ReduceXXX to CNNLayer
* Fixed parser for ReduceLogicalXXX operations
renamed logits -> bbox_deltas
updated ngraph unittests for Proposal
removed validate_and_infer_types Proposal-4
removed validate_and_infer_types Proposal-4
changed validate_and_infer_types in parent class of Proposal
removed get_output_size
successfully inferred Proposal on SSH and Faster-RCNN
added unittests for Proposal-4
added unittests for Proposal-4
added unittests for Proposal-4
returned back default namespace for Proposal
reduced number of outputs in v0::Proposal
correct conversion of Proposal-4 -> propodal_ie with 2 outputs
removed creator for proposal v0
removed converter for proposal v0
added Proposal-4 to MO
removed `for_deformable` attribute
added Proposal-4 to MO and nGraph Python API
removed typo in Proposal-4 specification
style corrections
style corrections and removed some redundant code
rename proposal Python api test
removed 'attrs' context from visitor
returned back AttrVisitor to check if passes OpenVINO ONNX pipeline
Should pass OpenVINO ONNX pipeline (returned back AttrVisitor just to check)
python api for Proposal-4 works ok
(style correction) python api for Proposal-4 works ok
parametrized proposal_ie some other corrections
removed 'attrs.' context from nGraph Python API tests for Proposal
minor corrections in replacer proposal->proposal_ie
corrected Python API OpenVINO-ONNX tests should pass
Improved workaround for AttributeVisitor for Proposal
Add additional check of im_info tensor shape to Proposal node in MKLDNNPlugin
😠 removed 4 extra spaces from test_dyn_attributes.py to match The Style
added new nGraph RTTI declarations, removed throwing exception in transformation
added new nGraph RTTI declarations, removed throwing exception in transformation, corrected exception in MKLDNNplugin
corrected im_info size checking in Proposal node of MKLDNNPlugin
* Added new predicates for smart pattern matching
* Added ConvMul and GroupConvMul fusion passes based on opset4; Added CPU functional tests for comparing fusion accuracy
* Improved ConvMultiply fusion to support scalars; Added positive and negative tests
* Added ConvolutionBackprop/GrouConvolutionBackprop Multiply fusion; Added functional tests
* Added test
* working ManagerWrapper
* Clean-up in ManagerWrapper
* worksave
* fixed building error
* Finished test of constant folding
* remove unused param
* Added get_vector function
* clean up
* RTTI base for ngraph::Node; cherry-pick from another branch, draft
* Added comments, moved code, switched to custom RTTI-based version of is_type
* Move rtti definitions in ngraph op class to the beginning of each class definition as a preparation for the next replacement
* Migrate part of operations to new RTTI
* Migrate GroupConvolution and Concat to new RTTI
* Apply code style for ngraph part
* Rename RTTI_DECLARATION/DEFINITION to NGRAPH_RTTI_DECLARATION/DEFINITION
* Reverted accidentally updated version of mkldnn
* TMP: rewrite RTTI back to constexprions as an attempt to fix static objects initialization order issue
* Apply ngraph code style
* Finalize move back to constexpr for RTTI
* Applied code-style
* TypeRelaxed template class implementation and necessary changes in ngraph + tests.
* Applied code-style
* Fix in fast algorithm in GraphRewrite, add new tests for this and other cases
* Make parent optional parameter for NGRAPH_RTTI_DECLARATION and remove Node::type_info; remove ability to have Node as a parent for type_info
* Try to resolve compilation error on Windows
* The next attempt to fix Windows build: re-introduce get_type_info_static
* Removed file that was removed in master and kept in this branch by mistake
* Next attempt to fix Windows build: externConstexpr
* Attempt to fix win build: extra public (suspect icc bug), remove get_type_info_static as useless.
* Next attempt to fix Windows: proxy const and constexpr
* Fixed constexpr
* Next attmpts: move get_type_info to cpp file
* Code stype fix
* Re-implemented RTTI without use of constexpr; run-time initialization is used; removed global definitions to avoid issues with order of static objects initialization
* Removed externConstexpr flag and removed TRANSFOMRATIONS_API for TypeRelaxed
* get_type_info_static initializes static local constant with type_info that is used for CLASS::type_info and CLASS::get_type_info
* Removed not needed debug output and useless comments
* Implemented better copy ctor for Node
* Fixed VisualizeTree issue for TypeRelaxed: stopped using < and > in type_info::name
* Better comments and names for methods
* Remove unused include
* Remove commented line
* Workaround for legacy conversion that uses Node::get_type_info().name as a type for the resulting CNNLayer leading to incorrect types for TypeRelaxed-based operations and then to fail in plugins
* Fixed typos, explicit ctor for TypeRelaxedBase, explanation for the need of get_overridden_output_type
* Fix typo
* Fixed issue with non-static name in type definition for TypeRelaxed and fixed WrapType to make it compatible with hierarchical relations between types
* Reverted default ctor for Output and reverted ability to reduce number of outputs for a Node; syntactically better debug message for a Node
* Cover methods of TypeRelaxedBase by tests
* Apply code-style