You are on page 1of 11

This article has been accepted for publication in a future issue of this journal, but has not been

fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TBCAS.2019.2948920, IEEE
Transactions on Biomedical Circuits and Systems
1

ECG Classification Algorithm Based on STDP and


R-STDP Neural Networks for Real-time Monitoring
on Ultra Low-Power Personal Wearable Devices
Alireza Amirshahi, and Matin Hashemi, Member, IEEE

Abstract—This paper presents a novel ECG classification or the QRS complex and do not further process the ECG
algorithm for inclusion as part of real-time cardiac monitoring signal [2]–[5]. Many others detect arrhythmia patterns such
systems in ultra low-power wearable devices. The proposed solu- as premature ventricular contraction and ventricular escape
tion is based on spiking neural networks which are the third gen-
eration of neural networks. In specific, we employ spike-timing beats by fully analyzing the ECG signal via classification
dependent plasticity (STDP), and reward-modulated STDP (R- algorithms, but transmit the signal to a connected smartphone
STDP), in which the model weights are trained according to or a remote cloud server for performing the heavy com-
the timings of spike signals, and reward or punishment signals. putations associated with ECG classification algorithms [6].
Experiments show that the proposed solution is suitable for real- Besides privacy concerns [7], employing such solutions for
time operation, achieves comparable accuracy with respect to
previous methods, and more importantly, its energy consumption continuous cardiac monitoring is limited by the availability,
in real-time classification of ECG signals is significantly smaller. speed and energy consumption of the wireless connection.
In specific, energy consumption is 1.78 µJ per beat, which is 2 Other solutions include recording ECG signals along with
to 9 orders of magnitude smaller than previous neural network other vital signals through wireless devices [8], [9], and offline
based ECG classification methods. analysis of the recorded signals [10], [11]. Our approach, on
Index Terms—Cardiac monitoring, Electrocardiogram (ECG) the other hand, is to continuously monitor the ECG signal in
classification, Machine learning, Spiking neural network (SNN), real-time and on the wearable device itself.
Low power consumption, Embedded real-time systems, Wearable
In this approach, the ECG signal is continuously monitored
devices
without any connection to or any assistance from other sys-
tems. However, the main limiting factor is that wearable health
I. I NTRODUCTION monitoring devices should be small, and thus, may not utilize
Cardiovascular diseases (CVDs) account for a large pro- powerful processors or large batteries. Therefore, computa-
portion of global deaths. Early detection, as in many other tional costs and energy consumption of ECG classification
diseases, plays a crucial role in the process of stopping or algorithms are important for real-time operation on small and
controlling the progression of CVDs. Cardiac arrhythmias are low-power wearable devices [1].
widely used as signs for many CVDs. Since the arrhythmias Classical algorithms were mainly based on morphological
are reflected into electrical activities of the heart, they can be features, such as the QRS complex, and signal processing tech-
detected by analyzing Electrocardiogram (ECG) signals. niques such as Fourier transform and wavelet transform [12]–
Visual inspection of recorded ECG signals during a visit to [15]. Such features show significant variations among different
the cardiologist is the traditional form of arrhythmia detection. individuals and under different conditions, and therefore, are
However, due to their intermittent occurrence, specially in not sufficient for accurate arrhythmia detection [16], [17].
early stages of the problem, arrhythmias are difficult to detect Many solutions have been proposed based on artificial neural
from a short time window of the ECG signal. Therefore, networks, and especially in recent years, deep convolutional
continuous ECG monitoring is crucial in early detection of neural networks (CNN) and recurrent neural networks (RNN)
potential problems [1]. [17]–[23]. Neural network algorithms automatically extract the
In recent years, personal wearable devices have been intro- features from data, and hence, provide higher accuracy. This is
duced as cost-effective solutions for continuous ECG moni- because neural network based feature extraction is inherently
toring in daily life. Previous works include ECG monitoring more resilient to variations among different ECG waveforms
solutions that are low-power but only extract the R peak [17]. However, the downsides of employing deep neural net-
works are large power consumption and high computational
The authors are with Learning and Intelligent Systems Laboratory, Depart-
ment of Electrical Engineering, Sharif University of Technology, Tehran, Iran. intensity. Low-power embedded multiprocessors exist for real-
Webpage: http://lis.ee.sharif.edu, E-mails: alireza.amirshahi@ee.sharif.edu, time stream processing, but their efficient programming in-
matin@sharif.edu (corresponding author). volves certain challenges [24]–[27].
Manuscript received May 8, 2019; revised Jul. 22, 2019 and Sep. 4, 2019;
accepted Oct. 6, 2019. Spiking neural networks (SNN) are the third generation of
This work was supported in part by Iran National Science Foundation neural networks and provide the opportunity for ultra low-
(INSF) under Grant 95835171. power operation [28]–[34]. Here the information is processed
Color versions of one or more of the figures in this paper are available
online at http://ieeexplore.ieee.org. based on propagation of spike signals through the network
Digital Object Identifier XX.XXXX/TBCAS.2019.XXXXXXX as well as the timing of the spikes. Every neuron consumes

1932-4545 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TBCAS.2019.2948920, IEEE
Transactions on Biomedical Circuits and Systems
2

energy only when necessary, that is only when it sends or Heartbeat


R Peak

receives spikes. In recent years, neuromorphic circuits have Signal


been introduced for ultra low-power implementation of SNN-
based algorithms. Examples include IBM TrueNorth, Intel 1 3 5 7
Loihi, and Qualcomm Zeroth. 2 4 6

Spike Encoding
This paper proposes a novel SNN-based ECG classification Q=7
algorithm for real-time operation on ultra low-power wearable Encoder
devices. The overall view of the proposed solution is shown Cells + - + - + -
in Fig. 1. The heartbeat signal is split into a small number 2Q
of overlapping windows, which are then encoded into spike Gaussian
signals. The patterns in the generated spikes are automatically Layer

Pattern Extraction
i
extracted in the STDP layer with assistance from a Gaussian
layer and an inhibitory layer. Finally, the extracted features are STDP
classified in the R-STDP layer. STDP stands for spike-timing Layer j j'
dependent plasticity which means the timings of the spikes
are used to train the weights in this layer. R-STDP stands for
reward-modulated STDP which means reward or punishment Inhibitory
signals are used to train the weights, in addition to the spike
Layer j ′
timings. To improve classification performance, the learning

Classification
rules in training STDP and inhibitory layers are optimized R-STDP
in order to better fit the ECG classification domain. Since Layer k
all the above layers are performed in the spike domain, the
energy consumption required for inference, i.e., real-time clas-
sification of ECG signals, is reduced significantly. Experiments Fig. 1: Overall view of the proposed solution.
show that the proposed solution is suitable for real-time op-
eration, achieves comparable classification performance with
is deeply incorporated into the operational model [45]. In
respect to previous methods, and more importantly, its energy
specific, the neurons communicate through electrical signals
consumption for classification of ECG signals is multiple
called spikes. For example in Fig. 2, neuron i sends nine spikes
orders of magnitude smaller than previous neural network
to neuron j at different times. The information is encoded in
based methods.
the timing of the spikes, not in their amplitude.
Previous SNN-based solutions that process ECG signals
A neuron i fires at time t, i.e., generates a spike on its output
employ non-SNN algorithms for pattern extraction [35], or
at time t, only when its membrane potential ui (t) reaches a
do not fully analyze the ECG signal, for instance, only extract
specific threshold uth . When neuron i fires, ui is decreased to
the heart rate [36], apply a band-pass filter to the input ECG
urest and prohibited from rising for a short time period called
signal [37], or detect perturbations in the signal [38].
refractory time. The generated spike travels to neuron j and
It is noteworthy to mention that SNNs have previously
causes an increase in uj , i.e., membrane potential of neuron
been employed in many areas in computer vision. Examples
j. The above procedure is shown in Fig. 2. Since neurons do
include digit recognition and visual categorization [39]–[42].
not fire all the time, the energy consumption is significantly
This is mainly because the spiking neuron models are inspired
smaller than other types of neural networks [29]–[34].
from neuroscience studies on the brain’s visual cortex. SNNs
A connection from neuron i to j is called a synapse. For
have also been applied to non-vision applications including
this synapse, i and j are called pre-synaptic and post-synaptic
robotics control [43] and classification of EEG spatio-temporal
neurons, respectively. A Weight wij is associated with every
data [44].
synapse ij.
The rest of this manuscript is organized as the following.
Different brain-inspired mathematical models exist for
Section II provides a brief background on the operational
SNNs. We employ one of the most popular models called
model and circuit implementation for spiking neurons. Sec-
Leaky Integrate-and-Fire (LIF) model [45] which operates
tion III presents our proposed SNN-based ECG classification
based on the following equation. This differential equation
algorithm. Section IV presents the results of experimental
describes how uj is changed at time t.
evaluations as well as comparisons with previous works in
term of classification performance, network type, and energy d  X
consumption. Section V concludes the paper. τ uj (t) = − uj (t) − urest + α si (t)wij (1)
dt i

II. S PIKING N EURAL N ETWORKS The index i iterates through all neurons whose outputs are
connected to neuron j. The term si (t) is equal to either one or
A. Operational Model
P neuron i has generated a spike at
zero, and represents whether
In contrast to the second generation neural networks, such time t. Hence, the term i si (t)wij is zero when no spike is
as multi-layer perceptrons, in the third generation neural received by neuron j at time t.PWhen one or multiple spikes
networks, i.e., spiking neural networks, the concept of time are received at time t, the term i si (t)wij causes an increase

1932-4545 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TBCAS.2019.2948920, IEEE
Transactions on Biomedical Circuits and Systems
3

uj (t), at a rate proportional to τ , in absence of the input


i
input current. In the comparison part, the value of uj (t) is compared
spikes with the threshold uth in order to generate spikes. When a
spike is generated, it is sent to the output synapse, and charges
j ( ) the refractory capacitor. The purpose of the refractory and reset
parts are to force uj (t) to have the resting potential urest for
output a short period. When the refractory capacitor discharges, the
spikes reset transistor is turned off, and the membrane potential uj (t)
time
may start to rise again by the input current.
Fig. 2: In this example, neuron i sends nine spikes to neuron
Fig. 3(b) represents a differential-pair integrator synapse
j. As a result, the membrane potential of neuron j, i.e., uj ,
circuit. A spike generated by a pre-synaptic neuron turns
is increased and reached to uth twice. Hence, two spikes are
the input switch on. When a spike is received, the synapse
fired on its output.
capacitor discharges at a rate proportional to the weight w.
When usyn (t) is decreased, the output transistor is turned on
( ) ( )
and provides the output current Ii (t). Once the input spike
( ) ends, the capacitor charges again, the output transistor is
turned off, and the output current Ii (t) becomes zero.

III. P ROPOSED ECG C LASSIFICATION A LGORITHM


Our proposed SNN-based algorithm for classification of
Leakage Compare Refractory ECG beats is presented in this section. Fig. 1 illustrates an
(a) Reset
overall view of the proposed solution. The input ECG signal
is first segmented into heartbeats. The heartbeat is split into
( ) a small number of windows, which are then encoded into
spikes. The patterns in the generated spikes are automatically
( ) extracted in the STDP layer with assistance from two other
layers, namely the Gaussian and the inhibitory layers. Finally,
(b) ( ) the extracted features are classified in the R-STDP layer. The
Fig. 3: A simplified circuit model for (a) spiking neuron j and formulations which govern the STDP and the inhibitory layers
(b) its input excitatory synapse ij coming from neuron i. are optimized to better fit ECG classification problem. The
details are discussed in the following.

d
in dt uj (t). In addition, a leakage current causes membrane A. Segmentation
potential uj to tend to the rest potential urest with time constant
Heartbeat segments are formed as 0.25 seconds of the input
τ. PHence, the constant parameter α determines the strength
ECG signal before an R peak and 0.45 seconds after. R peak
of i si (t)wij compared to the leakage current in changing
d is a specific point in the ECG waveform as shown in Fig. 1.
dt uj (t). To summarize, uj does not change at time t, if it is There exist many ultra low-power and highly accurate methods
equal to its rest value urest and no spike is received. Otherwise,
d for R peak detection [3], [4].
dt uj (t) is non-zero, and thus, uj (t) changes at time t. Since the R peak has a much larger amplitude compared to
According to the above operational model, synaptic weight
other parts of the heartbeat, it becomes the dominant pattern
wij impacts spike propagation from neuron i to j. A larger
in the STDP layer and basically causes the effect of other
wij means a spike generated by neuron i is more likely to
patterns to be highly reduced. In order to avoid this issue and
trigger a spike by neuron j. This is because si (t)wij affects
d efficiently capture all the patterns, every heartbeat is split into
dt uj (t). As a result, the larger the weight wij the higher the Q = 7 overlapping windows as shown in Fig. 1. The windows
firing rate of neuron j.
are processed separately in the pattern extraction step. Let’s
denote the heartbeat signal as Xecg and the portion of Xecg
B. Circuit Implementation which falls in window q ∈ [1, Q] as Xecg q
. The number of
Many circuits with various optimizations to reduce energy q
samples in Xecg is given by the following equation.
consumption have been proposed for implementing spiking
q 1
neurons. Here we provide a brief introduction to a simplified |Xecg |= × |Xecg | (2)
circuit common to most ultra low-power implementations dQ/2e
[29]–[34].
Fig. 3(a) shows a spiking neuron. The input current Ii (t) B. Spike Encoding
q
represents the spike which enters the neuron from a connected There is an encoder cell for every sample i ∈ [1, |Xecg |]
input synapse. The main part of this circuit is the capacitor from every window q ∈ [1, Q]. Every cell encodes its input
which holds the membrane potential uj (t). The transistors in into a series of spikes as the following. Spike generation is
the leakage part of the circuit are responsible for decreasing random and follows the Poisson process. The spike firing rate

1932-4545 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TBCAS.2019.2948920, IEEE
Transactions on Biomedical Circuits and Systems
4

q
of this random Poisson process is set proportional to Xecg [i], behavior (Section II) is non-linear, to achieve the desired rate,
i.e., the amplitude of sample i from window q, plus a small β q is initialized to 1, then, the train data is fed to the network,
bias. The higher the amplitude, the higher the rate of spike and β q is iteratively updated as the following.
firing of the corresponding cell [46]. q
Rout
In fact, since the amplitude can be both positive or negative, ∆β q = α(1 − ) (6)
two encoder cells are employed for every sample, not one. Rtarget
Spikes are generated by the first encoder cell if the signal is
positive, and by the second cell if negative. This is inspired D. STDP-Based Pattern Extraction
by the nerve cells in the Retina [47]. Spike-timing dependent plasticity (STDP) [48] is employed
The output of every encoder cell is connected to one here to extract the patterns in the ECG signal. STDP is an
synapse, and the generated spikes are fed into this synapse. unsupervised learning procedure. Every window q ∈ [1, 2Q]
q
Therefore, the total number of output synapses for a window is processed separately as the following. Let wij denote the
q ∈ [1, Q] is equal to synaptic weights in window q in this layer. The synaptic
q
weights, also known as plasticity, are trained according to
2 × |Xecg | (3) the timing patterns of the spikes in pre- and post-synaptic
These synapses are split in two groups. As shown in Fig. 1, neurons. In specific, consider a synapse ij in this layer which
the number of windows in the next layers is equal to 2Q. The connects pre-synaptic neuron i to post-synaptic neuron j. If
positive encoder cells are connected to the synapses in the odd the spike time of the pre-synaptic neuron, denoted as tpre ,
windows, and the negative encoder cells are connected to the is earlier than the spike time of the post-synaptic neuron,
synapses in the even windows. denoted as tpost , then the weight wij is increased. This is
called long-term potentiation (LTP). Similarly, when tpost is
earlier than tpre , the weight is decreased. This is called long-
C. Gaussian Layer term depression (LTD).
The purpose of this layer is to adjust the number of spikes The smaller the time difference, the larger the amount of
in order to help the STDP-based pattern extraction that is change in the synaptic weight. This is shown in Fig. 4(a).
discussed later in Section III-D. Here, ∆t = tpost − tpre , and ∆w = wnew − wold . As shown
Every window q ∈ [1, 2Q] is processed separately as the in the figure, |∆w| is maximum when |∆t| = 0, and it
following. As shown in Fig. 1, input synapse i in window q is exponentially decreased with larger values of |∆t|. The
is connected to one neuron and its synaptic weight is set to mathematical equation for the STDP learning rule is
giq . As a result, the neuron adjusts the spike firing rate by a 
|∆t| 
factor of giq . In specific, we have 

 + −
a ×e τ ∆t > 0
q ∆w = (7)
Rout,i = giq × Rin,i
q
(4) |∆t| 



 −
q q a ×e τ ∆t < 0
where Rin,i
and Rout,i
denote the rate of spikes on the input
and on the outputs of the neuron, respectively. where, a+ and a− are learning rates, and τ is the time constant.
Since the windows overlap, an ECG peak which falls on Note that a+ and a− are positive and negative constant values,
the side of a window also appears in the middle of a neighbor respectively.
window. In order to reduce the effect of side peaks, a Gaussian
Analysis of the Learning Rule: The learning rule in (7)
kernel is employed in setting the value of giq . In specific, giq
creates a form of positive feedback which pushes the synaptic
is set as
1 i − µ 2 weights towards +∞ or −∞. The reason is described in
q q 1 − the following. When a synaptic weight wij is increased, the
gi = β × √ × e 2 σ (5)
σ 2π term si (t)wij in (1) will be larger for the next time, and
where µ = 21 |Xecg q
| and σ = 31 |Xecg q q
|. Note that |Xecg | therefore, the next spike from neuron i is more likely to cause
denotes the window length. The mean µ is chosen such that a new spike by neuron j. This further increases wij . Since
the Gaussian function be centered at the middle of the window. this positive feedback is likely to happen many times, the
The variance σ is chosen such that the effect of a side peak probability that this weight is pushed towards +∞ is very
is reduced but not completely neglected. high. Similar situation happens in decreasing the weights, and
thus, some of the weights are pushed towards −∞. Note that
The term β q is a trainable variable which is different for
spikes arrive randomly, and hence, during the STDP training, a
different values of q, i.e., different windows. It is initialized
weight is both increased and decreased many times, depending
as β q = 1, and then trained as the following. The next layers
on the values of ∆t. However, the net effect will be either
operate more efficiently if all windows q ∈ [1, 2Q] in this layer
q positive or negative. Therefore, the weights are pushed towards
generate equal average number of spikes. Let Rout denote the
+∞ or −∞.
average number of spikes fired by the neurons in window q
in this layer. The larger the value of β q , the larger the value Optimized Learning Rule: In computer vision applications,
q
of Rout . the negative weights are usually clipped to zero and the
q
Therefore, in training β q we would like to have Rout reach positive weights to a constant wmax . The synaptic weights that
the same target rate Rtarget for all q ∈ [1, 2Q]. Since the neuron are close or equal to wmax form the detected patterns in the

1932-4545 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TBCAS.2019.2948920, IEEE
Transactions on Biomedical Circuits and Systems
5

Δw Δw γ (w)
a+ a+ γ max

Δt Δt
1
increase in w a - ×γ(w)
a- w
(a) (b) (c)

Fig. 4: Learning rule for the synaptic weights in the STDP layer. (a) The usual STDP learning rule. (b) Proposed learning
rule. (c) The value of γ(w) in (b) is between 1 and γmax .

input image [39]–[42]. In ECG classification, however, the


clipping alone is not sufficient, and thus, we also optimize
the STDP learning rule as
|∆t| 



 + −
a ×e τ ∆t > 0
∆w = (8)
|∆t| 



 −
a × γ(w) × e τ ∆t < 0
i=i ' i=i ' ' i=i ' ' '
where, γ(w) is equal to w i' ' j
1 + w · γmax w i' j w i' ' ' j
γ(w) = (9)
1+w
j
The corresponding curves are shown in Fig. 4(b) and 4(c).
The intuition behind this optimization is discussed in the Fig. 5: Toy example to demonstrate the intuition behind
following. Consider the toy example shown in Fig. 5, in which optimized STDP learning rule in (8).
three pre-synaptic neurons i0 , i00 , and i000 are connected to a
post-synaptic neuron j. Consider the three input signals shown
in Fig. 5. Neuron i0 generates a very small number of spikes for different amplitudes at location i00 , we would like wi00 j to be
all the three input signals. This is because the signal amplitude trained as somewhere between 0 and wmax . This is achieved
is zero, and hence, the encoder cell which is connected to in the proposed learning rule, because as w increases, γ(w)
neuron i0 fires at a very low frequency. On the other hand, for is increased as well, i.e., LTD is amplified (Fig. 4(b)). Hence,
all the three input signals, neuron i000 generates many spikes. although w is decreased less often than increased, i.e., the
This is because the signal amplitude is large, and hence, the likelihood of negative ∆t is smaller than positive ∆t, the net
encoder cell which is connected to neuron i000 fires at a high effect of decreasing w is amplified by making LTD stronger
frequency. Since the generated spikes cause neuron j to fire than LTP. As a result, wi00 j is trained as desired.
as well, the synaptic weight wi000 j is increased many times. As shown in Fig. 4(c), the curve γ(w) has a sharp slope
This also decreases wi0 j because the spike frequency of i0 is near w = 0. Hence, LTP is amplified quickly with a small
much lower, and ∆t is negative in some cases. Therefore, in increase in w. This helps to suppress the effect of minor
both the learning rules (7) and (8), wi0 j and wi000 j are trained variations in the input ECG signal by lowering the probability
as 0 and wmax , respectively. Basically, neuron j is trained to that such variations can contribute to the captured patterns.
be sensitive to a zero amplitude at location i0 and a large peak This is because it quickly becomes difficult for them to be
at location i000 in the input ECG signal. able to increase the weights. However, once a weight has been
Now, let’s study training of the synaptic weight wi00 j . Note increased enough, i.e., a real pattern has been captured, the
that spike generation by the encoder cells follows a random difficulty stays nearly the same, i.e., the curve γ(w) does not
process. Hence, it is possible that neuron i00 fires before i000 . In increase much because it has a very small slope.
addition, note that the weights are initialized to random values.
Hence, it is possible that wi00 j be initialized to a larger value
than wi000 j . Therefore, the learning rule in (7) may train wi00 j E. Inhibitory Layer
as wmax . It is also possible, depending on the random settings, In order to prevent similar or same patterns from possessing
that wi00 j be trained as 0. This random training to either zero the attention of all neurons in the STDP layer, inhibitory
or wmax is not desired because it lowers the capability of the neurons are added to the network as shown in Fig. 1. Inhibitory
network in capturing complex ECG patterns that have various layer makes the STDP layer more efficient in capturing
amplitudes in different locations of the input signal. different patterns [49].
The proposed learning rule in (8), however, trains wi00 j As shown in Fig. 1, there is exactly one inhibitory neuron
differently. Since the three input signals in this example have for every neuron in the STDP layer. When a neuron j in the

1932-4545 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TBCAS.2019.2948920, IEEE
Transactions on Biomedical Circuits and Systems
6

Δ only based on spike timings but also a modulator signal. In


the brain, the modulator signal can be a reward or punishment
− + Δ depending on Dopamine secretion [52].
As shown in Fig. 1, in our proposed solution, R-STDP is
1 used for training synaptic weights ψjk q
in the final layer. Every
×
1− neuron in this layer predicts one of the output classes, e.g.,
larger negative ′ the normal class or an arrhythmia class. For an input ECG
heartbeat, the neuron that fires more often is considered as
Fig. 6: Proposed learning rule for the backward synapses in
the winner, i.e., its corresponding class is considered as the
the inhibitory layer. Note that w0 is always kept negative.
predicted class for the input ECG heartbeat. Unlike STDP,
R-STDP follows a supervised learning procedure. During the
STDP layer fires, its corresponding inhibitory neuron j fires as training stage, if the prediction of a winner neuron k is correct,
well and prevents the firing of all the other neurons j 0 6= j in a reward signal is applied to all its input synapses. In other
q
the same window in the STDP layer. This is achieved through words, the reward is applied to all synaptic weights ψjk , where
backward synapses with negative weights wjj 0q
0 which carry the
j represents all the pre-synaptic neurons from all windows
fired spikes from inhibitory neuron j to all neurons j 0 6= j in q that are connected to neuron k, i.e., the winner neuron.
the STDP layer and decrease their membrane potentials. Similarly, if the prediction is incorrect, a punishment signal is
0q applied. Different learning rules exist for employing R-STDP.
The negative synaptic weights wjj 0 are trained as the follow-

ing. When neurons from the same window in the STDP layer Here, we use the following equations which are inspired from
fire at about the same time, w0 is decreased. The inhibitory the method in [42].
learning rule is
a+

r × ψ(ψmax − ψ) tpost > tpre
 −
0 b |∆t| ≤ λ ∆ψ = (12)
∆w = (10) a− × ψ(ψmax − ψ) tpost ≤ tpre
b+ |∆t| > λ  r−
ap × ψ(ψmax − ψ) tpost > tpre
where, learning rates b+ and b− are positive and negative ∆ψ = (13)
a+
p × ψ(ψmax − ψ) tpost ≤ tpre
constant values, respectively. When spikes from neurons j and
j 0 in the STDP layer are within λ time units from one another, In the above equations, a+ −
r and ar are learning rates in
w0 is decreased by b− . Otherwise, it is increased by b+ . Note the reward situation, while ap and a−
+
p are learning rates in
that w0 is clipped to zero, so it always holds a negative value the punishment situation. As shown in (12), in the reward
[50]. situation, i.e., when the prediction is correct, a positive reward
Optimized Learning Rule: When the divergence among the proportional to a+ r is given to the synapses whose pre-synaptic
existing patterns are small, the inhibition becomes too strong, neurons spike before the winner neuron, i.e., those with
which in turn decreases the number of spikes and incapacitates tpost > tpre . A negative reward proportional to a−r is given to all
STDP training. To prevent this, we propose to modify the the other connected synapses, i.e., those with tpost ≤ tpre . As
learning rule as shown in (11) and illustrated in Fig. 6. shown in (13), the negative and positive signals are reversed in
the punishment situation, i.e., when the prediction is incorrect.
( 1
0 b− × |∆t| ≤ λ The term ψ(ψmax − ψ) highly increases the probability that
∆w = 1 − w0 (11) the trained weights stay near zero or ψmax . This is because ∆ψ
+
b |∆t| > λ
is zero at ψ = 0 and ψ = ψmax . Basically, once a weight is
In the proposed learning rule, ∆w0 is a smaller negative pushed to either of the two sides, it becomes more difficult to
value as w0 becomes a larger negative value. This modification change it. Unlike in pattern extraction in the STDP layer, this
guarantees that the negative weights do not grow too strong. is desired in classification in the final layer. This is because
Asymmetric Structure: Our additional strategy for prevent- we would like a captured pattern from the STDP layer to have
ing the repercussion of sameness in the detected patterns is either no or full contribution to the prediction of an output
to employ an asymmetric structure in the inhibitory layer. In class.
specific, in every epoch, some of the inhibitory neurons are
randomly inactivated. This basically distributes the authority G. Training Method
among the neurons in the STDP layer. The core idea is As shown in Fig. 1, there are four trainable layers in the
inspired by the dropout technique in deep convolutional neural proposed model. Since STDP is unsupervised but R-STDP is
networks [51]. Note that inhibitory neurons are only present supervised, the layers are trained successively. In specific, first
during the training stage, and they are inactivated during the the Gaussian layer is trained. Next, the STDP and inhibitory
inference (test) stage. layers are trained simultaneously, and finally, the R-STDP
layer is trained.
F. Classification via R-STDP The initial weights in the STDP layer are set randomly by
This layer classifies the patterns which are previously ex- a normal distribution. The mean should be large enough to let
tracted in the STDP layer. Here, reward-modulated STDP (R- post-synaptic neurons generate enough number of spikes. The
STDP) is employed as the classifier. R-STDP operates not learning rate is initially set to a large value in order to allow

1932-4545 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TBCAS.2019.2948920, IEEE
Transactions on Biomedical Circuits and Systems
7

the weights to change rapidly. This helps the network detect NOR: normal beats, VEB: ventricular ectopic beats which in-
various patterns. To fine-tune the weights, the learning rate clude premature ventricular contraction and ventricular escape
is gradually decreased with every epoch. The initial weights beats, FUS: fusion of ventricular and normal beats, and Q:
of inhibitory and R-STDP layers are also set randomly by a paced beats, fusion of paced and normal beats and unclas-
normal distribution. sifiable beats. The resulting confusion matrix is presented in
All weights in the entire network need to be positive, and Table I. Comparison with previous works will be presented in
therefore, negative weights are clipped to zero. However, the Section IV-D, Table II.
backward synapses in the inhibitory layer need to have nega-
tive weights, and therefore, only for these synapses, positive TABLE I: Confusion matrix.
weights are clipped to zero. Classification Result
Note that similar to many other neural network based ECG Ground Truth NOR VEB FUS Q
classification methods, once training of the network is com- NOR 44239 73 99 0
VEB 872 3858 78 0
plete, the trained weights are freezed. In other words, during FUS 191 32 389 0
inference (test), the learning rules are not in effect and the Q 5 2 1 0
weights do not change. Therefore, neurons operate according
to equation (1) with constant weights during inference, i.e.,
during real-time ECG classification.
C. Real-time Operation and Energy Consumption
IV. E XPERIMENTAL E VALUATION Besides accuracy, two other important factors for continuous
A. Setup monitoring on wearable devices are computational intensity
and energy consumption of the ECG classification method.
The proposed solution is implemented based on Brian2
Note that it is only the inference (test) phase which is executed
which is a Python package for evaluation of spiking neural
repeatedly on the wearable device and not the training phase.
networks [53]. Our source code is available online [54].
Therefore, it is only the inference which needs to be low power
The proposed solution is evaluated and compared with
and meet timing requirements for continuous execution. In the
previous works using MIT-BIH ECG arrhythmia database. The
following, the timing and energy consumption of the inference
ECG signals in this database are independently labeled by
phase of the proposed solution are discussed.
two or more cardiologists. Two groups of ECG signals called
DS1 and DS2 are available in this database. DS1 includes Timing: The neurons’ operating time step is 1 ms, i.e.,
representative samples of different ECG signals and artifacts the operating frequency is 1 KHz. Every heartbeat signal
that an arrhythmia detector might encounter in routine clinical is provided to the network for 200 ms. At the end of
practice. DS2 includes complex arrhythmia patterns [55]. this time duration, the network provides its classification
In order to provide thorough and fair comparisons, we result. This configuration supports classification of up to
employ the exact same data as the previous works. In specific, 60 × 1000 / 200 = 300 beats per minute, and therefore, it
the following patients from the DS2 group are used as test is suitable for real-time operation.
data: 200, 201, 202, 203, 205, 207, 208, 209, 210, 212, 213,
Energy Consumption: Once the proposed model is trained,
214, 215, 219, 220, 221, 222, 223, 228, 230, 231, 232, 233
it is simulated according to the method presented in [30],
and 234. This is the same set of data employed in [17], [19],
[58] in order to estimate its energy consumption in classifying
[23]. All the details for this dataset, such as patients’ age and
the ECG signals. The input heartbeat signals are applied to
sex, are available in [56].
the network and the neurons are allowed to fire. For every
We follow a patient-specific training method similar to [17]–
heartbeat, we fully simulate the entire network, i.e., all neurons
[19], [23], in which the model is trained individually for every
and all synapses from all layers, for a period of 200 ms.
patient. The training is not performed in real-time. Once a
During this period, all neurons may receive spikes from their
patient’s model is trained, continuous ECG monitoring and
input synapses, fire at any time, and send spikes to their
heartbeat classification can be performed in real-time on the
output synapses. When a neuron fires a spike, we consider that
wearable device based on the trained model of that patient.
50 pJ (pico Joules) of energy is consumed [30]. The connected
Training data for every patient is formed based on combining
output synapses transfer this spike to other neurons. For every
two sets of data, in specific, randomly selected representative
spike transfer, i.e., every synaptic event, 147 pJ of energy
heartbeats from all arrhythmia classes in DS1, plus the first five
is counted [30]. The simulation results show that the energy
minutes of the patient’s own ECG signal. Employing the first
consumption for classification of every heartbeat is 1.78 µJ
five minutes of the patient’s own ECG signal is in compliance
(micro Joules).
with AAMI standards [57] and has been used in many studies
[17]–[19], [23]. Note that the first five minutes are skipped in
the test data. D. Comparison with Previous Works
Table II compares the proposed solution with previous
B. Confusion Matrix works, in terms of classification performance, network type,
In our experimental evaluation, the proposed model is real-time operation, and energy consumption. Four statistical
trained to classify every heartbeat into the following classes. metrics, namely accuracy, sensitivity (recall), specificity, and

1932-4545 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TBCAS.2019.2948920, IEEE
Transactions on Biomedical Circuits and Systems
8

TABLE II: Comparing the proposed solution with previous works in terms of classification performance, network type, real-time
operation, and energy consumption. Table entries are sorted based on their energy consumption.
Acc Sen Spe Ppr F1 Type Energy per heartbeat (Joules) Real-time?
Hu et al. [18] 94.8 78.9 96.8 75.8 77.3 MLP - -
Crippa et al. [15] 98.9 95.7 99.1 87.3 91.3 KLT, GMM - -
Rajpurkar et al. [20] - 82.7 - 80.9 - CNN 1643 J No
Zhang et al. [21] - 93.6 - 98.4 95.9 CNN 38.2 J No
Kachuee et al. [22] 93.4 - - - - CNN 1.17 J Near Real-time
Kiranyaz et al. [17] 98.6 95.0 98.1 89.5 92.2 FFT, CNN 37 mJ Yes
Saadatnejad et al. [23] 99.2 93.0 99.8 98.2 95.5 Wavelet, RNN 35 mJ Yes
Ince et al. [19] 97.6 83.4 98.1 87.4 85.4 Wavelet, MLP 4 mJ Yes
Kolagasioglu et al. [35] 95.5 - - - - Wavelet, SNN 614 µJ Yes
Lee et al. [13] 97.2 - - - - Wavelet 5.97 µJ Yes
Proposed 97.9 80.2 99.8 97.3 88.0 SNN 1.78 µJ Yes

positive predictivity (precision) are extracted from the confu- followed by PCA. It takes about 4.5 ms to classify every
sion matrix for binary classification of VEB beats from non- heartbeat, and consumes about 4 mJ.
VEB beats. Since there exists a trade-off between sensitivity
and positive predictivity, they are combined into another metric The proposed algorithm has comparable classification per-
called F1 score as the following. formance with respect to the above solutions. Accuracy is
2 1.3% lower than [23] and 4.5% higher than [22]. F1 score
F1 = 1 (14) is 7.5% lower than [23] and 2.6% higher than [19]. More
/Sen + 1/Ppr
importantly, energy consumption of the proposed solution is
Hu et al. [18] proposed a mixture of experts algorithm based about 9 orders of magnitude (billion times) smaller than the
on multi-level perceptron (MLP). Our proposed solution has CNN-based algorithm in [20], about 6 orders of magnitude
higher classification performance compared to this method. smaller than [22], and even about 3 to 4 orders of magnitude
Accuracy and F1 score are 3.1% and 10.7% higher, respec- smaller than the real-time and lightweight methods in [17],
tively. Crippa et al. [15] proposed a Gaussian mixture model [23], and [19].
of Karhunen-Love transform. Compared to this algorithm, our
proposed method has 1% and 3.3% lower accuracy and F1 The SNN-based ECG classification method in [35] consists
score, respectively. Enough details are not available to estimate of two parts. First, wavelet transform is employed for feature
the energy consumption of the above methods. extraction, and a correlation matrix for feature selection. Next,
Details of the ECG classification algorithms in [17], [19]– based on the selected feature set, a liquid state machine (LSM)
[23] are available. Since they are software-based solutions, we which is a specific type of spiking neural network is employed
have implemented them on ARM Cortex A53 which is a low- to cluster the input signal. As the author stated (page 41), the
power processor and measured their execution times. Energy second part consumes 111.62 nW, and the first part is very
consumption is then estimated as the nominal power rating of similar to the circuit in [2]. Therefore, as reported in [2],
the processor (0.9 Watts) multiplied by the average execution the energy consumption of the first part is 614 µJ. Hence,
time in classifying different heartbeats. The 34-layer CNN in total energy consumption is 614.111 µJ. Compared to [35],
[20] takes about 1825 seconds to classify every heartbeat, and the proposed method achieves higher accuracy, and its energy
consumes about 1643 Joules of energy. This compute-intensive consumption is 345 X smaller because it entirely operates
method does not meet timing requirements for continuous real- in the spike domain. Other SNN-based solutions that process
time execution. The CNN model in [21] has large number ECG signals include extraction of the heart rate [36], applying
of filters in its convolution layers. This method takes about a band-pass filter to the input ECG signal [37], and detecting
42.5 seconds to classify every heartbeat, and consumes about perturbations in the signal [38].
38.2 Joules of energy. The CNN model in [22] is relatively
smaller. It has 11 convolution layers. It takes about 1.3 seconds Lee et al. [13] proposed a low-power wireless ECG acqui-
to classify every heartbeat, and consumes about 1.17 J of en- sition and classification system. The ECG classification part
ergy. Kiranyaz et al. proposed a lightweight algorithm for real- is based on Haar wavelet. The extracted wavelet features are
time ECG classification based on fast Fourier transform (FFT) compared against eight previously-selected feature vectors in
and one-dimensional convolution layers [17]. It takes about order to classify the ECG signal. Hence, the classification
41 ms to classify every heartbeat, and consumes about 37 mJ algorithm is relatively lightweight and does not require train-
(mili Joules). Another lightweight algorithm is proposed in ing. The energy consumption for ECG classification part is
[23] which is based on wavelet transform and small recurrent reported as 5.97 µJ.
neural networks (RNN). This method takes about 39 ms to
classify every heartbeat, and consumes about 35 mJ. Ince et. As summarized in Table II, with comparable classification
al. [19] proposed to select the configuration of artificial neural performance, the proposed method consumes significantly
networks using particle swarm optimization. The input to the smaller energy than previous methods in classification of
selected neural network is provided by wavelet transform heartbeats.

1932-4545 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TBCAS.2019.2948920, IEEE
Transactions on Biomedical Circuits and Systems
Rtarget 9

90 1.84 Acc Sen Spe Ppr F1


0.0

Energy (μJoule)
89 1.78
F1 Score % -1.0
88 1.72
-2.0
87 1.66
-3.0
86 1.60
-4.0
1 3 5 7 9 11
(a) Q Fig. 8: Degradation of classification performance metrics (in
90 3.00
percent) if STDP learning rule is not optimized.
85 2.60

Energy (μJoule)
F1 Score %

80 2.20
75 1.80 3
70 1.40
(a) 2
65 1.00
60 0.60 1
0 20 40 60
(b) Rtarget 0
F1 Score Energy 0 8 16 24 32 40 48 56 64

Fig. 7: F1 score and energy consumption versus (a) parameter 3


Q in segmentation, and (b) Rtarget in Gaussian layer.
(b) 2

E. Efficiency of Segmentation 0
0 8 16 24 32 40 48 56 64
This and the following sections provide more insight into
the proposed SNN-based solution. This section focuses on 3

segmentation. (c) 2
Since the windows are overlapped, the larger the number 1
of windows, i.e., Q, the more the amount of redundant
0
computations, and hence, the higher the energy consumption. 0 8 16 24 32 40 48 56 64
At the other hand, more number of windows help to increase
Fig. 9: Trained input weights in the STDP layer in window 4,
accuracy by better analyzing different parts of the input ECG
for neurons (a) N0 , (b) N1 , and (c) N2 .
signal.
The above trade-off is evaluated experimentally and the
result is shown in Fig. 7(a). The figure shows how the energy
of equation (8), i.e., the optimized STDP learning rule. Sen-
consumption and F1 score vary with Q. F1 score is almost
sitivity and positive predictivity would have been 3.4% and
saturated beyond Q = 7, but energy consumption is increased.
1.0% lower, respectively. F1 score would have been 2.5%
Therefore, this point is selected as the value of parameter Q.
lower. Therefore, the optimized STDP learning rule improves
classification performance.
F. Efficiency of Gaussian Layer To provide more insight into the inner workings of STDP-
The Gaussian layer helps to reduce the energy consumption. based pattern extraction, Fig. 9 shows the trained input synap-
The smaller the value of Rtarget in the Gaussian layer, the tic weights for three sample neurons in the STDP layer,
smaller the number of fired spikes in the entire network, and namely, neurons N0 , N1 and N2 from window 4. As illustrated
thus, the lower the energy consumption. See Section III-C. At in the figure, the trained weights are non-binary and vary
the other hand, the larger the value of Rtarget , the higher the based on the captured patterns. This shows that the proposed
Page 1 STDP learning rule in (8) is effective in training the weights as
classification performance. This is because more spikes help
with more accurate pattern extraction. desired. The figure also shows that the three captured patterns
The above trade-off is evaluated experimentally. Fig. 7(b) are different, which means the proposed inhibitory learning
shows how the energy consumption and F1 score vary with rule in (11) has correctly trained the negative weights, and
Rtarget . F1 score is almost saturated beyond Rtarget = 20, but thus, the inhibitory neurons have succeeded in diverging the
energy consumption is increased. Hence, this point is selected attention of the STDP neurons.
as the value of Rtarget . In order to study the three sample neurons in action,
Without the Gaussian layer, the encoder cells would be Fig. 10(a) shows their fired spikes for a normal input heartbeat.
directly connected to the neurons in the STDP layer, the Neurons N0 and N2 fire many spikes. In the next layer, i.e.,
number of spikes would not be adjusted, and the resulting R-STDP, there are four output neurons that fire 19, 0, 2, and
energy consumption would be 4.27 µJ, i.e., 2.4 X higher. 3 spikes. Since the first output neuron fires more spikes than
the others, it determines the predicted class, i.e., NOR, which
is correct. Fig. 10(b) shows the fired spikes for a premature
G. Efficiency of STDP Pattern Extraction ventricular contraction beat. Neuron N1 fires many spikes and
Fig. 8 shows degradation of classification performance neuron N2 fires a few spikes. The four output neurons in the
metrics if equation (7) would have been employed instead R-STDP layer fire 0, 12, 1, and 1 spikes. Hence, the second

1932-4545 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TBCAS.2019.2948920, IEEE
Transactions on Biomedical Circuits and Systems
10

2 Q3
(a)
2
FUS

R-STDP
STDP
1
1
VEB

0 0
NOR
0 50 100 150 200 0 50 100 150 200
time (ms) time (ms)

(b) 2 3
Q
2

R-STDP
FUS

STDP
1
1
VEB

0 0
NOR
0 50 100 150 200 0 50 100 150 200
time (ms) time (ms)

Fig. 10: Fired spikes for two sample heartbeat signals: (a) normal beat, (b) premature ventricular contraction beat.

100 [2] N. Bayasi et al., “A 65-nm low power ECG feature extraction system,”
80 International Symposium on Circuits and Systems, pp. 746–749, 2015.
F1 Score %

60 [3] D. D. He and C. G. Sodini, “A 58 nw ecg asic with motion-tolerant


40 heartbeat timing extraction for wearable cardiovascular monitoring,”
20 IEEE Transactions on Biomedical Circuits and Systems, vol. 9, no. 3,
pp. 370–376, 2015.
0
0 20 40 60 80 100 120 140 160 [4] X. Tang, Q. Hu, and W. Tang, “A real-time qrs detection system with
Epoch
pr/rt interval and st segment measurements for wearable ecg sensors
using parallel delta modulators,” IEEE Transactions on Biomedical
Fig. 11: F1 score versus the number of training epochs. Circuits and Systems, vol. 12, no. 4, pp. 751–761, 2018.
[5] J. M. Bote et al., “A modular low-complexity ecg delineation algorithm
for real-time embedded systems,” IEEE Journal of Biomedical and
Health Informatics, vol. 22, no. 2, pp. 429–441, 2018.
output neuron determines the predicted class, i.e., VEB, which [6] X. Wang et al., “Enabling smart personalized healthcare: A hy-
is also correct. brid mobile-cloud approach for ecg telemonitoring,” IEEE Journal of
Biomedical and Health Informatics, vol. 18, no. 3, pp. 739–745, 2014.
We can conclude that neuron N0 is trained to be sensitive [7] C. Chou et al., “Low-complexity privacy-preserving compressive anal-
to a pattern in the NOR class, neuron N1 is trained to be ysis using subspace-based dictionary for ecg telemonitoring system,”
sensitive to a pattern in the VEB class, and neuron N2 is IEEE Transactions on Biomedical Circuits and Systems, vol. 12, no. 4,
pp. 801–811, 2018.
sensitive to both. Hence, neuron N2 does not help much with [8] S. Song et al., “A 769 uw battery-powered single-chip soc with ble for
the classification. Investigating the weights of output synapses multi-modal vital sign monitoring health patches,” IEEE Transactions
of neuron N2 , i.e., its R-STDP weights, reveal that they are on Biomedical Circuits and Systems, 2019.
[9] G. Biagetti et al., “Wireless surface electromyograph and electrocardio-
trained as small values. This shows that the R-STDP weights graph system on 802.15.4,” IEEE Transactions on Consumer Electronics,
are trained as desired. vol. 62, no. 3, pp. 258–266, 2016.
Fig. 11 shows how increasing the number of training epochs [10] P. Li et al., “High-performance personalized heartbeat classification
model for long-term ecg signal,” IEEE Transactions on Biomedical
improves classification performance, in specific, F1 score. Engineering, vol. 64, no. 1, pp. 78–86, 2017.
Similar to other neural network based solutions, enough num- [11] T. Teijeiro et al., “Heartbeat classification using abstract features from
ber of training epochs are required to achieve an acceptable the abductive interpretation of the ecg,” IEEE Journal of Biomedical
and Health Informatics, vol. 22, no. 2, pp. 409–420, 2018.
performance but eventually a saturation point is reached. [12] L.-Y. Shyu, Y.-H. Wu, and W. Hu, “Using wavelet transform and fuzzy
neural network for vpc detection from the holter ecg,” IEEE Transactions
on Biomedical Engineering, vol. 51, no. 7, pp. 1269–1273, 2004.
V. C ONCLUSION [13] S. Y. Lee et al., “Low-power wireless ECG acquisition and classification
This manuscript proposed an ECG classification algorithm system for body sensor networks,” IEEE Journal of Biomedical and
Health Informatics, vol. 19, no. 1, pp. 236–246, 2015.
in which both the pattern extraction and the classification [14] S. K. Jain and B. Bhaumik, “An energy efficient ecg signal processor
steps are implemented based on spiking neural networks. detecting cardiovascular diseases on smartphone,” IEEE Transactions on
In addition, the learning rules are optimized to better fit Biomedical Circuits and Systems, vol. 11, no. 2, pp. 314–323, 2017.
[15] P. Crippa et al., “Multi-class ecg beat classification based on a gaussian
the ECG classification domain. As a result, the achieved mixture model of karhunen-loève transform,” International Journal of
accuracy is comparable to previous methods while the energy Simulation: Systems, Science and Technology, vol. 16, no. 1, pp. 2–1,
consumption is multiple orders of magnitude smaller than 2015.
[16] R. Hoekema et al., “Geometrical aspects of the interindividual vari-
previous neural network based ECG classification methods. ability of multilead ecg recordings,” IEEE Transactions on Biomedical
Hence, the proposed algorithm is suitable to be included as Engineering, vol. 48, no. 5, pp. 551–559, 2001.
part of ultra low-power wearable cardiac monitoring devices. [17] S. Kiranyaz, T. Ince, and M. Gabbouj, “Real-time patient-specific ecg
classification by 1-d convolutional neural networks,” IEEE Transactions
on Biomedical Engineering, vol. 63, no. 3, pp. 664–675, 2016.
R EFERENCES [18] Y. H. Hu, S. Palreddy, and W. J. Tompkins, “A patient-adaptable ECG
beat classifier using a mixture of experts approach,” IEEE Transactions
[1] D. Sopic et al., “Real-time event-driven classification technique for early on Biomedical Engineering, vol. 44, no. 9, pp. 891–900, 1997.
detection and prevention of myocardial infarction on wearable systems,” [19] T. Ince et al., “A generic and robust system for automated patient-
IEEE Transactions on Biomedical Circuits and Systems, vol. 12, no. 5, specific classification of electrocardiogram signals,” IEEE Transactions
pp. 982–992, 2018. on Biomedical Engineering, vol. 56, no. 5, pp. 1415–1426, 2009.

1932-4545 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.
This article has been accepted for publication in a future issue of this journal, but has not been fully edited. Content may change prior to final publication. Citation information: DOI 10.1109/TBCAS.2019.2948920, IEEE
Transactions on Biomedical Circuits and Systems
11

[20] P. Rajpurkar, A. Y. Hannun, M. Haghpanahi, C. Bourn, and A. Y. [45] W. Gerstner et al., Neuronal Dynamics, from single neurons to networks
Ng, “Cardiologist-level arrhythmia detection with convolutional neural and models of cognition. Cambridge University Press, 2014.
networks,” arXiv preprint arXiv:1707.01836, 2017. [46] P. Dayan and L. F. Abbott, Theoretical Neuroscience: Computational
[21] W. Zhang, L. Yu, L. Ye, W. Zhuang, and F. Ma, “Ecg signal classification and Mathematical Modeling of Neural Systems. MIT Press, 2001,
with deep learning for heart disease identification,” in 2018 International ch. 1, pp. 1–43.
Conference on Big Data and Artificial Intelligence, 2018, pp. 47–51. [47] M. Meister and M. J. I. Berry, “The neural code of the retina,” Neuron,
[22] M. Kachuee, S. Fazeli, and M. Sarrafzadeh, “ECG heartbeat classifi- vol. 22, no. 3, pp. 435–450, 1999.
cation: A deep transferable representation,” Proceedings - 2018 IEEE [48] S. Song, K. D. Miller, and L. F. Abbott, “Competitive hebbian learn-
International Conference on Healthcare Informatics, ICHI 2018, pp. ing through spike-timing-dependent synaptic plasticity,” Nature neuro-
443–444, 2018. science, vol. 3, no. 9, p. 919, 2000.
[23] S. Saadatnejad, M. Oveisi, and M. Hashemi, “LSTM-based ECG classi- [49] C. C. Garner et al., “Inhibitory Plasticity Balances Excitation and
fication for continuous monitoring on personal wearable devices,” IEEE Inhibition in Sensory,” no. December, 2012.
Journal of Biomedical and Health Informatics, 2019. [50] N. Srinivasa and Q. Jiang, “Stable learning of functional maps in self-
[24] M. H. Foroozannejad et al., “Time-scalable mapping for circuit-switched organizing spiking neural networks with continuous synaptic plasticity,”
gals chip multiprocessor platforms,” IEEE Transactions on Computer- Frontiers in Computational Neuroscience, vol. 7, p. 10, 2013.
Aided Design of Integrated Circuits and Systems, vol. 33, no. 5, pp. [51] N. Srivastava et al., “Dropout: a simple way to prevent neural networks
752–762, 2014. from overfitting,” The Journal of Machine Learning Research, vol. 15,
[25] M. Hashemi et al., “Throughput-memory footprint trade-off in synthesis no. 1, pp. 1929–1958, 2014.
of streaming software on embedded multiprocessors,” ACM Transactions [52] N. Frémaux and W. Gerstner, “Neuromodulated Spike-Timing-
on Embedded Computing Systems, vol. 13, no. 3, p. 46, 2013. Dependent Plasticity, and Theory of Three-Factor Learning Rules,”
[26] M. H. Foroozannejad et al., “Postscheduling buffer management trade- Frontiers in Neural Circuits, vol. 9, no. January, 2016.
offs in streaming software synthesis,” ACM Transactions on Design [53] M. Stimberg et al., “Brian 2 documentation.” [Online]. Available:
Automation of Electronic Systems, vol. 17, no. 3, p. 27, 2012. http://brian2.readthedocs.io
[27] K. M. Barijough et al., “Implementation-aware model analysis: the [54] Source code. [Online]. Available: http://lis.ee.sharif.edu
case of buffer-throughput tradeoff in streaming applications,” in ACM [55] R. G. Mark and G. B. Moody. (1997) MIT-BIH arrhythmia database.
SIGPLAN Notices, vol. 50, no. 5, 2015, p. 11. [Online]. Available: http://ecg.mit.edu/dbinfo.html
[28] I. Yeo, M. Chu, and B. Lee, “A power and area efficient cmos stochastic [56] G. B. Moody and R. G. Mark, “The impact of the MIT-BIH arrhyth-
neuron for neural networks employing resistive crossbar array,” IEEE mia database,” IEEE Engineering in Medicine and Biology Magazine,
Transactions on Biomedical Circuits and Systems, 2019. vol. 20, no. 3, pp. 45–50, 2001.
[29] N. Qiao et al., “A reconfigurable on-line learning spiking neuromorphic [57] AAMI-recommended practice: Testing and reporting performance results
processor comprising 256 neurons and 128k synapses,” Frontiers in of ventricular arrhythmia detection algorithms. Arlington, VA: Asso-
neuroscience, vol. 9, p. 141, 2015. ciation for the Advancement of Medical Instrumentation, 1987.
[30] N. Qiao and G. Indiveri, “Scaling mixed-signal neuromorphic processors [58] Y. Cao, Y. Chen, and D. Khosla, “Spiking Deep Convolutional Neural
to 28 nm fd-soi technologies,” in IEEE Biomedical Circuits and Systems Networks for Energy-Efficient Object Recognition,” International Jour-
Conference (BioCAS), 2016, pp. 552–555. nal of Computer Vision, vol. 113, no. 1, pp. 54–66, 2015.
[31] ——, “Analog circuits for mixed-signal neuromorphic computing ar-
chitectures in 28 nm fd-soi technology,” in IEEE SOI-3D-Subthreshold
Microelectronics Technology Unified Conference (S3S), 2017, pp. 1–4.
[32] S. Moradi and G. Indiveri, “An event-based neural network architecture
with an asynchronous programmable synaptic memory,” IEEE transac-
tions on biomedical circuits and systems, vol. 8, no. 1, pp. 98–107,
2013.
[33] S. Moradi, S. A. Bhave, and R. Manohar, “Energy-efficient hybrid cmos-
nems lif neuron circuit in 28 nm cmos process,” in Symposium Series Alireza Amirshahi received the B.Sc. and M.Sc.
on Computational Intelligence, 2017, pp. 1–5. degrees in electrical engineering from Sharif Univer-
[34] G. Indiveri, F. Corradi, and N. Qiao, “Neuromorphic architectures for sity of Technology, Tehran, Iran, in 2017 and 2019,
spiking deep neural networks,” Technical Digest - International Electron respectively. His research interests include machine
Devices Meeting, IEDM, vol. 2016-Febru, pp. 4.2.1–4.2.4, 2015. learning for biomedical signal processing.
[35] E. Kolagasioglu and A. Zjajo, “Energy Efficient Feature Extraction for
Single-Lead ECG Classification Based On Spiking Neural Networks,”
Ph.D. dissertation, Delft University of Technology, 2018.
[36] A. Das et al., “Unsupervised heart-rate estimation in wearables with
Liquid states and a probabilistic readout,” Neural Networks, vol. 99, pp.
134–147, 2018.
[37] Q. Ma et al., “A low-power neuromorphic bandpass filter for biosignal
processing,” in WAMICON, 2013, pp. 1–3.
[38] R. Cattaneo, “Ecg signals classification using neuromorphic hardware,”
Ph.D. dissertation, ETH Zurich, 2018.
[39] P. U. Diehl and M. Cook, “Unsupervised learning of digit recognition
using spike-timing-dependent plasticity,” Frontiers in Computational
Neuroscience, vol. 9, no. August, pp. 1–9, 2015.
[40] T. Masquelier and S. J. Thorpe, “Unsupervised learning of visual
features through spike timing dependent plasticity,” PLoS Computational Matin Hashemi received the B.Sc. degree in electri-
Biology, vol. 3, no. 2, pp. 0247–0257, 2007. cal engineering from Sharif University of Technol-
[41] S. R. Kheradpisheh, M. Ganjtabesh, S. J. Thorpe, and T. Masquelier, ogy, Tehran, Iran, in 2005, and the M.Sc. and Ph.D.
“STDP-based spiking deep convolutional neural networks for object degrees in computer engineering from University of
recognition,” Neural Networks, vol. 99, pp. 56–67, 2018. California, Davis, in 2008 and 2011, respectively. He
[42] M. Mozafari et al., “First-spike-based visual categorization using is currently an assistant professor of electrical engi-
reward-modulated stdp,” IEEE Transactions on Neural Networks and neering at Sharif University. His research interests
Learning Systems, pp. 1–13, 2018. include algorithm design and hardware acceleration
[43] Z. Bing et al., “A survey of robotics control based on learning-inspired for machine learning, signal processing, and big data
spiking neural networks,” Frontiers in neurorobotics, vol. 12, p. 35, applications.
2018.
[44] N. Kasabov and E. Capecci, “Spiking neural network methodology for
modelling, classification and understanding of EEG spatio-temporal data
measuring cognitive processes,” Information Sciences, vol. 294, pp. 565–
575, 2015.

1932-4545 (c) 2019 IEEE. Personal use is permitted, but republication/redistribution requires IEEE permission. See http://www.ieee.org/publications_standards/publications/rights/index.html for more information.

You might also like