-
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
Connections created by splitter and passthrough removal do not respect seeds #210
Labels
Comments
Related note to self: passthrough removal is also non-deterministic because it returns a set (unordered) and then loops through that to add the connections. |
Merged
hunse
pushed a commit
that referenced
this issue
Apr 3, 2019
Most of the work done by the splitter is now done in the builder. This should give more clarity and control over the mapping between pre-build and post-build objects. The `SplitterDirective` class takes on the organizational tasks of the old `Splitter`, giving directives to the builder about what should be on- or off-chip. Also: - Add unit tests for splitter refactoring. - Raise `BuildError` if learning objects are on_chip. Fixes #208 and #209. - Pass no decoder cache to sub-models. Decoder cache wasn't working due to lack of context manager which is normally constructed by the top-level network build. Fixes #207. - Various improvements to passthrough removal, including not removing useful passthrough nodes. Outstanding issues include: #210, #212, #213 - Handle sliced probes. Closes #205. - Check that splitter handles sliced probes. Closes #206. - Test that splitter does not mutate network. Closes #211.
hunse
pushed a commit
that referenced
this issue
Apr 3, 2019
Most of the work done by the splitter is now done in the builder. This should give more clarity and control over the mapping between pre-build and post-build objects. The `SplitterDirective` class takes on the organizational tasks of the old `Splitter`, giving directives to the builder about what should be on- or off-chip. Also: - Add unit tests for splitter refactoring. - Raise `BuildError` if learning objects are on_chip. Fixes #208 and #209. - Pass no decoder cache to sub-models. Decoder cache wasn't working due to lack of context manager which is normally constructed by the top-level network build. Fixes #207. - Various improvements to passthrough removal, including not removing useful passthrough nodes. Outstanding issues include: #210, #212, #213 - Handle sliced probes. Closes #205. - Check that splitter handles sliced probes. Closes #206. - Test that splitter does not mutate network. Closes #211.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
May post code later to demonstrate. But network seeding happens before splitting / passthrough removal, and all of the connections it creates do not set any seeds. An example of how this can be a problem: a connection through a passthrough node may use a seed to fix the eval points + decoders. Removing that connection and replacing it with an unseeded connection means they are no longer fixed.
The text was updated successfully, but these errors were encountered: