Method and system for analyzing heart rhythm
The method and system use machine learning algorithms to segment and classify ECG signals from implantable devices, reducing false positive alerts and providing a unified platform for analyzing heart rhythms, thus improving efficiency and reducing healthcare burdens.
Patent Information
- Application Number
- CN202180060992.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-02-10
- Filing Date
- 2021-06-10
- Publication Date
- 2025-07-15
- Estimated Expiration
- 2041-06-10
AI Technical Summary
Existing plug-in or implantable heart monitors output a large number of false positive alerts, which brings unnecessary burden to doctors and increases medical system costs. At the same time, equipment from different manufacturers needs to use different platforms, and lacks software analysis capabilities, which leads to doctors requiring subjective judgment.
Using a computer-implemented method, by receiving ECG signal fragments, identifying R waves and calculating features, segmenting them into sub-segments, using machine learning algorithms such as XGBoost and neural networks, distinguishing true and false positive fragments, and providing a single platform for analysis.
It reduces the number of false positive fragments reviewed by doctors, provides a unified analysis platform, reduces the need for learning different platforms, and improves the accuracy of automatic identification of abnormal heart rhythms and information utilization efficiency.
Smart Images

Figure CN116194044B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of electrophysiological signal analysis. In particular, the present invention relates to a system and method for analyzing electrocardiogram (ECG) segments obtained from a cardiac monitoring device in order to distinguish true positive segments including abnormal heart rhythms from false positive segments including normal heart rhythms. Background Art
[0002] An electrocardiogram (ECG or EKG) records electrical signals from the heart. The waveforms of the ECG signals are denoted by letters.
[0003] Insertable or implantable cardiac monitors are small cardiac monitoring devices that continuously measure ECG signals over a long period of time (e.g., up to several years). Some of these insertable or implantable cardiac monitors are also configured to continuously analyze the measured ECG signals and identify abnormal heart rhythms (also known as segments), and only record said segments. The insertable or implantable cardiac monitor wirelessly transmits the recorded segments (i.e., segments of the measured ECG signals) to an internet-connected transmitter or other connected device such as a mobile phone, which transmits the ECG signals to healthcare professionals via the internet. These healthcare professionals can then use a software platform to view or print the ECG signals to make a subjective judgment based on their training and experience to identify cardiac disease segments. In addition to automatically transmitting segments, insertable or implantable cardiac monitors are programmed to transmit alerts (and potentially abnormal ECG signals) to healthcare professionals.
[0004] Conventional platforms for viewing ECG signals received from insertable or implantable cardiac monitors have many drawbacks. First, insertable or implantable cardiac monitors are very sensitive and are designed to alert for all abnormal heart rhythm segments. Therefore, insertable or implantable cardiac monitors output a large number of false positive alerts. Requiring doctors to review and evaluate false positive alerts places an unnecessary burden on doctors, increases the cost of the healthcare system, and may cause additional stress to the individual patients being monitored.
[0005] Second, insertable or implantable cardiac monitors from leading manufacturers all output data to their own device-specific platforms. Therefore, healthcare professionals treating patients with insertable or implantable cardiac monitors from different manufacturers must learn and use many different platforms.
[0006] Finally, conventional platforms are not configured to allow software analysis of ECG signals. Instead, conventional platforms typically output information to an electronic medical record system and reports for doctors to view and evaluate. Doctors are then expected to make a subjective judgment based on their training and experience. Summary of the Invention
[0007] Accordingly, the present invention relates to a computer-implemented method for analyzing electrocardiogram (ECG) segments previously obtained from a cardiac-connected device in order to distinguish true positive segments including abnormal heart rhythms from false positive segments including normal heart rhythms; the method comprising:
[0008] - receiving segments, each segment including at least one segment of an electrocardiogram signal;
[0009] - for each segment of a segment:
[0010] o identifying R waves in the segment using at least one algorithm and using the R waves for calculating at least one feature of the segment;
[0011] o splitting the segment into at least one sub-segment or at least two overlapping sub-segments;
[0012] o for each sub-segment:
[0013] · using the identified R waves in the sub-segment for calculating at least one feature of the sub-segment;
[0014] · providing at least one feature of the sub-segment and at least one feature of the segment as inputs to a machine learning algorithm and obtaining a score as an output, the machine learning algorithm being configured to output the score;
[0015] - classifying the segment using the scores obtained for each sub-segment of a segment in order to distinguish true positive segments from false positive segments;
[0016] - outputting the true positive segments.
[0017] Advantageously, the method allows for a reduction in the number of false positive segments reviewed by a healthcare provider. In fact, the combination of the global information of the segment obtained as a feature of the segment and the more local information obtained as a feature of the sub-segments improves the efficiency of suppressing false positive segments.
[0018] The method can output their classes: true positive or false positive for all analyzed segments. Additionally, the machine learning algorithm can be configured to classify abnormal heart rhythms into different classes associated with specific medical conditions.
[0019] According to one embodiment, the score is a score vector and the score vectors obtained for each sub-segment of a segment are used to classify the segment in order to distinguish true positive segments from false positive segments. Advantageously, information about the class of the abnormal heart rhythm can then be provided into the score vector for each sub-segment and used to determine the presence of the abnormal heart rhythm in the true positive segments. This provides more useful information to the user.
[0020] According to one embodiment, the method includes providing true positive segments to a remote monitoring platform to increase the available information of the remote monitoring platform itself and ultimately providing the output of the method to a healthcare provider through the platform. The term "remote" means that the monitoring platform is not near the subject carrying the cardiac-connected device.
[0021] According to one embodiment, for each subsection in a segment, at least one feature of the calculated subsection is at least one of the following: morphological feature and / or rhythm feature. Morphological features are advantageously extracted for the subsections because they provide morphological analysis of the P wave and QRS complex along the entire subsection and are able to capture irregularities (e.g., most notably AT / AF and ventricular tachycardia) that are characteristic of very long segments. Rhythm features are advantageously extracted for the subsections because they provide statistical analysis of the R peaks and capture the pattern of the R peak intervals. This pattern is very useful for distinguishing long-term abnormalities (AT / AF or normal rhythm with ventricular premature beats / atrial premature beats).
[0022] According to one embodiment, for each subsubsection, the feature of the subsubsection to be calculated is at least one of the following: rhythm feature, variation feature, neural network feature, and / or spectral feature. Advantageously, variation features are only extracted for the subsubsections because analyzing the variation of the signal in different time ranges allows quantification of the signal quantity, which can be explained by cardiac origin or non-cardiac origin (artifact). The spectral features obtained for the subsubsections are particularly advantageous because the results of the frequency analysis of the cardiac signal characterize the regularity of the signal and are able to distinguish low-frequency regular signals (normal rhythm), low-frequency irregular signals (various abnormalities), and high-frequency signals (artifacts).
[0023] The present invention also relates to a system for analyzing electrocardiogram segments previously obtained from a cardiac device to distinguish true positive segments including abnormal heart rhythms and false positive segments including normal heart rhythms, the system including:
[0024] - At least one input end suitable for receiving segments, each segment including at least one subsection of an electrocardiogram signal;
[0025] - At least one processor configured to:
[0026] For each subsection in a segment:
[0027] ● Use at least one algorithm to identify the R waves in the subsection and use the R waves for calculating at least one feature of the subsection;
[0028] ● Divide the subsection into at least two overlapping subsubsections;
[0029] ● For each subsubsection:
[0030] o Use the identified R-waves included in the sub-segments for calculating at least one feature of the sub-segments;
[0031] o Provide the at least one feature of the sub-segments and the at least one feature of the segment as inputs to a machine learning algorithm, wherein the machine learning algorithm is configured to output a score vector;
[0032] - Use the score vectors obtained for each sub-segment in a segment to classify the segment so as to distinguish true positive segments and false positive segments;
[0033] - Suitable for providing at least one output of true positive segments.
[0034] According to one embodiment, for each segment in a segment, at least one feature of the segment is at least one of the following: morphological feature and / or rhythm feature.
[0035] According to one embodiment, for each sub-segment, the calculated features of the sub-segment are at least one of the following: rhythm feature, variation feature and / or spectral feature.
[0036] According to one embodiment, the morphological feature is statistical data calculated based on the shape of the ECG signal, and the rhythm feature is statistical data calculated based on the time period between R-waves. These statistical data can be directly calculated according to a specific function (e.g., minimum value, maximum value, median, standard deviation or a more complex function). However, the statistical data here also refers to some classification features (e.g., the type of p-wave, which can be positive, negative or unknown), and these classification features are calculated based on the previous statistical data.
[0037] According to one embodiment, the processor is further configured to input each sub-segment of the segment into a neural network and extract at least one neural network feature of the sub-segment as the output of the neural network. The neural network feature is one of the features of the sub-segment provided as an input to the machine learning algorithm. In this embodiment, for each sub-segment, the calculated features of the sub-segment are at least one of the following: rhythm feature, variation feature, neural network feature and / or spectral feature.
[0038] According to one embodiment, the neural network is a convolutional neural network.
[0039] According to one embodiment, the neural network is at least one of the following: convolutional neural network, deep belief neural network and recurrent neural network or a combination thereof. The use of a convolutional neural network allows retrieving interesting patterns in each period of the signal. On the other hand, a recurrent neural network allows retrieving information about the overall progress of the signal, while a deep belief network is conducive to training using an unlabeled data training set.
[0040] According to one embodiment, as a supplement or alternative to the neural network, the processor is further configured to calculate at least one feature of a subsegment by inputting each subsegment of a segment into a transformer and extracting at least one transformer feature as the output of the transformer. A transformer is a deep learning model that employs an attention mechanism to weigh the influence of different parts of the input data. Advantageously, the transformer allows obtaining long interactions between signals and correlating subsegments that are far apart within a segment.
[0041] According to one embodiment, at least one algorithm for identifying R waves is selected from the following list: XQRS detection algorithm, stationary wavelet transform process, and / or optimization knowledge-based (OKB) detection algorithm.
[0042] According to one embodiment, the processor is configured to identify R waves in a segment using at least two algorithms and use a combination algorithm configured to combine the R waves obtained according to the at least two algorithms to obtain a corrected R wave.
[0043] According to one embodiment, at least two algorithms are used to identify R waves in a segment and the R waves obtained from each of the at least two algorithms are used for calculating at least one rhythm feature of the segment and subsegments. Notably, the at least one rhythm feature of the segment and subsegments is calculated using the corrected R wave obtained from the combination algorithm. Advantageously, this embodiment allows reducing the estimation error of the R wave position and thus obtaining a more accurate assessment of the features of the segment and subsegments.
[0044] According to one embodiment, a machine learning algorithm is trained on a dataset including a plurality of annotated segments, where the dataset includes segments representative of abnormal heart rhythms.
[0045] According to one embodiment, the dataset of annotated segments includes segments associated with cardiac arrest, bradycardia, atrial fibrillation, atrial tachycardia, ventricular tachycardia, other abnormalities, and / or artifacts.
[0046] According to one embodiment, the machine learning algorithm is an XGBoost algorithm.
[0047] According to one embodiment, the input end is further configured to receive segments from a plurality of cardiac devices from multiple manufacturers.
[0048] According to one embodiment, the processor is further configured to normalize the segments received from the plurality of cardiac devices.
[0049] According to one embodiment, the system is included in a remote monitoring platform.
[0050] The present invention also relates to a non - transitory computer - readable storage medium including instructions, which, when executed by a computer, cause the computer to perform the steps of the method according to any one of the above - mentioned embodiments.
[0051] The present invention also relates to a computer program including instructions, which, when executed by a computer, cause the computer to perform a method for analyzing an electrocardiogram (ECG) segment previously obtained from a cardiac connection device, which is any one of the methods according to any one of the above - mentioned embodiments.
[0052] The present invention relates to a computer - implemented method for identifying abnormal heart rhythms, the method comprising:
[0053] - Receiving an electrocardiogram (ECG) signal from a cardiac device, the ECG signal including a series of R - waves;
[0054] - Identifying the R - waves in the ECG signal;
[0055] - Calculating morphological features of the ECG signal;
[0056] - Calculating rhythm features of the ECG signal;
[0057] - Segmenting the ECG signal into a series of overlapping segments;
[0058] - Calculating variation features of each segment;
[0059] - Calculating rhythm features of each segment;
[0060] - Calculating spectral features of each segment;
[0061] - Training a machine - learning algorithm on a dataset of annotated ECG segments that includes ECG segments indicative of abnormal heart rhythms;
[0062] - Classifying each segment by a machine algorithm based on the variation features of the segment, the rhythm features of the segment, the spectral features of the segment, the morphological features of the ECG signal, and the rhythm features of the ECG signal; and
[0063] - Classifying the ECG signal based on the classification of the segments.
[0064] According to one embodiment, the morphological features of the ECG signal are statistical data calculated based on the shape of the ECG signal.
[0065] According to one embodiment, the rhythm features are statistical data calculated based on the time periods between waves.
[0066] According to one embodiment, multiple methods are used to identify the R waves in the ECG signal, the rhythm characteristics of the ECG signal are calculated for each of the multiple methods, and the rhythm characteristics of each segment are identified for each of the methods.
[0067] According to one embodiment, the multiple methods include the XQRS detection method, the stationary wavelet transform process, or the optimization knowledge-based (OKB) detection method.
[0068] According to one embodiment, the dataset of annotated ECG segments includes ECG segments indicating cardiac arrest, bradycardia, atrial fibrillation or atrial tachycardia, ventricular tachycardia or ventricular fibrillation, or artifacts.
[0069] According to one embodiment, the machine learning algorithm is the XGBoost algorithm.
[0070] According to one embodiment, the method further includes receiving ECG signals from multiple cardiac devices from multiple manufacturers.
[0071] According to one embodiment, the method further includes normalizing the ECG signals received from the multiple cardiac devices.
[0072] According to one embodiment, the method further includes providing a platform to view the received ECG signals and the classification of the received ECG signals.
[0073] Define
[0074] In the present invention, the following terms have the following meanings:
[0075] - "Episode": Refers to a part of an electrocardiogram signal having a limited duration, the limited duration being identified and recorded by the manufacturer of the cardiac device for measuring the electrocardiogram signal itself. In fact, the manufacturer can implement an identification method configured to perform a preliminary analysis of the measured electrocardiogram signal in order to identify a part of the electrocardiogram signal associated with an abnormal cardiac rhythm in the measured signal and then record it. If the patient triggers the recording, a part of the electrocardiogram signal can also be recorded. In addition to a part of the electrocardiogram signal, the episode also includes the recording date (date and time) and the recording type (i.e., patient or identification method or triggered episode). The episodes recorded from the cardiac device essentially depend on the cardiac device itself (i.e., the quality of the acquired signal) and the manufacturer's identification method (i.e., the accuracy of discrimination), and thus may vary between devices of the same manufacturer and between different devices of different manufacturers.
[0076] - A "heart (connecting) device" refers to a device configured to measure an electrocardiogram signal and perform at least one preliminary analysis on the ECG signal to detect segments according to an identification method and transmit the segments to an external receiver. The device can be, for example, an implantable loop recorder, mobile cardiac telemetry, insertable cardiac monitor, pacemaker, implantable cardioverter-defibrillator (ICD), cardiac resynchronization therapy (CRT) device, etc.
[0077] - "Abnormal heart rhythm" refers to any physiological abnormality that can be identified on a heart signal. For example, in the present invention, the following abnormalities can be identified but are not limited to: "sinus node conduction block, paralysis or arrest", "atrial fibrillation", "atrial fibrillation or flutter", "atrial flutter", "atrial tachycardia", "junctional tachycardia", "supraventricular tachycardia", "sinus tachycardia", "ventricular tachycardia", "pacemaker", "ventricular premature beat", "atrial premature beat", "first-degree atrioventricular block (AVB)", "second-degree AVB Mobitz I", "second-degree AVB Mobitz II", "third-degree AVB", "pre-excitation syndrome", "left bundle branch block", "right bundle branch block", "intraventricular conduction delay", "left ventricular hypertrophy", "right ventricular hypertrophy", "acute myocardial infarction", "old myocardial infarction", "ischemia", "hyperkalemia", "hypokalemia", "Brugada syndrome", "long QTc syndrome", etc.
[0078] - The term "processor" should not be construed as limited to hardware capable of executing software, but rather generally refers to a processing device that can, for example, include a computer, microprocessor, integrated circuit, or programmable logic device (PLD). The processor can also include one or more graphics processing units (GPUs), whether for computer graphics and image processing or other functions. In addition, instructions and / or data capable of performing associated and / or resultant functions can be stored on any processor-readable medium, such as an integrated circuit, hard disk, CD (compact disc), optical disc, such as a DVD (digital versatile disc), RAM (random access memory), or ROM (read-only memory). The instructions can be stored, in particular, in hardware, software, firmware, or any combination thereof.
[0079] - "Machine learning algorithm (ML)" refers to a computer algorithm in the traditional sense that automatically improves through experience, which is based on training data and can adjust the parameters of a computer model by reducing the gap between the expected output extracted from the training data and the evaluated output calculated by the computer model.
[0080] - "Dataset" refers to a collection of data used to build an ML mathematical model for data-driven prediction or decision-making. In supervised learning (i.e., inferring a function from known input-output examples in the form of labeled training data), three types of ML datasets (also known as ML sets) are typically dedicated to three different types of tasks: training, i.e., fitting parameters; validation, i.e., tuning ML hyperparameters (parameters used to control the learning process); and testing, i.e., checking independently of the training dataset used to build the mathematical model, where the latter model provides satisfactory results.
[0081] - "Neural network or artificial neural network (ANN)" refers to a class of ML that includes nodes (called neurons) and connections modeled by weights between the neurons. For each neuron, the output is given as a function of the input or a set of inputs through an activation function. Neurons are typically organized into multiple layers such that neurons in one layer are only connected to neurons in the immediately preceding and the immediately following layers.
[0082] - "QRS" or "QRS complex" refers to the deflection in an electrocardiogram that represents the activity of the ventricles of the heart. The QRS complex generally includes the Q wave, R wave, and S wave that occur in rapid succession.
[0083] - "False positive" refers to an error in binary classification where the test result incorrectly indicates the presence of a condition such as an abnormal rhythm in a segment when there is no such rhythm abnormality, while "false negative" is the opposite error: when the condition is present, the test result incorrectly fails to indicate the presence of the condition. These are two types of errors in binary testing, in contrast to the two correct results, "true positive" and "true negative".
[0084] - "Remote monitoring platform" refers to any system for data management that is configured to receive, store, and / or analyze data received from at least one cardiac device corresponding to at least one patient. In an example, the platform can typically receive data from one or more cardiac devices of a patient to manage the care of these patients, which includes receiving data, reports, and information from such devices to enable healthcare providers to view, record, and report on the patient's health status. Such data can be received at the remote monitoring platform through many sources, including the corresponding device, device programmer, reports from the patient or manufacturer, or a third-party entity that receives data from the device. In this example, the remote monitoring platform can also provide one or more interfaces through which healthcare providers or other users of the platform can manage the receipt of device data. Detailed Description
[0085] The following detailed description will be better understood when read in conjunction with the accompanying drawings. For purposes of illustration, a computer-implemented method and system for analyzing electrocardiogram (ECG) segments are shown in the preferred embodiments. However, it should be understood that the present invention is not limited to the exact arrangements, structures, features, embodiments, and aspects shown. The drawings are not drawn to scale and are not intended to limit the scope of the claims to the described embodiments. Thus, it should be understood that where features are referred to in the appended claims followed by reference numerals, the inclusion of these numerals is merely for the purpose of enhancing the intelligibility of the claims and does not in any way limit the scope of the claims.
[0086] The features and advantages of the present invention will become apparent from the following description of embodiments of the system, which is given by way of example only and with reference to the drawings, in which:
[0087] Figure 1 A flowchart showing the main steps of the method according to an embodiment is shown.
[0088] Figure 2 A flowchart showing the main steps of the method according to an embodiment is shown.
[0089] Figure 3 A flowchart showing the successive steps performed by the system for analyzing an electrocardiogram segment previously obtained from Figure 1 a cardiac device is shown.
[0090] Although various embodiments have been described and illustrated, the detailed description should not be construed as being limited thereto. Those skilled in the art can make various modifications to the embodiments without departing from the true scope of the disclosure as defined by the claims.
[0091] To overcome these and other disadvantages of conventional cardiac monitoring platforms, a device diagnostic platform is provided that receives and normalizes ECG signals from any cardiac device (e.g., implantable loop recorders, pacemakers, defibrillators, etc.) manufactured by any manufacturer. Thus, a single platform is provided for healthcare professionals to monitor all of their cardiac implant patients.
[0092] When the observed arrhythmia duration is very short (e.g., when the criteria for detecting the abnormality are only valid at one point), a portion of the electrocardiogram signal as a segment may be a segment of several seconds to 15 minutes. However, some observed abnormalities may have a relatively long duration and do not exhibit any significant changes during their occurrence. In these cases, a cardiac device that identifies one of these abnormal heart rhythms may be configured to record a first segment of the ECG corresponding to the start of the abnormal rhythm and a second segment of the ECG covering the end of the abnormal rhythm as a segment. Recording the entire segment should take up too much memory space. Depending on the manufacturing design, the cardiac device may also record more than two segments for a segment.
[0093] The disclosed computer-implemented methods and systems also include a machine learning algorithm that reviews segments received from a cardiac device and identifies true abnormal heart rhythms and true normal heart rhythms, thus eliminating the need for a doctor to manually review false positive alerts output by the cardiac device. The machine learning algorithm uses a rule-based process to review segments received from the cardiac device, which process previously required a doctor to subjectively review a large number of segments. An exemplary method for identifying abnormal heart rhythms is described below to distinguish true positive segments that include abnormal heart rhythms from false positive segments that include normal heart rhythms.
[0094] The recorded segments are received from a cardiac device (e.g., an insertable or implantable cardiac monitor). The recorded segments may have previously been transmitted from the cardiac device to a receiving device configured to store the segments in a medical database. Thus the method is capable of receiving segments stored in a medical database.
[0095] The length of an ECG segment (referred to herein as a "segment") received from a cardiac device is typically between about 9 seconds and about 5 minutes.
[0096] As Figure 1 shown, method 100 includes a first step 101, in which R waves are identified in each subsection of a segment. According to one embodiment, the R waves in the subsection are identified using at least one algorithm. The at least one algorithm for identifying R waves may be selected from the following list: XQRS detection algorithm, stationary wavelet transform process, and / or optimization knowledge-based (OKB) detection algorithm.
[0097] In the XQRS detection algorithm, the ECG segments are band-pass filtered between 5 and 20 Hz to obtain the filtered ECG segments. The Moving Wave Integration (MWI) with a ricker wavelet is applied to the filtered ECG segments, and the square of the integrated signal is saved. Calibration is performed to initialize the running parameters of the noise and the QRS amplitude, QRS detection threshold, and the most recent RR interval. If the calibration fails, default parameters are used. For each local maximum of the MWI signal, the XQRS detection method determines whether the local maximum is a QRS complex. To be classified as a QRS, the local maximum must be after the refractory period, exceed the QRS detection threshold, and, if the local maximum is close enough to the previous QRS, cannot be classified as a T wave. If the classification is successful, the running detection threshold and heart rate parameters are updated. If not classified as a QRS, the local maximum is classified as a noise peak and the running parameters are updated. The local maximum of the QRS complex corresponds to the peak position of the R wave in the QRS complex (i.e., the R peak). For each newly detected QRS, a list of RR intervals is calculated by computing the time difference between each consecutive R peak. After a new local maximum is reached, XQRS calculates the duration between this local maximum and the last identified R peak. If this duration is less than 1.66 times the most recent RR interval (calculated as the duration between the last identified R peak and the previous R peak), a determination is made as to whether to classify this local maximum as a QRS. If no QRS is detected within 1.66 times the most recent RR interval. If not, a reverse search QRS detection is performed on the previous peak using a lower QRS detection threshold before classifying the local maximum.
[0098] During the stationary wavelet transform process, the second-order wavelet transform of the ECG segments is calculated. Based on the mean and standard deviation of the wavelet transform, a threshold is applied to the second-level detail coefficients of the wavelet transform. This process iterates over the threshold coefficients without overlapping in a fixed-length window. In the case where the threshold coefficients are not constantly zero, a QRS complex is placed on the maximum coefficient of each window, each QRS complex within the maximum allowable RR interval range is merged, and the position of each QRS complex is corrected to place it at the local maximum of the ECG segment before calculating the second-order wavelet transform. As in the previous algorithm, knowing the correct position of the QRS complex can determine the position of the corresponding R peak.
[0099] In the OKB detection method, a third-order Butterworth band-pass filter is used to perform band-pass filtering on ECG segments. The filtered signal is squared, and the QRS moving average and the beat moving average of the squared signal are calculated (with windows being the length of QRS and the length of the beat respectively). The beat moving average is used as a threshold to generate blocks of interest of the QRS moving average. And for each block of interest, the QRS complex is placed on the local maximum of the original ECG segment on the block. Just like the previous algorithm, knowing the correct position of the QRS complex can determine the position of the corresponding R peak.
[0100] The R peaks obtained from each of the three algorithms can be used to calculate the RR intervals in each ECG segment.
[0101] According to one embodiment, the R waves in a segment are identified using at least two of the algorithms listed above.
[0102] Alternatively, a novel combined algorithm developed by the inventors can be used to identify R waves. The combined algorithm employs the XQRS detection algorithm, the stationary wavelet transform process, and the optimization knowledge-based (OKB) detection algorithm.
[0103] In this embodiment, the R peaks identified by the above three methods are repositioned on local extrema. The R peaks detected in at least two of the three algorithms are used in this embodiment. A list of long RR intervals is created, and these intervals are at least x times longer than the median RR interval (where x is a floating point number determined empirically). For each long RR interval in the list, the position of a hypothesized supplementary R peak is inferred (by placing them at the median RR distance from the previous R peak). For each new hypothesized R peak, the ratio between the average gradient (amplitude respectively) in the region of these hypothesized R peaks and the average gradient (amplitude respectively) in the surrounding region is calculated. When the R peak with the ratio is greater than an empirically defined threshold, it is retained. The last four steps are repeated using an adaptive median interval (based on the moving median of the RR intervals). In each iteration, the current result is recombined with the previous result. Then, the median RR interval is calculated based on the new R peak positions (old estimate plus new estimate), and the process is repeated. In cases where previous methods missed multiple R peaks in gaps, this iteration improves the detection of RR peaks. The execution is repeated until no new R peaks are added. Advantageously, this embodiment allows for more accurate repositioning of R peaks, which improves the discrimination ability of the method.
[0104] The peak position of the R wave can be used to calculate at least one feature of each segment of a segment (step 102 of the method).
[0105] According to one embodiment, for each segment of each fragment, at least one morphological feature and / or at least one rhythm feature is calculated. The morphological feature can be statistical data calculated based on the shape of the ECG signal. The rhythm feature can be statistical data calculated based on the time period between waves (e.g., the time period between each R peak). Clustering is an example of a rhythm feature.
[0106] The morphological features can include QRS features and P wave features. To determine the QRS features, for each R peak, the QRS rhythm is extracted (based on 2 predefined delays, one before the R peak and one after the R peak), the median QRS rhythm is calculated, the average distance and the maximum distance of each QRS rhythm to the median QRS are assigned, the QRS rhythms with the average distance and the maximum distance less than a predefined threshold are selected, for each representative QRS rhythm, the start and end of the QRS peak are defined (based on local extreme value analysis), and the following features are identified: the median of the QRS peak width, the median of the QR delay, the median of the RS delay, the median of the QR delay, the standard deviation of the QS delay, and the maximum value of the QS delay.
[0107] To determine the P wave features, the R peak that defines the most representative QRS complex is identified. For each R peak, the rhythm approximately equal to the PR rhythm is extracted (based on 2 delays of the R peak), the median signal of all PR rhythms is calculated, the P wave (assumed to be the peak with the maximum amplitude) is located on the median signal, the prominence and region of the wave are identified, and the average distance between the median signal and all PR rhythms is identified. The P wave (assumed to be the peak with the maximum amplitude) is also located on all PR rhythms, and the standard deviation of the PR delay is identified.
[0108] The R peaks detected by each of the above four rhythm extraction algorithms (XQRS detection algorithm, stationary wavelet transform process, OKB detection algorithm, and the combined algorithm developed by the inventor) can be used to calculate the rhythm features for each segment. For each algorithm, the following features can be calculated for each set of R peaks detected in each segment: the mean, median, minimum, maximum, and standard deviation of the RR interval duration; the mean, median, and standard deviation of the absolute change in the RR interval duration; and the sample entropy of the RR interval duration calculated using a vector of length 2 and the Chebyshev distance.
[0109] For each of the four rhythm extraction algorithms, the R-peak position array can be transformed into a 3D vector. The first dimension is the RR interval from the first R-peak to the second-to-last R-peak, the second dimension is the RR interval from the second R-peak to the last R-peak, and the third dimension is the first peak position to the third-to-last R-peak position, adjusted by a normalization factor. These 3D vectors are grouped into clusters by a clustering algorithm (e.g., the DBScan algorithm). For the clustering, different algorithms can be used, such as: DBScan, K-Means, MeanShift, Spectral Clustering, Birch, or Ward. The clusters are divided into regular clusters and irregular clusters. In regular clusters, the first two dimensions are close (i.e., the RR intervals at times n and n-1 are close), and in irregular clusters, they are far apart. Based on the RR intervals and the clustering, multiple statistics are calculated, including: the number of identified clusters, the score of the clustering, the proportion of unclassified rhythms (not falling into any cluster) among all rhythms, the proportion of rhythms in regular clusters among all rhythms, the standard deviation of rhythm changes in regular clusters, the average value and standard deviation of the difference between the first two dimensions of rhythms in regular clusters, the ratio between the average periods of the fastest and slowest clusters, and the temporal overlap between these clusters.
[0110] In one embodiment, for each sub-segment of each segment, at least one transducer feature is also calculated in addition to at least one rhythm feature, variation feature, and / or spectral feature. Each sub-segment of the segment can be provided as input to the transducer to extract at least one transducer feature as the output of the transducer.
[0111] In one embodiment, for each sub-segment of each segment, at least one neural network feature is also calculated in addition to at least one rhythm feature, variation feature, and / or spectral feature. Each sub-segment of the segment can be provided as input to the neural network to extract at least one neural network feature as the output of the neural network. Advantageously, the neural network is used to identify signal patterns not documented in the literature.
[0112] In an advantageous embodiment, the neural network is jointly trained with XGBoost using unannotated ECG data to utilize patterns identifiable in a larger ECG dataset, thereby improving performance.
[0113] In one embodiment, the neural network is a convolutional neural network, a deep belief neural network, a recurrent neural network, or an architecture that combines at least two of the cited neural networks.
[0114] The neural network may be a convolutional neural network. A convolutional neural network is a neural network that utilizes the continuity of ECG data. The convolutional neural network can be trained and validated on a subset of the XGBoost training set. In an advantageous embodiment, the convolutional neural network is jointly trained with XGBoost using unannotated ECG data to utilize patterns that can be identified in a larger ECG dataset, thereby improving performance.
[0115] In one embodiment, the processor is further configured to input each segmentation of the segment into the neural network and extract at least one neural network feature of the segmentation as the output of the neural network. In this embodiment, for each segmentation, the computed features of the segmentation are at least one of the following: rhythm feature, morphological feature, and / or neural network feature.
[0116] Each segmentation in each segment can be divided into at least two sub-segments of equal duration. For step 103, the method uses a sliding window to identify overlapping sub-segments of a fixed duration. For example, each segmentation can be divided into 10-second sub-segments, with each sub-segment starting at an interval of 1 second.
[0117] The method may further include step 104 of using the identified R waves in the sub-segments for calculating at least one feature of each sub-segment.
[0118] It is noted that variation features, rhythm features, neural network features, and spectral features can be calculated for each sub-segment. The variation feature can be the quantile of the rolling difference of the signal, which can be calculated with windows of different durations. The rhythm features that can be calculated for each of the above four RR interval arrays may include the mean, median, minimum, maximum, and standard deviation of the RR interval duration; the mean, median, and standard deviation of the absolute change in the RR interval duration; and the sample entropy of the RR interval duration (using a vector of length 2 and the Chebyshev distance). The spectral feature can be the spectral feature of the signal based on the fast Fourier transform (FFT) of the signal filtered by a band-pass filter. The spectral feature may include the fundamental frequency of the signal, the value of the FFT at its fundamental frequency, and the power ratio between the fundamental wave and its harmonics and the total FFT (calculated with multiple harmonics and frequency width).
[0119] Each segment can be analyzed based on its sub-segment features (variation feature, rhythm feature, neural network feature, and spectral feature) and the segment features (morphological feature and rhythm feature) from which the sub-segments are extracted.
[0120] The systems and methods described herein can be configured to classify each segment as an indication of asystole, bradycardia, atrial fibrillation or atrial tachycardia (AT / AF), ventricular tachycardia (VT), artifact, or normal rhythm. Asystole (or pause) is the absence of any ventricular contractions for a minimum duration, e.g., for a minimum duration corresponding to a configurable asystole interval. Bradycardia is a slow ventricular rate (e.g., a ventricular rate below a configurable bradycardia rate for a duration of at least 4 beats). Ventricular tachycardia can be at least one of the following: tachycardia originating from the ventricles, or non-sustained ventricular tachycardia. Atrial tachycardia / atrial fibrillation (AT / AF) is at least one of the following: atrial tachycardia (ectopic), atrial flutter, or atrial fibrillation. Artifact is the presence of non-cardiac noise. If none of the above five abnormal rhythms are present, the system classifies this segment as normal rhythm.
[0121] According to one embodiment, for each sub-segment, the method includes step 105 of providing the features of the sub-segment and the features of the segment to which the sub-segment belongs as inputs to a machine learning algorithm, where the machine learning algorithm is configured to output a score vector. In an example, the features of each sub-segment and the corresponding segment features can be concatenated into a vector of flattened features, which will be used as the input to the machine learning algorithm.
[0122] The method can include step 106 of obtaining, for each in the sub-segment, the score vector as an output, where each sub-segment is a segment that the segment is segmented into.
[0123] The machine learning algorithm can be trained on a data set including a plurality of annotated segments, where the data set includes segments representative of abnormal and normal rhythms. The annotated segments of the data set allow for supervised training of the machine learning architecture. The data set can also contain non-annotated segments for other types of training, such as unsupervised or semi-supervised training strategies.
[0124] According to one embodiment, the machine learning algorithm includes a chain of at least two machine learning algorithms.
[0125] In another step 107, the method can use the score vectors obtained for each sub-segment in a segment to classify the segment in order to distinguish true positive segments and false positive segments.
[0126] In one exemplary embodiment, to classify each segment, the method uses a classifier chain of five machine learning algorithms (e.g., XGBoost algorithm) as the machine learning algorithm. Each of the five machine learning algorithms identifies whether the segment indicates one of the above five abnormal heart rhythms. More specifically, a dataset of annotated samples can be used to train a first XGBoost instance to classify the samples as indicating cardiac arrest or not indicating cardiac arrest; a dataset of annotated samples can be used to train a second XGBoost instance to classify the samples as indicating bradycardia or not indicating bradycardia; a dataset of annotated samples can be used to train a third XGBoost instance to classify the samples as indicating atrial fibrillation or atrial tachycardia or not indicating atrial fibrillation or atrial tachycardia; a dataset of annotated samples can be used to train a fourth XGBoost instance to classify the samples as indicating ventricular tachycardia or not indicating ventricular tachycardia; and a dataset of annotated samples can be used to train a fifth XGBoost instance to classify the samples as indicating artifact or not indicating artifact.
[0127] If none of the five machine learning algorithms identify any of the above abnormal heart rhythms, in the score vector, the sub-segment is classified as normal heart rhythm.
[0128] Each segment is classified based on the classification of the sub-segments within the segmentation of the segment. For example, if a segment includes one sub-segment classified as artifact and another sub-segment classified as atrial fibrillation or atrial tachycardia, then the segment is classified as artifact and atrial fibrillation or atrial tachycardia. In this case, the segment is a true positive segment and must be reviewed by a healthcare provider. If all sub-segments within the segment are classified as normal heart rhythm, the segment is classified as normal heart rhythm. For these segments that are false positives for the cardiac device, it causes the cardiac device to record and transmit unwanted extra information because these are normal events but are mislabeled as abnormal, so healthcare providers do not need to review them. In fact, relevant information about the patient's clinical status may not be obtained through these mislabeled normal events.
[0129] In a second exemplary embodiment, the machine learning algorithm is a classifier chain of six machine learning algorithms, which is trained to classify a segment into at least one of six classes or not classify it into any of the six classes. For the chain, different algorithms based on decision trees can be used, such as: XGBoost, LightGBM, AdaBoost, or the random forest method. In an embodiment, the machine learning algorithm is XGBoost, which advantageously provides the best trade-off between the highest achievable performance and the training time required to obtain the parameters to achieve these highest achievable performances.
[0130] In one example, the classifier chain includes six XGBoosts. Each of the machine learning algorithms in the chain is trained using a dataset of annotation segments to classify the segments into at least one of the following categories: indicating cardiac arrest, bradycardia, atrial fibrillation or atrial tachycardia (AT / AF), indication of ventricular tachycardia or ventricular fibrillation (VT / VF), artifacts, and normal or abnormal heart rhythm. Each of the machine learning algorithms in the chain is trained as a classifier chain such that the output of each algorithm is part of the input to all subsequent algorithms. This advantageously allows for improved classification efficiency of the chain. The classification performed by the chain on each sub-segment provides a six-dimensional score vector as output. After classification, the score vector can be filled with "1" or "0", where "1" corresponds to the attribution of a specific label by the corresponding machine learning algorithm on the chain, and "0" corresponds to the absence of the specific label. The five coefficients associated with the abnormal heart rhythm categories (i.e., all categories except the normal or abnormal heart rhythm category) in each score vector obtained for each sub-segment can then be combined at the segment level using a logical OR on each of the score vectors obtained for a segment. The coefficient associated with the category "normal or abnormal heart rhythm" in each score vector obtained for each sub-segment can be combined at the segment level using a logical AND. This example provides a segment score vector containing six coefficients of boolean values, where whenever at least one of the sub-segments in a segment has been classified as one of the abnormal heart rhythms, five coefficients (e.g., the first five) are set to "1", and if all sub-segments in the segment are labeled as "normal heart rhythm", one coefficient (e.g., the last one) is set to "1". The segment score vector is finally converted into an output that is configured to classify the segment as a normal heart rhythm, and thus a false positive, or an abnormal heart rhythm, and thus a true positive. In addition to the information that the segment is a true positive segment, the output can also include the label of at least one abnormal heart rhythm category that has been associated with the sub-segments of the segment.
[0131] In one embodiment, the method receives segments as input from multiple cardiac devices from multiple manufacturers. Advantageously, the method can include a step for normalizing the segments received from multiple cardiac devices, which allows for removing the mean and variance of the input signal to make it comparable to other signals.
[0132] The platform can be configured to provide a function for healthcare professionals to view ECG segments, the judgments made by cardiac devices, and the judgments made by the method / system of the present invention. If a segment is classified as a normal heart rhythm or an artifact, the platform can be configured to avoid outputting an alert to the healthcare professional. By classifying the ECG segments as described above, the disclosed system reduces the number of false positive alerts that must be examined by a doctor.
[0133] The embodiments disclosed herein include various operations described in this specification. As noted above, the operations may be performed by hardware components and / or may be embodied in machine-executable instructions that may be used to program a general or special-purpose processor to perform the operations. Alternatively, the operations may be performed by a combination of hardware, software, and / or firmware.
[0134] The performance of one or more of the operations described herein may be distributed among one or more processors, not residing only within a single machine, but deployed across multiple machines. In some examples, the one or more processors or processor-implemented modules may be located in a single geographical location (e.g., in a home environment, an office environment, or a server farm). In other embodiments, the one or more processors or processor-implemented modules may be distributed across multiple geographical locations.
[0135] As Figure 3 shown, the present invention also relates to a system 1 for analyzing an electrocardiogram (ECG) fragment previously obtained from a cardiac device to distinguish true positive fragments including abnormal heart rhythms from false positive fragments including normal heart rhythms, the system including at least one processor and all necessary circuitry and / or storage media to implement the above method.
[0136] The system may be implemented by receiving data (i.e., fragments and others) from at least one cardiac device corresponding to at least one patient via a server (i.e., a remote monitoring platform). The data may be transmitted to the remote monitoring platform via a communication network such as the Internet.
[0137] The present invention also relates to a computer-readable storage medium including instructions that, when executed by a computer, cause the computer to perform the steps of a method for analyzing an electrocardiogram fragment previously obtained from the cardiac-connected device described above.
[0138] A computer program implementing the method of this embodiment can generally be distributed to users on a distributable computer-readable storage medium such as, but not limited to, an SD card, an external storage device, a microchip, a flash memory device, a portable hard disk, and a software website. The computer program can be copied from the distributable medium to a hard disk or a similar intermediate storage medium. The computer program can be run by loading computer instructions from their distributable medium or their intermediate storage medium into the execution memory of the computer, configuring the computer to operate according to the method of the present invention. All of these operations are well known to those skilled in the art of computer systems.
[0139] The control processor or computer to implement the hardware components and the instructions or software for performing the above methods, as well as any associated data, data files, and data structures, are recorded, stored, or fixed on one or more non-transitory computer-readable storage media. Examples of non-transitory computer-readable storage media include read-only memory (ROM), random access memory (RAM), flash memory, CD-ROM, CD-Rs, CD+Rs, CD-RWs, CD+RWs, DVD-ROM, DVD-Rs, DVD+Rs, DVD-RWs, DVD+RWs, DVD-RAMs, BD-ROMs, BD-Rs, BD-RLTHs, BD-REs, magnetic tapes, floppy disks, magneto-optical data storage devices, optical data storage devices, hard disks, solid state disks, and those known to those of ordinary skill in the art that can provide instructions or software and any associated data, data files, and data structures to the processor or computer in a non-transitory manner such that the processor or computer can execute the instructions. In an example, the instructions or software and any associated data, data files, and data structures are distributed on a network-coupled computer system such that the instructions and software and any associated data, data files, and data structures are stored, accessed, and executed in a distributed manner by the processor or computer.
[0140] The present invention also relates to a computer program product for analyzing an electrocardiogram segment previously obtained from a cardiac connection device, the computer program product including instructions that, when executed by a computer, cause the computer to perform the steps of the method according to any one of the above embodiments.
[0141] The computer program product for performing the above method can be written as a computer program, code segment, instruction, or any combination thereof for individually or jointly instructing or configuring a processor or computer as a machine or special-purpose computer to perform the operations performed by the hardware components. In an example, the computer program product includes machine code directly executable by the processor or computer, such as machine code generated by a compiler. In another example, the computer program product includes high-level code executable by the processor or computer using an interpreter. Those of ordinary skill in the art can easily write the instructions or software based on the block diagrams and flowcharts shown in the drawings and the corresponding descriptions in the specification, where the algorithms for performing the operations of the above method are disclosed in the specification.
Claims
1. A computer-implemented method for analyzing electrocardiogram (ECG) segments previously obtained from a cardiac-connected device to assist in differentiating true positive segments including abnormal heart rhythms from false positive segments including normal heart rhythms, the method comprising: - Receiving the segments, each segment including at least one segment of an electrocardiogram signal; - For each segment in a segment: ○ Identifying R waves in the segment using at least one algorithm and using the R waves to calculate at least one feature of the segment; ○ Dividing the segment into at least two sub-segments; ○ For each sub-segment: ■ Using the identified R waves in the sub-segment to calculate at least one feature of the sub-segment; ■ Providing at least one feature of the sub-segment and at least one feature of the segment as inputs to a machine learning algorithm and obtaining a score vector as an output, the machine learning algorithm being configured to output the score vector; - Using the score vectors obtained for each sub-segment in a segment to classify the segment in order to differentiate true positive segments from false positive segments; - Outputting a classification result including at least the true positive segments.
2. The method according to claim 1, wherein, For each segment in a segment, at least one feature of the segment calculated is at least one of the following: a morphological feature and / or a rhythm feature.
3. The method according to any one of claims 1 or 2, wherein, For each sub-segment, the features of the sub-segment calculated are at least one of the following: a rhythm feature, a variation feature, and / or a spectral feature.
4. The method according to any one of claims 1 to 2, further comprising providing the true positive segments to a remote monitoring platform.
5. A system for analyzing electrocardiogram (ECG) segments previously obtained from a cardiac device in order to distinguish true positive segments including abnormal heart rhythms from false positive segments including normal heart rhythms, the system comprising: - At least one input terminal adapted to receive segments, each segment including at least one segment of an electrocardiogram signal; - At least one processor configured to: For each segment in a segment: - Identifying R waves in the segment using at least one algorithm and using the R waves to calculate at least one feature of the segment; - Dividing the segment into at least two sub-segments; - For each sub-segment: - Using the identified R waves included in the sub-segment to calculate at least one feature of the sub-segment; - Providing at least one feature of the sub-segment and at least one feature of the segment as inputs to a machine learning algorithm and obtaining a score vector as an output, wherein the machine learning algorithm is configured to output a score vector; - Using the score vectors obtained for each sub-segment in a segment to classify the segment in order to differentiate true positive segments from false positive segments; - At least one output adapted to provide the true positive segments.
6. The system according to claim 5, wherein, For each segment in a segment, at least one feature of the segment is at least one of the following: a morphological feature and / or a rhythm feature.
7. The system according to claim 6, wherein, The morphological feature is statistical data calculated based on the shape of the ECG signal, and the rhythm feature is statistical data calculated based on the time period between R waves.
8. The system according to any one of claims 5 to 7, wherein, The processor is configured to divide the segment into at least two sub-segments that are at least partially time-overlapped.
9. The system according to any one of claims 5 to 7, wherein For each sub-segment, the calculated sub-segment is characterized by at least one of the following: rhythm feature, variation feature, and spectral feature.
10. The system according to claim 9, wherein, The processor is further configured to calculate at least one feature of the sub-segment by inputting each sub-segment of the segment into a converter, and extract at least one converter feature as the output of the converter.
11. The system according to claim 9, wherein, The processor is further configured to calculate at least one feature of the sub-segment by inputting each sub-segment of the segment into a neural network, and extract at least one neural network feature as the output of the neural network.
12. The system according to claim 11, wherein, The neural network is at least one of the following: convolutional neural network, deep belief neural network, and recurrent neural network.
13. The system according to any one of claims 5 to 7, wherein, At least one algorithm for identifying the R wave is selected from the following list: XQRS detection algorithm, stationary wavelet transform process, and / or optimization knowledge-based detection algorithm.
14. The system according to any one of claims 5 to 7, wherein, The processor is further configured to use at least two algorithms to identify the R wave in the segment and use a combination algorithm configured to combine the R waves obtained according to the at least two algorithms.
15. The system according to any one of claims 6 to 7, wherein, Use at least two algorithms to identify the R wave in the segment, and use the R waves obtained according to each of the at least two algorithms to calculate at least one rhythm feature of the segment and / or sub-segment.
16. The system according to any one of claims 5 to 7, wherein, The machine learning algorithm is the XGBoost algorithm.
17. The system according to any one of claims 5 to 7, wherein The machine learning algorithm is trained on a data set including a plurality of annotated segments, wherein the data set includes segments representative of abnormal heart rhythms.
18. The system according to claim 17, wherein The data set of the annotated segments includes segments associated with cardiac arrest, bradycardia, atrial fibrillation, atrial tachycardia, ventricular tachycardia, and / or artifacts.
19. The system according to any one of claims 5 to 7, wherein, The input end is further configured to receive segments from a plurality of cardiac devices from a plurality of manufacturers.
20. The system according to claim 19, wherein, The processor is further configured to normalize the segments received from the plurality of cardiac devices.
21. The system according to any one of claims 5 to 7, wherein, The system is included in a remote monitoring platform.
22. A non-transitory computer-readable storage medium including instructions that, when executed by a computer, cause the computer to perform the method for analyzing an electrocardiogram segment previously obtained from a cardiac-connected device according to any one of claims 1 to 4.
23. A computer program product including instructions that, when executed by a computer, cause the computer to perform the method for analyzing an electrocardiogram segment previously obtained from a cardiac-connected device according to any one of claims 1 to 4.
Citation Information
Patent Citations
Static electrocardiogram analysis method and device based on artificial intelligence self-learning
CN107714023A
Arrhythmia detection method, arrhythmia detection device and arrhythmia detection system
US20190328251A1