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

Implementation of powerpropagation as a modifier #1685

Merged
merged 48 commits into from
Nov 20, 2023
Merged

Implementation of powerpropagation as a modifier #1685

merged 48 commits into from
Nov 20, 2023

Conversation

ohaijen
Copy link
Contributor

@ohaijen ohaijen commented Jul 24, 2023

Implement Powerpropagation (raising weights to a power in forward pass), see https://arxiv.org/abs/2110.00296

The functionality is implemented as a Modifier that, when activated, wraps pruned modules (for now, only Conv2d or Linear, but can easily be extended later) in a PowerpropagationWrapper, which does the exponentiation. Once the modifier is deactivated, the architecture change is undone.

Testing: wrote new tests, including for the architecture change and corresponding weight updates. Ran a few epochs on imagenet to make sure that training was looking OK (loss going down/accuracy going up).

@ohaijen ohaijen requested a review from anmarques July 24, 2023 14:33
@ohaijen ohaijen marked this pull request as ready for review August 10, 2023 12:28
abhinavnmagic
abhinavnmagic previously approved these changes Oct 4, 2023
anmarques
anmarques previously approved these changes Oct 24, 2023
@ohaijen ohaijen dismissed stale reviews from anmarques and abhinavnmagic via 3dadd5b October 25, 2023 10:49
@ohaijen ohaijen merged commit 26e1893 into main Nov 20, 2023
11 of 12 checks passed
@ohaijen ohaijen deleted the powerprop branch November 20, 2023 23:57
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.

3 participants