Sparse representation and overcomplete dictionary learning for anomaly detection in electrocardiograms

  • Tomasz Andrysiak
AI and ML applied to Health Sciences (MLHS)


In the hereby work, we present the use of sparse representation and overcomplete dictionary learning method for examining the case of anomaly detection in an electrocardiographic record. The above mentioned signal was introduced in a form of correct electrocardiographic morphological structures and outliers which describe different sorts of disorders. In the course of study, two sorts of dictionaries were used. The first consists of atoms created with the use of differently parameterized analytic Gabor functions. The second sort of dictionaries uses the modified Method of Optimal Directions to find a dictionary reflecting proper structures of an electrocardiographic signal. In addition, in this approach, the condition of decorrelation of dictionary atoms was introduced for the sake of gaining more precise and optimal representation. The dictionaries obtained in these two ways became a basis for the analyzed sparse representation of electrocardiographic record. During the anomaly detection process, which was based on decomposition of the analyzed signal into correct values and outliers, a modified alternating minimization algorithm was used. A commonly accessible base of data of electrocardiograms, that is MIT-BIH Arrhythmia Database, was utilized to examine the conduct of the recommended method. The effectiveness of the solution, which validated itself in searching of anomalies in the analyzed electrocardiographic record, was confirmed by experiment results.


Electrocardiogram Sparse representation Dictionary learning Electrocardiographic signal analysis Anomaly detection MIT-BIH Arrhythmia Database 

1 Introduction

In numerous fields of medical diagnosis, measurement and analysis of biomedical signals are essential elements supplying information concerning manner and well-being of organ functions in living organisms. One of the oldest and best-known techniques, both in the aspect of range of supplied diagnostic data and interpretation abilities, is electrocardiography.

Heart illnesses are cardiological systems’ deviations that occur more and more frequently, and they affect not only older people. The significance of the problem can be confirmed by constantly changing social structure, where larger and larger percent of the population created by group of retired people is more exposed to cardiological problems. The threats defined in such a way doubtlessly become a factor motivating to involve intensive research work in the area [1].

Analysis of a human electrocardiographic (ECG) signal consists in reflecting the electrical activity of the heart muscle cells. Their ability to create electrical impulses influences working of heart as a blood-transporting pump in the human circulatory system, which enables other biological systems within a human body to work efficiently. ECG signals that are predominantly recorded as changes in electrical potentials in time intervals are obtained from different typical points of a human organism (these places are directly tied with 3, 6 or 12—channel obtaining of ECG signals). Signals acquired in such a way contain crucial diagnostic set of data. Unfortunately, the standard record of ECG signals indicates that they are vulnerable to different types of disturbances, which makes it hard or not possible to elicit important and credible set of information in medical diagnostic processes [2, 3].

A typical electrocardiographic record (Fig. 1), creating a set of multi-lead signals, provides us with a series of repeated wave structures. Each of the structures is constructed and defined as follows: (i) waves P, Q, R, S, T, U, (ii) segments PR, ST and (iii) intervals PR, RR, ST, QT, representing changeable periods of cardiac muscle electrical activity [4].
Fig. 1

Standard electrocardiographic curves

Morphological fluctuations of shape, or disturbances of the arrangement of the electrocardiographic signal, may occur out of different morbid or physiological reasons. In an ECG record, these changes most frequently occur as disturbances of shape or placement of waves P and T, and segments ST or PQ. Anomalies may also appear in localization and structure of the QRS complexes, which are a crucial factor for calculating the RR interval. Disturbances of the correct heartbeat rhythm, directly bonded with its irregular contractions, may be characteristic for a disease unit called arrhythmia. One of the most frequently occurring factors of heart rhythm distortion, widely spread among old people, are premature ventricular complexes (PCVs). They are created as an outcome of ectopic hyperactivity of myocardium, and they are the cause of distortions in its synchronization processes [5, 6].

Until now there have been published numerous experimental works directly describing different stages of processing, analysis and detection of given structures in an ECG signal [7, 8]. It was performed by means of: (i) classical methods of signal processing, (ii) fuzzy sets techniques, (iii) artificial neural networks, (iv) support vector classifiers, (v) genetic algorithms and (vi) hybrid techniques [9, 10, 11, 12]. Often these techniques create basis for solutions using machine learning methods for effective diagnosis of heart diseases [13]. Fuzzy sets or fuzzy-based machine learning is an approach commonly used for effective classification of disease alterations reflected in the analyzed ECG signals. For that reason, these techniques utilize smooth variables with membership functions [14]. With reference to these solutions, Behadada and Chikh [15] suggested to use fuzzy decision tree as methodology to diagnose the cardiac abnormalities (PVC events). Another example, presented by Lei et al. [14], developed an adaptive fuzzy ECG classifier for enhancing the performance of conventional classifiers. Further research over fuzzy-based techniques developed through the incorporation of neural networks, such as fuzzy inference networks [14]. Ceylan et al. [16], on the other hand, used Fuzzy Clustering Neural Network Algorithm for classification in ECG analysis achieving accuracy of 99% with acquisition of high clustering performance. However, the training time was large in this case, which limited the benefits. Also, Vishwa et al. [17] proposed an automated neural network (ANN) on which classification system of cardiac arrhythmia (which used multi-channel ECG recordings) was based. To validate the method a Normal Sinus Rhythm (NSR) database was applied. The above-mentioned approach proved the accuracy of 96.77% on MIT-BIH database. Another research performed by Anuradha and Reddy [18] made neural networks for optimizing the classification of ECG signals better. The authors suggested an ANN-based classifier for cardiac arrhythmia. The above-mentioned classifier employed a combination of wavelets back-propagation algorithms (BPA). The outcome of 90.56% of accuracy was achieved, and the classifier effectively detected the activities that can be considered abnormal. Another attitude toward ECG disturbances detection problems is solutions using support vector classifiers, based on statistical learning theory. In a study by Kampouraki et al. [19], the time series of heartbeat are classified with the implementation of support vector machines (SVM). The researchers have revealed that the SVM classifier offers a better functionality than those based on neural networks as it classifies the ECG signals with minimal signal-to-noise ratio. On the other hand, Nasiri et al. [20] proposed an up-to-date attitude for feature extraction and ECG classification for cardiac arrhythmia disease. The SVM classifier was engaged for optimization of the approach by detecting the best subset of feature, which provides the optimal classification of the signal. The researchers have utilized SVM with genetic algorithm (GA), where GA is deployed to enhance the generalization performance of the SVM classifier. Additionally, Priyadharshini and Kumar [21] conducted a research to enhance the classification of Arrhythmia from ECG signals. For this purpose, an improvised genetic algorithm (IGA) was developed and Naïve Bayes classification algorithm was employed for the research purpose. Tending to achieve better classification results for ECG signals, solutions based on hybrid techniques begun developing intensively. Dalal and Birok [22] in their research concentrated on a hybrid classifier by using the principal component analysis (PCA) and neuro-fuzzy classifier. The accuracy of the hybrid approach was estimated to the level of 96%. Another work by Bensujin and Hubert [23] examined and determined (using classification) the ST-segment elevation myocardial infarction (STEMI) in the ECG signal of a person. Remaining solutions, based on hybrid detection methods, were predominantly used for detection of heart rate, ischemic and extraction of STEMI [24].

The contemporary promising attitude toward analyzing and detecting anomalies in an ECG signal is the machine learning methods, based on the sparse representations of the signals realized with the use of dictionaries with redundancy, describing essential structures of the tested signal. However, the above-mentioned methods are used predominantly at the initial stages of the ECG signal analysis, that is either quality enhancement or detection of the QRS complex [25]. The problem of anomaly detection from the perspective of electrocardiography record should by no means be referred to in the same way as the common attitude to anomaly detection solutions. This matter has already been addressed in detail in the available scientific literature [26, 27]. Numerous anomaly detection methods for symbolic sequences were proposed, among others, by Chadola survey [28]. However, anomaly behavior and the sole process of its detection in the sparse representation of an ECG signal is not so frequently described [29, 30].

In our article, we suggest a new approach, creating our contribution to anomaly detection problem, which acquire the reader with the use of resistant-to-outlier dictionary learning method and sparse representation of a signal for specific time series describing the analyzed ECG signals. Dictionary learning process was carried out with the use of modified Method of Optimal Directions (mMOD), where the decorrelation of atoms of dictionary created for the sake of gaining more precise and optimal representations was a significant condition. Anomaly detection is carried out as a solution to the sparse representation of an electrographic record with the modified alternating minimization algorithm (AMA). Our modification consisted in the use of classical version of AMA(normally used for solving structured convex optimization problems, where the sum of two functions is to be minimized) for estimation of sparse representation of the analyzed signal, which is described by means of the proposed model. As a final outcome, we receive the electrocardiographic signal decomposition onto the correct values and outliers (anomalies).

The structure of this work is arranged in a specific manner. Firstly, the introduction is provided. In Sect. 2, we present motivation and related work. Next, in Sect. 3, an ECG signal’s sparse representation is discussed in detail. Then, in Sect. 4, we show the Gabor dictionary which consists of atoms created by using differently parameterized analytic Gabor functions and resistant-to-outlier dictionary learning method based on modified Method of Optimal Directions estimation. Next, Sect. 5 presents the details of the proposed solution consisting of formulation of the sparse representation problem with outliers and the modified AMA solution for optimization issue of sparse representation. Section 6 provides implementation details and experimental results, which are followed by conclusions.

2 Motivation and related work

Linear extensions of the analyzed ECG signal in relation to a defined set of basic functions in many cases presents significant limitations, i.e., they do not exactly represent important features of decomposed ECG signal by means of a small number of linear extension coefficients [31]. What is more, if the structure elements of analyzed ECG signal differ noticeably from the scaling factor of the basic function, the coefficients of linear extension will not constitute optimal representation of such a signal [32]. Therefore, the length-changing signals require applying of basic functions with numerous different scales. A significant limitation of such an approach is bonding of frequency and scale parameters [33].

In case of complex signal structures, such as ECG records, we are not able to define optimal parameters of above-mentioned elements for chosen basic functions. In such a situation, the best solution seems to be introduction of more varied and numerous function sets, called dictionaries with redundancy [34]. These functions are pointed out to fit the character of the analyzed signal best. Such a dictionary can be chosen by: (i) constructing the dictionary on the basis of a mathematical model of data (using already-known forms of models such as wavelets, wavelet packets, contourlets, curvelets or Gabor [34, 35]), or (ii) learning the dictionary using a training dataset (which is the most frequent part of a processed signal) [36]. The most typical method of a learning dictionary is the Method of Optimal Directions (MOD) that was proposed by Engan et al. [37] and was one of the first implemented methods, known as a sparsification process. Equally popular—though different in its character—is K-means singular value decomposition, with its name contracted to K-SVD algorithm, which was published by Ahron et al. [38]. The essential discrepancy between the two methods consists in the manner of maintaining the dictionary as current, i.e., some update all atoms at once (MOD), while others update atoms one after another (K-SVD). Within the field of sparse representation of biomedical signals [39], in particular electrocardiographic records, the aforementioned methods of dictionary creation were most often utilized for compression, analysis or detection of defined ECG signal’s features [37, 40, 41]. In particular, the improved Method of Optimal Directions method versions (e.g., k-coefficient Lipschitzian mappings for sparsity algorithm [40]) often showed an advantage over the K-SVD algorithm in the aspect of precision and effectiveness in creation of representation of the decomposed electrocardiographic signal.

Realization of sparse representation as decomposition of the signal in relation to the dictionary requires quick searching and optimal matching of the elements (i.e., atoms) which best present particular characteristics of the examined signal [31]. For the so-defined problem, the pace of decreasing of the residual’s norm depends on correlation between the following signal’s residues and chosen elements of the dictionary. Assuming that the analyzed signal is a sum of components of high energy, which are dictionary elements, the correlation coefficients of the signal and its residues are significant. Thus, their norm decreases fast because high-energy components are important parts of a signal well correlated with selected atoms of the dictionary [34, 35]. This is why there is a need to define a measure of quality of such a match, and an algorithm ensuring finding best, from this measure’s perspective, representation of the signal appeared. In general, finding such an optimal representation is NP-hard [42]. The issue may be presented as sparse solutions of systems of equations [43] or adaptive greedy approximations [44]. Then, iterative methods are appropriate computational solutions, i.e., different variants of orthogonal matching pursuit (OMP) or basis pursuit (BP) [45]. However, in case of complex representations of a signal (in particular, when we want to present the analyzed signal as a composition of its elements, for instance correct values and anomalies) we must use stronger tools, such as alternating direction method of multipliers (ADMM) [46] or computationally easier alternating minimization algorithm [47]. Then, we will be able to solve given optimization tasks as unconstrained convex problem.

Anomaly detection (that is, particular types of disturbances) in an ECG signal can be realized by different means whose details can be found in numerous papers [26, 27, 28]. This issue is directly connected to a difficulty of an unequivocal definition of the notion of an outlier in the analyzed dataset. The most often adopted definition is the Hawking’s [48], where an outlier (an abnormal observation) is an observation which deviates so much from others that an assumption arises that it was created as a result of a mechanism of a different character. Some authors point that an outlier is also an observation which not only differentiates from the remaining ones, but also it interrupts relations in the analyzed dataset [27].

Currently, a promising approach toward the analysis and anomaly detection in an electrocardiogram is methods based on the idea of sparse representation of signals with the use of dictionaries with redundancy. They allow, in the process of decomposition, to separate essential construction features of the analyzed signal with respect to the character of the exploited dictionary. These methods, however, are most often used only in the initial stages of the ECG signal analysis, i.e., (i) improvement of quality, (ii) compression or (iii) detection of QRS complex [25, 49]. Nevertheless, they are seldom used in the process of widely understood anomaly detection in an ECG signal [29, 30]. This fact has become an inspiration for the solution presented in this paper, which consists of formulation of the problem’s sparse representation with outliers and the modified AMA method for solving the optimization problem of sparse representation.

3 Sparse representation model of electrocardiographic signal

In numerous cases, representations of an ECG signal performed in the form of linear extensions against a defined set of base functions correctly placed in time and/or frequency are often described as not precise and optimal enough. Therefore, a better solution is to employ more diverse, numerous and adjusted to the signal’s character sets of functions, usually referred to as dictionaries with redundancy [42]. In result, more universal and flexible representations are achieved.

Sparse representation of an electrocardiographic signal keeps searching for limited solution of sparse representation coefficients \(C\) describing the signal \(s_{i}\) (data vector) concerning the overcomplete dictionary \(D\) when the residual signal is smaller than the given threshold value \(\xi\) which we may assume as [44]:
$$\hbox{min} \left\| C \right\|_{0} \quad {\text{s}} . {\text{t}} .\quad \left\| {s_{i} - \mathop \sum \limits_{q = 0}^{Q - 1} c_{q} d_{q} } \right\| < \xi ,$$
where \(\left\| \cdot \right\|_{0}\) describes \(\ell_{0}\) normcounting the nonzero entries of a vector, \(c_{q} \in C\) presenting a group of decomposition coefficients, \(d_{q} \in D\) are the atoms of the overcomplete dictionary \(D\) and \(\xi\) is the constant specifying the exactness of the representation.

Equation (1) presents sparse representation of \(s_{i}\) signal, received by means of the minimal number of decomposition coefficients \(c_{q}\) and the \(d_{q}\) atoms of \(D\) dictionary corresponding with them (when we assume the specific level of \(\xi\) precision). Optimal representation of an ECG signal which is described as such subset of dictionary \(D\) elements, of which linear combination reflects the biggest rate of the signal \(s_{i}\) energy among all the subsets of the same count. Finding such a representation is computationally NP-hard [45]; hence, we are satisfied with iterative adaptive solution (which is suboptimal), the so-called orthogonal matching pursuit algorithm [50].The result of work of such an algorithm is the projection of structural elements of signal on chosen dictionary elements, called atoms.

The OMP algorithm produces three important elements of information: (i) the set of projection coefficients \(C = \left\{ {c_{0} ,c_{1} , \ldots ,c_{p} , \ldots ,c_{Q - 1} } \right\}\), (ii) the set of residues \(RS = \left\{ {r^{0} s,r^{1} s, \ldots ,r^{p} s, \ldots ,r^{Q - 1} s} \right\}\) and (iii) the list of dictionary elements chosen to approximate \(s_{i}\), represented as \(D = \left\{ {d_{0} ,d_{1} , \ldots ,d_{p} , \ldots ,d_{Q - 1} } \right\}\).

These three vectors \(C\), \(RS\) and \(D\) completely define the discrete signal \(s_{i}\), which can be written as
$$s_{i} = \mathop \sum \limits_{q = 0}^{Q - 1} c_{q} d_{q} + r^{q} s,$$
where \(r^{q} s\) is residual in an \(q\)—term sum.
In each \(p\) step of OMP algorithm, we undertake subsequent decompositions of \(s_{i}\) signal by means of projections on \(D\) dictionary elements. Then, in \(p{\text{th}}\) step of decomposition, we obtain
$$c_{p} = \left\langle {r^{p - 1} s,d_{{\varphi_{p} }} } \right\rangle ,$$
where \(\left\langle {*,*} \right\rangle\) means scalar product and \(r^{p} s\) constitutes residuum being a result of \(s_{i}\) signal decomposition in the \(d_{{\varphi_{p} }}\) direction. For the residuum of the obvious dependence \(r^{0} s = s_{i}\) occurs. The indices of the \(p\) vectors selected are stored in the index vector \(\varPhi_{p} = \left\{ {\varphi_{1} ,\varphi_{2} , \ldots ,\varphi_{p - 1} ,\varphi_{p} } \right\}\), \(\varPhi_{0} = \emptyset\), and the vectors are stored as the columns of the matrix \(D_{p} = \left\{ {d_{{\varphi_{1} }} ,d_{{\varphi_{2} }} , \ldots ,d_{{\varphi_{p} }} } \right\}\) and \(D_{0} = \emptyset\).
The main task of the OMP algorithm is selection of \(\varphi_{p}\) by finding the vector best aligned with the residual obtained by projecting \(r^{p} s\) onto the dictionary components, that is
$$\varphi_{p} = \arg \mathop {\hbox{max} }\limits_{{h \in \varPhi_{p} }} \left| {\left\langle {r^{p} s,d_{h} } \right\rangle } \right|, \varphi_{p} \notin \varPhi_{p - 1} .$$
The re-selection problem is avoided with the stored dictionary. If \(\varphi_{p} \notin \varPhi_{p - 1}\), then the index set is updated as \(\varPhi_{p} = \varPhi_{p - 1} \cup \varphi_{p}\) and \(D_{p} = D_{p - 1} \cup d_{{\varphi_{p} }}\). Otherwise, \(\varPhi_{p} = \varPhi_{p - 1}\) and \(D_{p} = D_{p - 1}\).The residual \(r^{p} s\) is calculated as
$$r^{p} s = r^{p - 1} s - D_{p} \left( {D_{p}^{T} D_{p} } \right)^{ - 1} D_{p}^{T} r^{p - 1} s,$$
where \(D_{p}^{T} D_{p}\) is the Gram matrix.

Then we calculate the new coefficient \(c_{p}\) described by (3) and new residual \(r^{p} s\) described by (5). Next, we update the set of coefficients \({\text{C}}_{p} = {\text{C}}_{p - 1} \cup c_{p}\) and set of residual \(R^{p} s = R^{p - 1} s \cup r^{p} s\).

For \(d_{{\varphi_{p} }}\) atom, chosen by means of (4) dependence, we minimize residuum of \(s_{i}\) signal in another step of OMP algorithm. The number of \(p\) iterations, within which we carry out the limitation of residues, depends on the required accuracy of \(s_{i}\) signal representation and is described by (6) dependence, which is (at the same time) a criterion of stopping OMP algorithm
$$\left\| {r^{p} s} \right\| < \varrho \left\| {s_{i} } \right\|,$$
where parameter \(\varrho \in \left( {0,1} \right)\).

The pace of residuum norm’s fall depends on the correlation between consecutive residues of the signal and selected atoms of the dictionary. If the ECG signal is a sum of high-energy components constituting dictionary atoms, then the signal correlation coefficient and its residues are significant. Consequently, their norm falls rapidly because the high-energy components are the signal’s structural elements, well correlated with the chosen atoms of the dictionary.

3.1 The proposed model of an ECG signal decomposition

We may reckon that \(S \in R^{QxG}\) is a set of signals (including \(G\) signals \(\left\{ {s_{i} \in R^{Q} } \right\}_{g = 1}^{G}\)) being well approximated by a sparse representation model, without analyzing the outliers (signals which vary from the model ones). We can describe such a set \(S\) as
$$S = DC + O + \varOmega ,$$
where \(S\) is the matrix, size \(\left( {QxG} \right)\), which contains \(G\) signals being \(Q\)—elements data vectors, \(D\) is reckoned known, \(O\) is the matrix of outliers that have a certain number of nonzero columns, which mean the same as the difference of every outlier in the model of sparse representations and \(\varOmega\) is a low-energy noise factor.

3.2 Sparse representation of the proposed model with outliers

Our objectives are as follows: detection of outliers in the set/collection \(S\) and recovery of sparse representations. In this case, for the single measurement vector (SMV) [43], we can achieve our aim through resolving Eq. (8) described as follows
$$\left\{ {C,O} \right\} = {\text{argmin}}_{C,O} \left\| {S - DC - O} \right\|_{F}^{2} \quad {\text{s}}.{\text{t}}.\quad \left\| {C_{0} } \right\| \le LT_{0} \quad {\text{and}}\quad \left\| {O_{2,0} } \right\| \le P_{0} ,$$
where \(\left\| {O_{2,0} } \right\|\) is a count of the number of not-equaling zero columns in \(O\), the constraints ensure at most \(T_{0}\) is the ultimate quantity of not-equaling zero entries and at most \(P_{0}\) not-equaling zero columns in the outlier matrix.

The solution caused by problem (8) involves sparse \(C\). On the other hand, it enables nonzero columns in \(O\) in case some outliers cannot be represented solely by \(D\).

In the case of multiple measurement vector (MMV) [51], we can reach the aim by finding a solution to the problem described below
$$\left\{ {C,O} \right\} = {\text{argmin}}_{C,O} \left\| {S - DC - O} \right\|_{F}^{2} \quad {\text{s}}.{\text{t}}.\quad \left\| {C_{0,2} } \right\| \le T_{0} \quad {\text{and}}\quad \left\| {O_{2,0} } \right\| \le P_{0} ,$$
where \(\left\| C \right\|_{0,2}\) is a calculation of the number of not-equaling zero rows in \(C\).

The most obvious discrepancy between the models (8) and (9) consists in the fact that each signal in SVM is assumed as a single measurement connected to an exceptional nonzero sample of its sparse representation (that is a unique set of atoms). Nevertheless, what we do in MMV is joint-sparsity for the collection \(S\).

4 Dictionaries for sparse representations of ECG signals

While describing an ECG signal, redundancy appears when the dictionary is bigger than the orthogonal base. Conciseness is possible to obtain, however, by agreeing to approximate the signal but only in case we utilize as few functions as possible. If the number of dictionary functions (atoms) chosen for representation of the signal is called the size of representation, then we will usually pursue a situation where [34]
$${\text{Size}}\;{\text{of}}\;{\text{representation}}\; < \;{\text{dimension}}\;{\text{of}}\;{\text{base}}\; \ll \; {\text{size}}\;{\text{of}}\;{\text{dictionary}}.$$

However, decomposition of the signal \(s_{i}\) toward the dictionary requires then continuous seeking and matching its appropriate atoms, which reflect best the necessary attributes of the analyzed ECG signal. This matching ought to be performed to maximize correspondence between the chosen dictionary’s atoms and the remaining part of the analyzed signal. Thus, it is strongly recommended to define a measure of quality and an algorithm which would ensure finding the best signal’s representation for that measure [42]. However, to perform such an aimed goal it is advisable, first of all, to define dictionary elements (atoms), which show the necessary attributes of the decomposed signal in the best possible manner. These dictionaries can be created with the use of properly parametrized analytic functions (e.g., Gabor functions [35]) or formed as approximated reflections of defined analyzed signal structures (e.g., Method of Optimal Directions [37]).

4.1 Gabor’s functions dictionary

