-
Notifications
You must be signed in to change notification settings - Fork 52
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
[MRG] Convert params to hdf5 #723
[MRG] Convert params to hdf5 #723
Conversation
Codecov ReportAttention: Patch coverage is
❗ Your organization needs to install the Codecov GitHub app to enable full functionality. Additional details and impacted files@@ Coverage Diff @@
## master #723 +/- ##
=======================================
Coverage 92.64% 92.64%
=======================================
Files 27 27
Lines 4893 4908 +15
=======================================
+ Hits 4533 4547 +14
- Misses 360 361 +1 ☔ View full report in Codecov by Sentry. |
import tempfile | ||
|
||
|
||
def download_folder_contents(owner, repo, path): |
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.
you pooch
?
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.
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.
If it's stable and reduces the amount of code then perhaps it can be included under the [dev]
install flag
But considering it would only remove this small function I'm inclined to keep this as is
Are we sure we want to convert all current param files to hdf5? Since most the param files use one of 2 or 3 different network configurations, what if we simply convert those networks to hdf5 and use the API to specify the drives as set by the various param files? On a broader note, the original param files were designed to specify both network and drive properties whereas the hdf5 files were designed to specify network properties. Of course, a network can contain drive properties as well, but I believe we should push users, particularly in tutorials, to load general-purpose network instances and then use the API to add drives. Maybe @jasmainak @ntolley disagree though? |
I agree @rythorpe . Perhaps it's worth drawing a clear distinction between |
@rythorpe Note that on GUI launch the default parameters are loaded, so there will already be a connectivity and set of drives present. Which base network config is the default based from? Should we be more explicit what the default actually is? |
Not quite. The tutorials for the old GUI modeling gamma, alpha/beta, and evoked potentials (which we're now trying to replicate in the new GUI) all use variants of the My suggestion is twofold: 1) for tutorials, always use the API to instantiate network models, and 2) build in the functionality for users to save/load hdf5 network instantiations if/when they wish to use them. Since the .param files distributed w/ hnn-core were designed to reproduce specific tutorial use-cases, we can discard them in favor of showcasing our API. The one exception is that we might want to make and distribute an hdf5 version of the "default" network (i.e., compiled from
Default is currently |
@rythorpe
Let me know if I have any of that wrong. |
I think this can be done with the "Load network connectivity" button on the "Network connectivity" tab, no?
At some point, yes. For now though, perhaps just getting the tutorials to work with
Yes!
Yes! |
That is currently a file load button. So you would need to load a file like hdf5. If we move towards using just the API to load base networks this would have to be converted to a selector (likely dropdown) for a limited set of base networks. In summary here's one potential solution:
|
I really like that solution. Perhaps we can pitch it to Stephanie and the team at our next developer's mtg to get their take because we really want to make sure it will work smoothly for workshops, etc. |
e84b9f1
to
c390a1f
Compare
@rythorpe For this current PR I'm only going to add the default.hdf5 to the params directory. Other param file hdf5 conversions will be contained in a separate repo hnn-data. |
96feee0
to
1d795fe
Compare
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.
@gtdang this looks great to me! happy to merge if you're all set on your end
All set on my end! Go for it! |
Great work @gtdang!! 🎉 🎉 |
Questions
closes #713