Performance Analysis of Single Node Reservoir Computing Architecture for Biosignal Denoising

DOI : 10.17577/IJERTV12IS050029

Download Full-Text PDF Cite this Publication

Text Only Version

Performance Analysis of Single Node Reservoir Computing Architecture for Biosignal Denoising

Shilja R*

PG Student

Ms. Sheela Devi Aswathy Chandran *

Assistant Professor

Department of Electronics and Communication Engineering* TKM Institute of Technology,

Kerala, India-691505.

Abstract: The electrocardiogram (ECG) is a painless methodology for recording of bioelectric signals produced by the heart which is utilized for the assessment numerous cardiovascular illnesses. In any case, different artifacts and noises are presented, for better examination and translation of ECG signals should be noise-free. A novel system of Single Node Reservoir Computing (SNRC) architecture is used to filter the corrupted ECG signal with high performance. The technique is evaluated using two performance metrics, namely, the output SNR improvement (SNRimp) and the mean square error (MSE), with PLI and AWGN noise. The FIR filter design is done in MATLAB and implemented in Verilog. The highest peak and intervals of peaks are generated in MATLAB. The training of ECG signal with additive white Gaussian Noise and power line interference is done in MATLAB using SNRC architecture in MATLAB and implemented in Verilog. The removal of various artifacts of ECG signal using SNRC technique outperforms the existing ECG denoising techniques.



    Cardiovascular illnesses (CVDs) are the main source of death worldwide. Most cardiovascular illnesses can be prevented by tending to conduct risk factors, for example, tobacco use, undesirable eating, actual idleness and destructive utilization of liquor. Distinguishing cardiovascular infections however right on time as possible may be significant. ECG is vulnerable to various kinds of noises, which could dist which could distort the morphological elements and the stretch parts of the ECG prompting a false determination and inappropriate treatment of patients. ECG is recorded by estimating the likely distinction between two terminals put on the patient's skin. The different electrocardiogram (ECG) noises including baseline wander (BW), muscle artefact (MA), power line interference (PLI) and additive white Gaussian noise (AWGN) in view of signal decomposition. The temporal and spectral-bound waveforms which give sparse representation of ECG and can extract ECG nearby waves as well as ECG noises including BW, PLI, MA and AWGN at the same time. In the literature, many techniques are used to overcome these noises. For example, Mohamd Sraitih. [1] upon qualitative and quantitative evaluation it resembles that Ensemble Empirical Mode Decomposition (EEMD) followed by local means (LM) outperforms all the comparison methods and

    better denoising performance. Xiaoyun Xie [2] achieved a significant improvement of signal-to-noise ratio (SNR) ranging from 7% to 25%. It supressed QRS-like motion artifacts and decreased the false positives generated by QRS detector. Rajesh Birok [3] the filtering of low frequency artifacts of ECG signal, assuring no loss of information of the ECG signal, and combines the advantages of both Complete Ensemble Empirical Mode Decomposition (CEEMD) and Artificial Neural Network (ANN). In 2020, Manju.B.R [4] the wiener filter has high SNR, low MSE and low PRD compared to Kalman filter. Hosssain, Bashar [5] uses Variable Frequency Complex Demodulation (VFCD) to remove sub-band decomposition of noisy ECG signal and provide accurate QRS complex detection and SNR. Other techniques used for ECG denoising are Hermawan [6] used Adaptive Fourier Decomposition, Rakshit and Susmita Das [7] used Empirical Mode Decomposition and Adaptive Switching Mean Filter, Navneet and Neetu [8] ECG denoising using local-means filter, Sarita and Roshan [9] used sliding discrete fourier transform (DFT) phase locking scheme cancelling the PLI noise. Several limitations in the previous work is that it doenot consider the characteristic waves of the ECG signal and doesnot achieve as much performance. To overcome this limitation, we introduce Single-Node Reservoir Computing (SNRC) architecture based on Recurrent Neural Network (RNN) to remove the noise contaminated ECG signals and maintain the characteristic waves of the ECG signal and achieve better denoising performance Here we consider two types of noises, Power line Interference (PLI) and Additive White Gaussian Noise (AWGN it is the most distracting noise and difficult to analyse from the ECG signal. This paper is organized into 4 sections including an introduction with previous techniques. Section 2 descibes the Single Node Reservoir Computing (SNRC) architecture and block diagram. Section 3 contains result and discussions of the proposed method. Section 4 acknowledgment. Section 4 and 5 describes conclusion and list of references.


    1. Architecture of Single Node Reservoir Computing

      Fig.1. Proposed architecture

      Reservoir Computing (RC) first showed up as a change to recurrent neural network (RNNs) training and was proposed freely. Because of the retained internal state, RNNs are otherwise called "deep" neural networks. Due to the limitless number of hidden layers, slope based training of RNNs frequently experiences disappearing gradients. RC tackled the issue of RNN training by applying the standard of random mapping. The reservoir act as a spatiotemporal kernel, mapping the low-dimensional input data onto a higher-dimensional state space, where this data is supposed to become linearly detachable. Consequently, a linear readout interpreting transient elements in the high- dimensional network state is generally adequate to interpret the input information. As a consequence, rather than adapting the entire recurrent network, only the linear readout layer is trained in RC.

      The RC approach accomplishes numerous objectives: (1) the training strategy is quick, and (2) it uses conventional linear algebra techniques, critically for the improvement of novel computing systems, (3) it consists of fixed nonlinear part of the network. Reservoir Computing it addresses the issues of intrinsically quick and energy-efficient hardware. It supports data handling directly on the hardware level. Both mathematical and experimental RC frameworks frequently beat state-of-the-art in speed (such as speech recognition task) and accuracy (e.g., time series prediction). The architecture of Reservoir Computing architecture is shown in Fig.1.

      The single-node way to RC has advantage of delay dynamics, which has a high-dimensional, numerically speaking even limitless dimensional phase space, and can be interpreted as a virtual network. Single-node RC is frequently implemented in hardware as it is technologically proficient method for building a nonlinear reservoir network. The advantage of the method is the capacity to

      reduces physical neural networks size to a single nonlinear unit, consequently bringing about smaller number of parameters to control. In addition, the single-node RC architecture is particularly appropriate for ultrahigh-speed photonic hardware implementations. Various different demonstrators have approved the single-node RC approach showing independent RCs24 and variety of hardware architectural and training modifications.

      Reservoir Computing (RC) consists of three layers: input layer, reservoir, and output layer. The input layer sends the input signal to the reservoir through a fixed random weighted connection an irregular weight is produced, then, at that point, we keep it fixed all through training. The reservoir comprises of numerous nonlinear nodes that make a recurret neural network (RNN). The connections between the Reservoir outputs (states) and the output layer are the only connections to be trained. RC is an efficient processing tool that has been effectively utilized in numerous applications, for example, predicting the future development of extremely large spatiotemporally chaotic systems from data, transient data handling, approximate any element in the fading memory channels class, and nonlinear dynamic systems prediction, it utilizes the SNRC. SNRC is the new form of the traditional RC. SNRC is a RC that replaces the nonlinear nodes with a single nonlinear node affected by delayed feedback.

    2. Block diagram

    The proposed block diagram of the single node reservoir computing consists of input layer, reservoir and output layer. The ECG waveform with added high frequency noise source is given as the input on the input layer, the input is fed to the reservoir and the trained weights is given to the output layer for filtering process it given to the low pass filter and finally get the denoised output waveform.

    Fig. 2. Block diagram of the proposed method

    1. The network consists of input layer, hidden layer (reservoir) and readout or output layer.

    2. The weights between the input and the reservoir W and the weights of the reservoir Wres are not trained.


    3. The only trainable weights belong to the output or the readout layer.

    4. The reservoir creates a high dimensional recurrent nonlinear representation which is connected to the desired output through trainable weights.

    The training steps of reservoir computing are:

    • Initialize the wights of the input connections randomly.

    • Initialize the state of the single neuron randomly.

    • For each input data point in the training set:

      • Multiply the input data point by the input weights to get the input to the neuron.

      • Add the input to the neurons state.

      • Update the neurons state using a non-linear activation function, such as the tanh function.

    • Once all the input data points have been processed, use the neurons final state as the output prediction for the entire input sequence.

    • Train the output weights to minimize the difference between the predicted output and the true output.

    • Repeat steps 3-5 for each training iteration.

    • Once the model has been trained, it can be used to make predictions on new input data by following steps 1-4, and using the trained output weights to generate the final prediction.

    For the training process taking 500 ECG samples and take the original signal. The noise signal is created by adding original signal with high frequency noise. The high frequency noise with cutoff frequency of 100 and 200 Hz and the signal is passed through the low pass filter. The reservoir computing parameters are number of inputs, reservoir, output, leak rate, spectral radius, input scaling and bias scaling. The reservoir weights is finded by multiplying the reservoir weights with spectral radius by the eigen values of the reservoir weights.

    The reservoir state is calculated as:

    • r(n) = (1-) r (n-1) + fres (Win u(n) + Wres r(n-1) +

      Wbi b(n))

    • r(n): reservoir state

    • : leak rate

    • r (n-1): initialized reservoir state

    • fres: reservoir activation function (tanh)

    • Win u(n): input activation

    • Wres r(n-1): reservoir activation

    • Wbi b(n): bias activation

    The training of output weights by doing the pseudoinverse of reservoir state. With the use of the trained reservoir computing model to denoise the ECG signal so that a noisy signal is taken and update the reservoir state like done in previous steps and compute the denoised output by multiplying the output weight with reservoir state. The generated filter coefficient is implemented in Verilog and filtered out the signal using lowpass filter and finally get the denoised output waveform.


    3.1 Simulations

    1. A low pass FIR filter design in MATLAB and Verilog

      A simple 15-tap low pass filter FIR is designed and the initial coefficient values are generated using MATLAB and then convert those values for use in a Verilog module. On the implementation of FIR in Verilog, there are three main logic components: a circular buffer to provide clock to each sample of the serial input, multipliers for each of the taps' coefficient value, and the accumulator register for summing result from each tap's output. On the mechanics of the FIR in FPGA logic, used the MATLAB to plug in some simple parameters for a low pass filter and then used the generated coefficient values to calculate into proper register values for Verilog module.

      The low pass FIR filter is designed in MATLAB with an FDA tool using equiripple method of filter order 10, density factor 20, frequency specifications of passband Fp=10.8KHz, stopband Fs=48KHz and magnitude specifications of passband Ap=1dB, stopband As=80dB, hence generated magnitude-frequency response curve and filter coefficient values to calculate proper register values for Verilog module as shown in Fig.3. The analog input is high frequency 100Hz sine wave used the test bench to test the codes that was modified to the proper wave right above the wave, which verify that our designed program is efficiently working with the required specifications for the signals for removal of noise. The overall operation will be controlled by filtering the data obtained from the ECG signals. The code was designed and executed in the Xilinix Vivado using Verilog programming.

    2. Training of SNRC in MATLAB with Additive White Gaussian Noise

    The reservoir trained weights with Signal to noise ratio (SNR), Mean square error (MSE) of 40 and 0.006 values and denoised PQRS waveform is generated from MATLAB. The real ECG PQRS waveform with additive white gaussian noise (AWGN) are trained and generated denoised PQRS

    e) Simulation of Additive White Gaussian Noise and Power line Interference in Verilog

    The trained weights in MATLAB does the filtering process in Verilog. The trained weights are converted to double datatype and the filter coefficients are saved in IEEE 756 forma of floating point valuest with 15 delay pipeline, the product and summation procedure is taken and generated the PQRS waveform as shown in Fig.7. The analog signal as the

    waveform. The generated PQRS waveform in MATLAB as shown in Fig.4 results that the ECG signal is noise free and generated trained weights are accurate values.

    1. ECG peak interval detection in MATLAB

      The R peak detection of ECG signal with the use of wavelet. The QRS complex reflects the depolarization of the right and left ventricles it is the most important feature of the human ECG. The ECG data and annotations are taken from the MIT-BIH Arrhythmia Database it is sampled at 360 Hz. The wavelet transform separates signal components into different frequency bands enabling a sparser representation of the signal. The 'sym4' wavelet resembles the QRS complex, which is good for QRS detection. It uses the maximal overlap discrete wavelet transform (MODWT) to enhance the R peaks in the ECG waveform. The MODWT is an undecimated wavelet transform, which handles arbitrary sample sizes. First, decompose the ECG waveform down to level 5 using the default 'sym4' wavelet then reconstruct a frequency-localized version of the ECG waveform using only the wavelet coefficients. It used the squared absolute values of the signal approximation built from the wavelet coefficients and employ a peak finding algorithm to identify the R peaks. The wavelet transform provides a multiscale analysis of the signal to enhance highest peak detection with peak intervals are generated in MATLAB as shown in Fig5.

    2. Training of SNR in MATLAB with Power line Interference noise

    The reservoir trained weights with Signal to noise ratio (SNR), Mean square error (MSE) of 36 and 0.8 values and denoised original ECG waveform is generated from MATLAB. The real ECG waveform is taken from MIT-BIH arrythmia database with sinewave and power line interference (PLI) noise are trained and generated denoised ECG waveform. The generated ECG waveform in MATLAB as shown in Fig.6 results that the ECG signal is noise free and generated trained weights are accurate values.

    input signal which is added to the noisy signal done the filtering process and generated the denoised PQRS waveform in Xilinx Vivado as shown in Fig. The sinewave signal as the input signal is added with noisy signal done the filtering process with added weights and generated the denoised real ECG signal in Xilinx Vivado as shown in Fig.8.

    Fig.3. Simulation of FIR filter in Verilog

    Fig. 4. Denoised ECG signal adding Additive White Gaussian Noise

    Fig. 5. Highest R-peak detected in MATLAB

    Fig. 6. Denoised signal adding PLI noise

    Fig. 7. Simulation of SNRC in Verilog with Additive White Gaussian Noi

    Fig. 8. Simulation of SNRC in Verilog with Power line Interference Noise


    The proposed system is Single Node Reservoir Computing (SNRC) architecture to clean the corrupted ECG signal for developing a training model. The exporting and conversion of filter coefficients are used for the implementation of FIR filter. The filter coefficients are found out from the MATLAB and it is converted into hexadecimal and implemented using Verilog in Xilinx Vivado. The training of SNRC is done in MATLAB with AWGN and PLI noise hence generated the reservoir weights. The trained weights are used for the filtering process and generated the PQRS waveform for AWGN and real ECG signal for PLI noise which is implemented in Verilog of Xilinx Vivado. The existing method of ECG denoising using adaptive switching mean filter here the SNR improvement and mean square error of additive white gaussian noise is 10 and 0.01 with powerline interference of SNR and mean square error is 14 and 0.01. The result when compared with the existing method illustrate that the SNRC architecture attains better SNRimp and MSE with AWGN (Additive White Gaussian Noise) and PLI (Power line Interference) noise.


