Skip to content

Commit

Permalink
new manually-created tutorial page
Browse files Browse the repository at this point in the history
  • Loading branch information
neworderofjamie committed Apr 19, 2024
1 parent 83620b5 commit 5f651a9
Show file tree
Hide file tree
Showing 49 changed files with 1,242 additions and 13,783 deletions.
2 changes: 1 addition & 1 deletion documentation/5/.buildinfo
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: 50012eff81b34f8c34d47502b5f3252f
config: 36093133ad98279596a55ee3a349513e
tags: 645f666f9bcd5a90fca523b33c5a78b7
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.5"
"version": "3.8.12"
}
},
"nbformat": 4,
Expand Down
Binary file not shown.
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.5"
"version": "3.8.12"
}
},
"nbformat": 4,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.5"
"version": "3.8.12"
}
},
"nbformat": 4,
Expand Down
127 changes: 115 additions & 12 deletions documentation/5/_sources/tutorials/index.rst.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,28 +6,131 @@ CompNeuro 101
=============
Building spiking neural network models in GeNN

.. nbgallery::
:name: comp-neuro-101-gallery
:glob:
Neurons
-------
Create a model consisting of a population of Izhikevich neurons with heterogeneous parameters, driven by a stimulus current. Simulate and record state variables.

.. toctree::
:maxdepth: 3

comp_neuro_101/1_neurons.ipynb

.. image:: https://colab.research.google.com/assets/colab-badge.svg
:target: https://colab.research.google.com/github/genn-team/genn/blob/genn_5/docs/tutorials/comp_neuro_101/1_neurons.ipynb

Synapses
--------
Create a simple balanced random network with two, sparsely connected populations of leaky integrate-and-fire neurons. Simulate and record spikes.

.. toctree::
:maxdepth: 3

comp_neuro_101/*
comp_neuro_101/2_synapses.ipynb

.. image:: https://colab.research.google.com/assets/colab-badge.svg
:target: https://colab.research.google.com/github/genn-team/genn/blob/genn_5/docs/tutorials/comp_neuro_101/2_synapses.ipynb

MNIST inference
===============
Perform MNIST inference by converting a pre-trained ANN to an SNN

.. nbgallery::
:name: mnist-inference-gallery
:glob:
Presenting a single image
-------------------------
Create a simple three layer network of integrate-and-fire neurons, densely connected with pre-trained weights. Present a single MNIST image and visualise spiking activity.

.. toctree::
:maxdepth: 3

mnist_inference/tutorial_1.ipynb

.. image:: https://colab.research.google.com/assets/colab-badge.svg
:target: https://colab.research.google.com/github/genn-team/genn/blob/genn_5/docs/tutorials/mnist_inference/tutorial_1.ipynb

Classifying entire test set
---------------------------
Present entire MNIST test set to previous model and calculate accuracy.

.. toctree::
:maxdepth: 3

mnist_inference/*
mnist_inference/tutorial_2.ipynb

.. image:: https://colab.research.google.com/assets/colab-badge.svg
:target: https://colab.research.google.com/github/genn-team/genn/blob/genn_5/docs/tutorials/mnist_inference/tutorial_2.ipynb


Improve classification performance
----------------------------------
Use parallel batching and custom updates to improve inference performance by over 30x compared to previous tutorial.

.. toctree::
:maxdepth: 3

mnist_inference/tutorial_3.ipynb

.. image:: https://colab.research.google.com/assets/colab-badge.svg
:target: https://colab.research.google.com/github/genn-team/genn/blob/genn_5/docs/tutorials/mnist_inference/tutorial_3.ipynb

Insect-inspired MNIST classification
====================================
Train a model of the insect mushroom body using an STDP learning rule to classify MNIST.

.. nbgallery::
:name: mushroom-body-gallery
:glob:
Projection Neurons
------------------
Create the first layer of *Projection Neurons* which convert input images into a sparse temporal code.

.. toctree::
:maxdepth: 3

mushroom_body/*
mushroom_body/1_first_layer.ipynb

.. image:: https://colab.research.google.com/assets/colab-badge.svg
:target: https://colab.research.google.com/github/genn-team/genn/blob/genn_5/docs/tutorials/mushroom_body/1_first_layer.ipynb

Kenyon Cells
------------
Add a second, randomly-connected layer of *Kenyon Cells* to the model.

.. toctree::
:maxdepth: 3

mushroom_body/2_second_layer.ipynb

.. image:: https://colab.research.google.com/assets/colab-badge.svg
:target: https://colab.research.google.com/github/genn-team/genn/blob/genn_5/docs/tutorials/mushroom_body/2_second_layer.ipynb

Kenyon Cell gain control
------------------------
Add recurrent inhibition circuit, inspired by <i>Giant GABAergic Neuron</i> in locusts, to improve sparse coding of the Kenyon Cells.

.. toctree::
:maxdepth: 3

mushroom_body/3_second_layer_gain_control.ipynb

.. image:: https://colab.research.google.com/assets/colab-badge.svg
:target: https://colab.research.google.com/github/genn-team/genn/blob/genn_5/docs/tutorials/mushroom_body/3_second_layer_gain_control.ipynb

Mushroom Body Output Neurons
----------------------------
Add *Mushroom Body Output Neurons* with STDP learning and train model on MNIST training set.

.. toctree::
:maxdepth: 3

mushroom_body/4_third_layer.ipynb

.. image:: https://colab.research.google.com/assets/colab-badge.svg
:target: https://colab.research.google.com/github/genn-team/genn/blob/genn_5/docs/tutorials/mushroom_body/4_third_layer.ipynb

Testing
-------
Create a simplified copy of the model without learning, load in the trained weights and calculate inference accuracy on MNIST test set.

.. toctree::
:maxdepth: 3

mushroom_body/5_testing.ipynb

.. image:: https://colab.research.google.com/assets/colab-badge.svg
:target: https://colab.research.google.com/github/genn-team/genn/blob/genn_5/docs/tutorials/mushroom_body/5_testing.ipynb
17 changes: 3 additions & 14 deletions documentation/5/_static/_sphinx_javascript_frameworks_compat.js
Original file line number Diff line number Diff line change
@@ -1,20 +1,9 @@
/*
* _sphinx_javascript_frameworks_compat.js
* ~~~~~~~~~~
*
* Compatability shim for jQuery and underscores.js.
*
* WILL BE REMOVED IN Sphinx 6.0
* xref RemovedInSphinx60Warning
/* Compatability shim for jQuery and underscores.js.
*
* Copyright Sphinx contributors
* Released under the two clause BSD licence
*/

