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

Allow 'same' padding for convolution #297

Merged
merged 5 commits into from Dec 13, 2021
Merged

Allow 'same' padding for convolution #297

merged 5 commits into from Dec 13, 2021

Conversation

hunse
Copy link
Collaborator

@hunse hunse commented Sep 10, 2020

This allows "same" padding to be used with nengo.Convolution.

TODO:

  • More testing (e.g. in test_conv_deepnet)

@hunse hunse force-pushed the same-padding branch 2 times, most recently from bed1098 to c724ed7 Compare October 13, 2020 20:48
@hunse
Copy link
Collaborator Author

hunse commented Oct 13, 2020

Added an error for the case shown in #298

@hunse
Copy link
Collaborator Author

hunse commented Oct 14, 2020

This depends on #296

@hunse hunse mentioned this pull request Oct 23, 2020
@hunse hunse force-pushed the same-padding branch 2 times, most recently from db1ed40 to b244ec4 Compare January 11, 2021 20:41
@hunse
Copy link
Collaborator Author

hunse commented Jan 11, 2021

Requires nengo/nengo#1648 for the fix to npconv2d padding for the test, so I think it's easier to just merge this as part of #300.

Copy link
Member

@tbekolay tbekolay left a comment

Choose a reason for hiding this comment

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

Made some fixups so that we always test on both Nengo master and release, and changed the require_partition helper to a pytest marker as we were only using require_partition to have multichip snips work.

We are getting some random test failures even with these changes, but I've run those tests manually on INRC and they pass when things don't get desynced, so I'm going to merge even if we get some desyncs in this final test run.

hunse and others added 5 commits December 13, 2021 10:55
Also change test_pop_tiny with ``channels_last=False`` to properly
order the biases and thus properly test with the channels first.
These are not supported, but were failing with cryptic errors.
The padding now matches `nengo._vendor.npconv2d` exactly.

Also clean up convolution code.
We test against master and release for the emulator, and
only master for hardware since it's expensive to run.
@tbekolay
Copy link
Member

It's still intermittently failing and/or stalling, but I'm at least convinced that it's (mostly) INRC environment issues, so I'm going to merge regardless. We can clean up any issues when all the v1.1.0 PRs are in.

@tbekolay tbekolay merged commit f896b72 into master Dec 13, 2021
@tbekolay tbekolay deleted the same-padding branch December 13, 2021 20:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants