Python framework is designed for creating spiking neural networks and converting artificial neural networks into spiking networks. Resulting spiking neural networks are trained with synaptic plasticity methods and can be executed on a central processor, an AltAI-1 neuromorphic processing unit, or a software emulator of the latter. Artificial neural networks converted into spiking networks with ANN2SNN
package ternary layers are trained through backpropagation that considers the limitations of the AltAI-1 neuromorphic processing unit. Resulting neural networks are adapted for execution on the AltAI-1 neuromorphic processing unit, or a software emulator of the latter.
Python framework is a set of independent units that manage backends, transform the neural network representation into various formats, and select the optimal neural network to run. Python framework implements functions that do not directly relate to training and execution of spiking neural networks.
Using the Python framework for Kaspersky Neuromorphic Platform, you can dynamically load various backends.
The Python framework is implemented in the python-framework
module. The table below contains descriptions of the Python framework components.
Python framework components
Component |
Description |
---|---|
A package that implements ternary layers of a neural network. |
|
A namespace that implements an interface for accessing the input channel. |
|
A namespace that implements an interface for accessing the output channel. |
|
A namespace that contains functions to load and save the neural network in the |
|
A class that implements a dynamic library loader. |
|
A class that implements the |
|
A class that implements the model. |
|
A class that implements a model executor. |
|
A class that implements the model loader. |
|
A class that implements a neural network object. |
|
A class that implements the |