420
J. Wu et al.
2.3 Supervised Temporal Classification
2.3.1 Neuron Model
For the SNN-based temporal classifier, we adopt the current-based leaky integrateand-fire neuron model [25], which utilizes the kernel function to describe the effect
of pre-synaptic spikes on the membrane potential of post-synaptic neurons. When
there is no incoming spike, the post-synaptic neuron i remains at its resting potential
V rest . Each incoming spike from the pre-synaptic neuron j at t j will induce a postsynaptic potential (PSP) on the post-synaptic neuron as described by the following
kernel function:
Algorithm 1: The Self-Organizing Map Algorithm
Input:
The randomly initialized weight vector w i (0) for neuron i = 1, ..., M · N , where M and N
are the length and width of the SOM
The training set that is formed by framewise filter bank output vectors
The initial width of the neighborhood function σ (0) =
√
M 2 + N 2 /2
The number of training epochs E, initial learning rate η 0 and time constant of the
time-varying width τ 1 = E/log[σ (0)]
Output:
The final weight vectors w i (E) for neuron i = 1, ..., M · N
Train:
for e ∈ [0, 1, 2, ..., E − 1] do
1. Randomly choose an input vector x train = [x 1 , x 2 , x 3 , ..., x n ] from the training set,
where n is the total number of mel-scaled filters
2. Determine the winner neuron k that has a weight vector closest to the current input
vector x train :
k = arg min i ||w i (e) − x train ||
(1)
3. Update the learning rate η(e), the time-varying width σ (e) and the Gaussian
neighborhood function h i,k (e) for all neurons i = 1, ..., m:
η(e) = η 0 · exp(−e/E)
( 2)
σ (e) = σ (0) · exp(−e/τ 1 )
( 3)
h i,k (e) = exp{−||w i (e) − w k (e)||
2 /[2 · σ (e)
2 ]}
(4)
4. Update w i (e + 1) for all neurons i = 1, ..., M · N :
w i (e + 1) = w i (e) + η(e) · h i,k (e) · [x train − w i (e)]
(5)
Test:
Given any input vector x test from the testing set, label it with the winner neuron k that has
weight vector closest to x test :
k = arg min i ||w i (E) − x test ||
(6)
J. Wu et al.
2.3 Supervised Temporal Classification
2.3.1 Neuron Model
For the SNN-based temporal classifier, we adopt the current-based leaky integrateand-fire neuron model [25], which utilizes the kernel function to describe the effect
of pre-synaptic spikes on the membrane potential of post-synaptic neurons. When
there is no incoming spike, the post-synaptic neuron i remains at its resting potential
V rest . Each incoming spike from the pre-synaptic neuron j at t j will induce a postsynaptic potential (PSP) on the post-synaptic neuron as described by the following
kernel function:
Algorithm 1: The Self-Organizing Map Algorithm
Input:
The randomly initialized weight vector w i (0) for neuron i = 1, ..., M · N , where M and N
are the length and width of the SOM
The training set that is formed by framewise filter bank output vectors
The initial width of the neighborhood function σ (0) =
√
M 2 + N 2 /2
The number of training epochs E, initial learning rate η 0 and time constant of the
time-varying width τ 1 = E/log[σ (0)]
Output:
The final weight vectors w i (E) for neuron i = 1, ..., M · N
Train:
for e ∈ [0, 1, 2, ..., E − 1] do
1. Randomly choose an input vector x train = [x 1 , x 2 , x 3 , ..., x n ] from the training set,
where n is the total number of mel-scaled filters
2. Determine the winner neuron k that has a weight vector closest to the current input
vector x train :
k = arg min i ||w i (e) − x train ||
(1)
3. Update the learning rate η(e), the time-varying width σ (e) and the Gaussian
neighborhood function h i,k (e) for all neurons i = 1, ..., m:
η(e) = η 0 · exp(−e/E)
( 2)
σ (e) = σ (0) · exp(−e/τ 1 )
( 3)
h i,k (e) = exp{−||w i (e) − w k (e)||
2 /[2 · σ (e)
2 ]}
(4)
4. Update w i (e + 1) for all neurons i = 1, ..., M · N :
w i (e + 1) = w i (e) + η(e) · h i,k (e) · [x train − w i (e)]
(5)
Test:
Given any input vector x test from the testing set, label it with the winner neuron k that has
weight vector closest to x test :
k = arg min i ||w i (E) − x test ||
(6)
