This repo provides tools for using spiking neural networks for machine learning problems. Spiking neural networks are the most powerfull class of neural network models and are referred to as third generation neural net models by Maas 1997.
Spiking neurons model the dynamics of the biological neurons much better than the rate neurons used in classical neural networks. There are a number of spiking neurons that have been developed since the 20th century. One notable model in computational neurooscience is the Hodgkin-Huxley model presented by Hodgkin and Huxley in 1952. Many other models have been developed by simplication of the Hodgkin-Huxley model. It can also be observed that the earliest published neuron model, the Integrate and fire neuron of 1905, is a simpliification of the Hodgkin-Huxley model.
This project uses the following neuron models to build networks of spiking neurons:
- Fitzhugh-Nagumo (1961)
- Leaky integrate-and-fire (1965)
- Quadratic integrate-and-fire (1986)
- Izhikevich model (2003)
The following are the learning methods used in this project to train neural networks on various tasks:
- Supervised Learning
- Unsupervised Learning
- Reinforcement Learning
- STDP Learning Rule
Spiking neural networks have been used in many different areas of information processing, and neural coding. In this project the spiking neural networks are applied to the following applications:
- Handwritten Digit recognition
- Image Recognition
- Motor control