Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix ConvTranspose: enhance attribute check #3000

Merged
merged 13 commits into from Sep 14, 2020

Conversation

jcwchen
Copy link
Member

@jcwchen jcwchen commented Sep 5, 2020

Description

  • Enhance the attribute check for ConvTranspose: pads and auto_pads can not be used at the same time.
  • Add a unit test for it
  • (move it to another PR) Update the document for ConvTranspos: make the example be consistent as the doc description

Motivation and Context
#2787

@jcwchen jcwchen requested review from a team as code owners September 5, 2020 00:10
docs/Changelog.md Outdated Show resolved Hide resolved
onnx/defs/nn/defs.cc Outdated Show resolved Hide resolved
@jcwchen jcwchen changed the title Fix ConvTranspose: enhance attribute check and update docs Fix ConvTranspose: enhance attribute check Sep 10, 2020
@jcwchen
Copy link
Member Author

jcwchen commented Sep 10, 2020

Updating the document for ConvTranspose will move to another PR because the modification needs further review. Just removed it from this PR.

@askhade
Copy link
Contributor

askhade commented Sep 14, 2020

@gramalingam @ebarsoum @postrational : This PR enforces a condition which is already part of the spec. I do not think we need a version bump here. Thoughts?

@@ -1191,6 +1191,10 @@ void convTransposeShapeInference(InferenceContext& ctx) {
if (pads.size() != n_input_dims * 2) {
fail_shape_inference("Attribute pads has incorrect size");
}
const auto* auto_pad_attr = ctx.getAttribute("auto_pad");
if (nullptr != auto_pad_attr) {
fail_shape_inference("The pads attribute cannot be used simultaneously with auto_pad attribute");
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a minor nit: this is neither a shape_inference error nor a type_inference error. Unfortunately, we have only "fail_type_inference" and "fail_shape_inference". This is okay, but it might be good to have a consistent categorization of errors (may be adding another category of errors) ... not necessarily in this PR, could be later also.

@gramalingam
Copy link
Contributor

@gramalingam @ebarsoum @postrational : This PR enforces a condition which is already part of the spec. I do not think we need a version bump here. Thoughts?

Agree

@askhade askhade merged commit f421b68 into onnx:master Sep 14, 2020
daquexian pushed a commit to daquexian/onnx that referenced this pull request Sep 19, 2020
* add check for using auto_pad and pads simultaneously

* fix description for auto_pads == SAME_UPPER

* update docs for operator

* fix the old one as well

* add a test

* Revert "fix description for auto_pads == SAME_UPPER"

This reverts commit e75e287.

* Revert "update docs for operator"

This reverts commit 70952c0.

* Revert "fix the old one as well"

This reverts commit 8a0482d.

Co-authored-by: Ashwini Khade <askhade@microsoft.com>
Signed-off-by: daquexian <daquexian566@gmail.com>
jcwchen added a commit to jcwchen/onnx that referenced this pull request Sep 22, 2020
* add check for using auto_pad and pads simultaneously

* fix description for auto_pads == SAME_UPPER

* update docs for operator

* fix the old one as well

* add a test

* Revert "fix description for auto_pads == SAME_UPPER"

This reverts commit e75e287.

* Revert "update docs for operator"

This reverts commit 70952c0.

* Revert "fix the old one as well"

This reverts commit 8a0482d.

Co-authored-by: Ashwini Khade <askhade@microsoft.com>
jcwchen added a commit to jcwchen/onnx that referenced this pull request Sep 22, 2020
* add check for using auto_pad and pads simultaneously

* fix description for auto_pads == SAME_UPPER

* update docs for operator

* fix the old one as well

* add a test

* Revert "fix description for auto_pads == SAME_UPPER"

This reverts commit e75e287.

* Revert "update docs for operator"

This reverts commit 70952c0.

* Revert "fix the old one as well"

This reverts commit 8a0482d.

Co-authored-by: Ashwini Khade <askhade@microsoft.com>
Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>
jcwchen added a commit to jcwchen/onnx that referenced this pull request Sep 23, 2020
* add check for using auto_pad and pads simultaneously

* fix description for auto_pads == SAME_UPPER

* update docs for operator

* fix the old one as well

* add a test

* Revert "fix description for auto_pads == SAME_UPPER"

This reverts commit e75e287.

* Revert "update docs for operator"

This reverts commit 70952c0.

* Revert "fix the old one as well"

This reverts commit 8a0482d.

Co-authored-by: Ashwini Khade <askhade@microsoft.com>
Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>
gramalingam added a commit that referenced this pull request Sep 23, 2020
* remove wrong description for pow

Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

* Add size check to make_tensor (#2987)

Co-authored-by: Ke Zhang <linkerzhang@yeah.net>
Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

* Fix float16 data convert issue in numpy_helper.to_array (#3002)

* handle f16 case for to_array

* fix flake8

* nit: comment

Co-authored-by: Ashwini Khade <askhade@microsoft.com>
Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

* Deprecate Travis CI (#2773)

* adding gtests for c++ api test

* deprecate travis

* adding the build badges for the new pipelines in Azure, deprecating travis build badge, renaming circleCI badge

* updating badge label

* removing - in badge names

* c++ api changes for linux

* update environment variables

* update env variables, setup tools call

* Update Linux-CI.yml for Azure Pipelines

* revert changes to Linux and Mac CIs

* delete last travis file

Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

* Fix shape inference of scalar ConstantOfShape (#3005)

When input shape is (0), we do not add any dim to inferred
shape but we should initialize tensor_type.shape by calling
mutable_shape().

Co-authored-by: Ashwini Khade <askhade@microsoft.com>
Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

* fix shape inference for loop (#3014)

Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

* Fix ConvTranspose: enhance attribute check (#3000)

* add check for using auto_pad and pads simultaneously

* fix description for auto_pads == SAME_UPPER

* update docs for operator

* fix the old one as well

* add a test

* Revert "fix description for auto_pads == SAME_UPPER"

This reverts commit e75e287.

* Revert "update docs for operator"

This reverts commit 70952c0.

* Revert "fix the old one as well"

This reverts commit 8a0482d.

Co-authored-by: Ashwini Khade <askhade@microsoft.com>
Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

* Schema change to support dynamic shapes in ORT (#2955)

* Changes to schema and python tests

* Modify test

* Remove attribute that is input also

* Changes to optimizers, adapters and tests

* Run flake8

* undo unrequired comit files, fix formatting, review changes

* Fix ci test, cleanup

* Fix narrowing conversion error

* add missed test model

Co-authored-by: G. Ramalingam <grama@microsoft.com>
Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

* fix loop shape inference for ver 11 (#3023)

Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

* Update softmax family ops behavior to align with other frameworks (fix #2289) (#2879)

* Update softmax family ops behavior to align with other frameworks

* Update logsoftmax, hardmax tests, regenerate docs and test data

* fix wrong input name in function

* regenerate test data

* fix flake8 error

* regenerate docs

* regenerate docs

* add missing type annotation for hardmax

* add the math for softmax family operators

* remove the 'description' field in docs as it is covered by the math

* fix wrong format in axis attr

* replace name with description

* restore the name field for axis attr

* regenerate docs

* regenerate docs

* add the missing name

* regenerate docs

* update reducesum to align with master

* regenerate tests

Co-authored-by: Wei-Sheng Chin <wschin@outlook.com>
Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

Co-authored-by: G. Ramalingam <grama@microsoft.com>
Co-authored-by: Ke Zhang <linkerzhang@yeah.net>
Co-authored-by: Ashwini Khade <askhade@microsoft.com>
Co-authored-by: Vinitra Swamy <vinitras@gmail.com>
Co-authored-by: Shinichiro Hamaji <shinichiro.hamaji@gmail.com>
Co-authored-by: ashbhandare <ash.bhandare@gmail.com>
Co-authored-by: daquexian <daquexian566@gmail.com>
Co-authored-by: Wei-Sheng Chin <wschin@outlook.com>
jcwchen added a commit to jcwchen/onnx that referenced this pull request Oct 8, 2020
* add check for using auto_pad and pads simultaneously

* fix description for auto_pads == SAME_UPPER

* update docs for operator

* fix the old one as well

* add a test

* Revert "fix description for auto_pads == SAME_UPPER"

This reverts commit e75e287.

* Revert "update docs for operator"

This reverts commit 70952c0.

* Revert "fix the old one as well"

This reverts commit 8a0482d.

Co-authored-by: Ashwini Khade <askhade@microsoft.com>
jcwchen added a commit to jcwchen/onnx that referenced this pull request Oct 8, 2020
…x#2999)

* remove wrong description for pow

Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

* Add size check to make_tensor (onnx#2987)

Co-authored-by: Ke Zhang <linkerzhang@yeah.net>
Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

* Fix float16 data convert issue in numpy_helper.to_array (onnx#3002)

* handle f16 case for to_array

* fix flake8

* nit: comment

Co-authored-by: Ashwini Khade <askhade@microsoft.com>
Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

* Deprecate Travis CI (onnx#2773)

* adding gtests for c++ api test

* deprecate travis

* adding the build badges for the new pipelines in Azure, deprecating travis build badge, renaming circleCI badge

* updating badge label

* removing - in badge names

* c++ api changes for linux

* update environment variables

* update env variables, setup tools call

* Update Linux-CI.yml for Azure Pipelines

* revert changes to Linux and Mac CIs

* delete last travis file

Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

* Fix shape inference of scalar ConstantOfShape (onnx#3005)

When input shape is (0), we do not add any dim to inferred
shape but we should initialize tensor_type.shape by calling
mutable_shape().

Co-authored-by: Ashwini Khade <askhade@microsoft.com>
Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

* fix shape inference for loop (onnx#3014)

Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

* Fix ConvTranspose: enhance attribute check (onnx#3000)

* add check for using auto_pad and pads simultaneously

* fix description for auto_pads == SAME_UPPER

* update docs for operator

* fix the old one as well

* add a test

* Revert "fix description for auto_pads == SAME_UPPER"

This reverts commit e75e287.

* Revert "update docs for operator"

This reverts commit 70952c0.

* Revert "fix the old one as well"

This reverts commit 8a0482d.

Co-authored-by: Ashwini Khade <askhade@microsoft.com>
Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

* Schema change to support dynamic shapes in ORT (onnx#2955)

* Changes to schema and python tests

* Modify test

* Remove attribute that is input also

* Changes to optimizers, adapters and tests

* Run flake8

* undo unrequired comit files, fix formatting, review changes

* Fix ci test, cleanup

* Fix narrowing conversion error

* add missed test model

Co-authored-by: G. Ramalingam <grama@microsoft.com>
Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

* fix loop shape inference for ver 11 (onnx#3023)

Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

* Update softmax family ops behavior to align with other frameworks (fix onnx#2289) (onnx#2879)

* Update softmax family ops behavior to align with other frameworks

* Update logsoftmax, hardmax tests, regenerate docs and test data

* fix wrong input name in function

* regenerate test data

* fix flake8 error

* regenerate docs

* regenerate docs

* add missing type annotation for hardmax

* add the math for softmax family operators

* remove the 'description' field in docs as it is covered by the math

* fix wrong format in axis attr

* replace name with description

* restore the name field for axis attr

* regenerate docs

* regenerate docs

* add the missing name

* regenerate docs

* update reducesum to align with master

* regenerate tests

Co-authored-by: Wei-Sheng Chin <wschin@outlook.com>
Signed-off-by: Chun-Wei Chen <jacky82226@gmail.com>

Co-authored-by: G. Ramalingam <grama@microsoft.com>
Co-authored-by: Ke Zhang <linkerzhang@yeah.net>
Co-authored-by: Ashwini Khade <askhade@microsoft.com>
Co-authored-by: Vinitra Swamy <vinitras@gmail.com>
Co-authored-by: Shinichiro Hamaji <shinichiro.hamaji@gmail.com>
Co-authored-by: ashbhandare <ash.bhandare@gmail.com>
Co-authored-by: daquexian <daquexian566@gmail.com>
Co-authored-by: Wei-Sheng Chin <wschin@outlook.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants