Supervised Learning in Structured Spiking Neural Networks 12 - - PowerPoint PPT Presentation

supervised learning in structured spiking neural
SMART_READER_LITE
LIVE PREVIEW

Supervised Learning in Structured Spiking Neural Networks 12 - - PowerPoint PPT Presentation

Introduction Background Our Approach Results Results SpiNNaker References Supervised Learning in Structured Spiking Neural Networks 12 (including a detour to SpiNNaker) Andr e Gr uning, Eric Nichols, Brian Gardner and Ioana Sporea


slide-1
SLIDE 1

Introduction Background Our Approach Results Results SpiNNaker References

Supervised Learning in Structured Spiking Neural Networks12 (including a detour to SpiNNaker)

Andr´ e Gr¨ uning, Eric Nichols, Brian Gardner and Ioana Sporea Department of Computer Science University of Surrey, Guildford, UK 1st December 2015

slide-2
SLIDE 2

Introduction Background Our Approach Results Results SpiNNaker References

slide-3
SLIDE 3

Introduction Background Our Approach Results Results SpiNNaker References

slide-4
SLIDE 4

Introduction Background Our Approach Results Results SpiNNaker References

1

Introduction

2

Background

3

Our Approach

4

Results

5

Results

6

SpiNNaker

7

References

slide-5
SLIDE 5

Introduction Background Our Approach Results Results SpiNNaker References

What are we doing?

What are we doing? Formulate a supervised learning rule for spiking neural networks that

can train spiking networks containing a hidden layer(s) of neurons, can map arbitrary spatio-temporal input into arbitrary such

  • utput spike patterns, ie multiple spike trains.

Why worthwhile? Understand how spike-pattern based information processing takes place in the brain. A learning rule for spiking neural networks with technical potential. Find a rule that is to spiking networks what is backprop to rate neuron networks.

slide-6
SLIDE 6

Introduction Background Our Approach Results Results SpiNNaker References

Scientific Background

Human Brain Project The SPIKEFRAME project: “Structures of Learning Algorithms for Spiking Neural Networks” carried out as part of SP4 “Theoretical Neuroscience” in Ramp Up Phase and SGA1 Where are we scientifically? computational neuroscience cognitive science artificial intelligence / machine learning

slide-7
SLIDE 7

Introduction Background Our Approach Results Results SpiNNaker References

slide-8
SLIDE 8

Introduction Background Our Approach Results Results SpiNNaker References

1

Introduction

2

Background

3

Our Approach

4

Results

5

Results

6

SpiNNaker

7

References

slide-9
SLIDE 9

Introduction Background Our Approach Results Results SpiNNaker References

Spiking Neurons

(a)

(c)

  • utput spike

input spikes

  • utput spike

input spikes u

(b) Spiking neurons: real neurons communicate with each other via sequences of pulses – spikes. 1 Dendritic tree, axon and cell body of a neuron. 2 Top: Spikes arrive from other neurons and its membrane potential rises. Bottom: incoming spikes on various dendrites elicit timed spikes responses as the output. 3 response of the membrane potential to incoming spikes. If the threshold θ is crossed, the membrane potential is reset to a low value, and a spike fired. From Andr´ e Gr¨ uning and Sander Bohte. Spiking neural networks: Principles and challenges. In Proceedings of the 22nd European Symposium on Artificial Neural Networks, Computational Intelligence and Machine Learning – ESANN, Brugge, 2014. Invited Contribution.

slide-10
SLIDE 10

Introduction Background Our Approach Results Results SpiNNaker References

Spiking Neurons

Spiking Information Processing The precise timing of spikes generated by neurons conveys meaningful information. Synaptic plasticity forms the basis of learning. Changes in synaptic strength depend on relative pre- and postsynaptic spike times, and on third signals. Challenge: to relate such localised plasticity changes to learning on the network level.

slide-11
SLIDE 11

