This small project is to translate Brian 1 code from Paper "Unsupervised learning of digit recognition using spike-timing-dependent plasticity" written by PU Diehl to Brian 2 version.
- Brian 2
- MNIST datasets, which can be downloaded from http://yann.lecun.com/exdb/mnist/.
- The data set includes four gz files. Extract them after you downloaded them.
- Run the main file "Diehl&Cook_spiking_MNIST_Brian2.py". It might take hours depending on your computer
- After the previous step is finished, evaluate it by running "Diehl&Cook_MNIST_evaluation.py".
- modify the main file "Diehl&Cook_spiking_MNIST_Brian2.py" by changing line 214 to "test_mode=False" and run the code.
- The trained weights will be stored in the folder "weights", which can be used to test the performance.
- In order to test your training, change line 214 back to "test_mode=True".
- Run the "Diehl&Cook_spiking_MNIST_Brian2.py" code to get the results.