[1] Mohamed Sraitih, Younes Jabrane, A denoising performance comparison based on ECG Signal Decomposition and local means filtering, Biomedical Signal Process. Control,19 June 2021.

[2] Xiaoyun Xie, Hui Liu, A multi-stage denoising framework for ambulatory ECG signal based on domain Knowledge and motion artifact detection, Future Generation Computer Systems (2021).

[3] Rajesh Birok, Rajiv Kapoor, ECG denoising using Artificial Neural Network and Complete Ensemble Empirical Mode Decomposition, Turkish Journal of Computer and Mathematics Education, Vol.12 No.2(2021).

[4] Manju.B.R, Sneha.M.R, ECG Denoising Using Wiener Filter and Kalman Filter, Procedia computer science (2020).

[5] Md-Billai Hossain, Syed Khairui Bashar, A Robust ECG Denoising Technique using Variable Frequency Complex Demodulation, Elsevier COMM 105856 16 November (2020).

[6] Indra Hermawan, Ario Yudo Husodo, Budi Wiweko, Alfred Boediman, Denoising noisy ECG signal based on AdaptiveFourier Decomposition, The third international seminar on sensor, Instrumentation, Measurement and Metrology (2018).

[7] Manas Rakshit, Susmita Das, An efficient ECG denoising methodology using empirical mode decomposition and adaptive switching mean filter, Biomedical Signal Process. And Control (2017).

[8] Md. Ashfanoor Kabir, Clia Shahnaz, Denoising of ECG signals based on noise reduction algorithms in EMD and wavelet domains, Biomedical and Signal Process and Control (2011).

[9] Mojtaba Bandarabadi, Mohammad Reza Karami-Mollari, Amard Afzalian, Jamal Ghasemi, ECG denoising using Singular Value Decomposition, Australian Journal of Basic and Applied Sciences (2010).