Introduction Background Our Approach Results Results SpiNNaker References

Learning for Spiking NN

General Learning Algorithms for Spiking NN? There is no general-purpose algorithm for spiking neural networks. Challenge: discontinuous nature of spiking events. Various supervised learning algorithms exist, each with its own limitations eg:

network topology, adaptability (e.g. reservoir computing), limited spike encoding (e.g. latency, or spike vs no spike). size of network

slide-12
SLIDE 12

Introduction Background Our Approach Results Results SpiNNaker References

Some Learning Algorithms for Spiking NN

SpikeProp: S.M. Bohte, J.N. Kok, and H. La Poutr´

  • e. Spike-prop: error-backpropagation in multi-layer

networks of spiking neurons. Neurocomputing, 48(1–4):17–37, 2002 ReSuMe Filip Ponulak and Andrzej Kasi´

  • nski. Supervised learning in spiking neural networks with ReSuMe:

Sequence learning, classification and spike shifting. Neural Computation, 22:467–510, 2010 Tempotron Robert G¨ utig and Haim Sompolinsky. The tempotron: a neuron that learns spike timing-based decisions. Nature Neuroscience, 9(3), 2006. doi: 10.1038/nn1643 Chronotron R˘ azvan V Florian. The chronotron: A neuron that learns to fire temporally precise spike patterns. PLoS ONE, 7(8):e40233, 2012 SPAN A. Mohemmed, S. Schliebs, and N. Kasabov. SPAN: Spike pattern association neuron for learning spatio-temporal sequences.

  • Int. J. Neural Systems, 2011
  • R. Urbanczik and W. Senn. A gradient learning rule for the tempotron.

Neural Computation, 21:340–352, 2009 Johanni Brea, Walter Senn, and Jean-Pascal Pfister. Matching recall and storage in sequence learning with spiking neural networks. The Journal of Neuroscience, 33(23):9565–9575, 2013 Nicolas Fremaux, Henning Sprekeler, and Wulfram Gerstner. Functional requirements for reward-modulated spile-timing-dependent plasticity. The Journal of Neuroscience, 30(40):13326–13337, 10 2010 Ioana Sporea and Andr´ e Gr¨

  • uning. Supervised learning in multilayer spiking neural networks.

Neural Computation, 25(2), 2013

slide-13
SLIDE 13

Introduction Background Our Approach Results Results SpiNNaker References

slide-14
SLIDE 14

Introduction Background Our Approach Results Results SpiNNaker References

1

Introduction

2

Background

3

Our Approach

4

Results

5

Results

6

SpiNNaker

7

References

slide-15
SLIDE 15

Introduction Background Our Approach Results Results SpiNNaker References

Our Approach

MultilayerSpiker Generalise backpropagation to Spiking Neural Networks with hidden neurons. Use stochastic neuron model

to connect smooth quantities (derivative exists) with discrete spike trains (no derivative)

slide-16
SLIDE 16

Introduction Background Our Approach Results Results SpiNNaker References

Neuron model

Membrane potential uo(t) :=

  • h

woh t Yh(t′)ǫ(t−t′)dt′+ t Zo(t′)κ(t−t′)dt′ , (1)

  • postsynaptic neurons, h presynaptic neuron

uo membrane potential of o. woh strength of synaptic connection from h to o. Yh(t) =

th<t δ(t − th) spike train of neuron h where th are

the firing times of h Zo(t) =

to<t δ(t − to) spike train of neuron o where to are

the firing times of o.

slide-17
SLIDE 17

Introduction Background Our Approach Results Results SpiNNaker References

Neuron model

Spike response kernel ǫ and reset kernel κ ǫ(s) = ǫ0 [e−s/τm−e−s/τs] Θ(s) and κ(s) = κ0e−s/τm Θ(s) , (2) spike response kernel ǫ0 = 4mV, reset kernel κ0 = −15mV, membrane time constant τm = 10ms, the synaptic rise time τs = 5ms Heaviside step function Θ(s).

