Skip to content
Implementation of the paper Homeostatic plasticity in Bayesian spiking networks as Expectation Maximization with posterior constraints by Habenschuss et al.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
presentations
.gitignore
LICENSE
MNIST_statistics.ipynb
README.md
bars_binary.py
coding_efficiency.py
data_generator.py
mnist_binary.py
mnist_binary_epsp.py
mnist_binary_local.py
mnist_binary_reconstruction.py
mnist_continuous.py
network.py
plot.py
utility.py
weights.gif
weights_pca.gif

README.md

Implementation of the paper Homeostatic plasticity in Bayesian spiking networks as Expectation Maximization with posterior constraints by Habenschuss et al. This paper gives learning rules for a spiking neural network just based on Bayesian reasoning; therefore, the method can be used for unsupervised training of networks.

Contains code to runs different experiments on the proposed model and also on a model that is based not on a Binomial but Gaussian input distribution.

The code was written and the experiments conducted during a one week lasting seminar at the Max-Planck Institute for Dynamics and Self-Organization in 2019.

Key insights

  • eta_b has to be sufficiently large, otherwise homeostasis is not strong enough to keep r similar for all output neurons
  • Even though the paper claims that a factor of 10 between the learning rates is sufficient, we find out that A_k(V) contributes exponentially while b_k contributes only linearly. Therefore, a factor of ten between eta_V and eta_b is not always optimal.
  • Too few neurons for causes lead to learning of superposition states
  • Network can reconstruct images is was not trained on

When images of digits between zero and five with the same ratio are shown to a network with 12 output neurons, for each class two neurons that are class-receptive arise. The neurons slowly learn to react to one of the input types. Visualization of the learning process

Visualization of the learning process

You can’t perform that action at this time.