-
Notifications
You must be signed in to change notification settings - Fork 144
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
ATRLIF neuron model #846
ATRLIF neuron model #846
Conversation
…r notebook to demonstrate the properties of the ATRLIF neuron
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.
This looks good. Thanks for the contribution.
Just some minor changes to be open. I will push for a second reviewer to look over the PR in the next days.
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.
I have nothing to add, everything looks nice. There are tests and even a tutorial. Thanks.
@PhilippPlank @weidel-p thanks for reviewing. I've pushed the adjustments you asked for, so I guess it can be merged now. Regarding the NC process model, do you want to integrate this into Lava-Loihi? How can we proceed for that? |
@jlubo Could you please update the branch with main? I had to fix a CI problem and this is now blocking this PR. Thanks! |
* Explicitly keep track of all Processes in the Executable to make sure all Processes are assigned the Runtime Signed-off-by: Risbud, Sumedh <[email protected]> * A utility to measure the size of a python object recursively. Useful for example, to measure the size of NxBoard object after compilation Signed-off-by: Risbud, Sumedh <[email protected]> * Removed the utility to estimate Python object size Signed-off-by: Risbud, Sumedh <[email protected]> * Fixed Runtime unittest to accommodate passing an explicit ProcessList to the Executable Signed-off-by: Risbud, Sumedh <[email protected]> * Removed unused import Signed-off-by: Risbud, Sumedh <[email protected]> * LearningDense bit-accurate (#812) * minor change in dependency computation * updating stochastic round type hint * small fix in clip_weights * progress in making tests pass * fixing Sparse init * trying tests * adapting init method of LearningDense Process --------- Co-authored-by: PhilippPlank <[email protected]> * Bump fonttools from 4.41.1 to 4.43.0 (#824) Bumps [fonttools](https://github.com/fonttools/fonttools) from 4.41.1 to 4.43.0. - [Release notes](https://github.com/fonttools/fonttools/releases) - [Changelog](https://github.com/fonttools/fonttools/blob/main/NEWS.rst) - [Commits](fonttools/fonttools@4.41.1...4.43.0) --- updated-dependencies: - dependency-name: fonttools dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump gitpython from 3.1.37 to 3.1.41 (#825) Bumps [gitpython](https://github.com/gitpython-developers/GitPython) from 3.1.37 to 3.1.41. - [Release notes](https://github.com/gitpython-developers/GitPython/releases) - [Changelog](https://github.com/gitpython-developers/GitPython/blob/main/CHANGES) - [Commits](gitpython-developers/GitPython@3.1.37...3.1.41) --- updated-dependencies: - dependency-name: gitpython dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * SigmaS4Delta Neuronmodel and Layer with Unittests (#830) * first wokring version * S4D model cleaned * update license * fix imports * linting * incorporate reviews * update docstring * Bump pillow from 10.0.1 to 10.2.0 (#832) Bumps [pillow](https://github.com/python-pillow/Pillow) from 10.0.1 to 10.2.0. - [Release notes](https://github.com/python-pillow/Pillow/releases) - [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst) - [Commits](python-pillow/Pillow@10.0.1...10.2.0) --- updated-dependencies: - dependency-name: pillow dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: PhilippPlank <[email protected]> * [QUBO] Solution readout via spikeIO for multi-chip support (#820) * 32bit receiver * linting --------- Co-authored-by: Risbud, Sumedh <[email protected]> * Bump cryptography from 41.0.6 to 42.0.0 (#834) Bumps [cryptography](https://github.com/pyca/cryptography) from 41.0.6 to 42.0.0. - [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst) - [Commits](pyca/cryptography@41.0.6...42.0.0) --- updated-dependencies: - dependency-name: cryptography dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump cryptography from 42.0.0 to 42.0.2 (#836) Bumps [cryptography](https://github.com/pyca/cryptography) from 42.0.0 to 42.0.2. - [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst) - [Commits](pyca/cryptography@42.0.0...42.0.2) --- updated-dependencies: - dependency-name: cryptography dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump cryptography from 42.0.2 to 42.0.4 (#837) Bumps [cryptography](https://github.com/pyca/cryptography) from 42.0.2 to 42.0.4. - [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst) - [Commits](pyca/cryptography@42.0.2...42.0.4) --- updated-dependencies: - dependency-name: cryptography dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Spiker with 32bit * Alternative to Injector/Extractor Processes (#835) * prototype implementing injector/extractor function, not wrapped in a Process * modified injector and extractor classes * fixed linting --------- Co-authored-by: PhilippPlank <[email protected]> Co-authored-by: Philipp Plank <[email protected]> * fix security issues * Fix workflows (#844) * prototype implementing injector/extractor function, not wrapped in a Process * modified injector and extractor classes * fixed linting * fix workflows --------- Co-authored-by: gkarray <[email protected]> * Bump pillow from 10.2.0 to 10.3.0 (#847) Bumps [pillow](https://github.com/python-pillow/Pillow) from 10.2.0 to 10.3.0. - [Release notes](https://github.com/python-pillow/Pillow/releases) - [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst) - [Commits](python-pillow/Pillow@10.2.0...10.3.0) --- updated-dependencies: - dependency-name: pillow dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump idna from 3.6 to 3.7 (#848) Bumps [idna](https://github.com/kjd/idna) from 3.6 to 3.7. - [Release notes](https://github.com/kjd/idna/releases) - [Changelog](https://github.com/kjd/idna/blob/master/HISTORY.rst) - [Commits](kjd/idna@v3.6...v3.7) --- updated-dependencies: - dependency-name: idna dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Update ci.yml (#853) * ATRLIF neuron model (#846) * added process and CPU process models of ATRLIF neuron; added a Jupyter notebook to demonstrate the properties of the ATRLIF neuron * testing of the tutorial * tests for process and model added; copyright notes added; cleanup * codacy-related fixed * comment formatting and copyright notices adjusted * Add the models and process of conv_in_time in src/lava/proc/conv_in_time (#833) * add the models and process of conv_in_time in src/lava/proc/conv_in_time * remove unused library * remove Trailing whitespace * add unittest for conv in time and related pytorch ground truth * add fixed_pt version of conv in time * change input to spike_input * add from lava.proc.conv import utils * remove unwanted comments * fixed some linting errors * Start all comments with upper case character & change the year for all copyright headers to 2024 for new files * remove whitespace * continuation line under-indented * Trailing whitespace * shorten variables names --------- Co-authored-by: bamsumit <[email protected]> Co-authored-by: PhilippPlank <[email protected]> * Fixed/updated poetry.lock to match the TOML file Signed-off-by: Risbud, Sumedh <[email protected]> * Delinting Signed-off-by: Risbud, Sumedh <[email protected]> * Fixed a unittest by adding .name attribute to a Mock object Signed-off-by: Risbud, Sumedh <[email protected]> --------- Signed-off-by: Risbud, Sumedh <[email protected]> Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: Ghassen Karray <[email protected]> Co-authored-by: PhilippPlank <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: smm-ncl <[email protected]> Co-authored-by: Philipp Stratmann <[email protected]> Co-authored-by: Philipp Plank <[email protected]> Co-authored-by: gkarray <[email protected]> Co-authored-by: Jannik Luboeinski <[email protected]> Co-authored-by: Zeyu Liu <[email protected]> Co-authored-by: bamsumit <[email protected]>
* added process and CPU process models of ATRLIF neuron; added a Jupyter notebook to demonstrate the properties of the ATRLIF neuron * testing of the tutorial * tests for process and model added; copyright notes added; cleanup * codacy-related fixed * comment formatting and copyright notices adjusted
This adds to the Lava process library a Leaky Integrate-and-Fire neuron with adaptive threshold and adaptive refractoriness (ATRLIF neuron). Both a floating- and a fixed-point CPU process model implementation are contained.
I also have a working NC process model, based on microcode from Lava-DL, which I kindly received from @bamsumit. For that, I'd like to know how to proceed to integrate the model into Lava-Loihi.
As a side note, the neuron model has already been integrated into Brian2Lava.
Pull request checklist
Your PR fulfills the following requirements:
flakeheaven lint src/lava tests/
) and (bandit -r src/lava/.
) pass locallypytest
) passes locally (except fortutorial02_processes.ipynb
, for unknown reasons)Pull request type
What is the current behavior?
--
What is the new behavior?
Does this introduce a breaking change?
Supplemental information
--