Getting Started with Lava
This guide to programming Lava will provide a growing collection of learning resources to help you become a Lava developer! It will cover all aspects of Lava enabling you to create, compile, execute and understand Lava Processes. Review the Lava Architecture section for an introduction to the fundamental architectural concepts of Lava.
- Installing Lava
- Walk through Lava
- Processes
- ProcessModels
- Execution
- Connect processes
- Hierarchical Processes and SubProcessModels
- Recommended tutorials before starting:
- Create LIF and Dense Processes and ProcessModels
- Create a DenseLayer Hierarchical Process that encompasses Dense and LIF Process behavior
- Create a SubProcessModel that implements the DenseLayer Process using Dense and LIF child Processes
- Run the DenseLayer Process
- How to learn more?
- Remote Memory Access
- MNIST Digit Classification with Lava
- Excitatory-Inhibitory Neural Network with Lava
- This tutorial assumes that you:
- This tutorial gives a high level view of
- E/I Network
- General imports
- E/I Network Lava Process
- ProcessModels for Python execution
- Defining the parameters for the network
- Execution and Results
- Visualizing the activity
- Further analysis
- Controlling the network
- Execution and Results
- Visualizing the activity
- Controlling the network
- DIfferent recurrent activation regimes
- Execution of bit accurate model
- Follow the links below for deep-dive tutorials on the concepts in this tutorial:
- Spike-timing Dependent Plasticity (STDP)
- Custom Learning Rules
- This tutorial assumes that you:
- Epoch-based updates
- Synaptic variables
- Learning rules
- Dependencies
- Scaling factors
- Factors
- Traces
- Example: Basic pair-based STDP
- Instantiating LearningRule
- The plastic connection Process
- Plot spike trains
- Plot traces
- Plot STDP learning window and weight changes
- Follow the links below for deep-dive tutorials on the concepts in this tutorial:
- Three Factor Learning with Lava
- This tutorial assumes that you:
- Reward-modulated Spike-Timing Dependent Plasticity (R-STDP) learning rule
- Initialize network parameters and weights
- Generate binary input and graded reward spikes
- Initialize Network Processes
- Plot eligibility trace dynamics
- Plot reward trace dynamics
- Follow the links below for deep-dive tutorials on the concepts in this tutorial: