Commit Graph

188 Commits

Author SHA1 Message Date
Mateusz Tabaka
1144eefe4d Remove obsoleted Min, Max operators (#2832) 2020-10-29 11:32:50 +03:00
Mateusz Bencer
53b865eb58 ONNX Loop (#2847)
* 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

* zoo models tests clean-up

* missing comma

Co-authored-by: Ivan Tikhonov <ivan.tikhonov@intel.com>
2020-10-29 09:51:51 +03:00
Mateusz Tabaka
e3ed796b2e Remove obsoleted v0::OneHot operator (#2855) 2020-10-28 07:16:31 +03:00
Mateusz Tabaka
186e00fa2a Remove obsoleted v0::Product op (#2860) 2020-10-28 07:12:52 +03:00
Jan Iwaszkiewicz
8b6f61e688 [ONNX] Extend ONNX importer with Round-5 (#2749) 2020-10-27 11:01:23 +01:00
Mateusz Tabaka
73c40722fd Remove obsoleted v0::Gather and v0::GatherND (#2826) 2020-10-27 10:07:48 +03:00
Patryk Elszkowski
5036b12544 enable reference implementation in CTCGreedyDecoder single layer test (#2680)
* enable reference implementation for CTCGreedyDecoder single layer tests

* update unit test to have blnak_index

* remove merge_repeated disable flag for CPU test because CPU impl always
merge

* add CTCGreedyDecoder single layer tests for CPU

* changes to match xPU implementations

* apply reviewers suggestions

Co-authored-by: Patryk Elszkowski <patryk.elszkowki@intel.com>
2020-10-26 13:34:50 +03:00
Tomasz Dołbniak
6c341df85a ONNX models validation tweak and test (#2798)
* Test checking the current ONNX ir_version support

* Model stream rewinding in ONNX reader only

* Fix for CentOS
2020-10-26 06:35:20 +03:00
Mateusz Tabaka
4d2674962d Remove obsoleted v0::Broadcast and BroadcastLike operators (#2779)
* Remove obsoleted v0::Broadcast and BroadcastLike operators

* remove NGRAPH_DEPRECATED marks from autobroadcast functions

* restore NGRAPH_SUPPRESS_DEPRECATED_START in autobroadcast.cpp
2020-10-26 06:32:49 +03:00
iliya mironov
0a59be6f1e Transformations for hsigmoid op (#2531)
* Add hsigmoid op

* Add tests for hsigmoid

* Add fusion hsigmoid

* Add unit tests for fuse hsigmoid

* Add python api for hsigmoid. Update opset 5

* Update opset5 file

* Add hsigmoid decomposition transformation

* fix

* Move transformations for hsigmoid

* Hot fix

* Fix unit tests

* fix unit tests

* Fix unit test

* Fix code style

* Reverse changes

* Add includes for hsigmoid transformations

* Enable in cldnn

* Refactoring hsigmoid fusion

* Move hsigmoid transforms patterns to cpp file

* Reverse hsigmoid fusion refactoring

* Fix according to code review

* Refactoring transformation

* Hot fix
2020-10-23 12:35:56 +03:00
Piotr Szmelczynski
85b06835aa Reference implementation for Tile op (#2641) 2020-10-23 10:39:00 +02:00
Mateusz Tabaka
32b886a892 Remove obsoleted Dequantize op (#2780)
* Remove obsoleted Dequantize op

* apply code style
2020-10-23 11:25:08 +03:00
Ilya Churaev
1594489a2f Added new version of BatchNormInference (#2728)
* Added new version of BatchNormInference

* Fixed code style

* Fixed batch norm inference v5

* Added opset4 and opset5 to IE backend

* Fixed functional test

* Fixed cpuFunc tests

* Fixed transformation order

* Try to fix validation

* Revert some changes

* Updated python API and added tests

* Fixed code style

* Fixed python code style

* Disabled test
2020-10-22 13:21:23 +03:00
Mateusz Tabaka
d901bbfce3 Use MVN in GroupNorm/InstanceNorm in ONNX importer (#2711)
* Use MVN in GroupNorm/InstanceNorm in ONNX importer

* Remove mosaic_8 model from xfail list
2020-10-21 13:48:53 +03:00
Tomasz Dołbniak
3688ff4c51 Use LogSoftmax-5 in the onnx_importer (#2602) 2020-10-21 10:50:16 +02:00
Anton Chetverikov
44406691e5 Add Round-5 operation (#2328)
* Add Round-5 operation

* Add ONNX Round to supported operation list

* Add ngraph implementation for Round operation

* Update MO part

* Create UnaryElementwise class, update Round Operation

* Fix mode attr in mxnet extractor

* Add tests for Round shape infer

* Update 'enable' attr

* Update MO IR Reader to support UnaryElementwise operations

* Minor test refactor

* Update ngraph Round operation

* Add reference implementation

* Add test for reference implementation

* Add test for shape infer

* Add test for IE IR Reader

* AddRound operation to python api

* Fix missed mode attr

* Update Round operation version

* Fix codestyle

* Add MxNet Round to supported layers list

* Fix error in reference

* Fix comments style

* Update CMake file

* Update Ngraph reference test

* Update IE IR Reader tests

* Return v0::Round operation

* Update shape infer tests

* Fix v0::Round reference

* Fix codestyle

* Enum instead of string

* Fix codestyle

* Add Mode attribute adapter

* Update Mode attr

* Fix reference for v0::Round

* Fix codestyle

* Fix mode attr

* Fix get() method

* Fix codestyle in python api

* Update test info

* Fix ngraph api part

* Ad round v5 to interpreter tests

* Fix codestyle is ie reader test

* Update ngraph python api __init__.py file

* Adde opser5 to dafault opsets in ie_ir reader

* Add parser for Round layer

* Remove redundant spaces

* Add round creator to appropriate list

* Remove redundant import

* Commit to bump infrastructure version

I'm sorry for this, but this commit will be squashed on merge to master anyway and it is needed for your PR to correctly pass the pipeline

* Fix import

* fix codestyle

* Fix ngraph api part

* Add shape infer tests in python api

* Add .upper() for mode attr

* Refactor MO shape infer test for Round op

* Update tests and add comments

* Revert "Commit to bump infrastructure version"

This reverts commit 56e6ae1e4c.

* remove parser for Round layer

* Update Ronund-5 evaluate test

* Resolve review comments

Co-authored-by: User <user@nnlvdp-achetver.inn.intel.com>
Co-authored-by: Andrey Babushkin <andrey.babushkin@intel.com>
Co-authored-by: Anton Chetverikov <anton.chetverikov@.intel.com>
2020-10-20 18:36:19 +03:00
Maxim Vafin
a405546054 Add LogSoftmax-5 to MO and ngraph (#2409)
Co-authored-by: Evgeny Lazarev <evgeny.lazarev@intel.com>
2020-10-20 13:40:06 +03:00
Mateusz Tabaka
83670dd5cb Remove deprecated Any op from nGraph (#2719) 2020-10-20 12:36:46 +03:00
Mateusz Tabaka
8002b16eb2 [ONNX] Add type conversion for Pow op inputs (#2589)
Co-authored-by: mitruska <katarzyna.mitrus@intel.com>
2020-10-20 11:19:03 +02:00
Mateusz Tabaka
5965010bec Revise LRN reference implementation (#2672)
* fix typo in LRN docs

* fix link to reference in LRN doc

* LRN, LRN_IE types alignment with spec

* align LRN ref implementation to plugins behavior

* update LRN docs

* Improve LRN reference implementation performance

* restore LRN constructor with no axes in the input

* apply code format

* revert double->float size_t->int change

* small fix to example in doc

* revert double->float size_t->int in onnx_importer and backend tests

* Changes to docs after review
2020-10-19 08:40:04 +03:00
Ivan Tikhonov
84b5fc51dc [opset5] ngraph implementation of Loop op (#2583)
* 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

* 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

* add a new constructor of Loop op, resolve review remarks
2020-10-19 06:53:46 +03:00
Tomasz Dołbniak
0dde02e44f Use GatherND-5 in the onnx_importer (#2634) 2020-10-16 11:30:00 +02:00
Gabriele Galiero Casay
c9b16a79f5 Reference Implementation for RegionYolo operator (#2474) 2020-10-15 22:30:12 +02:00
Katarzyna Mitrus
fadd16ce89 ReorgYolo reference implementation (#2384)
* Align ReorgYolo to the spec (vector strides -> int stride)

* ReorgYolo ref impl

* ReorgYolo evaluate method

* ReorgYolo tests

* Tests update

* Style apply

* Add some coments

* Code refactor

* Comment update

* Style apply

* Build fix, mark evaluate as override

* Revert "Align ReorgYolo to the spec (vector strides -> int stride)"

* Use int_executable instead of evaluate

* Use char* instead of templates

* Code refactor

* Comment update

* Code review comment

* Add constructor aligned with spec

* Update shape validation

* Update attributes tests

* Add type_prop tests

* Update backend tests

* Add single layer tests

* Update the spec

* Remove wrong transformation test
2020-10-15 13:42:21 +03:00
iliya mironov
a8c77add83 Add hsigmoid op to ngraph (#2647) 2020-10-15 07:41:46 +03:00
Vladimir Gavrilov
d277334028 nGraph implementation of NMS-5 (without evaluate()) (#2651)
* Written nGraph NMS-5 without evaluate().

* Used NGRAPH_RTTI_DECLARATION.
2020-10-14 16:47:43 +03:00
Roman Kazantsev
9956639531 Extend nGraph for operation GatherND-5 and implement reference (#2587)
Signed-off-by: Roman Kazantsev <roman.kazantsev@intel.com>
2020-10-14 12:20:22 +03:00
Anton Chetverikov
8c48a6044d Round-5 nGraph implementation (#2652)
* Implement nGraph Round-5 operation

* Remove reference implementation

* Add shape infer tests

* Fix codestyle
2020-10-14 08:10:05 +03:00
Maxim Vafin
cf09752a29 Add LogSoftmax-5 to ngraph (#2645) 2020-10-14 08:08:27 +03:00
Vladislav Vinogradov
8331c397cd [IE][NGRAPH][BUILD] Enable UNITY build for more targets (#2592)
* Avoid symbols clash due to source merging.
* Tested on Ubuntu 20.04 with GCC 9.3.0.
2020-10-13 17:35:55 +03:00
Mateusz Tabaka
24b2c41f3a Tests and docs for registering custom ONNX operators (#2416)
* Add tests, examples and documentation changes for custom ONNX operators registration mechanism

* Change snippet paths

* fix CoreThreadingTests.ReadNetwork - data race in ops_bridge

* Make TemplateExtension::Operation externally visible

* changes after review

* apply code format

* use std::int64_t

* forward declare get_attribute_value specializations

* introduce unregister_operator in onnx_importer

* onnx_custom_op - lock mem first then take a buffer

* func tests - create template_extension via make_so_pointer

* fix build with NGRAPH_ONNX_IMPORT_ENABLE=OFF

* remove exports from Operation and Extension

* Move multithreaded AddExtension test to different directory to it can be excluded when NGRAPH_ONNX_IMPORT_ENABLE=OFF

* Dont include Extension tests if ENABLE_MKL_DNN=OFF

* fix excluding onnx_reader tests

* include extension tests only if mkl is enabled

* add comment on empty blob

* use register_operator conditionally in template_extension

* fix docs after review

* create static library from onnx_custom_op

* add additional test for unregister_operator

* move model example after register step

* revert changes to unit tests

* update ngraphConfig.cmake.in header

* add headers to onnx_custom_op

* changes to docs CMakeLists

* remove redundant onnx_importer dependency

* remove extension directory from func tests

* make onnx_importer a component of ngraph package

* docs fixes

* update header of ngraph/cmake/share/ngraphConfig.cmake.in with ngraph_onnx_importer_FOUND
2020-10-12 07:36:19 +03:00
Katarzyna Mitrus
00faee86e0 Update ONNX importer LSTM to use v5 LSTMSequence (#2511) 2020-10-09 15:24:10 +02:00
Gleb Kazantaev
2e49b4e4d8 Fine-Grain Transformation pipeline tuning (#2547)
* Initial version of transformation callback refactoring

* Improved fine-grain tuning for transformation pipeline

* Check disabled matchers in GraphRewrite

* Avoid deprecated classes inside PassConfig

* Enabled DepthToSpace fusion by default

* Removed doulbe search in map

* Moved back pass_config.hpp; Added doxygen documentation for new class and methods

* Added doxygen comment for Manager and GraphRewrite new mthods
2020-10-09 15:33:19 +03:00
Gleb Kazantaev
3f55733b43 Updated ConstantFolding pass to propagate friendly name (#2572)
* Fixed concat output name when decomposing shape_of in CF

* Added friendly_name propagation for CF pass

* Propagate runtime info inside ConstantFolding pass

* Fixed rt info merge strategy to avoid cases when merge is not implemented but attributes number is equal to 1
2020-10-08 09:16:28 +03:00
Liubov Batanina
7f78dd797e [IE Tests] Added NormalizeL2 tests (#2327)
* Added NormalizeL2 tests

* Added NormalizeL2 reference

* Add nGraph tests

* Fix tests

* Added NormalizeL2 builder
2020-10-08 07:23:25 +03:00
Bartosz Lesniewski
8f95e22a5c CTCGreedyDecoder reference implementation (#2284) 2020-10-07 13:44:56 +02:00
Tomasz Dołbniak
14416405cc Re-enable more unit tests (Resize & Interpolate) (#2331) 2020-10-06 10:53:02 +02:00
Mateusz Bencer
7784b97bbc Relax shape inference for Split:v1 (#2444)
* Relaxed shape inference for Split

* added unit tests

* review remarks
2020-10-01 20:29:19 +03:00
Mateusz Tabaka
fd80873fca Add support for custom ONNX GroupNorm operator (#2267) 2020-09-30 16:17:15 +02:00
helmutg
f858b0c46f drop unnecessary cmake dependency on ext_gtest (#2389)
ngraph_test_util links libgtest, which depends on ext_gtest already.

Co-authored-by: Helmut Grohne <helmut.grohne@intenta.de>
2020-09-30 16:01:11 +03:00
Mateusz Bencer
3e2a131441 Added support of external data for ONNX Importer (#2303) 2020-09-28 11:08:36 +02:00
Katarzyna Mitrus
8f843c620a [ONNX] Update ONNX importer to use RNN/GRU Sequence ops (#2035) 2020-09-23 10:11:34 +02:00
Bartosz Lesniewski
9af49a7f95 Reference ROIAlign-3 implementation (#2128) 2020-09-21 14:04:39 +02:00
Ivan Tikhonov
61a7cdde23 Introduce opset5, include GRU/RNN/LSTM Sequences to opset5 (#2265)
* introduce new opset5, include GRU/RNN/LSTM Sequences to opset5

* resolve review remarks
2020-09-18 21:26:21 +03:00
Ilya Lavrenov
147a508a51 fixes for UWP (#2255)
* UWP fixes

* Commented code for compilation with UWP

* Current state: compiled for DESKTOP_APP

* Fixes

* Added toolchain

* Enabled ONNX imported for Windows Store

* Updated toolchain

* Fixes

* Disable ONNX in case of UWP

* Fix for Windows Driver

* Applied style check

* Dynamic loading of GetDLLDirectory symbols

* Clean-up in the toolchain

* Updated mkldnn plugin cmake
2020-09-18 17:13:27 +03:00
Tomasz Dołbniak
a0da3d360c Accept ONNX Constants with empty tensors (#2287) 2020-09-18 10:08:29 +02:00
Piotr Szmelczynski
1337997134 Test refactor (#2225) 2020-09-16 15:33:02 +02:00
Ilya Churaev
e3174fa752 nGraph some KW fixes (#2102)
* Removed redundant methods

* Fixed KW for linux
2020-09-15 14:03:07 +03:00
Vladislav Volkov
ba254d7669 Fix for static PartialShape detection algorithm (#2106) 2020-09-11 06:15:24 +03:00
Mateusz Tabaka
926be83568 Add support for custom onnx operators: DetectionOutput, Normalize and… (#2064) 2020-09-10 11:27:12 +02:00