This change implements a subset of FrontEnd API for ONNX:
Changes:
- move onnx_common, onnx_editor and onnx_import to ngraph/frontend/onnx
- introduce new target 'onnx_frontend_ngraph' located in ngraph/frontend/onnx/frontend
- new target implements subset of FrontEnd, InputModel and Place interfaces
* Add AdaptivePool to ngraph python API
* Disable tests until CPU implementation is ready
* Change ticket number
* Add create op tests
* Fix quotes
* Fix typo
* [NG Frontend] Introduce classes and macros for Frontend-specific exceptions
* [nGraph Frontend] Python bindings
Exposing Python API for nGraph FrontEndManager introduced in PR #5470
* [nGraph Frontend] Python bindings
Exposing Python API for nGraph FrontEndManager introduced in PR #5470
* Added docs + moved sources to 'pyngraph/frontend'
* Fix issues after rebase
* Fix clang
* Moving ngraph/python/tests_cpp to ngraph/python/tests/mock
* Fix cmakelists-related comments
* Apply review comments
* Added dots to docstrings
* Cmake - Set target properties for ARCHIVE/PDB/COMPILE_PDB as well as for LIBRARY_OUTPUT_DIRECTORY
* nG Python api for Gather and IE IR reader tests
* also included old IE IR reader test for Gather1
* added a blank line before Gather
* style corrections
* applied review comments
* removed blank line
* removed xfailed for Gather7 with batch_dims since CPU was moved to nGraph (...allows to fallback node execution on ngraph evaluate() method in case if optimized implementation is absent)
* added new visitor tests
* Enhance dynamic shape inference of validate and infer types method
* Review op class of DeformableConvolution
* Add node validation checks into validate and infer types specific to element type and shape of inputs
* Refactor validate and infer types method to use common function to validate conv parameters and infer output shape
* Apply these changes to Convolution and BinaryConvolution for alignment
* Add type_prop unit tests
* Add node validation checks for deformable values spatial dimensions
* Fix type_prop and python api shapes
* Fix deformable values spatial dimensions
* Add validation checks in reference implementation
* Address review comments
* Remove reference to const for basic types in ref impl
* Update comment with ticket to add check for u1
* Change deformable values to offset to align with spec
* Added nGraph Python API for operations DFT and IDFT.
* Written tests for the DFT Python API.
* Written tests for IDFT nGraph Python API.
* Small fixes.
* Started to add tests for the signal_size case.
* Written tests for signal_size case of DFT.
* Written tests for signal_size case of IDFT.
* Some code style fixes in IDFT nGraph Python API tests.
* Code style fixes in tests for DFT nGraph Python API.
* Now DFT nGraph Python API tests are used numpy FFT ressults as expected results of tests.
* Now IDFT nGraph Python API tests without signal_size are used numpy FFT result as input data.
* Now IDFT nGraph Python API tests use numpy IFFT as expected results for signal_size cases.
* Deleted redundant function.
* Formatting fix.
* Now test data for DFT and IDFT nGraph Python API are randomly generated.
* Added seed initialization.
* Extend nGraph Python API and test IE IR reader for Einsum
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Format description for test auxiliary function
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* Remove print from the python test
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
* BatchToSpace, SpaceToBatch layers optimizations
* Fix according to review
* Fix tests for oneDNN (v1.6)
* Fix of support BF16
* Fix in/out config
* Add support of Blocked layout
* Fix of support U8
* Add support for in/out channels of different sizes
* Removed xfail
* Removed xfail_issue_34327
* BatchToSpace, SpaceToBatch layers optimizations
* Fix according to review
* Fix according to review
* 3 different implementations -> 1 implementation
* Fix THROW
* Fix Exception
* Revert Batch_to_Space to parallel_for
* Fix remarks
* parallel_for -> parallel_nt
* Fix remarks
* Fix data separation
* Fix according to review
* Added Roll to nGraph Python API.
* Added empty line at the end of file.
* Corrected a typo.
* Added Roll test.
* Reformat code.
* Removed empty line.
* Add BinaryConvolution unit tests.
* Changed types to u1.
* Add BIN precision handling in TestCase class.
* Refactored validate and infer types to enhance dynamic shape inference
* Add type_prop test to cover invalid op cases and dynamic shapes
* Fix style
* Disable check for float type of data batch input
* Add type_prop test for incompatible input channels in inputs
* Disable backend unit tests
* Fix style
* Add reference implementation
* Add backend tests
* Add single layer tests
* Add check for float element type of batch data input
* Refactor backend test cases to compare with regular convolution
* Add serialization tests
* Clean up
* Add 1D and 3D tests into op_eval
* Changes in reference implementation to improve readability
* Add ticket information for todo tasks
* Fix implementation misbehavior for filter channels
* Add backend unit tests to cover strides, dilations, padding, channels and batches
* Add end of line into files
* Change name of type_prop unit tests
* Simplified lambda to get spatial dimensions of filters
* Add comment to support filters input as Parameter
* Add namespace details for BinaryConvolution utility functions
* Address review comments
Co-authored-by: jdanieck <jozef.daniecki@intel.com>
* Added support for Gelu-6 to the MO
* Adding Gelu-6 to ngraph and python API + some tests
* Fixed typo in the Gelu approximation mode
* Fixed Gelu-6 reference implementation for Tanh mode
* Added transformation to downgrade v6::Gelu to v2::Gelu
* Added specification for the Gelu-6
* Code style fixes
* The Gelu-6 operation specification update
* Fixed compilation issue in reference implementation for Gelu
* Fix compilation issues for some OSs
* Code style fix
* One more cpplint issue fix
* Fixed Gelu6 reference implementation compilation on Windows.
* Code style fix
* Fixed various ngraph unit tests
* Code style check
* Reverted Gelu-2 to be fused op
* Fixed Gelu6 downgrade transformation
* Added unit test for Gelu6Downgrade transformation
* Update copyright year
* Updated copyright year
* Replaced tab characters with 4 spaces in IR reader tests
* Code style fixes
* Added default value for GeluApproximation mode for Gelu-6 op
* Fixed code style for Gelu-6
* Changed order of parameters for the Gelu evaluate to potentially avoid backward compatibility issues with ARM plugin
* Fixed code style
* Introduced opset7. Moved Gelu6 to opset7
* Fixed non-updated transformation
* Fixed opset version in ngraph Python API for Gelu operation
* Fixed typo in the opset number in the documentation
* Reverted some changes related to Gelu6
* Updated MO to produce Gelu7
* Updated unit tests for Gelu
* Updated Gelu7 specification
* Changed gelu reference implementation. Added opset7 to Python packages
* Updated Python API tests for Gelu operation
* Code style fix
* Marked get_approximation_mode function as const
* Added missing "const" qualifier
* Fixed code style issues in tests
* Added extractor for MxNet operation Gelu
* Spelling issues fix
* Updated MxNet supported symbols
* Added NGRAPH_OP_SCOPE for Gelu7 validate_and_infer_types
* Fixed a typo in the comment
* Add python api for CTCGreedyDecoder
* Fix code style
* Fix unit test
* Fix code style
* Fix unit tests
* Fix python tests
* Fix python tests
* Fix python tests
* Fix according to code review
* fix
* Fix api
* fix unit tests
* Fix unit test
* Fix python api
* Revice DetectionOutput reference implementation
Ticket: 37433
* fix test_create_op
* fix test_dyn_attributes
* apply code format
* fix crash on Windows when variance_encoded_in_target == 1
* add more checks for DetectionOutput inputs
* Fix single layer tests
* apply code format
* fix ssd_vgg16_300 inference with batch size > 1
* update types in docs
* fix crash on windows
* apply code style
* fix python tests
* fix setting output type
* change False to false and True to true in docs
* Allow prior boxes to have different type than box logits
Some models work that way
* simplify output shape calculation
* fixes to docs
* Add reference implementation for PSROIPooling operator
* fix test_roi_pooling
* use std::roundf
* remove unnecessary copies in single layer tets
* Fixes after review
* fixes after review
* use element::Type_t instead of element::
* apply code format
* add PSROIPooling to evaluates_map
* apply code format
* remove power op from layer creator
* remove prelu op from layer creator
* remove tile op from layer creator
* remove relu op from layer creator
* remove selu op from layer creator
* remove softmax op from layer creator
* remove tanh op from layer creator
* remove split op from layer creator
* remove reshape op from layer creator
* remove reverse sequence op from layer creator
* remove proposal op from layer creator
* remove priorbox op from layer creator
* remove roipooling op from layer creator
* remove priorboxclustered op from layer creator
* style fix
* utility function to parse bool-containing strings
* align priorbox scale_all_sizes parameter to specification
* change location of getBoolStrParamAsIntStr function
* align prelu creator to new constant op changes
* adjust priorbox tests to align with scale_all_sizes default value
* adjust priorbox python tests to align with scale_all_sizes default value
* align priorboxclustered attributes initlialization to specification
* fix checking wrong container's end iterator for opset name search
* improve comment on roipooling parameters
* Apply review suggestion 1
Co-authored-by: Ilya Churaev <ilyachur@gmail.com>
* Apply review suggestion 2
Co-authored-by: Ilya Churaev <ilyachur@gmail.com>
* align priorbox step initial value to specification
* align roipooling method attribute to specification
* remove roipooling specific creator
* align with review comments
Co-authored-by: Ilya Churaev <ilyachur@gmail.com>
* sequences to ti transformations, support for seq_lengths input, update reference implemetations, add new tests
* fix python api, update sequences to ti transformation
* fix sequences to ti transformation
* Update sequences to TI transformation: fix reverse sequence support
* update single layer tests, fix TI reference impl, fix Sequences to TI transformations
* ngraph code style
* fix build
* fix ngraph python api
* resolver review comments, refactoring
* Resolve review remarks
* delete xfail
* Loop op ngraph implementation, update IE IR Reader and ngraph to cnn converter
* refactoring SubGraphOp class
* type prop unit tests
* ngraph code style
* update comment
* single layer tests for Loop operation
* fix file name
* Add SpecialBodyPorts attribute in Loop op, update single layer tests
* first debug version
* more tests
* missing test file
* removed not needed shapes from test data
* move test data to new folder
* shape infer tests
* Added execution tests
* add several new tests cases, strict checks in Loop impl, temporary disable single layer tests
* ngraph codestyle, refactoring, clone_new_args test
* resolve review remarks
* fix build
* fix tests
* more execution tests
* add a new constructor of Loop op, resolve review remarks
* execution tests
* synchro with current version
* handle scalars and more tests
* scalar test enabled
* loop reference impl
* bug fixes in tests, onnx importer part and in the ref implementation of the Loop op
* applied remarks
* handle unsupported cases
* rewrite unit tests
* update INTERPRETER manifest
* is_termination_condition_always_true simplification
* [TEST] update python models tests
* review remarks
* added xfail to tiny_yolov3
* missing model test
* revert test data
* fixed numbers of failing tests
* fixed failed test description
* fix test message
* fix xfail test
* reference implementation for ngraph::function
* update loop reference implementation
* Refactor loop reference implementation
* ngraph codestyle
* Refactoring
* Submodule update
* Skip check for Reduce ops in mkl for scalar cases, support for yolov3
* fix ngraph reader tests
* revert ceiling op, renaming
* Add allias(Ceiling) for Ceil op in mkl
* delete xfails
* fix build
* single layer tests for tensor iterarator
* Refactor TensorIterator and Loop ref impls
* revert dynamic tensor creation, disable some dynamic test cases
* fix warning
* Resolve review remarks
* revert Predefined values in Loop tests
Co-authored-by: Mateusz Bencer <mateusz.bencer@intel.com>