As far as the proposed method is analyzed, it was suggested to use a waveform (atoms) from a Gabor dictionary in the form of translation, dilation and modulation of a Gaussian window function \(g\left( x \right)\). We may then define a set of dictionary atoms’ indices, i.e.,\(\gamma \in \left\{ {s,p,k,\phi } \right\}\), where index \(\gamma \in Z\) and \(Z = R^{ + } \times R^{3}\), parameters responsible for dilation, \(p\) is translation, \(k\) is modulating frequency, whereas \(\phi\) is phases and \(\phi \in \left[ {0, 2\pi } \right[\).

For the so-defined parameters, we obtain the following form of real Gabor function (the so-called atoms)
$$g_{\gamma } \left( x \right) = K_{\gamma } g\left( {\frac{x - p}{s}} \right)\sin \left( {\frac{2\pi k}{N}x + \phi } \right)$$
$$g\left( x \right) = \frac{1}{{\sqrt {2\pi } }}e^{{ - \frac{{x^{2} }}{2}}} ,$$
where \(N\) describes the size of the processed signal for which the dictionary is built, \(K_{\gamma }\) is normalizing constant used to achieve \(\left\| {g_{\gamma } } \right\| = 1\) and \(\gamma \in \left\{ {s,p,k,\phi } \right\}\) describes parameters of the Gabor’s dictionary functions [52].

In our work, we used the idea of dictionary initially suggested in the quoted work [35]. The parameters of the above-mentioned atoms were pointed out from dyadic sequences of integers. We assume that the signal analyzed is limited and it consists of \(N = 2^{L}\) samples, whereas \(L\) is an integer number. Then scale \(s\), which corresponds to an atom’s width in time, is derived from the dyadic sequence \(s = 2^{j}\), where \(0 \le j \le L\) and \(j\) is octave. Parameters \(0 \le p < 2^{ - j} N\) and \(0 \le k < 2^{j}\), which correspond to an atom’s position in time and frequency, are sampled for each octave \(j\) with interval \(2^{j}\). The parameter \(\phi\), on the other hand, defines phase shifts and assumes the \(M\) number of particular values, i.e., \(\phi = 2\pi m/M\), where \(m = 0,1, \ldots M - 1.\) For such parameters changeability, we obtain a limited dictionary, but in return we get calculation simplicity. Hence, we construct Gabor’s dictionary as a function family \(\left\{ {g_{\gamma } \left( x \right)} \right\}\) for appointed parameters \(\gamma = \left\{ {s,p,k,\phi } \right\}\). As a result, we obtain the dictionary consisting of \(\left( {1 + \log_{2} N} \right)NM\) waveforms (i.e., atoms).

It is also worth noticing that if we define resolution as distance in time (\(\Delta t\)) or in frequency (\(\Delta f\)) between the neighboring atoms for the defined subset of Gabor’s dictionary (when we assume that fs is sampling frequency of the analyzed signal) we obtain \(\Delta t = 2^{j} /f_{s}\) and \(\Delta f = f_{s} /2^{j}\). This means that resolution depends on octave, which defines atom’s “width” in time and in frequency. Thus, the range of time variability of dictionary atoms’ defines their ability of evaluation of “width” in time of signal structure element (which is represented by this atom). The change in resolution is gained by changing sampling frequency of \(p\) and \(k\) parameters.

In Fig. 3a, atoms’ selected examples from Gabor’s dictionary are presented.

4.2 Dictionary learning methods of resistant-to-outlier

The issue of dictionary learning in the scope of sparse representation has recently encouraged numerous researchers to analyze the presented field [34]. What makes dictionary learning algorithms different is their approach toward the dictionary adjustment process, i.e., some update all atoms at once (e.g., Method of Optimal Directions [37]), while others update atoms one after another (e.g., K-means singular value decomposition [38]).

The crucial idea of these solutions is searching for the best dictionary \(D\) (resistant-to-outlier) which would reflect the signal \(S\) as sparse representation, as a solution of the given equation
$$\mathop {\hbox{min} }\limits_{D,C} \left[ {\left\| {S - DC - O} \right\|_{F}^{2} + \lambda \left\| {o_{i} } \right\|_{2,1} } \right],$$
where \(\left\| \cdot \right\|_{F}^{2}\) is the Frobenius norm and \(O = \left[ {o_{1} , \ldots ,o_{L} } \right]\) is the matrix of outliers, \(\left\| {o_{i} } \right\|_{2,1}\) is the mixed \(\ell_{2,1}\) norm of vector \(o = \left[ {\left\| {o_{1} } \right\|_{2} , \ldots ,\left\| {o_{L} } \right\|_{2} } \right]^{T}\), where it is defined as the \(\ell_{1}\) norm of matrix of outliers, \(\lambda\) is a threshold parameter.

The MOD is utilized to resolve the issue of optimization, described in Eq. (12). This process is performed with minimizing the objective function iteratively over one variable, while the remaining two are fixed. For the first, \(D\) and \(O\) are initialized; next minimization over \(C\) is performed—the iterative optimization starts. The regular course of initializing \(D\) imposes the use of a predefined dictionary, e.g., Gabor’s [35]. However, \(O\) is initialized by using the zero matrix.

The modified MOD algorithm, marked as mMOD, can be subdivided into three stages [53]:
  • Stage I—Sparse Coding At this stage, the decomposition coefficients \(c_{i}\) are gathered in the overcomplete dictionary \(D\) and signal \(s_{i}\). Each phase consists in finding the smallest possible quantity of coefficients which will fulfill Eq. (13). The given \(D\) is known. The OMP algorithm [50] is utilized to estimate \(I\) sparse coefficients \(c_{i}\) for each example of signal \(s_{i}\), by estimation of
    $$c_{i} \leftarrow \mathop {\arg \hbox{min} }\limits_{{c_{i} }} \left\| {s_{i} - Dc_{i} - o_{i} } \right\|_{2}^{2} \quad {\text{s}} . {\text{t}}\quad \left\| {c_{i} } \right\|_{0} \le T,\quad i = 1,2, \ldots ,I.$$
  • Stage II—Outlier Update At this stage, we update the \(o\) outlier vector (every step consists in searching the minimum number of outliers) to fulfill Eq. (14).
    $$o_{i} \leftarrow \mathop {\arg \hbox{min} }\limits_{{o_{i} }} \left[ {\left\| {s_{i} - Dc_{i} - o_{i} } \right\|_{2}^{2} + \lambda \left\| {o_{i} } \right\|_{2} } \right],\quad i = 1,2, \ldots ,I.$$
    To perform an update of an outlier vector, it is necessary to solve
    $$\mathop {\hbox{min} }\limits_{o} \left[ {\left\| {r - o} \right\|_{2}^{2} + \lambda \left\| {o_{2} } \right\|} \right],$$
    where \(r = s - Dc\) is the residual vector. When the derivative of the objective function is set to be equal to zero, at the optimal point \(\hat{o}\), the result is
    $$\hat{o} = \left\{ {\begin{array}{*{20}c} {\left( {1 - \frac{\lambda }{{2\left\| r \right\|_{2} }}} \right)r,} & {{\text{if}}\;\left\| r \right\|_{2} > \frac{\lambda }{2}} \\ {0,} & {\text{otherwise}} \\ \end{array} } \right\}.$$
To conclude from the above, we may state that when the sparse representation error (the residual) norm of the training data exceeds the threshold value \(\lambda\), this point is classified as an outlier. Otherwise, it is perceived as a relevant data vector. Another association about the importance of the trade-off factor \(\lambda\) is that the smaller values it has, the larger number of points is recognized as outliers.
  • Stage III—Dictionary Update At this stage, we bring the dictionary \(D\) atoms up to date. We calculate the alternative values of atoms and decomposition coefficients to decrease the probability of an error within the range of the signal \(S\) itself and its sparse representation \(D*C\) with outliers.
    $${\text{D}} \leftarrow { \arg }\mathop {\hbox{min} }\limits_{D} \mathop \sum \limits_{i = 1}^{Q} \left\| {s_{i} - Dc_{i} - o_{i} } \right\|_{2}^{2}$$
In the dictionary actualizing phase, the problem that is to be solved is as follows
$$\mathop {\hbox{min} }\limits_{D} \left\| {F - DC} \right\|_{F}^{2} ,$$
where \(F = S - O\). We chose the MOD algorithm to solve the above problem (for its simplicity) [37]; nevertheless, any dictionary update algorithm may be applied in this place.

All dictionary atoms are brought up to date in this manner. Iteration which follows the three above stages enables forming a dictionary (without outliers) that estimates the given signal \(S\) in a sparse and precise manner, which then results in the mMOD algorithm being a dictionary \(D\) (resistant-to-outlier used in the modified AMA method) including frequently correlated atoms which reflect the examined signal \(S\) in connection with its sparse representation \(D*C\).

As a solution to this problem, we suggest to introduce the decorrelation condition, i.e., incoherent dictionary learning step [54]. To every iteration of the dictionary learning algorithm that includes sparse approximation which is preceded by dictionary actualization, we suggest the optimization problem described below
$$\hat{D} = \arg \mathop {\hbox{min} }\limits_{D \in \varLambda } \left\| {D - \bar{D}} \right\|_{F}^{2}$$
$$\varLambda = \left\{ {D|\mu \left( D \right) \le \mu_{0} \wedge \left\| {d_{i} } \right\|_{2} = 1,\quad i \in \left\{ {1, \ldots ,I} \right\}} \right\},$$
where the objective \(\mu \left( D \right)\) is a cost function that describes the approximation quality of the dictionary and \(\mu_{0}\) describes a fixed factor of coherence and \(\hat{D}\) is the dictionary closest to the given one \(\bar{D}\) (original dictionary).
The measures \(\mu\) described the ultimate correlation of atoms of the dictionary, where
$$\mu \left( D \right) = \mathop {\hbox{max} }\limits_{{d_{k} ,\;d_{l} \in D\;k \ne l}} \left| {\left\langle {\frac{{d_{k} }}{{\left| {d_{k} } \right|_{2} }},\frac{{d_{l} }}{{\left| {d_{l} } \right|_{2} }}} \right\rangle } \right|,$$
where the \(\mu \in \left( {0,1} \right)\).
The best solution of this problem is achieved when we include an incoherent dictionary learning step to the iterative scheme in modified MOD algorithm. Then, we describe it as INC-mMOD. At each step of the dictionary learning algorithm, which consists of sparse approximation preceded by dictionary update, we suggest the optimization problem described below
$$\hat{D} = \arg \mathop {\hbox{min} }\limits_{{D \in \varLambda^{\prime } }} \mu \left( D \right)$$
$$\varLambda^{\prime } = \left\{ {D\left| {\left\| {D - \bar{D}} \right\|_{F}^{2} } \right. \le \psi \wedge \left\| {d_{i} } \right\|_{2} = 1,\quad i \in \left\{ {1, \ldots ,I} \right\}} \right\},$$
where \(\psi\) is the unknown minimum value reached by Eqs. (19) and (20).

We suggest to resolve the described issue by introducing a decorrelation phase in them MOD loop after the update of the dictionary. In Fig. 3b, an instance of the INC-mMOD atoms from dictionary \(D\) is illustrated.

5 The proposed solution: sparse representation with outlier

Representation of the signal \(S\), displayed by Eq. (7) inspires the solution of problems connected with sparse representations of SVM and MMV types (Sect. 3.2), which are illustrated by the examples (8)–(9), and also obtaining a resistant-to-outlier dictionary \(D\) (Sect. 4). In order to carry out such a task, the alternating minimization algorithm was modified so as to achieve a set of outliers \(O\) describing anomalies in the signal \(S\).

5.1 The problem formulation

The solutions to cases illustrated by Eqs. (8) and (9) may be estimated by answering the described unconstrained convex problem:
$$\mathop {\hbox{min} }\limits_{C,O} \left[ {\frac{1}{2}\left\| {S - DC - O} \right\|_{F}^{2} + \alpha \left\| C \right\|_{1,d} + \beta \left\| O \right\|_{2,1} } \right],$$
where \(d\) described the norm \(\left\| *\right\|_{{2,{\text{d}}}}\) (that is \(d = 1\) for SMV and \(d = 2\) within MMV), \(\alpha , \beta\) are small positive parameters.

We suggest the modified alternating minimization algorithm [47], described by Eq. (24), as a solution to the problem since this algorithm is simpler than alternating direction method of multipliers.

5.2 Modified AMA for solving the optimization problem

The classic alternating minimization algorithm was created to solve the following structured optimization problem [55]
$$\mathop {\hbox{min} }\limits_{x,y} f\left( {{\text{X}},{\text{Y}}} \right)s.t. AX + BY = Z,$$
with \(X,\,Y,\,Z,\,A,\,B\) that describe matrices and the objective function is \(f\left( {{\text{X}},{\text{Y}}} \right) = \theta_{1} \left( X \right) + \theta_{2} \left( Y \right)\), which is separable and \(\theta_{1} \left( \cdot \right), \,\theta_{2} \left( \cdot \right)\) are two real-valued functions.
When we use AMA to solve the case of Eq. (24), we sum an auxiliary variable \(V\) and equality constraint
$$\mathop {\hbox{min} }\limits_{C,O,V} \frac{1}{2}\left\| {S - DC - O} \right\|_{F}^{2} + \alpha \left\| V \right\|_{1,d} + \beta \left\| O \right\|_{2,1} \quad {\text{s}} . {\text{t}} .\quad V = C.$$

As it is easy to notice, the change in Eq. (24) into a constrained issue, the first and second terms of Eq. (24) have been decoupled. Such operation lets evade necessity of an iterated-shrinkage solution for \(C\) [56]. By adding the auxiliary variable \(C\), we achieved a close-form solution for \(C\), as well as a one-shot shrinkage solution for \({\text{V}}\).

The Lagrangian function and the augmented-Lagrangian function in Eq. (26) will be presented in a respective way
$${\mathcal{L}}\left( {C,V,O,\lambda } \right) = \frac{1}{2}\left\| {S - DC - O} \right\|_{F}^{2} + \alpha \left\| V \right\|_{1,d} + \beta \left\| O \right\|_{2,1} - \left\langle {\lambda ,V - C} \right\rangle$$
$${\mathcal{L}}_{\nu } \left( {C,V,O,\lambda } \right) = \frac{1}{2}\left\| {S - DC - O} \right\|_{F}^{2} + \alpha \left\| V \right\|_{1,d} + \beta \left\| O \right\|_{2,1} - \left\langle {\lambda ,V - C} \right\rangle + \frac{\nu }{2}\left\| {V - C} \right\|_{F}^{2} ,$$
where \(\lambda\) is a Lagrange multiplier and \(\nu\) is a penalty parameter that controls the penalty level of deviation from the equality constraint.
Consequently, the framework of the AMA (with anomaly detection) that is supposed to solve Eq. (26) can be presented in the following way:
$$\left\{ {\begin{array}{*{20}l} {C^{k + 1} = \mathop {\arg \hbox{min} }\limits_{C} {\mathcal{L}}\left( {C,V^{k} ,O^{k} ,\lambda^{k} } \right),} \hfill \\ {V^{k + 1} = \mathop {\arg \hbox{min} }\limits_{V} {\mathcal{L}}_{\nu } \left( {C^{k + 1} ,V,O^{k} ,\lambda^{k} } \right),} \hfill \\ {O^{k + 1} = \mathop {\arg \hbox{min} }\limits_{O} {\mathcal{L}}_{\nu } \left( {C^{k + 1} ,V^{k + 1} ,O,\lambda^{k} } \right),} \hfill \\ {\lambda^{k + 1} = \lambda^{k} + \nu^{k} \left( {V^{k + 1} - C^{k + 1} } \right), } \hfill \\ {\nu^{k + 1} = \delta \nu^{k} .} \hfill \\ \end{array} } \right.$$
where \(\delta \in \left( {0,2} \right)\); there is a guarantee of convergence of the above on condition that the sub-problem is solved, ensuring high precision at every iteration [47, 55]. The stop criterion of this algorithm is given by
$$\frac{{\left\| {V^{k} - C^{k} } \right\|_{F}^{2} }}{{\left\| {C^{k} } \right\|_{F}^{2} }} < \varepsilon ,$$
where \(\varepsilon\) is the threshold parameter.

As outcomes of the AMA performance, we obtain: (i) a set of coefficients \(C\), which together with the dictionary \(D\) (achieved with the use of various versions of the MOD algorithm or presented set of analytical Gabor functions) represent the correct structure of the signal \(S\), (ii) outliers (anomalies included in the signal \(S\)) reflected by the matrix \(O\). The former and the latter represent the suggested model of data, which was described by Eq. (2).

6 Experiments

In order to carry out the suggested experiments, the above-described methodology of detecting different sort of disturbances (i.e., anomalies) in the analyzed electrographic record was implemented. The basis of the explored solution was the following ideas: the proposed model of ECG signal decomposition onto the correct values and outliers (Sect. 3.1), dictionaries for sparse representations (Sects. 4.1 and 4.2) and the modified alternating minimization algorithm (Sect. 5.2) to solve the unconstrained convex problem described by Eq. (24). To define the efficiency of the presented solution, we used commonly accessible and usually explored MIT-BIH Arrhythmia Database constituting the set of test ECG signals. In a particularly detailed manner, the results of anomaly detection for signals marked with #108, #109 and #203 (which contain various morphological structure disturbances) and four arrhythmia types (i.e., premature ventricular contractions, atrial premature contractions, paced beats and ventricular flutter) were presented.

6.1 Experimental data included in the MIT-BIH Arrhythmia Database

The input of experimental material for analysis is expected to consist of electrocardiographic records from a public and reference cardiological database which is a set of tested ECG signals. The database contains correct courses and measurements replicating basic and complex models of typical myocardial dysfunctions. The collected records consist of a series of electrical activity measurements of the heart with the use of an electrocardiograph for diverse signal acquisition methods, both in terms of amount and the length of the study. In the diagnostic aspect, each of the records gathered here is supplemented with a prepared by specialists, careful cardiological analysis, which allows to verify the results of the proposed analyzing methods.

In the performed study, we utilized the Arrhythmia Database (MIT-BIH) including eight sets of data containing different disorders that may be detected with the use of the Holter’s method. Forty-eight records included in the MIT-BIH were tested and evaluated. They are described as follows: a file with the subject signal, a header file (containing patient’s data) and a file with diagnostic data (including the signal’s description in the binary form). The sampling frequency of the signal equaled 360 Hz, and the resolution was set to 11 bits. We analyzed 5 min recordings of the ECG signals. The described database, formed for the sake of conducting experiments, is underneath. In 45 records of the used database, the modified lead II (MLII) consists of lead A signals, whereas the lead B signal is led by V1 (sometimes V2 or V5 and in one record V4). In the remaining three records, V5 leads A, V2 (two records) leads B or MLII (one record, where signals were reversed). More information about placing of the ECG leads we can find in [57]. According to this article, MLII lead signals are employed to perform the set of 45 recordings, whereas the remaining three recordings use V5. The enlisted classes, connected to the records, we use for the sake of processing and analyzing. The presented method is verified on the grounds of analysis scheme described below. According to the analysis scheme, the above-mentioned 45 patients’ records data are used for classification process (to categorize four classes of ECG signals). The ECG segments received in the process of decomposition of the signal are divided into all possible N-samples windows. We obtain sets of data while using twenty-three records corresponding to the normal sinus rhythm (NSR). The remaining 25 recordings, on the other hand, are used to represent the clinically significant cardiac arrhythmias [58]. These ECG signals are gathered to form 5 groups, where each set corresponds to one class of ECG signal. The sets of data including training and testing are created by choosing (at random) some portions of the heartbeats from all the 5 classes (see Table 1). As we can see in this procedure, fourfold cross-validation is used in the process of dataset training in order to obtain the best possible classification results. To have final performance evaluation, we use the testing dataset, which is at random divided into four subsets. It is carried out through fourfold cross-validation scheme. In this process, threefold are trained for each testing fold. The scheme of cross-validation is realized through quadruple repetition. Consequently, we obtain 4 results, from the folds which are averaged for the purpose of calculation.
Table 1

Summary of datasets divided into the analyzed categories

ECG signal type




Training ratio


Normal beat (NSR)






Premature ventricular contractions (PVC)






Atrial premature contractions (APC)






Paced beat (PACE)






Ventricular flutter (VF)












The detailed results were presented solely for three chosen signals. These signals were supplied with consecutive numbers and are, respectively, described by: #108—high P wave amplitude (frequently by error found as R), #203—high T wave amplitude (frequently by error found as R), #109—contains a lot of PVC events. In addition, we may notice that record #108 includes 15 APC events, 19 PVC events and 1740 regular heartbeats; record #203 includes 2 APC events, 445 PVC events and 2529 regular heartbeats; record #109 includes 40 PVC events and 2492 regular heartbeats [59]. Instances of these ECG records are illustrated in Fig. 2.
Fig. 2

Parts of electrocardiographic records of the analyzed signals included in the MIT-BIH Arrhythmia Database (a) record #108, (b) record #203, (c) record #109

We also used the whole available MIT-BIH database (together with localized and described disorders) for verification of the presented solution for four different types of arrhythmia, i.e., (i) premature ventricular contractions—that creates one of the most common heart rhythm irregularities, characterized as early beat or skipped beat which interrupts correct heart rhythm, (ii) atrial premature contractions—they are equally common abnormalities of heart rhythm, which appear as premature or overlooked beats happening more often than normal heartbeats, (iii) paced beats—beats which occur at particular speed and further at greater velocity and (iv) ventricular flutters—very frequent ventricular contractions (250–350 beats/min), which do not allow the identification of the QRS complex.

6.2 Experiments results

For the sake of performing presented experiments, the simulations were carried out on a i7 dual-processor Dell work station composed of eight cores processor and 32 GB of RAM in connection with interactive environment for conducting scientific calculations MATLAB, as well as SparseLab, Sparse Optimization Toolboxes and MOD-Toolbox for solution implementation.

In the described work, we assume that the analyzed ECG signal is limited to five-minute recordings. For the purpose of further analysis, the signal is subdivided into segments (256 elements each). The ECG segments we receive in the process of decomposition of the ECG signal fall into all possible 256-samples windows. The presumed window’s size equaled: \(N = 256\) samples, and it was achieved as a result of numerous experiments conducted (where each particular window should include periodic structure of the analyzed ECG signal). However, if we chose a smaller window, the substantial part of analyzed ECG signal structure would be reduced (i.e., would not reflect the correct structure of a unit of the signal). Consequently, a bigger-size window could include more than one structure unit (i.e., repeated wave structure).

In our solution, we considered, among others, the problem of sparse representation of an ECG signal with the use of differently created redundant dictionaries. Hence, we tested Gabor dictionary which consists of atoms created by using differently parameterized analytic Gabor functions \(\left\{ {g_{\gamma } \left( x \right)} \right\}\) where indexes \(\gamma = \left\{ {s,p,k,\phi } \right\}\). The scale \(s\) corresponds to an atom’s width in time, whereas parameters \(p\) and \(k\) correspond to an atom’s position in time and frequency, and \(\phi\) is modulating frequency. In the process of creating of Gabor’s dictionary, we assume the following possible options of parameters’ values resulting from the size of the analyzed segment of the ECG signal, i.e., \(N = 256\), \(L = 8\), \(0 \le j \le 8\), \(0 \le p < 2^{ - j + 8}\) and \(0 \le k < 2^{ - j}\) (see corresponding dependences in Sect. 4.1). The dictionary created on such a base included 36,864 atoms (differently parameterized analytic Gabor functions). The best set of \(\left\{ {s,p,k,\phi } \right\}\) parameters was obtained by the use of OMP algorithm (see Sect. 3) with threshold value of stopping iteration \(\varrho = 0.001\) (it allows to receive Gabor’s dictionary including over 1000 atoms). The minimization process was carried out for sparse representation of the ECG signal [elaborated on the basis of a training set including the normal sinus rhythm (NSR)] with the use of differently parametrized Gabor’s dictionaries. As a result, we received a Gabor’s dictionary (corresponding to decomposition process performed), which represented a normal (NSR) ECG signal in the best way. An example of selected atoms of Gabor’s dictionary is presented in Fig. 3a.
Fig. 3

An example of (a) atoms of Gabor’s dictionary and (b) INC-mMOD dictionary for atoms of the training ECG signal including the normal beat (NSR)

Another considered attitude toward solution of the problem of ECG signal sparse representation was the use of dictionary, whose elements were not differently parametrized analytic functions, but selected structures of the analyzed signal. The supremacy of such a solution consisted in better and sparser representation of an ECG signal, i.e., we were able to represent the analyzed signal with the same accuracy (as in the case of Gabor’s dictionary) but by means of a smaller number of better matched atoms. Such a solution lets us create a dictionary containing important (crucial) structural elements of the analyzed ECG signal. To minimize the influence of possible distortions of an ECG signal on the content of the created dictionary, we optionally employed a resistant-to-outlier dictionary learning method, based on a modified Method of Optimal Directions estimation.

The MOD algorithm (with modifications) was utilized to resolve the optimization problem, i.e., searching the proper dictionary for sparse representation of analyzed ECG signal. This process was done by minimizing the objective function iteratively over one variable (the remaining two are fixed). For the first, dictionary \(D\) and outliers \(O\) are initialized, then minimization over coefficients set \(C\) was carried out—the iterative optimization begins. The usual course of initializing dictionary \(D\) imposes the use of a predefined dictionary, e.g., (i) Gabor’s or (ii) the dictionary is constructed of atoms chosen at random from the training signals. The second option should not be used for our solution-finding process because certain outliers might be treated as atoms. Consequently, they could possibly affect the course of whole process (in the sequel iterations). Outliers \(O\) are initialized by using the zero matrix. For the sake of explanation, at first iteration step, we used all the training signals as not including “outliers,” i.e., distortions of an ECG signal. For starting the MOD algorithm, we used the above-described Gabor’s dictionary.

In case of dictionaries created on the basis of ECG training signals, using Method of Optimal Directions, we considered the three following options: (i) application of classical solution MOD, (ii) use of modified MOD (marked as mMOD) by adding outlier update step for gaining resistant-to-outlier dictionary or (iii) improved solution of mMOD with incoherent dictionary learning step (named INC-mMOD). In the process of dictionary creation on the basis of ECG training signal samples with the use of two modified and a classical versions of Method of Optimal Directions, the following parameter values were used: \(I = 64\), \(T = 8\), \(\lambda = 0.1\) and \(\mu_{0} = 0.2\). The \(I\) and \(T\) values were assumed as commonly occurred in solutions based on classical MOD algorithms. On the other hand, the \(\lambda\) parameter value was estimated on the basis of experiment, i.e., a point was searched in which an error of sparse representation of the correct ECG signal (for the normal sinus rhythm) does not significantly change its value any longer; it was then accepted as \(\lambda\) parameter value. Then, for the training data, each exceeding of \(\lambda\) threshold value was classified as an outlier. Otherwise, it was treated as a proper data vector. Another noticed dependence was that: the smaller \(\lambda\) value is, the larger number of points was accepted as outliers. In case of \(\mu_{0}\) parameter, responsible for coherence of dictionary, the \(\mu_{0}\) value was assumed as a compromise between redundancy of a dictionary and diligent fulfilling decorrelation condition of its atoms. The count of created dictionaries was 1000 atoms. In Fig. 3b, an instance of the INC-mMOD atoms from dictionary D (received on the basis of the training ECG signal including the normal beat) is illustrated. It seems obvious that the atoms of this dictionary reflect (differently translated) characteristic structures of standard ECG signal.

The presentation of the above-mentioned methods of creating a dictionary, measured on every step according to the quantitative criterion given by the mean square error (MSE), is given below
$${\text{MSE}} = \frac{{\left\| {DC - s_{i} } \right\|^{2} }}{N},$$
where \(D\) is a used dictionary, \(C\) is a coefficient set of sparse representation, \(s_{i}\) is tested ECG signal and \(N\) describes the size of the signal.
The sparse representation \(DC\) of tested \(s_{i}\) signal was received in the decomposition process with the use of OMP algorithm along with corresponding dictionaries. In Fig. 4, we present dependence between the mean square error and the number of iterations in the process of dictionary learning for the tested ECG signal (#109) with regard to four types of dictionaries created by means of Gabor’s functions, classical MOD, mMOD and INC-mMOD. It is easy to notice that sparse representations of the signal based on the dictionaries created by means of modified MOD and incoherent mMOD present a visible advantage in the sense of preciseness of obtained representations for the same number of found atoms. In most of the cases, the best quality of the sparse representation is achieved for INC-mMOD, which undoubtedly is connected to introduction of the decorrelation condition, i.e., incoherent dictionary learning step.
Fig. 4

Mean square error in the process of dictionary learning for the test signal #109

However, in order to define preciseness of the ECG signal’s reconstruction there was used one of the most often utilized measures of comparison between the original signal and a signal restored on the basis of its sparse representation, that is the percent root-mean-square difference (PRMSD) and its normalized version in relation to the signal’s mean-normalized percent root-mean-square difference (NPRMSD), which we define as:
$${\text{PRMSD}} = 100*\frac{{\left\| {s_{i} - \hat{s}_{i} } \right\|_{2} }}{{\left\| {s_{i} } \right\|_{2} }},\quad {\text{NPRMSD}} = 100*\frac{{\left\| {s_{i} - \hat{s}_{i} } \right\|_{2} }}{{\left\| {s_{i} - \bar{s}_{i} } \right\|_{2} }},$$
where \(s_{i}\) and \(\hat{s}_{i}\) are the original and the reconstructed signals, respectively, while \(\bar{s}_{i}\) is the original signal’s mean.
The reconstructed signals \(\hat{s}_{i}\) were a result of performance of sparse representation of analyzed ECG signal (for properly created dictionaries). In Table 2, we present average results defining the reconstruction quality for 45 signals (limited to initial 5-min recordings) described in MIT-BIH Arrhythmia Database. It is easy to notice that the best reconstruction quality (both on the basis of PRMSD and normalized PRMSDN measures) was achieved for sparse representations of the tested ECG signals which used dictionaries created on the grounds of INC-mMOD.
Table 2

Results of the reconstruction process for ECG signals






Mean (%)


Mean (%)






















For the sake of anomaly detection, we used the proposed data model (7), and for solving the problem of sparse representation with separated outliers (17), we tested selected ECG signals (i.e., #108, #203, #109) and four types of arrhythmia. To solve the problem (19), we used the modified AMA method with the following dictionaries: Gabor’s, MOD, mMOD and INC-mMOD, created on the basis of the training normal beat ECG signal. The set of parameters: \(\nu^{0} = 1.0\), \(\delta = 1.5\), \(\alpha = 1.0\), \(\beta = 2.0\), \(\varepsilon = 0.005\), \(d = 1 \,{\text{or}} \,d = 2\) were used for performing modified AMA method. The initial value of penalty parameter \(\nu^{0}\) was described neutrally (i.e., so as no initial punishment at the start of AMA modified algorithm was introduced). On the other hand, the value of parameter \(\delta\) was defined so as to guarantee of convergence of (29) dependence, on condition that the sub-problem is solved, ensuring high precision at every iteration. The value of \(\alpha\) parameter is standard for the presented AMA method, while the value \(\beta\) (that is twice bigger as \(\alpha\)), was chosen so that the process of anomaly (outliers) detection was preferred. The \(d\) parameter, on the other hand, which is a switch, chooses SVM or MMV realizations. The threshold parameter \(\varepsilon\) being stop criterion of the modified AMA was appointed in order to stop algorithm, when there already exists a lack of significant fluctuations of searched values.

Occurrences of anomalies in the analyzed signals (#108, #203 and #109) were detected as columns in the matrix \(O\), with the use of \(\ell_{2}\) norm, and the threshold value \(\vartheta = 0.2\) as irregular heartbeats locations. The value of \(\vartheta\) parameter was experimentally defined as a compromise between the maximization of value of detection rate (DR) and minimization of values of false positive rate (FP) for analyzed ECG signals.

In Fig. 5, we presented the example of detected anomalies (PVC events annotation by V) in the initial ten minutes recording #109, with the use of presented AMA method and the dictionary obtained with INC-mMOD for training normal beat of ECG signal. After comparing with annotations in MIT-BIH database, we received DR = 97.02% and FP = 1.98%. In addition, we detected nine non-PVC events, which corresponded with other disturbances of analyzed ECG signal (i.e., noises or waveform disturbances).
Fig. 5

Detected anomalies (PVC events annotation by V) in record #109 for the initial 10 min

All obtained results for the analyzed signals #108, #203 and #109 are presented in Tables 3 and 4 in case of SVM and MMV, respectively (DR stands for a detection rate and FP a false positive rate). The process of anomalies detection (APC or PVC events) was done for 30-min records of analyzed signals with the use of modified AMA method and dictionaries created on the basis of normal beat ECG signal. The researched recordings indicated: (i) #108 includes 15 APC events and 19 PVC events, (ii) #203 includes 2 APC events and 445 PVC events, (iii) #109 includes 40 PVC events. Correctness checking of anomaly detection process was realized through comparison of the results obtained with annotations in MIT-BIH database.
Table 3

Results of anomaly detection in ECG signals for SVM






DR (%)

FP (%)

DR (%)

FP (%)

DR (%)

FP (%)

DR (%)

FP (%)




























Table 4

Results of anomaly detection in ECG signals for MMV






DR (%)

FP (%)

DR (%)

FP (%)

DR (%)

FP (%)

DR (%)

FP (%)




























While analyzing results presented in Tables 3 and 4, it is worth noticing that in case of SVM approach we generally obtain better DR and FP outcomes. This situation is possibly due to the fact that it is better to apply sparsity in every line of the matrix of representation coefficients of the analyzed signal (SVM), than only in the formerly defined number of them (MMV). Therefore, in the following part of the experiment we will be using only SVM approach described by formula (24) for parameter \(d = 1\).

To assess efficiency of the proposed solution, there will be used already-known indicators of quality measurement, that is precision and false positive rate (FPR), which we define as:
$$\begin{aligned} {\text{Precision}} & = 100*\frac{{{\text{True}}\,{\text{Positive}}}}{{{\text{True}}\,{\text{Positive}} + {\text{False}}\,{\text{Positive}}}}, \\ {\text{FPR}} & = 100*\frac{{{\text{False}}\,{\text{Positive}}}}{{{\text{False}}\,{\text{Positive}} + {\text{True}}\,{\text{Negative}}}}. \\ \end{aligned}$$

In case of searching for four chosen types of arrhythmia (i.e., premature ventricular contractions, atrial premature contractions, paced beats and ventricular flutter) in testing ECG signals, the way of conducting was of two stage. In the first step, the anomalies, searched with the use of described the modified AMA method for four dictionary types, i.e., Gabora, MOD, mMOD and INC-MMOD, were detected. All dictionaries were trained on the basis of training set including the normal sinus rhythm (NSR). Occurrences of anomalies in the tested signals were detected as columns in the \(O\) matrix, with the use of \(\ell_{2}\) norm, and the threshold value \(\vartheta = 0.2\) as irregular heartbeats locations. Then, in the second step, we classified detected anomalies with the use of the orthogonal matching pursuit algorithm and properly trained dictionaries. The training process consisted in creating of dictionaries on the basis of a training set (see Table 1) including researched types of arrhythmia. In such a way, the four groups of dictionaries were formed (i.e., Gabor’s, MOD, mMOD and INC-MMOD), each of which included four dictionaries (reflecting disturbances) ascribed to every of them (i.e., PVC, APC, PACE and VF). When anomaly was detected (in the first step), its classification consisted in creating sparse representations using OMP algorithm and trained dictionaries. Next, we searched which of them (sparse representations of detected anomaly for a particular dictionary) minimizes the dependence (1), i.e., represents the structure of detected disturbance in the best way. The dictionary used then appointed the type of detected arrhythmia.

Table 5 presents results of anomaly detection (that is four different types of arrhythmia) for testing ECG signals (see Table 1) included in MIT-BIH Arrhythmia Database, based on quality assessment indicators defined above.
Table 5

Results of different types of arrhythmia detection in ECG signals






DeepLSTMs [60]























































While analyzing the results included in Table 5, one can notice an advantage of the solution with the use of a dictionary created by means of a modified version of Method of Optimal Directions and improved by incoherent dictionary learning step. It is connected to creation of resistant-to-outlier dictionary and introduction of the decorrelation condition. The resulting dictionary was probably characterized by best matching to researched structures of ECG signals. On the other hand, weak signals for Gabor’s dictionary were caused by not sufficient flexibility of dictionary’s atoms (that is Gabor’s functions) with regard to the decomposed morphological structures of the ECG signals. Analyzing the achieved results included in Table 5 (for four presented arrhythmia types detected with the use of INC-mMOD) with results published in the literature [60], it can be stated that they are comparable, that is they correspond to a similar level of values.

For the sake of obtaining a more exact picture of the presented method, we searched the influence of crucial parameters of solution for the achieved precision of detection examined arrhythmia type, i.e., premature ventricular contractions. The key analyzed method parameters were: (i) the threshold value \(\vartheta\) as irregular (anomaly) heartbeats locations (in \(O\) matrix with the use of \(\ell_{2}\) norm) and (ii) the parameter \(\varepsilon\) being stop criterion of the presented modified AMA. In Fig. 6, we present the searched dependence between \(\vartheta\) and \(\varepsilon\) parameters and achieved precision of PVC arrhythmia detection.
Fig. 6

Influence of presented method key parameters on precision of detection of PVC type arrhythmia

As it is easy to notice, there exists significant influence of researched parameters for achieved precision of detection of type PVC disturbances, i.e., along with increase in the researched parameters value the precision of gained detection decreases (approximately hyperbolically or parabolic). The influence of remaining parameters of presented method is significantly smaller, and it is connected to a larger degree with stability and numerical convergence.

7 Conclusions

Medicine nowadays provides us with numerous myocardium diagnostic methods, beginning with physical examinations, through biochemical until diagnostic imaging. What is of utter importance is that in the diagnose process a quick and noninvasive diagnostic method needs to be applied frequently. Such a situation causes an electrocardiograph to be used, in a hospital or a surgery, in most cases. Commonly understood medical care would definitely benefit from the fact of such diagnostics being widely accessible, including patients realizing survey self-sufficiently or receiving exact results of the ECG signal from the cardiological monitoring center.

As far as automatic analysis of ECG signals is analyzed, the need of using complex methods in terms of processing, analysis and recognition of signals, is of crucial importance, where the process of detection and identification of selected ECG parameters is not to be overestimated.

In this article, we described how the sparse representation of electrocardiograms and outlier dictionary learning method for the analyzed electrocardiographic records work. Next, the modified MOD algorithm was used to obtain proper structure of the dictionary. A dictionary created in such manner formed basis for the use of sparse representation of the analyzed electrocardiographic record. The presented anomaly detection method was created as a solution to the task of sparse representation of the electrographic record, where correct values and outliers were used for the sake of description. To carry out the above mentioned task, the modified ADA algorithm was used. Effectiveness of the method presented was examined with the use of MIT-BIH Arrhythmia Database. The effectiveness of the described solution was confirmed by the obtained experiment outcomes.

However, detailed results of the performed tests showed diverse efficacy and correctness of the described solution. The outcomes achieved for the chosen signals #108, #203 and #109 did not present significant differences in DR and FP values. It was certainly caused by correct match of the presented solution for detection of particular but simple types of disorders (anomalies). However, while analyzing the obtained results for the whole MIT-BIH base in context of the four arrhythmia types (i.e., premature ventricular contractions, atrial premature contractions, paced beats and ventricular flutter), there could be noticed the following trend: the more complex the arrhythmia, efficacy of the proposed solution became slightly worse. Most probably, this phenomenon was connected to the fact that the presented solution was aiming at as sparse representation of the processed signals as possible. As a result, it could lead to hiding, in some cases, more complex types of disturbances. In spite of this situation, the achieved outcomes were comparable to the ones presented in the field literature.


Compliance with ethical standards

Conflict of interest

The author declares that he has no conflicts of interest.


  1. 1.
    Sanamdikar ST, Hamde ST, Asutkar VG (2015) A literature review on arrhythmia analysis of ECG signal. Int Res J Eng Technol 2(3):307–312Google Scholar
  2. 2.
    Parák J, Havlík J (2011) ECG signal processing and heart rate frequency detection methods. In: Proceedings of the 2011 international conference technical computing, pp 1–6Google Scholar
  3. 3.
    Einthoven W (1923) The string galvanometer and the measurement of the action currents of the heart. Nobel LectureGoogle Scholar
  4. 4.
    Garcia TB (2015) Introduction to 12-lead ECG: the art of interpretation, 2nd edn. Jones and Bartlett Publishers Inc, SudburyGoogle Scholar
  5. 5.
    Ashly EV, Sreekumar K (2017) A survey on approaches for ECG signal analysis with focus to feature extraction and classification. In: Proceedings of the 2017 international conference on inventive communication and computational technologies, pp 140–144.
  6. 6.
    Daskalov IK, Christov H (1999) Electrocardiogram signal preprocessing for automatic detection of QRS boundaries. Med Eng Phys 21:37–44. CrossRefGoogle Scholar
  7. 7.
    de Chazal P, O’Dwyer M, Reilly RB (2004) Automatic classification of heartbeats using ECG morphology and heartbeat interval features. IEEE Trans Biomed Eng 51(7):1196–1206. CrossRefGoogle Scholar
  8. 8.
    Tang X, Lan S (2014) A frame work of automatic analysis system of electrocardiogram signals. Int J Signal Process Image Process Pattern Recognit 7(2):211–222Google Scholar
  9. 9.
    Shyu LY, Wu YH, Hu W (2004) Using wavelet transform and fuzzy neural networks for VPC detection from the Holter ECG. IEEE Trans Biomed Eng 51(7):1269–1273. CrossRefGoogle Scholar
  10. 10.
    Poli R, Cagnoli S (1995) Genetic design of optimum linear and non-linear QRS detection. IEEE Trans Biomed Eng 42:1137–1141. CrossRefGoogle Scholar
  11. 11.
    Deng Z, Zhang S, Yang L, Zong M, Cheng D (2016) Sparse sample self-representation for subspace clustering. Neural Comput Appl 29:1–7. CrossRefGoogle Scholar
  12. 12.
    Lehnert W, Soderland S, Aronow D, Feng F, Shmueli A (1995) A inductive text classification for medical applications. J Exp Theor Artif Intell 7(1):49–80. CrossRefGoogle Scholar
  13. 13.
    Roopa CK, Harish BS (2017) A survey on various machine learning approaches for ECG analysis. Int J Comput Appl 163(9):25–33Google Scholar
  14. 14.
    Lei WK, Li BN, Dong MC, Vai MI (2007) AFC-ECG: an adaptive fuzzy ecg classifier. In: Saad A, Dahal K, Sarfraz M, Roy R (eds) Soft computing in industrial applications, vol 39. Springer, Berlin, pp 189–199CrossRefGoogle Scholar
  15. 15.
    Behadada O, Chikh MA (2013) An interpretable classifier for detection of cardiac arrhythmias by using the fuzzy decision tree. Artif Intell Res 2(3):45–58CrossRefGoogle Scholar
  16. 16.
    Ceylan R, Ozbay Y, Karlik B (2009) A novel approach for classification of ECG arrhythmias: type-2 fuzzy clustering neural network. Expert Syst Appl 36(3):6721–6726CrossRefGoogle Scholar
  17. 17.
    Vishwa A, Lal M, Dixit S, Vardwaj P (2011) Classification of arrhythmic ECG data using machine learning techniques. Int J Interact Multimedia Artif Intell 1(4):67–70Google Scholar
  18. 18.
    Anuradha B, Reddy V (2008) ANN classification of cardiac arrhythmias. ARPN J Eng Appl Sci 3(3):1–6Google Scholar
  19. 19.
    Kampouraki A, Manis G, Nikou C (2009) Heartbeat time series classification with support vector machines. IEEE Trans Inf Technol Biomed 1(4):512–518CrossRefGoogle Scholar
  20. 20.
    Nasiri JA, Naghibzadeh M, Yazdi HS, Naghibzadeh B (2009) ECG arrhythmia classification with support vector machines and genetic algorithm. In: Third UKSim European symposium on computer modeling and simulationGoogle Scholar
  21. 21.
    Priyadharshini V, Kumar SS (2015) An enhanced approach on ECG data analysis using improvised genetic algorithm. Int Res J Eng Technol 2(5):1248–1256Google Scholar
  22. 22.
    Dalal S, Birok R (2016) Analysis of ECG signals using hybrid classifier. Int Adv Res J Sci Eng Technol 3(7):89–95Google Scholar
  23. 23.
    Bensujin CK, Hubert C (2014) Detection of ST segment elevation myocardial infarction (STEMI) using bacterial foraging optimization technique. Int J Eng Technol 6(2):1212–1224Google Scholar
  24. 24.
    Finlay D, Bond R, Kennedy A, Guldenring D, Moran K, McLaughlin J (2015) The effects of electrode placement on an automated algorithm for detecting ST segment changes on the 12-lead ECG. Comput Cardiol 42:1161–1164Google Scholar
  25. 25.
    Ning X, Selesnick IW (2013) ECG enhancement and QRS detection based on sparse derivatives. Biomed Signal Process Control 8:713–723. CrossRefGoogle Scholar
  26. 26.
    Agyemang M, Barker K, Alhajj R (2006) A comprehensive survey of numeric and symbolic outlier mining techniques. Intell Data Anal 10(6):521–538Google Scholar
  27. 27.
    Hodge V, Austin J (2004) A survey of outlier detection methodologies. Artif Intell Rev 22(2):85–126. CrossRefzbMATHGoogle Scholar
  28. 28.
    Chandola V, Banerjee A, Kumar V (2009) Anomaly detection: a survey. ACM Comput Surv 41(3):1–72CrossRefGoogle Scholar
  29. 29.
    Andrysiak T (2016) Machine learning techniques applied to data analysis and anomaly detection in ECG signals. Appl Artif Intell 30:610–634. CrossRefGoogle Scholar
  30. 30.
    Adler A, Elad M, Hel-Or Y, Rivlin E (2015) Sparse coding with anomaly detection. J Signal Process Syst 79(2):179–188. CrossRefGoogle Scholar
  31. 31.
    Białasiewicz JT (2004) Falki i aproksymacje. WNT, WarszawaGoogle Scholar
  32. 32.
    Gazi O (2018) Understanding digital signal processing. Springer, Singapore. CrossRefzbMATHGoogle Scholar
  33. 33.
    Mallat SG (1989) A theory for multiresolution signal decomposition: the wavelet representation. IEEE Trans Pattern Anal Mach Intell 11(7):674–693. CrossRefzbMATHGoogle Scholar
  34. 34.
    Rubinstein R, Bruckstein M, Elad M (2010) Dictionaries for sparse representation modeling. Proc IEEE 98(6):1045–1057. CrossRefGoogle Scholar
  35. 35.
    Mallat S, Zhang Z (1993) Matching pursuits with time-frequency dictionaries. IEEE Trans Signal Process 41(12):3397–3415CrossRefGoogle Scholar
  36. 36.
    Gribonval R, Schnass K (2008) Dictionary identifiability from few training samples. In: Proceedings of 16th European signal processing conferenceGoogle Scholar
  37. 37.
    Engan K, Aase SO, Husoy HJ (1999) Method of optimal directions for frame design. Proc IEEE Int Conf Acoust Speech Signal Process 5:2443–2446. CrossRefGoogle Scholar
  38. 38.
    Aharon M, Elad M, Bruckstein A (2006) K-SVD: an algorithm for designing overcomplete dictionaries for sparse representation. IEEE Trans Signal Process 54(11):4311–4322CrossRefGoogle Scholar
  39. 39.
    Xie S, Krishnan S (2012) Learning sparse dictionary for long-term biomedical signal classification and clustering. In: Proceedings of the international conference on information science, signal processing and their applications (ISSPA), pp 1118–1123.
  40. 40.
    Adamo A, Grossi G (2011) A fixed-point iterative schema for error minimization in k-sparse decomposition. In: Proceedings of the IEEE international symposium on signal processing and information technology (ISSPIT), pp 167–172.
  41. 41.
    Kalaji I, Balasundaram K, Umapathy K (2015) Discriminative sparse coding of ECG during ventricular arrhythmias using LC-K-SVD approach. In: Proceedings of the international conference of the IEEE engineering in medicine and biology society (EMBC), pp 5211–5214.
  42. 42.
    Elad M (2010) Sparse and redundant representations: from theory to applications in signal and image processing. Springer, Berlin. CrossRefzbMATHGoogle Scholar
  43. 43.
    Bruckstein AM, Donoho DL, Elad M (2009) From sparse solutions of systems of equations to sparse modeling of signals and images. J SIAM Rev 51(1):34–81. MathSciNetCrossRefzbMATHGoogle Scholar
  44. 44.
    Davis G, Mallat S, Avellaneda M (1997) Adaptive greedy approximations. J Constr Approx 13:57–98. MathSciNetCrossRefzbMATHGoogle Scholar
  45. 45.
    Tropp JA (2004) Greed is good: algorithmic results for sparse approximation. IEEE Trans Inf Theory 50(10):2231–2242. MathSciNetCrossRefzbMATHGoogle Scholar
  46. 46.
    Boyd S, Parikh N, Chu E, Peleato B, Eckstein J (2010) Distributed optimization and statistical learning via the alternating direction method of multipliers. Found Trends Mach Learn 3(1):1–122. CrossRefzbMATHGoogle Scholar
  47. 47.
    Wang Y, Yang J, Yin W, Zhang Y (2008) A new alternating minimization algorithm for total variation image reconstruction. SIAM J Imaging Sci 1(3):248–272. MathSciNetCrossRefzbMATHGoogle Scholar
  48. 48.
    Hawkins D (1980) Identification of outliers. Chapman and Hall, LondonCrossRefGoogle Scholar
  49. 49.
    Ghafari A, Palangi H, Babaie-Zadeh M, JuttenCh (2009) ECG denoising and compression by sparse 2D separable transform with overcomplete mixed dictionaries. In: Proceedings of the IEEE international workshop on machine learning for signal processing, pp 1–6.
  50. 50.
    Pati YC, Rezaiifar R, Krishnaprasad PS (1993) Orthogonal matching pursuit: recursive function approximation with applications to wavelet decomposition. In: Proceedings of 27th Asilomar conference on signals, systems and computers, vol 1, pp 40–44.
  51. 51.
    Cotter SF, Rao BD, Engan K, Kreutz-Delgado K (2005) Sparse solutions to linear inverse problems with multiple measurement vectors. IEEE Trans Signal Process 53(7):2477–2488. MathSciNetCrossRefzbMATHGoogle Scholar
  52. 52.
    Durka PJ (2007) Matching pursuit and unification in EEG analysis. Artech House, BostonGoogle Scholar
  53. 53.
    Amini S, Sadeghi M, Joneidi M, Babaie-Zadeh M, JuttenCh (2014) Outlier-aware dictionary learning for sparse representation. In: Proceedings of IEEE international workshop on machine learning for signal processing, pp 1–6.
  54. 54.
    Barchiesi D, Plumbley MD (2013) Learning incoherent dictionaries for sparse approximation using iterative projections and rotations. IEEE Trans Signal Process Signal Process 61(8):2055–2065. CrossRefGoogle Scholar
  55. 55.
    Tseng P (1991) Applications of splitting algorithm to decomposition in convex programming and variational inequalities. SIAM J Control Optim 29(1):119–138. MathSciNetCrossRefzbMATHGoogle Scholar
  56. 56.
    Beck A, Teboulle M (2009) A fast iterative shrinkage-thresholding algorithm for linear inverse problems. SIAM J Imaging Sci 2(1):183–202MathSciNetCrossRefGoogle Scholar
  57. 57.
    Moody GB, Mark RG (2001) The impact of MIT-BIH Arrhythmia Database. IEEE Trans Biomed Eng 20:45–50Google Scholar
  58. 58.
    Ye C, Coimbra MT, Kumar BV (2010) Arrhythmia detection and classification using morphological and dynamic features of ecg signals. In: Proceedings of the 2010 annual international conference of the IEEE engineering in medicine and biology, pp 1918–1921Google Scholar
  59. 59.
  60. 60.
    Chauhan S, Vig L (2015) Anomaly detection in ECG time signals via deep long short-term memory networks. In: Proceedings of 2015 IEEE international conference on data science and advanced analytics, pp 1–7. Accessed 31 Oct 2017

Copyright information

© The Natural Computing Applications Forum 2018

Authors and Affiliations

  1. 1.Institute of Telecommunications and Computer Science, Faculty of Telecommunication, Information Technology and Electrical EngineeringUTP University of Science and TechnologyBydgoszczPoland

Personalised recommendations