Synapse

This chapter will introduce synaptic models in SPAIC .

Chemical Synapse

Chemical synapse is a common form of synapse, information transmitted between neurons by synaptic transmitters, which causes some concentration of certain ions to change. In computational neuroscience, we use weight and calculate form to simulate the physiological synapse that excitatory and inhibitory transmitters are simulated with plus or minus weight.

In SPAIC , by default, the synapse use chemical synapse and neurons use ‘Isyn’ as input. So, we call the basic chemical synapse as basic .

self.connection = spaic.Connection(self.layer1, self.layer2, link_type='full',
                                    syn_type=['basic'],
                                    w_std=0.0, w_mean=0.1)

Gap Junction

Gap junction , another common form of synapse. The presynaptic and postsynaptic neurons are so closely that charged ions exchange with each other. The characteristic of gap junction is that they are usually bidirection (i.e. the action of the synapse acts on both the presynaptic neuron and the postsynaptic neuron, bringing the voltage of the two neurons closer together).

The calculate form of gap junction: Igap = w_gap(Vpre - Vpost)

If users want to use gap junction, need to set the synapse_type as electrical .

self.connection = spaic.Connection(self.layer1, self.layer2,
                                          link_type='full', syn_type=['electrical'],
                                          w_std=0.0, w_mean=0.1,
                                          )

All Synapses

In Synapse , we also construct some other synapse, including pooling and flatten.

  • Basic_synapsebasic

  • conv_synapseconv combine with convolution connection.

  • DirectPass_synapsedirectpass , choose this synapse will let output equal to the input, which means the output Isyn will equal to the output value of presynapse neurons.

  • Dropout_synapsedropout

  • AvgPool_synapseavgpool

  • MaxPool_synapsemaxpool

  • BatchNorm2d_synapsebatchnorm2d

  • Flattenflatten

  • First_order_chemical_synapse1_order_synapse , first order attenuated synapses in chemical synapses

  • Second_order_chemical_synapse2_order_synapse , second order attenuated synapses in chemical synapses

  • Mix_order_chemical_synapsemix_order_synapse , mix order attenuated synapses in chemical synapses

  • Max poolingmaxpool

  • Average poolingavgpool

  • Flattenflatten

  • Dropoutdropout

  • Direct passdirectpass , choose this synapse will let output equal to the input, which means the output Isyn will equal to the output value of presynapse neurons.