/**
* select a different prefix for underscore
*/
$u = _.noConflict();


/**
* small helper function to urldecode strings
*
Expand Down
51 changes: 21 additions & 30 deletions documentation/5/_static/basic.css
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
*
* Sphinx stylesheet -- basic theme.
*
* :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS.
* :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS.
* :license: BSD, see LICENSE for details.
*
*/
Expand Down Expand Up @@ -324,17 +324,17 @@ aside.sidebar {
p.sidebar-title {
font-weight: bold;
}

nav.contents,
aside.topic,

div.admonition, div.topic, blockquote {
clear: left;
}

/* -- topics ---------------------------------------------------------------- */

nav.contents,
aside.topic,

div.topic {
border: 1px solid #ccc;
padding: 7px;
Expand Down Expand Up @@ -375,7 +375,6 @@ div.sidebar > :last-child,
aside.sidebar > :last-child,
nav.contents > :last-child,
aside.topic > :last-child,

div.topic > :last-child,
div.admonition > :last-child {
margin-bottom: 0;
Expand All @@ -385,7 +384,6 @@ div.sidebar::after,
aside.sidebar::after,
nav.contents::after,
aside.topic::after,

div.topic::after,
div.admonition::after,
blockquote::after {
Expand Down Expand Up @@ -611,25 +609,6 @@ ul.simple p {
margin-bottom: 0;
}

/* Docutils 0.17 and older (footnotes & citations) */
dl.footnote > dt,
dl.citation > dt {
float: left;
margin-right: 0.5em;
}

dl.footnote > dd,
dl.citation > dd {
margin-bottom: 0em;
}

dl.footnote > dd:after,
dl.citation > dd:after {
content: "";
clear: both;
}

/* Docutils 0.18+ (footnotes & citations) */
aside.footnote > span,
div.citation > span {
float: left;
Expand All @@ -654,8 +633,6 @@ div.citation > p:last-of-type:after {
clear: both;
}

/* Footnotes & citations ends */

dl.field-list {
display: grid;
grid-template-columns: fit-content(30%) auto;
Expand All @@ -668,10 +645,6 @@ dl.field-list > dt {
padding-right: 5px;
}

dl.field-list > dt:after {
content: ":";
}

dl.field-list > dd {
padding-left: 0.5em;
margin-top: 0em;
Expand All @@ -697,6 +670,16 @@ dd {
margin-left: 30px;
}

.sig dd {
margin-top: 0px;
margin-bottom: 0px;
}

.sig dl {
margin-top: 0px;
margin-bottom: 0px;
}

dl > dd:last-child,
dl > dd:last-child > :last-child {
margin-bottom: 0;
Expand Down Expand Up @@ -765,6 +748,14 @@ abbr, acronym {
cursor: help;
}

.translated {
background-color: rgba(207, 255, 207, 0.2)
}

.untranslated {
background-color: rgba(255, 207, 207, 0.2)
}

/* -- code displays --------------------------------------------------------- */

pre {
Expand Down
Loading

0 comments on commit 5f651a9

Please sign in to comment.