-
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 <sumedh.risbud@intel.com> * 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 <sumedh.risbud@intel.com> * Removed the utility to estimate Python object size Signed-off-by: Risbud, Sumedh <sumedh.risbud@intel.com> * Fixed Runtime unittest to accommodate passing an explicit ProcessList to the Executable Signed-off-by: Risbud, Sumedh <sumedh.risbud@intel.com> * Removed unused import Signed-off-by: Risbud, Sumedh <sumedh.risbud@intel.com> * 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 <32519998+PhilippPlank@users.noreply.github.com> * 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] <support@github.com> 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] <support@github.com> 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] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: PhilippPlank <32519998+PhilippPlank@users.noreply.github.com> * [QUBO] Solution readout via spikeIO for multi-chip support (#820) * 32bit receiver * linting --------- Co-authored-by: Risbud, Sumedh <sumedh.risbud@intel.com> * 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] <support@github.com> 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] <support@github.com> 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] <support@github.com> 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 <32519998+PhilippPlank@users.noreply.github.com> Co-authored-by: Philipp Plank <philipp.plank@intel.com> * 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 <ghassen.karray@intel.com> * 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] <support@github.com> 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] <support@github.com> 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 <bam_sumit@hotmail.com> Co-authored-by: PhilippPlank <32519998+PhilippPlank@users.noreply.github.com> * Fixed/updated poetry.lock to match the TOML file Signed-off-by: Risbud, Sumedh <sumedh.risbud@intel.com> * Delinting Signed-off-by: Risbud, Sumedh <sumedh.risbud@intel.com> * Fixed a unittest by adding .name attribute to a Mock object Signed-off-by: Risbud, Sumedh <sumedh.risbud@intel.com> --------- Signed-off-by: Risbud, Sumedh <sumedh.risbud@intel.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: Ghassen Karray <36999864+gkarray@users.noreply.github.com> Co-authored-by: PhilippPlank <32519998+PhilippPlank@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: smm-ncl <145007783+smm-ncl@users.noreply.github.com> Co-authored-by: Philipp Stratmann <86950058+phstratmann@users.noreply.github.com> Co-authored-by: Philipp Plank <philipp.plank@intel.com> Co-authored-by: gkarray <ghassen.karray@intel.com> Co-authored-by: Jannik Luboeinski <33398515+jlubo@users.noreply.github.com> Co-authored-by: Zeyu Liu <liuzeyu@usc.edu> Co-authored-by: bamsumit <bam_sumit@hotmail.com>
* 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
Hi @jlubo, was the NC process model ever integrated into Lava-Loihi? I can not find it either in the latest version (v0.7.0) or the dev version. |
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
--