Skip to content

Add flag for computing topological depths of neurons before post-processing #41

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

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

neumannjan
Copy link

Added an optional flag (disabled by default) that allows computing topological depths of neurons even without dropout enabled.

Found (and fixed) a bug that when the depth computation is run, ISO value compression then fails.

@GustikS
Copy link
Owner

GustikS commented Jan 8, 2024

Nice! but adding new fields to the base neuron class just for this is an overkill, that's why I was reusing the depth field - there are millions of neurons and we want to save every bit of space (perhaps let's discuss on Thursday). Thanks!

@neumannjan
Copy link
Author

In that case a wrapper class could be used for the neurons when running the topological ordering – that way the "topoState" field would exist only throughout the duration of the ordering algorithm itself.

The depth field cannot be reused since it is already used for the actual layer values. By reusing the layer field, you not only overwrite the layer data, but the iso compression breaks during the topological ordering because the (layer == DEFAULT) check returns false for nearly all neurons (even though it is supposed to return true for all of them at the start of the topological sort).

However, it is possible that the layer value computation will not be needed

@GustikS
Copy link
Owner

GustikS commented Jan 8, 2024

Great! Yes, I agree, a wrapper or hashmap or something like that living in the local scope only. Thanks!

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.

2 participants