-
Notifications
You must be signed in to change notification settings - Fork 12
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
Update connections to work with new Transform API #142
Conversation
68480e4
to
e39c54b
Compare
Rebased this to master, and added support for |
|
72afaa7
to
28adc10
Compare
b76333f
to
e267b8e
Compare
" layer, conv = conv_layer(layer, 6, conv.output_shape, strides=2)\n", | ||
" layer, conv = conv_layer(layer, 24, conv.output_shape, strides=2)\n", | ||
" layer, conv = conv_layer(layer, 6, conv.output_shape, \n", | ||
" strides=(2, 2))\n", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It'd be nice to be able to pass an int and have it broadcast like before, since in my experience almost all the time you want the same strides in both directions. I realize that a) this would be a Nengo change and b) it would make it different than kernel_size
which needs a tuple (since that specifies the number of dimensions for the convolution). I just wanted to raise the point here.
ca5456f
to
b9f3088
Compare
Also fix the passthrough logic for non-array transforms. This is backwards compatibile with Nengo 2.8 transforms, where we did not have Transform types (all transforms were arrays).
0271a86
to
803dded
Compare
And update the MNIST example with new syntax and parameter files. This is not backwards compatible: We do not support the new convolution code with older Nengo, since much of the supporting code is in new Nengo. However, this is not a significant regression, since convolution only worked briefly with old Nengo.
Also separate builds into basic and advanced stages. This also makes test_learning.test_multiple_pes more robust; lenthening the runtime seems to make it fail much less often.
This gets all the tests passing with nengo master. Note that this does not support the new Convolution transforms, it just brings the existing nengo-loihi functionality up-to-date with nengo core. There are still several open PRs related to the nengo-loihi convolution implementation, so I figured I would wait for those to be resolved before trying to apply those changes.
Also note that right now I've done this in a non-backwards-compatible way (i.e. it does not work with nengo 2.8.0). Since nengo-loihi is pretty "in development", requiring the most up-to-date version of Nengo (assuming there is a new nengo release before the next nengo-loihi release) seems reasonable. But we could make it backwards compatible, it just adds a little extra complexity and maintenance burden.
TODO: