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

Add Bouhadjar sequence learning network tutorial #1026

Merged
merged 127 commits into from
Dec 12, 2024

Conversation

clinssen
Copy link
Contributor

@clinssen clinssen commented Apr 19, 2024

Should be merged after #1027.

  • Add the following notes:
    lambda_plus is increasing facilitation: too many daps, decrease facilitation!
    lambda_minus is increasing depression: too many daps, increase depression!
    if you see overlap, increase lambda_h a bit
    
  • eliminate the use of the "parameters" Python package

C.A.P. Linssen added 30 commits May 10, 2023 16:01
Copy link

github-actions bot commented Oct 16, 2024

🐰 Bencher Report

Branch1026/merge
Testbedubuntu-latest

⚠️ WARNING: No Threshold found!

Without a Threshold, no Alerts will ever be generated.

Click here to create a new Threshold
For more information, see the Threshold documentation.
To only post results if a Threshold exists, set the --ci-only-thresholds CLI flag.

Click to view all benchmark results
BenchmarkLatencynanoseconds (ns)
tests/nest_continuous_benchmarking/test_nest_continuous_benchmarking.py::TestNESTContinuousBenchmarking::test_stdp_nn_synapse📈 view plot
⚠️ NO THRESHOLD
4,012,252,605.60
🐰 View full continuous benchmarking report in Bencher

@clinssen
Copy link
Contributor Author

clinssen commented Nov 5, 2024

It seems as though the second line in the following snippet from the notebook causes an extreme memory consumption:

connections = nest.GetConnections(synapse_model=...)
connections.set({'Wmin': connections.weight})

There are around 165000 connections.

Edit: spun off to nest/nest-simulator#3359.

@clinssen clinssen requested a review from pnbabu November 7, 2024 00:16
@clinssen clinssen marked this pull request as ready for review November 7, 2024 00:16
Copy link
Contributor

@pnbabu pnbabu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this excellent tutorial! I have a few minor comments:

  • When you describe the different terms in the STDP rule in the text, could you refer to the equation by number? For example, the second term on the right-hand side in (1)...
  • Any reason behind setting the number of threads to 1?
  • Under "Generating code with NESTML", do we need the try and except?
    • Remove the following lines
"""module_name = "/tmp/nestml_target_68digoes/nestml_27fd8d9de14b408f9e6181b2f2310d41_module.so"
neuron_model_name = "iaf_psc_exp_nonlineardendrite_neuron_nestml__with_stdsp_synapse_nestml"
synapse_model_name = "stdsp_synapse_nestml__with_iaf_psc_exp_nonlineardendrite_neuron_nestml" """
  • The fig just before Experiment 2 is a bit hard to read. Can the three panels be a bit further apart?

@clinssen
Copy link
Contributor Author

@pnbabu: much obliged for the review! I have cleaned up the notebook and the neuron model; this should address all your comments.

@YounesBouhadjar
Copy link
Contributor

YounesBouhadjar commented Dec 8, 2024

I have created a PR to your fork @clinssen with an update of the notebook.
Mainly minor things, except that I had to restructure a bit the third experiment,
for example, by adding new subtitles and changing the order of the subsections.

Remained to be done:

  1. Add "taken from [1]" to the concerned figures.
  2. We could add a legend describing the dashed and solid lines to the figure under experiment 1 showing the active dendrite simulations.
  3. Could it be useful to provide the requirements of the packages to be installed? especially nest version? I saw also that a numpy<2.0.0 version is required.
  4. The nest.Install(module_name) raises an error if called twice or more. A quick fix could be to do: try except

@clinssen
Copy link
Contributor Author

clinssen commented Dec 9, 2024

Thanks very much for the review! The latest changes should address all your comments.

  1. Add "taken from [1]" to the concerned figures.

Done.

  1. We could add a legend describing the dashed and solid lines to the figure under experiment 1 showing the active dendrite simulations.

Done.

  1. Could it be useful to provide the requirements of the packages to be installed? especially nest version? I saw also that a numpy<2.0.0 version is required.

numpy is constrained to be >= 1.8.2. Only sympy is limited (to <1.11) but this should soon be amended (nest/ode-toolbox#77 (comment)).

  1. The nest.Install(module_name) raises an error if called twice or more. A quick fix could be to do: try except

This has been changed starting from NEST 3.7 (I noticed from the log messages in the notebook that you are using 3.6).

Please let me know if this addresses your comments; much obliged!

@clinssen
Copy link
Contributor Author

Thank you for the review!

@clinssen clinssen merged commit bba9d31 into nest:master Dec 12, 2024
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants