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

Release 0.1.0/sparsify 2019 02 18 #11

Merged
merged 8 commits into from
Feb 19, 2019

Conversation

stephenjfox
Copy link
Owner

  • Please check if the PR fulfills these requirements
  • The commit message follows the guidelines
  • Tests for the changes have been added (for bug fixes / features)
  • Docs have been added / updated (for bug fixes / features)
  • What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
    Prove that sparsify does what it should do, and that there's a way to prune for the rest of the implementation.

  • What is the current behavior? (You can also link to an open issue here)
    Nothing of the sort.

  • What is the new behavior (if this is a feature change)?
    Uniform shrinking of the network is actually trivial. Shrinking based on sparsity is much more troublesome, but also not technically infeasible.

  • Does this PR introduce a breaking change? (What changes might users need to make in their application due to this PR?)

no

  • Other information:

PyTorch's boolean comparison crap isn't useful and makes
  it a pain to test exact tensor values.
* Will resume later
It's a painfully simple function that has worked every time
  I've used it.
- No it doesn't handle every edge case
+ Yes, it gets the job done and can be packaged for the general case
It was as easy as I wanted it to be.
* The complexity is how to handle a given nested layer
  + Those will get implemented with a given feature
  - Need to program feature detection

TODO:
+ Implement the resizing on a layer-by-layer case, to
  make the shrinking a bit different
  + Instead of applying the data transformation uniformly,
    each layer gets
  + Those factors will be computed as 1 - percent_waste(layer)
> The thought is that channel depth doesn't change the output dimensions for CNNs, and that's
  attribute we're concerned with in the convulotional case...
  * Linear layers only have two dimensions, so it's a huge deal there.
  * RNNs do linear things over 'timesteps', so it's a big deal there.
  * Residual/identity/skip-connections in CNNs need this.

> __It's decided__. The attribute stays
@stephenjfox stephenjfox added this to In progress in Official Alpha Launch via automation Feb 19, 2019
@stephenjfox
Copy link
Owner Author

This PR completes #4

@stephenjfox stephenjfox changed the base branch from master to release/v0.1.0 February 19, 2019 04:10
@stephenjfox stephenjfox merged commit 57d0433 into release/v0.1.0 Feb 19, 2019
Official Alpha Launch automation moved this from In progress to Done Feb 19, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Development

Successfully merging this pull request may close these issues.

None yet

1 participant