slide-18
SLIDE 18

Introduction Background Our Approach Results Results SpiNNaker References

Neuron model

Stochastic Intensity (instantaneous firing rate) and Spikes ρ(t) = ρ[u(t)] = ρ0 exp u(t) − ϑ ∆u

  • ,

(3) firing rate at threshold ρ0 = 0.01ms−1. “threshold” ϑ = 15mV. smoothness of the threshold ∆uo = 0.2mV (output layer) or ∆uh = 2mV (hidden layer) Spikes are generated by a point process taking stochastic intensity ρo(t).

Ie in a small time interval [t, t + δt) a spike is generated with probability ρo(t)δt.

slide-19
SLIDE 19

Introduction Background Our Approach Results Results SpiNNaker References

Backpropagation

Objective (“Error”) function P(zref

  • |x) = exp

log (ρo(t)) Z ref

  • (t) − ρo(t)dt
  • ,

(4) where Z ref

  • (t) =

f δ(t − ˜

tf

  • ) is the target output spike train for

input x.a

  • aJ. P. Pfister, T. Toyoizumi, K. Aihara, and W. Gerstner. Optimal spike-timing dependent plasticity for precise action potential firing

in supervised learning. Neural Computation, 18(6):1309–1339, 2006

Backprop approach ∆woh = ηo ∂ log P(zref|x) ∂woh (5)

slide-20
SLIDE 20

Introduction Background Our Approach Results Results SpiNNaker References

Backprop approach

. . . and some ten slides later Lots of derivatives, indices, probabilities. Derivatives only possible due to smoothness of probability function. Relatively freely switching between expected values and their best estimates to be had when you only have single cast.

slide-21
SLIDE 21

Introduction Background Our Approach Results Results SpiNNaker References

Backprop Weight Update

Backpropagated Error Signal δo(t) := 1 ∆uo

  • Z ref
  • (t) − ρo(t)
  • ,

(6) Hidden-to-Output Weights ∆woh = ηo T δo(t) (Yh ∗ ǫ)(t) dt . (7) Input-to-Hidden Weights ∆whi = ηh ∆uh

  • woh

T δo(t)([Yh(Xi ∗ ǫ)] ∗ ǫ)(t)dt . (8)

a

aBrian Gardner, Ioana Sporea, and Andr´

e Gr¨

  • uning. Learning spatio-temporally encoded pattern transformations in structured spiking

neural networks. Neural Computation, 27(12):2548–2586, 12 2015. doi: 10.1162/NECO a 00790. Preprint available at http://arxiv.org/abs/1503.09129

slide-22
SLIDE 22

Introduction Background Our Approach Results Results SpiNNaker References

slide-23
SLIDE 23

Introduction Background Our Approach Results Results SpiNNaker References

1

Introduction

2

Background

3

Our Approach

4

Results

5

Results

6

SpiNNaker

7

References

slide-24
SLIDE 24

Introduction Background Our Approach Results Results SpiNNaker References

Task

Task Purpose: explore the properties of the new learning algorithm. Map an input (given as a set of spike trains) to an output (given again as a set of spike trains). Simulation details:

  • Brian Gardner, Ioana Sporea, and Andr´

e Gr¨

  • uning. Learning

spatio-temporally encoded pattern transformations in structured spiking neural networks. Neural Computation, 27(12):2548–2586, 12 2015. doi: 10.1162/NECO a 00790. Preprint available at http://arxiv.org/abs/1503.09129.

slide-25
SLIDE 25

Introduction Background Our Approach Results Results SpiNNaker References

Network Setup

20 40 60 80 100 Input spike pattern Xi 200 400 600 800 1000 Episodes 100 200 300 400 500 200 400 600 800 1000 Time (ms) Episodes 200 400 600 800 1000 1 2 3 4 Episodes Distance

E D A B C

Input Hidden Output Output neuron Hidden neuron

Left: spike rasters of input, hidden and output layers (with targets). Right top: network structure, bottom: van-Rossum distance.

slide-26
SLIDE 26

Introduction Background Our Approach Results Results SpiNNaker References

Network in Action

Xi T (Xi ∗ ǫ) uh − ϑ T ([Yh(Xi ∗ ǫ)] ∗ ǫ) uo − ϑ T ∆w hi

Left: Input spike train Xi (top) and its evoked post synaptic potential Xi ∗ ǫ (bottom). Middle: Fluctuations of a hidden neuron membrane potential uh relative to a firing threshold ϑ, in response to inputs from input layer (top). The potential dependent factor of the back propagated error from hidden to input layer [Yh(Xi ∗ ∗ǫ)] bottom left: corresponding PSP (according to kernel Xi ∗ ǫ). Right: membrane potential of an output neuron uo, in response to hidden layer activity. Target indicated by dotted lines (top). Weight changes of input-to-hidden weight due to learning rule.

slide-27
SLIDE 27

Introduction Background Our Approach Results Results SpiNNaker References

Experiments

8 16 24 32 40 20 40 60 80 100 Performance (%) Input patterns 8 16 24 32 40 5000 10000 15000 Episodes Input patterns

Free whi Fixed whi Single layer

Dependence of the performance on the number of input patterns and network setup. Each input pattern mapped to a unique target output of single output neuron and spike. Left: performance as a function of the number of input patterns. Right: Number of episodes to convergence in learning. Blue curves: hidden weights whi updated according to learning algorithm, red curves: fixed random weights (plus homoeostasis), green: single layer.

slide-28
SLIDE 28

Introduction Background Our Approach Results Results SpiNNaker References

Experiments

2 4 6 8 10 1 2 3 4 5 nh / no Number of output spikes

no = 10

0.5 1 1.5 2 2.5 3 20 40 60 80 100 Performance (%) nh / no

no = 10 no = 20 no = 30

A B Dependence of the performance on the ratio of hidden to output neurons, and the number of target output spikes. p = 50. A unique target output spike pattern for each output neuron. (Left) Performance as a function of the ratio of hidden to output neurons. (Right) Minimum ratio of hidden to output neurons required to achieve 90% performance.

slide-29
SLIDE 29

Introduction Background Our Approach Results Results SpiNNaker References

slide-30
SLIDE 30

Introduction Background Our Approach Results Results SpiNNaker References

1

Introduction

2

Background

3

Our Approach

4

Results

5

Results

6

SpiNNaker

7

References

slide-31
SLIDE 31

Introduction Background Our Approach Results Results SpiNNaker References

Results

Results Compared to other learning algorithms for spiking neuron networks, we can learn more input-output mappings: 20 classes or 200 individual patterns here vs 3-4 more timed output spikes: up to 10 individually timed spikes here vs 3-5 with multiple outputs: up to 30 here vs 1 Apply it! MultilayerSpiker opens up the use of spiking neural networks for technical/cognitive modelling tasks. Spiking networks are biologically plausible. Explore how computations can be done with neural networks. Next step in the Human Brain Project: Implementation on SpiNNaker, and other neuromorphic hardware.

slide-32
SLIDE 32

Introduction Background Our Approach Results Results SpiNNaker References

slide-33
SLIDE 33

Introduction Background Our Approach Results Results SpiNNaker References

1

Introduction

2

Background

3

Our Approach

4

Results

5

Results

6

SpiNNaker

7

References

slide-34
SLIDE 34

Introduction Background Our Approach Results Results SpiNNaker References

Steps

Steps now: explore/utilise/abuse/adapt SpiNNaker middleware to deliver third signals to neurons near future: convince SpiNNaker people to adapt the middleware for third signals. far future: run truly learning spiking NN simulation on SpiNNaker. Credits to Jamie Knight for his support, and also to other SpiNNaker people!

