Computer device for detecting cardiac arrhythmias
Patent Information
- Application Number
- DE602019072591
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2018-03-30
- Filing Date
- 2019-03-26
- Publication Date
- 2025-07-16
- Estimated Expiration
- 2039-03-26
AI Technical Summary
Existing devices for detecting cardiac rhythm disorders, particularly atrial fibrillation, are inadequate in providing quick and reliable detection, especially in cases of complex electrical activations, due to issues such as difficult catheter positioning, long analysis times, high costs, and complex map interpretations.
A device utilizing two machine learning-based classification models with different durations for cardiac electrogram data analysis, where a first model operates quickly with a short duration and a second model provides accurate detection, ensuring reliable alerts for areas of interest.
Enables rapid and accurate detection of cardiac rhythm disorders, minimizing false negatives by combining quick and precise models to identify cardiac zones promoting atrial fibrillation.
Description
[0001] The invention relates to the field of computer devices for detecting cardiac rhythm disorders, and in particular the detection of cardiac areas promoting atrial fibrillation.
[0002] The field of detecting cardiac zones favoring atrial fibrillation includes computing devices operating in delayed time implementing software such as Topera and CardioInsight software, as well as computing devices operating in real time implementing software such as CARTO software.
[0003] The Topera software aims to reconstruct the electrical activation of the heart's atria. Signal acquisition is performed using a "basket catheter" (a catheter that extends across the entire atrium). Analysis is performed in delayed time, more than 2 minutes after the start of acquisition. This solution is problematic because this type of catheter is difficult to position and because electrode contact is not guaranteed. Analysis time is very long, and reconstruction does not allow for high-definition maps, or even fails in the case of complex electrical activation (which represents 70% of atrial fibrillation cases) due to overly simplistic reconstruction.
[0004] The CardioInsight software aims to reconstruct the electrical activity of the heart using a multi-electrode electrocardiogram measurement vest on the patient's skin. The patient wears the vest before the operation, the data is analyzed and then accessible during the operation. The analysis is done in delayed time (more than 15 minutes) after the start of the acquisition. This solution has the disadvantage of a very long calculation time, which imposes a delayed time making it difficult to set up (in fact, the patient must come a few days before and wear the vest so that the data can be extracted before surgery), and a very high cost. In addition, the reconstruction does not allow for high-definition maps due to the measurements being too peripheral and distant, and fails in the case of complex electrical activations due to an overly simplistic reconstruction.
[0005] The CARTO software published by the company Biosense & Webster allows the implementation of algorithms to detect cardiac arrhythmias.
[0006] The CFAE (Complex Fractionated Atrial Electrograms) algorithm calculates the number of inflection points (variation of the sign of the derivative) in the signals and produces color maps in real time. The practitioner then interprets these complex maps to determine the locations of interest. This algorithm is not very specific and relatively simple.
[0007] The Ripple algorithm (Ripple Mapping) is a module of the CARTO software that allows the reproduction of the electrical activity of the atria after a first passage of a catheter. The amplitude and propagation of the electrical waves are made visible through this module. The result is maps that are extremely complex for the practitioner to understand. While this may work in simple cases, the analysis fails in the case of complex electrical activations because the maps are too difficult to interpret.
[0008] Document US 2016 / 022162 A1 discloses a device for determining cardiac risk based on cardiac electrogram data; this device implements a plurality of classification models for detecting cardiac rhythm disorders.
[0009] It therefore appears that no computer device for detecting cardiac rhythm disorders is available which would enable a practitioner to detect cardiac rhythm disorders quickly and reliably, including in the case of complex electrical activations.
[0010] The invention improves the situation. To this end, the invention proposes a device for detecting cardiac zones promoting atrial fibrillation which comprises a memory arranged to receive cardiac electrogram data and storing data defining a first classification model for detecting cardiac rhythm disorders and a second classification model for detecting cardiac rhythm disorders, the first classification model for detecting cardiac rhythm disorders resulting from the processing by machine learning of data associated with cardiac electrograms having a first duration, and the second classification model for detecting cardiac rhythm disorders resulting from the processing by machine learning of data associated with cardiac electrograms having a second duration, the first duration being less than the second duration,a classifier arranged to analyze cardiac electrogram data on the basis of a classification model, and to return a classification value, and a driver arranged to store in the memory cardiac electrogram data received as input, on the one hand to group these data according to the first duration and analyze them with the classifier on the basis of the first classification model for detecting cardiac rhythm disorders and on the other hand to group these data according to the second duration and analyze them with the classifier on the basis of the second classification model for detecting cardiac rhythm disorders, and to return alert data when the analysis by the classifier on the basis of the first classification model returns a classification value associated with a cardiac rhythm disorder.,
[0011] This device is particularly advantageous because it allows for much more reliable and rapid detection than existing devices.
[0012] In various variants, the device according to the invention may have one or more of the following characteristics: the second duration is an integer multiple of the first duration, and wherein the driver is arranged to apply the second cardiac rhythm disorder detection classification model such that the classification value for electrogram data having the second duration corresponds to a linear combination of the classification values obtained by dividing the electrogram data having the second duration into a plurality of subgroups of electrogram data having the first duration and applying the first cardiac rhythm disorder detection classification model to each of these subgroups of electrogram data, the driver is arranged to calculate a weighted average of the classification values obtained by applying the first cardiac rhythm disorder detection classification model to each of the subgroups of electrogram data, the device according to one of the preceding claims,further comprising a machine learning engine arranged to determine the first cardiac rhythm disorder detection classification model and the second cardiac rhythm disorder detection classification model, and the learning engine is arranged to perform learning selected from supervised learning, semi-supervised learning, unsupervised learning, or a combination of two or more of these learnings.
[0013] This disclosure also relates to a computer-implemented method of detecting cardiac rhythm disturbances comprising the following operations: a) receiving cardiac electrogram data, b) grouping data received in operation a) on the one hand according to a first duration and on the other hand according to a second duration, the first duration being less than the second duration, c) analyzing the data grouped according to the first duration on the basis of a first classification model for detecting cardiac rhythm disorders, the first classification model for detecting cardiac rhythm disorders resulting from the machine learning processing of data associated with cardiac electrograms having the first duration, and determining a first classification value, d) analyzing the data grouped according to the second duration on the basis of a second classification model for detecting cardiac rhythm disorders,the second classification model for detecting cardiac rhythm disturbances resulting from the machine learning processing of data associated with cardiac electrograms having the second duration, and determining a second classification value, and e) issuing alert data when the first classification value is associated with a cardiac rhythm disturbance.
[0014] As such, such a method is not part of the claimed invention.
[0015] In various variants, the device according to the invention may have one or more of the following characteristics: the second duration is an integer multiple of the first duration, and calculating the second classification value of operation d) comprises calculating a linear combination of first classification values obtained by dividing the electrogram data having the second duration into a plurality of subgroups of electrogram data having the first duration and applying operation c) to these subgroups of electrogram data, the linear combination of operation d) comprises calculating a weighted average of the first classification values obtained by applying the first cardiac rhythm disorder detection classification model to the subgroups of electrogram data having the first duration, the first cardiac rhythm disorder detection classification model and the second cardiac rhythm disorder detection classification model are obtained by machine learning,and machine learning is learning chosen from supervised learning, semi-supervised learning, unsupervised learning, or a combination of two or more of these learnings.
[0016] Other characteristics and advantages of the invention will appear more clearly on reading the following description, taken from examples given for illustrative and non-limiting purposes, taken from the drawings in which: there Figure 1 represents an embodiment of a device according to the invention, and the Figure 2 represents an example of implementation of a function by the device of the Figure 1 .
[0017] The drawings and the description below contain, for the most part, elements of a certain character. They may therefore not only serve to better understand the present invention, but also contribute to its definition, if necessary.
[0018] This description may contain elements that are subject to copyright protection. The rights holder has no objection to anyone reproducing this patent document or its description in the same form as it appears in the official files. He reserves his rights in full for all other purposes.
[0019] There Figure 1 represents an embodiment of a device for detecting cardiac rhythm disorders according to the invention.
[0020] The device 2 comprises an engine 4, a classifier 6 and a driver 8 a memory 10.
[0021] In the example described here, the device 2 is implemented on a computer that receives cardiac electrogram data as input and provides feedback to a practitioner via a graphical interface (not shown). This computer is here a PC type equipped with the Windows 10 operating system, a graphics card capable of managing one or more displays. Of course, it could be implemented differently, with a different operating system, with wired or wireless communication with the display(s). The term computer must be interpreted in the broad sense of the term. For example, it could be a tablet or a smartphone, a terminal for interacting with a computing server, or an element on a grid of distributed resources, etc.
[0022] Engine 4, classifier 6 and driver 8 are here programs executed by the computer processor. Alternatively, one or more of these elements could be implemented differently by means of a dedicated processor. By processor is meant any processor suitable for the data processing described below. Such a processor can be implemented in any known manner, in the form of a microprocessor for a personal computer, a dedicated chip of the FPGA or SoC type ("system on chip" in English), a computing resource on a grid, a microcontroller, or any other form suitable for providing the computing power necessary for the implementation described below. One or more of these elements can also be implemented in the form of specialized electronic circuits such as an ASIC. A combination of processor and electronic circuits can also be envisaged.
[0023] The memory 10 may be any type of data storage suitable for receiving digital data: hard disk, solid-state drive (SSD), flash memory in any form, RAM, magnetic disk, locally or cloud-distributed storage, etc. The data calculated by the device 2 may be stored on any type of memory similar to, or on, the memory 10. This data may be erased after the device has performed its tasks or retained.
[0024] As can be seen on the Figure 1 , the memory 10 receives several distinct types of data which play a role in the operation of the device 2. Thus, the engine 4 accesses training data 12 to calculate a first classification model for detecting cardiac rhythm disorders 14 and a second for detecting cardiac rhythm disorders 16. These data are then used to classify input data 18.
[0025] In the example described herein, the engine 4 is a supervised machine learning engine. Thus, the training data 12 comprises cardiac electrograms that have been labeled to indicate whether they are associated with a desired cardiac disorder or not. In the example described herein, the targeted cardiac disorder concerns atrial fibrillation. In other embodiments, it may be one or more other cardiac disorders.
[0026] Alternatively, the engine 4 may use another machine learning engine, for example semi-supervised or unsupervised. The dotted arrow between the input data 18 and the engine 4 represents the latter's ability to operate in semi-supervised or unsupervised mode. The engine 4 may also implement a combination of supervised, semi-supervised and / or unsupervised machine learning. In the example described here, the engine 4 primarily uses a data partitioning algorithm (“clustering” in English).
[0027] Alternatively, Engine 4 could implement a regression, instance-based, regularization, decision tree, Bayesian, neural network, deep learning, or combination thereof.
[0028] Alternatively, the engine 4 may be omitted, and the device 2 may operate based on predefined heart rhythm disturbance detection patterns.
[0029] In the embodiment described here, the input data represent cardiac electrograms, i.e. electrical signals derived from cardiac activity. To process them, these electrograms are cut into sequences of a chosen duration. Preferably, this duration corresponds to the parameters of the cardiac rhythm disorder detection model used. This means that, in general, the duration with which the electrogram data are cut for determining the model for the engine 4 is the same as the duration of the electrogram data used by the device 2 during its operational operation.
[0030] So, driver 8 receives the input data and slices it according to the duration associated with the model with which the classification is desired, then classifier 6 is called with the model and the sliced data.
[0031] The Applicant has discovered that detection is more effective when two models are used. For this, the first model for detecting cardiac rhythm disorders is established using a first duration for the electrogram data, in the example described here of 5 seconds, while the second model for detecting cardiac rhythm disorders is established using a second duration which is an integer multiple of the first duration. In the example described here, the integer multiple is equal to 5. Alternatively, it could vary between 2 and 10.
[0032] In the example described here, these two models use the smaller of two estimators calculated from the electrogram data. These estimators aim to qualify the cycle duration associated with the electrogram data. To do this, the electrogram data is stored in a vector whose each element corresponds to a sample of the signal represented by the electrogram data. Then, an autocorrelation parameter T is used to define two vectors of size T: a first vector comprising the first T samples of the electrogram data vector, and a second vector comprising the last T samples of the electrogram data vector.
[0033] In the example described here, the first estimator is calculated by measuring a normalized autocorrelation by performing the scalar product of the first vector and the second vector, divided by the product of the Euclidean norms of the first vector and the second vector. By varying T, a maximum value and a minimum value of the first estimator are determined, then the value retained for the first estimator is chosen as being that for which the value of T is the smallest and such that the first estimator calculated with this value of T is greater than the difference between the maximum value of the first estimator subtracted by 0.3 times the difference between the maximum value and the minimum value of the first estimator. Alternatively, the first estimator can be determined differently, for example by changing the coefficient of 0.3, or by searching for a value of T that optimizes the estimator, empirically, exhaustively, or by machine learning.
[0034] In the example described here, the second estimator is calculated by calculating for each value of T the squared Euclidean norm of the difference between the first vector and the second vector, divided by the product of the sample with the largest absolute value in the first vector by the sample with the largest absolute value in the second vector. As for the first estimator, a maximum and a minimum value of the second estimator are determined, then the value retained for the second estimator is chosen as being that for which the value of T is the smallest and such that the second estimator calculated with this value of T is greater than the difference between the minimum value of the second estimator added by 0.2 times the difference between the maximum value and the minimum value of the second estimator.Alternatively, the first estimator can be determined differently, for example by changing the coefficient of 0.3, or by searching for a value of T that optimizes the estimator, empirically, exhaustively, or by machine learning.
[0035] Alternatively, the first model and the second model may be based on other characteristics, in addition to or replacing the first and second estimators.
[0036] The combination of these two models is particularly advantageous because the first model is extremely quick to implement since the first duration is short, while the second model is extremely accurate even if the second duration is much longer.
[0037] For note, cardiac electrograms are obtained by moving an electrode in the heart at areas of interest. The speed of movement of the electrode is therefore crucial in detection, but must not be too slow in order to limit surgical risks. This speed of movement of the electrode necessarily influences the accuracy of the measurements. Indeed, as the electrode is moved from a first zone to a second zone, the measurements collected are less and less associated with the first zone, and more and more associated with the second zone.
[0038] In the context of the invention, this may make the second model for detecting cardiac rhythm disorders less effective due to the longer duration of the second duration. Thus, even if the first model is less precise, it allows primary detection of areas of interest in which a practitioner must spend more time so that the second model indicates with certainty whether these are relevant areas. It should be noted that this advantage is valid both for use of the device according to the invention in real time during a procedure and in deferred mode, in order to limit false negatives, i.e. areas that should have been detected as relevant, but for which the practitioner passed "too quickly".
[0039] Typically, when the classifier 6 applies the first cardiac rhythm disorder detection model or the second cardiac rhythm disorder detection model to cardiac electrogram data, it returns a value as output. This value represents a probability that the electrogram data in question will be considered significant for the detection of a cardiac rhythm disorder.
[0040] Advantageously, when the driver 8 applies the first cardiac rhythm disorder detection model to cardiac electrogram data and the response value exceeds a selected detection threshold (for example 70%), then alert data 20 are issued. However, it is only when the second model the first cardiac rhythm disorder detection model returns a response value that exceeds a second selected threshold (for example 80%) that an area from which the cardiac electrogram data were derived is considered relevant. Thus, the alert data 20 make it possible to indicate that an area is of interest, and deserves to be analyzed in more detail so that the second model is applied optimally.
[0041] There Figure 2 represents an example of implementation of a detection function by the driver 8.
[0042] This function starts with an operation 200 in which the input data is received, along with the execution parameters such as the first duration and the second duration d2, as well as the detection thresholds s1 for the first model and s2 for the second model.
[0043] Conventionally, input data is received in packets. Figure 2 represents the processing of one packet, with the function repeating for each new packet. For simplicity of presentation, the example described here handles the case where one data packet corresponds to the second duration. In the case where the packets are larger or smaller than the second duration, the function of the Figure 2 can be easily adapted to account for missing or excess data.
[0044] Then, in an operation 210, the data is cut according to the first duration, then an index i is initialized to 0 and the integer multiple corresponding to the division of the second duration by the first duration is calculated in an operation 220.
[0045] A loop is then run to apply the first model to each piece of the input data having the first duration, and the second model to the whole.
[0046] For this, a loop exit test checks in an operation whether the index i is strictly less than the multiple k in an operation 230. When this is the case, the first model is applied to the block of input data having the index i in an operation 240, and the resulting value v1 is compared to the threshold s1 in an operation 250. If the value v1 exceeds the threshold s1, then the alert data are emitted in an operation 255. Otherwise, or after the operation 255, the index i is incremented in an operation 260 and the loop resumes with the test of the operation 230. In the example described here, the threshold value s1 can be set to 0.5. Alternatively, it can be set differently and / or be the subject of an optimization.
[0047] When all the data blocks have been traversed, an operation 270 applies the second model with all the blocks, then the resulting value v2 is compared to the threshold s2 in an operation 280. If the value v2 exceeds the threshold s2, then the detection data is emitted in an operation 285. Otherwise, or after the operation 285, the function ends in an operation 299. In the example described here, the threshold value s2 can be set to 0.7. Alternatively, it can be set differently and / or be subject to optimization.
[0048] It should be noted that the classification of operation 270 can be carried out by applying a model in its own right, or by carrying out operations based on the values derived from the application of the first model. Thus, the value v2 can be a linear combination of the values v1 calculated in the loop, for example with a weighting that is all the more important as the values v1 are associated with a high index i. Indeed, the lower the index i, the further the corresponding data are temporally from the detection time, and the further the electrode is likely to be from the area concerned.
[0049] Alternatively, other types of functions can be implemented, such as arithmetic mean, thresholded, or any combination based on v1 values.
[0050] Alternatively, a so-called reference cathether may be placed over an area of the heart known to be healthy, and the resulting electrogram data processed to determine the first estimator and the second estimator, as described above, to derive the lowest estimator value. This value may be compared to the value similarly determined on the current electrogram data, and an alert similar to that of operation 255 may be triggered if a difference of more than 150ms is determined between these values, or if the current electrogram data yields a value less than 150ms.
Claims
1. A device for detecting areas of heart conducive to atrial fibrillation, characterised in that it comprises a memory (10) arranged to receive cardiac electrogram data and storing data defining a first classification model for detecting heart rhythm disorders and a second classification model for detecting heart rhythm disorders, the first classification model for detecting heart rhythm disorders resulting from machine learning processing of data associated with cardiac electrograms having a first duration, and the second classification model for detecting heart rhythm disorders resulting from machine learning processing of data associated with cardiac electrograms having a second duration, the first duration being less than the second duration, a classifier (6) arranged to analyse cardiac electrogram data on the basis of a classification model, and to return a classification value, and a driver (8) arranged to store in the memory (10) cardiac electrogram data received as input, on the one hand to aggregate these data according to the first duration and analyse them with the classifier (6) on the basis of the first classification model for detecting heart rhythm disorders and, on the other hand to aggregate these data according to the second duration and analyse them with the classifier (6) on the basis of the second classification model for detecting heart rhythm disorders, and to return alert data when the analysis by the classifier (6) on the basis of the first classification model returns a classification value associated with a heart rhythm disorder.
2. The device according to claim 1, wherein the second duration is an integer multiple of the first duration, and wherein the driver (8) is arranged to apply the second classification model for detecting heart rhythm disorders such that the classification value for electrogram data having the second duration corresponds to a linear combination of the classification values obtained by cutting the electrogram data having the second duration into a plurality of sub-groups of electrogram data having the first duration and by applying the first classification model for detecting heart rhythm disorders to each of these sub-groups of electrogram data.
3. The device according to claim 2, wherein the driver (8) is arranged to compute a weighted average of the classification values obtained by applying the first classification model for detecting heart rhythm disorders to each of the sub-groups of electrogram data.
4. The device according to one of the preceding claims, further comprising a machine learning engine (4) arranged to determine the first classification model for detecting heart rhythm disorders and the second classification model for detecting heart rhythm disorders.
5. The device according to claim 4, wherein the learning engine (4) is arranged to carry out learning selected from among supervised learning, semi-supervised learning, unsupervised learning, or a combination of two or more of these learnings.