1. 24 Feb, 2020 1 commit
  2. 20 Feb, 2020 2 commits
    • Mateusz Bencer's avatar
      [ONNX] Add dynamic shapes support for pooling ops (#4285) · fdd8db66
      Mateusz Bencer authored
      * Switch to PartialShape in onnx_importer ValueInfo
      
      * Construct dynamic dimensions out of ONNX dimensions defined as dim_param
      
      * Validate the PartialShape of inputs created from an ONNX model with dynamic shapes
      
      * Validate the output shape inference for a dynamic ONNX model
      
      * Test the execution of an ONNX model with dynamic dimensions
      
      * Test the Ax+B with more than one batch size
      
      * Provenance tagging adjustments - PartialShape instead of Shape
      
      * Correct translation of ONNX shapes to nG shapes
      
      * Test the shape of Constant produced by scalar initializers
      
      * Review comments & more strict assertions in UT
      
      * UT checking a dynamic rank input
      
      * Fully dynamic input inference test
      
      * first dynamic version
      
      * modified UTs
      
      * Added assert checks
      
      * Added specialised methods
      
      * first verion of AvgPool
      
      * code review remarks introduced
      
      * Changed tests to use default BackendMode value
      
      * Reverted not related changes
      
      * first verion of AvgPool
      
      code review remarks introduced
      
      Changed tests to use default BackendMode value
      
      * first version of maxpool
      
      * Changed PoolingFactory to support dynamic shapes
      
      * fixed Pad op
      
      * Added Uts to global ops
      
      * Code review remarks introduced
      
      * code review remarks introduced
      
      * Code refactor
      
      * Code review remarks introduced
      Co-authored-by: 's avatarTomasz Dołbniak <tomasz.dolbniak@intel.com>
      Co-authored-by: 's avatarSang Ik Lee <sang.ik.lee@intel.com>
      fdd8db66
    • Ewa Tusień's avatar
      Add Round op to ONNX importer (#4303) · d605e7fa
      Ewa Tusień authored
      * Added Round op to onnx importer.
      
      * Added a new line.
      
      * Excluded test from plaidml.
      
      * Code formatting.
      
      * Added header.
      
      * Unabled test on gpu.
      Co-authored-by: 's avatarChris Sullivan <chris.sullivan@intel.com>
      Co-authored-by: 's avatarSang Ik Lee <sang.ik.lee@intel.com>
      d605e7fa
  3. 16 Feb, 2020 1 commit
    • Tomasz Dołbniak's avatar
      POC enabling Resnet50 with dynamic batch dimension (#4298) · b2da4cee
      Tomasz Dołbniak authored
      * Constify the onnx importer conv
      
      * Extract and fix the groups attribute validation for Conv
      
      * Check if the convolution's data input rank is static
      
      * Validate the groups attribute against channels and filters
      
      * Validate the conv operation in a separate function
      
      * Dynamically broadcast the conv bias if needed
      
      * Import a test model with dynamic batch conv op
      
      * Run a conv test with dynamic batch
      
      * Cleanup of conv bias handling code
      
      * Use a proper Broadcast constructor for bias in onnx conv
      
      * Handle dynamic ReduceMean with statically defined rank
      
      * Use the target shape rank to construct the default output shape for Broadcast
      
      * Handle ONNX Squeeze with dynamic input and static rank
      
      * Handle ONNX Shape with dynamic input and static rank
      
      * Handle the dynamic target shape in ONNX Reshape
      
      * Fix for the ONNX Shape input validation
      
      * Handle ONNX Softmax with dynamic input and static rank
      
      * Fix the failing Broadcast type prop test
      
      * Code formatting
      
      * Dont broadcast bias before adding it to the conv node
      
      * Drop the conv node validation and rely on the core op implementation checks
      
      * Code review feedback
      
      * Revert the Broadcast op changes
      
      * More code review feedback
      
      * Dynamic conv test using ng test case
      
      * Obsolete headers removal
      
      * Code formatting
      
      * Variable names refactor
      
      * Disable model_conv_with_dynamic_batch test on GPU
      
      * Code formatting
      Co-authored-by: 's avatarSang Ik Lee <sang.ik.lee@intel.com>
      b2da4cee
  4. 12 Feb, 2020 1 commit
    • Katarzyna Mitrus's avatar
      [ONNX] Inverse hyperbolic functions - dynamic shape support (#4301) · 3042c8cc
      Katarzyna Mitrus authored
      * Asinh dynamic shape support prototype
      
      * Asinh static shape test
      
      * Asinh dynamic shapes test
      
      * Unified asinh implementation for static and dynamic shapes
      
      * Atanh dynamic shapes support
      
      * Style apply
      
      * Acosh dynamic shape support
      
      * Tests update
      
      * Style apply
      
      * Update PlaidML manifest
      
      * Use default tolerance bits
      
      * Style apply
      
      * Def tolerance bits for dynamic tests
      
      * Rename dim_param
      
      * Update acosh.prototxt
      
      * Update acosh_dyn_shape.prototxt
      Co-authored-by: 's avatarRobert Kimball <robert.kimball@intel.com>
      3042c8cc
  5. 07 Feb, 2020 1 commit
    • Adam Osewski's avatar
      Use GroupConvolutionBackpropData v1 in ONNX ConvTranspose. (#4158) · d80c8e42
      Adam Osewski authored
      * Use ConvolutionBackpropData in ONNX ConvTranspose operator.
      
      * Replace deprecated functions and update documentation.
      
      * Remove GroupConvolutionTranspose fused op.
      
      * Add more UT for GroupConvolutionBackpropData.
      
      - They're transformed from GroupConvolutionTranspose
      
      * Fix validate_and_infed types for ConvolutionBackpropData v1.
      
      * Add new constructor for GroupConvolutionBackpropData
      
      - Additionally do some code formatting.
      
      * Improve validation in GroupConvBackprop v0.
      
      * Update/fix upgrade & downgrade passes for
      (Group)ConvolutionBackpropData.
      
      * Add decomposition and validation for GroupConvolutionBackpropData:v1
      
      * Type properties UT for GroupConvolutionBackprop v1
      
      * Remove include of deleted header.
      
      * Add squeeze to opset1::builder.
      
      * Use opset1 squeeze.
      
      * Helper functions for padding and output spatial shape inference.
      
      These helper functions are specialized only for *ConvolutionBackpropData operators.
      
      * Update documentation.
      
      * Add more checks and remove deprecated assert.
      
      * Refactor GroupConvolutionBackpropData validation.
      
      - Use helper functions to infer padding and output shape.
      - Change get_output_shape to return only spatial features dimensions
      
      * Remove unnecessary code from donwgrade pass.
      
      The GroupConvolutionBackpropData node has already computed all those required
      information.
      
      * Call Node API. Small review suggestions.
      
      * Work only on spatial dimensions inside helper functions.
      
      * Enhance documentation for ConvolutionBackpropData
      
      * Refactoring.
      
      * Reuse values computed in downgraded operator.
      
      * Check for correct filters input shape.
      
      * Add additional check on auto pad value.
      
      * Remove unused variables.
      
      * Rename helper function.
      
      * Add more checks.
      
      * Override is dynamic and add more restrictive check.
      
      * Fix merge artifact and force unsigned type for argument.
      
      * Review comments: renaming.
      
      * Change Convolution + bias pattern.
      
      Change from bias broadcasting to appropriate convolution output shape
      into reshape into (1, C, 1, 1) shape, which sould work better.
      
      * Add few more test cases for ONNX ConvTranspose op.
      
      * Skip one UT failing on PlaidML backend due to accuracy.
      d80c8e42
  6. 30 Jan, 2020 1 commit
  7. 29 Jan, 2020 1 commit
    • Tomasz Dołbniak's avatar
      [ONNX] Initial support for dynamic shapes (#4197) · 4c322687
      Tomasz Dołbniak authored
      * Switch to PartialShape in onnx_importer ValueInfo
      
      * Construct dynamic dimensions out of ONNX dimensions defined as dim_param
      
      * Validate the PartialShape of inputs created from an ONNX model with dynamic shapes
      
      * Validate the output shape inference for a dynamic ONNX model
      
      * Test the execution of an ONNX model with dynamic dimensions
      
      * Test the Ax+B with more than one batch size
      
      * Provenance tagging adjustments - PartialShape instead of Shape
      
      * Correct translation of ONNX shapes to nG shapes
      
      * Test the shape of Constant produced by scalar initializers
      
      * Review comments & more strict assertions in UT
      
      * UT checking a dynamic rank input
      
      * Fully dynamic input inference test
      
      * ONNX provenance tags adjustments and back to get_shape
      
      * Remove an obsolete space in provenance tags
      Co-Authored-By: 's avatarMichał Karzyński <postrational@users.noreply.github.com>
      
      * Remove an obsolete space in provenance tests
      Co-authored-by: 's avatarMichał Karzyński <postrational@users.noreply.github.com>
      Co-authored-by: 's avatarScott Cyphers <diyessi@users.noreply.github.com>
      4c322687
  8. 16 Jan, 2020 1 commit
  9. 14 Jan, 2020 1 commit
    • Tomasz Dołbniak's avatar
      [ONNX] Extended support for provenance tags (#4154) · 9bfbd3c6
      Tomasz Dołbniak authored
      * Checking if provenance_tags key exists
      
      * Add provenance tag prototype
      
      * Format provenance tag
      
      * Display provenance tag
      
      * Clean debug printing
      
      * Add const to variables
      
      * Separate method for add provenance tags
      
      * Return NodeVector reference
      
      * Return const NodeVector
      
      * Moved add_provenance_tags function to commons
      
      * Style apply
      
      * Simple model for tests
      
      * Provenance tag test
      
      * Expect substring instead of  equal
      
      * Add provenance tags to intermediate nodes recursively
      
      * One tag per node
      
      * Add traverse node args instead of recursion
      
      * Return NodeVector instead of set of pointers
      
      * Use treverse_nodes and lambda function
      
      * Remove unused helper functions
      
      * Remove is_constant() condition
      
      * Update test model prototxt
      
      * Update test substring
      
      * Use node name and output names to build provenance tags in onnx importer
      
      * Unit tests for onnx_importer provenance tags
      
      * Missing <numeric> include
      
      * Add provenance tags to constants buit from ONNX initializers
      
      * Add provenance tags to Constants and Parameters created out of ONNX inputs and initializers
      
      * More strict assertions in onnx provenance tests
      
      * Unit test for onnx importer Parameter nodes tagging
      
      * Helper function for the onnx provenance tests
      
      * Some docs
      
      * Obsolete comment removal
      
      * Separate file for onnx provenance tags unit tests
      
      * Code formatting
      
      * Move the inputs tagging to the Graph class
      
      * Tagging moved to the Graph class entirely
      
      * Missing include and extra helper variable
      
      * Unit tests helper documentation
      
      * Change the UT helper to lowercase
      Co-authored-by: 's avatarKatarzyna Mitrus <katarzyna.mitrus@intel.com>
      9bfbd3c6
  10. 10 Jan, 2020 2 commits
  11. 09 Jan, 2020 1 commit
  12. 01 Jan, 2020 1 commit
  13. 17 Dec, 2019 1 commit
    • Ewa Tusień's avatar
      Add ScatterND FusedOp (#4018) · 46ff13c7
      Ewa Tusień authored
      * Added scatterND op to ONNX importer.
      
      * Added ScatterND FusedOp.
      
      * Removed unnecessary files.
      
      * Added op to config files.
      
      * Changed input order.
      
      * Fixed validation checking.
      
      * Added suport for int64 in ScatterNDAdd op.
      
      * Changed test.
      
      * Disabled test for plaidML.
      
      * Code refactoring
      
      * Added tests.
      46ff13c7
  14. 13 Dec, 2019 1 commit
  15. 07 Dec, 2019 1 commit
  16. 27 Nov, 2019 2 commits
    • Katarzyna Mitrus's avatar
      [ONNX] Add CumSum to ONNX importer (#3918) · 3ee833b7
      Katarzyna Mitrus authored
      * Register CumSum operator in onnx importer
      
      * Missing whitespace
      
      * Update CMakeLists.txt
      
      * ONNX importer - CumSum op init
      
      * Simple CumSum onnx model
      
      * ONNX CumSum model simple test
      
      * Default axis
      
      * Axis input test
      
      * Inputs variable
      
      * Style apply
      
      * Test 3d exclusive reverse
      
      * Apply style
      
      * Add memory header and std namespace
      
      * Add model_cum_sum tests to plsidml unit_test.manifest
      
      * Add model_cum_sum tests to plaidml unit_test.manifest
      
      * Changed default axis type
      
      * Test model update
      
      * Style apply
      
      * Add test for dynamic axis input
      3ee833b7
    • Mateusz Bencer's avatar
      [SPEC][FusedOp] Add Mod operator (#3908) · 9178c15a
      Mateusz Bencer authored
      * Mod operator introduced
      
      * Introduced onnx importer, fixed implementation
      
      * styles applied
      
      * Refactored assert comment for mod
      
      * Add failure mod test to plaidml manifest
      
      * Code review remarks introduced
      
      * Changed ops used in decompose to v1
      
      * Moved Mod to op_v1_tbl
      9178c15a
  17. 25 Nov, 2019 1 commit
  18. 05 Nov, 2019 1 commit
  19. 17 Oct, 2019 1 commit
    • Michał Karzyński's avatar
      [ONNX] Add support for ONNX 1.6 TopK (#3771) · 7617d385
      Michał Karzyński authored
      * Minor cleanup
      
      * Add support for ONNX 1.5 version of TopK
      
      * Add unit tests
      
      * Style apply
      
      * Exclude failing tests
      
      * Exclude failing tests
      
      * Add support for ONNX 1.6 TopK attribures: larges and sorted
      
      * Support for ONNX 1.6 TopK
      
      * If k_node is a Constant, recreate as constant with Shape{}
      
      * Extend `interpret_as_scalar` function
      
      * Extend `interpret_as_scalar` function
      
      * Remove merge artifact
      
      * Add doc string
      
      * Exclude failing tests
      
      * Exclude failing tests
      
      * Refactor function
      
      * Remove unnecessary template param
      
      * Use get_k function in OpSet 10 TopK
      
      * Style apply
      
      * Remove merge artifact
      
      * Add tests for `interpret_as_scalar`
      
      * Revert "Add tests for `interpret_as_scalar`"
      
      This reverts commit 8b85965acb39c75ff9e66b06ad8f64df16e1a9da.
      7617d385
  20. 15 Oct, 2019 1 commit
  21. 11 Oct, 2019 1 commit
  22. 20 Sep, 2019 1 commit
  23. 18 Sep, 2019 1 commit
  24. 19 Jul, 2019 1 commit
    • Mateusz Bencer's avatar
      [ONNX] Add ReverseSequence operator (#3239) · 16550767
      Mateusz Bencer authored
      * ReverseSequence operator introduced
      
      * Code review remarks introduced
      
      * Added missing EOF
      
      * Removed unused whitespaces in onnx_import.in.cpp
      
      * Added convert to i32 for sequence_lenghts
      
      * Coode review remarks introduced
      
      * Disable reverse sequence for plaidml backend
      
      * Code style fixed
      16550767
  25. 16 Jul, 2019 2 commits
    • Adam Rogowiec's avatar
      [ONNX] Use nGraph auto padding in ONNX operators. (#3175) · 599f0f21
      Adam Rogowiec authored
      * Helper function converting ONNX auto_pad into nGraph PadType.
      
      Separate auto_pad support from explicitly provided paddings.
      
      * Add support for more PadType values for GroupConvolutionTranspose.
      
      * Pass auto_pad attribute value to nGraph operator.
      
      * Helper class for generating ONNX pooling operators.
      
      * Pass auto pad type to nGraph Convolution operator.
      
      * Use pooling factory.
      
      * Helper function calculating pads taking into account auto_pad attribute.
      
      * Fix attribute type in UT ONNX models.
      
      * Take auto_pad attribute value into account.
      
      * Rename helper function and update doc.
      
      * Retain old API for GroupConvoloutionTranspose
      
      * Remove PadType::INVALID and use other approach to validate auto_pad
      value.
      
      * Style apply.
      
      * Fix clang err on documentation style.
      
      * Refactor get_auto_pad method.
      
      * Fix segfaults on CentOS 7.
      
      When using const reference the node member m_attributes had invalid
      data.
      599f0f21
    • Adam Rogowiec's avatar
      [ONNX] Fix backward pass for bidirectional LSTM. (#3194) · 7ccb6cf1
      Adam Rogowiec authored
      * Fix used operator for reversing input sequences in LSTM.
      
      * Fix backward pass for bidirectional LSTM.
      
      * UT for LSTM with sequence_lens shorter than input sequence size.
      
      * Skip LSTM UT using ReverseSequence since it is not supported yet on
      PlaidML.
      7ccb6cf1
  26. 28 Jun, 2019 1 commit
  27. 27 Jun, 2019 1 commit
  28. 26 Jun, 2019 1 commit
    • tsocha's avatar
      [ONNX] Add support for EyeLike operator (#3050) · 5e19c25c
      tsocha authored
      * [ONNX] Add eyelike operator
      
      * Use shifted square identity in square identity
      
      * Make new helper function to map onnx_types<->ngraph_types
      
      * Add fp16 support to ngraph Python API
      
      * Move helper common.hpp => common.cpp
      
      * Add checker for attribute presence
      
      * Style check
      
      * Add definition of shifted word
      
      * Change return value of attribute presence !(==) -> !=
      
      * Rename is_attribute_present => has_attribute
      
      * Clean-up headers in eyelike.cpp
      
      * Organize headers in common.*pp
      
      * Minor review fixes
      
      * Style check
      
      * Add test for EyeLike with negative k
      5e19c25c
  29. 25 Jun, 2019 1 commit
  30. 24 Jun, 2019 3 commits
  31. 14 Jun, 2019 1 commit
    • Tomasz Dołbniak's avatar
      [ONNX] Shrink op support (#3024) · 250dddbc
      Tomasz Dołbniak authored
      * Initial implementation of the Shrink op
      
      * Multiply the values by the correct masks
      
      * Basic test case for Shrink with floats
      
      * Shrink test on integers
      
      * Code formatting
      
      * Shrink documentation and typo fix
      
      * Rephrase the Shrink docs
      
      * Out of <memory> ;)
      250dddbc
  32. 13 Jun, 2019 1 commit
    • Michał Karzyński's avatar
      [ONNX] Add ConvInteger op (#3012) · fa300fae
      Michał Karzyński authored
      * Unit tests for ConvInteger
      
      * Add ONNX ConvInteger op
      
      * Add QuantizedConvInteger builder
      
      * Add unit tests
      
      * Exclude tests on nVidia GPU backend
      
      * Fix merge artifact
      
      * Add const-correctness and allow RVO
      fa300fae
  33. 12 Jun, 2019 1 commit
    • Michał Karzyński's avatar
      [ONNX] Add MatMulInteger op (#3011) · e51c5824
      Michał Karzyński authored
      * Unit tests for MatMulInteger
      
      * Add ONNX MatMulInteger op
      
      * Add QuantizedLinearMatmulInteger builder
      
      * Additional unit test
      
      * Exclude tests on nVidia GPU backend
      
      * Add 4D test case
      
      * Enable >2D MatMulInteger
      
      * Refactoring to MatMulFactory - step 1
      
      * Refactoring to MatMulFactory - step 2
      
      * Remove `using namespace ngraph` to make `Node` unambiguous.
      
      * Disable quantized ops tests on GPU backend
      
      * Remove unused `includes`
      
      * Remove redundant dynamic_pointer_cast
      
      * Remove redundant `move`
      
      * Add const correctness
      
      * Code review comments
      
      * Style apply
      
      * Add documentation
      
      * Use more complex shapes in tests
      e51c5824
  34. 24 May, 2019 1 commit
    • Michał Karzyński's avatar
      [ONNX] Unit tests for QLinearMatMul (#2706) · 9560c1fa
      Michał Karzyński authored
      * [ONNX] Unit test models for QLinearMatMul
      
      * [ONNX] Extended types support for NgraphTestCase
      
      * [ONNX] Move the value comparators to the NgraphTestCase class
      
      * Add test cases
      
      * Add shape checking
      
      * disable GPU tests
      9560c1fa