slide-35
SLIDE 35

Introduction Background Our Approach Results Results SpiNNaker References

Rule for Neurons with Targets

Rule for Neurons with direct error feedback

∆W =

  • PSP(tT − tP),

if t = tT −PSP(tO − tP), if t = tO. (9) Rules of this type appear in many supervised learning schemes Pfister ReSume, Chronotron etc pp cp our equations (6) (7) t: times of target output T, presynaptic P and output spikes O with PSP(s) =

  • e

−s τm − e −s τs ,

if s > 0 0,

  • therwise

(10) where τm and τs are neuron and synaptic time constants, cp (2).

slide-36
SLIDE 36

Introduction Background Our Approach Results Results SpiNNaker References

Target Spikes on SpiNNaker

Graphical illustration of the learning rule’s temporal parameters: tP tO tT On Spinnaker and in Nature Transform target output times tT into presynaptic spikes across a target synapse (nature: eg weak distal synapse): −PSP(tO − tP) PSP(tT−tP) tP tO tT

slide-37
SLIDE 37

Introduction Background Our Approach Results Results SpiNNaker References

SpiNNaker Implementation

Changes to SpiNNaker “middleware”: Introduce third type of synapse (exhibitory, inhibitory plus target) Target presynaptic spikes bypass input buffers, proceed to postsynaptic buffer direct (playing the system) Trace put on output and target times to update synapses appropriately (definite abuse of the system) Diagram (next slide) courtesy of Jamie Knight: (showing

  • riginal (blue), modified (green) and new (purple) part of the

Spinnaker “middleware”):

slide-38
SLIDE 38

Introduction Background Our Approach Results Results SpiNNaker References

SpiNNaker Implementation Diagram

pre spikes target spikes STDP weights delay buffers excitatory inhibitory target weights input buffers input currents neurons

  • utput spikes

postsynaptic event buffer

slide-39
SLIDE 39

Introduction Background Our Approach Results Results SpiNNaker References

First Results on SpiNNaker

Some parameters Task: learn to reproduce the output spiking pattern experiment performed with a learning time of 1 second repeated 10 times. 1,000 Poisson spike trains at rate of 10Hz were put into 1 neuron. neuron learns to match precise target spike times.

slide-40
SLIDE 40

Introduction Background Our Approach Results Results SpiNNaker References

First Results on SpiNNaker

slide-41
SLIDE 41

Introduction Background Our Approach Results Results SpiNNaker References

Next Steps

Next Steps more neurons more patterns teaching neurons downstream of those with a direct error signal (“Backprop”) streamline SpiNNaker implementation

slide-42
SLIDE 42

Introduction Background Our Approach Results Results SpiNNaker References

slide-43
SLIDE 43

Introduction Background Our Approach Results Results SpiNNaker References

1

Introduction

2

Background

3

Our Approach

4

Results

5

Results

6

SpiNNaker

7

References

slide-44
SLIDE 44

Introduction Background Our Approach Results Results SpiNNaker References

Links

slide-45
SLIDE 45

Introduction Background Our Approach Results Results SpiNNaker References

References

S.M. Bohte, J.N. Kok, and H. La Poutr´ e. Spike-prop: error-backpropagation in multi-layer networks of spiking neurons. Neurocomputing, 48(1–4):17–37, 2002. Johanni Brea, Walter Senn, and Jean-Pascal Pfister. Matching recall and storage in sequence learning with spiking neural networks. The Journal of Neuroscience, 33(23):9565–9575, 2013. R˘ azvan V Florian. The chronotron: A neuron that learns to fire temporally precise spike patterns. PLoS ONE, 7(8):e40233, 2012. Nicolas Fremaux, Henning Sprekeler, and Wulfram Gerstner. Functional requirements for reward-modulated spile-timing-dependent plasticity.