WO2022119155A1 - 설명 가능한 다중 심전도 부정맥 진단 장치 및 방법 - Google Patents

설명 가능한 다중 심전도 부정맥 진단 장치 및 방법 Download PDF

Info

Publication number
WO2022119155A1
WO2022119155A1 PCT/KR2021/016001 KR2021016001W WO2022119155A1 WO 2022119155 A1 WO2022119155 A1 WO 2022119155A1 KR 2021016001 W KR2021016001 W KR 2021016001W WO 2022119155 A1 WO2022119155 A1 WO 2022119155A1
Authority
WO
WIPO (PCT)
Prior art keywords
map
neural network
attention
training
electrocardiogram
Prior art date
Application number
PCT/KR2021/016001
Other languages
English (en)
French (fr)
Inventor
김영학
전태준
유정선
Original Assignee
재단법인 아산사회복지재단
울산대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 재단법인 아산사회복지재단, 울산대학교 산학협력단 filed Critical 재단법인 아산사회복지재단
Publication of WO2022119155A1 publication Critical patent/WO2022119155A1/ko

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/24Detecting, measuring or recording bioelectric or biomagnetic signals of the body or parts thereof
    • A61B5/316Modalities, i.e. specific diagnostic methods
    • A61B5/318Heart-related electrical modalities, e.g. electrocardiography [ECG]
    • A61B5/346Analysis of electrocardiograms
    • A61B5/349Detecting specific parameters of the electrocardiograph cycle
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/24Detecting, measuring or recording bioelectric or biomagnetic signals of the body or parts thereof
    • A61B5/316Modalities, i.e. specific diagnostic methods
    • A61B5/318Heart-related electrical modalities, e.g. electrocardiography [ECG]
    • A61B5/327Generation of artificial ECG signals based on measured signals, e.g. to compensate for missing leads
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/24Detecting, measuring or recording bioelectric or biomagnetic signals of the body or parts thereof
    • A61B5/316Modalities, i.e. specific diagnostic methods
    • A61B5/318Heart-related electrical modalities, e.g. electrocardiography [ECG]
    • A61B5/346Analysis of electrocardiograms
    • A61B5/349Detecting specific parameters of the electrocardiograph cycle
    • A61B5/361Detecting fibrillation
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7235Details of waveform analysis
    • A61B5/7264Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7235Details of waveform analysis
    • A61B5/7264Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems
    • A61B5/7267Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems involving training the classification device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/042Knowledge-based neural networks; Logical representations of neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/20ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems

Definitions

  • Cardiovascular disease is one of the biggest obstacles to maintaining a healthy life, and most of the heart-related diseases can be explained by cardiac arrhythmia (CA).
  • cardiac arrhythmia Among several methods of recording cardiac activity, electrocardiogram (ECG), a method of measuring electrical potential, is the most widely used due to its non-invasive and effective properties.
  • ECG electrocardiogram
  • Accurately detecting cardiac arrhythmias (CA) using electrocardiogram data is one of the major challenges for cardiologists. Conventionally, although manual interpretation of an electrocardiogram signal by a cardiologist has been relied upon, machine learning and deep learning have been introduced in order to detect an accurate CA from electrocardiogram data.
  • the existing electrocardiogram data analysis method performs the analysis by implicitly assuming a one-to-one relationship between instances and labels, so that it is impossible to accurately determine all of a plurality of CA types that a patient actually has.
  • CNN-based models for analyzing existing ECG data have a problem in that the explainability of classification results is ambiguous.
  • the problem of the so-called 'black box' of AI occurs.
  • the neural network of the electrocardiogram diagnosis apparatus since the neural network of the electrocardiogram diagnosis apparatus according to an embodiment generates an attention map that facilitates multilabel learning and provides an interpretable visual explanation to a clinician, , can solve the problems of multilabel classification and explainability.
  • a method of training a neural network of an electrocardiogram diagnosis apparatus performed by a processor includes a method of training a neural network based on an attention branch of a neural network from training electrocardiogram (ECG) data according to a predetermined number of classes generating a feature map, generating an attention map and a reference response map from the feature map, calculating a loss value based on the attention map and the reference response map and updating a parameter of the neural network based on the calculated loss value.
  • ECG electrocardiogram
  • the generating of the attention map and the reference response map of the method for training a neural network of an electrocardiogram diagnosis apparatus may include: using a feature map corresponding to all classes among a plurality of feature maps generated by the attention branch.
  • the method may include generating an attention map, and generating the reference response map from a feature map corresponding to a ground truth class among the plurality of feature maps.
  • the generating of the reference response map of the method for training a neural network of an electrocardiogram diagnosis apparatus includes generating an average of a feature map corresponding to the true value class among the plurality of feature maps as the reference response map. may include steps.
  • Calculating the loss value of the method for training a neural network of an electrocardiogram diagnosis apparatus may include calculating a difference between the attention map and the reference response map.
  • Calculating the difference in the method of training a neural network of the electrocardiogram diagnosis apparatus may include calculating a Euclidean norm between the attention map and the reference response map.
  • a method of training a neural network of an electrocardiogram diagnosis apparatus may include applying a weight to the calculated Euclidean norm.
  • the calculating of the loss value of the method for training a neural network of an electrocardiogram diagnosis apparatus includes a first binary value between a ground truth label and a class score output from the attention branch. calculating a binary cross-entropy value, calculating a second binary cross-entropy value between a true value label and a class score output from the cognitive branch, and the calculated attention map and the reference response map and calculating the loss value by summing the difference between the two values, the first binary cross entropy value, and the second binary cross entropy value.
  • input data to be input to the neural network is obtained by applying preprocessing including normalized and zero-padding to the training electrocardiogram data. It may further include the step of generating.
  • the generating of the feature map of the method for training a neural network of the electrocardiogram diagnosis apparatus may include extracting the feature map for each of a plurality of disease classification classes from the training electrocardiogram data.
  • An apparatus for training a neural network of an electrocardiogram diagnosis apparatus is characterized by a predetermined number of classes based on the attention branch of the neural network from a memory storing the neural network including the attention branch and training electrocardiogram data generating a map, generating an attention map and a reference response map from the feature map, calculating a loss value based on the attention map and the reference response map, and calculating a parameter of the neural network based on the calculated loss value It may include an updating processor.
  • the processor of the apparatus for training a neural network of the electrocardiogram diagnosis apparatus generates the attention map from a feature map corresponding to all classes among a plurality of feature maps generated by the attention branch, and the plurality of features
  • the reference response map may be generated from a feature map corresponding to a ground truth class among maps.
  • the processor of the apparatus for training a neural network of the electrocardiogram diagnosis apparatus may generate an average of a feature map corresponding to the true value class among the plurality of feature maps as the reference response map.
  • the processor of the apparatus for training a neural network of the electrocardiogram diagnosis apparatus may calculate a difference between the attention map and the reference response map.
  • a processor of an apparatus for training a neural network of an electrocardiogram diagnosis apparatus may calculate a Euclidean norm between the attention map and the reference response map.
  • the processor of the apparatus for training a neural network of the electrocardiogram diagnosis apparatus may apply a weight to the calculated Euclidean norm.
  • a processor of an apparatus for training a neural network of an electrocardiogram diagnosis apparatus may include a first binary cross entropy between a ground truth label and a class score output from the cognitive branch. entropy), calculating a second binary cross entropy value between a true value label and a class score output from the attention branch, a difference between the calculated attention map and the reference response map, a first binary cross entropy value , and the second binary cross entropy value may be added to calculate the loss value.
  • the processor of the apparatus for training a neural network of the electrocardiogram diagnosis apparatus applies preprocessing including normalized and zero-padding to the training electrocardiogram data, and an input to be input to the neural network data can be generated.
  • a processor of an apparatus for training a neural network of an electrocardiogram diagnosis apparatus may extract a feature map for each of a plurality of disease classification classes from the training electrocardiogram data.
  • FIG. 1 illustrates a method for training a neural network of an electrocardiogram diagnosis apparatus according to an exemplary embodiment.
  • FIG. 2 is a diagram illustrating a structure of a neural network of an electrocardiogram diagnosis apparatus according to an exemplary embodiment.
  • FIG. 3 illustrates a classification evaluation result according to a weight applied to a Euclidean norm of a neural network according to an embodiment.
  • FIG. 4 illustrates an attention map generated when electrocardiogram test data diagnosed with LBBB and STE is input.
  • FIG. 5 illustrates an attention map generated when ECG test data diagnosed with AF and STD is input.
  • FIG. 6 is a block diagram illustrating a configuration of an apparatus for training a neural network of an electrocardiogram diagnosis apparatus according to an exemplary embodiment.
  • first or second may be used to describe various elements, these terms should be interpreted only for the purpose of distinguishing one element from another.
  • a first component may be termed a second component, and similarly, a second component may also be termed a first component.
  • a model In multiclass learning, a model can be trained by mapping an instance to one of several target labels. On the other hand, in multilabel learning, a model can be trained by mapping an instance to one or more target labels. Since multi-label classification classifies predicted labels into relevnat or irrelevant sets, a bipartitioning method must be defined.
  • labels In a deep learning network, labels may be sorted according to class probabilites, and labels may be classified using a threshold value t for segmentation. For example, the threshold value t for division may be set to a true value label generally 0.5, but is not limited thereto, and may be preset to another value.
  • the existing electrocardiogram data analysis method performs classification by assuming a one-to-one relationship between an instance (eg, electrocardiogram data) and a label (eg, each corresponding to a plurality of disease classification classes). not suitable for classification.
  • an instance eg, electrocardiogram data
  • a label eg, each corresponding to a plurality of disease classification classes.
  • the possibility of eight diseases for arrhythmias can be predicted from electrocardiogram data obtained from patients using a deep learning network.
  • a class may be generated for each of the 8 diseases including the normal class, and a total of 9 classes may be generated.
  • the neural network of the electrocardiogram diagnosis apparatus can accurately determine all of a plurality of diseases of a patient by allocating the input electrocardiogram data to a plurality of labels suitable for multi-label classification, compared with a conventional electrocardiogram data analysis method.
  • Convolutional Neural Network is known as an effective method for disease diagnosis of ECG data, but has not been applied to clinical practice due to poor interpretability or explainability. Because AI's misinterpretability can have serious consequences for medicine, explainability is a very important issue. If the algorithm of deep learning cannot be explained, it is difficult to put it into practical use in the field of medical AI that requires accurate prediction, and the possibility that the algorithm will be trained with the wrong standard cannot be excluded if explanability is not taken into account. After all, in CA classification for ECG data using deep learning, the retraceability of model decisions is as important as making accurate predictions.
  • the response-based method visualizes attention during forward propagation.
  • CAM class activation map
  • CAM represents the weighted sum of the compressed spatial attention or feature maps generated by the last convolutional layer.
  • the predicted class score is projected back to the global-average pooling (GAP) layer to obtain the weight of each unit related to the class, the weight is input to the GAP, multiplied with the feature maps, and then summed to generate a CAM.
  • GAP global-average pooling
  • CAM is effective in providing visual explanations in computer vision, it has a disadvantage in that the classification accuracy of the model decreases because it replaces a fully-connected layer with a convolutional layer.
  • Grad-CAM was introduced.
  • Grad-CAM first propagates the image forward and computes a probability score for the true label.
  • the gradient of the score is differentiated with respect to the feature map of the last convolutional layer. It is assumed that the dot product and backpropagation results of the feature maps are summed, and the weighted sum of the feature maps is reflected according to importance.
  • the final visual description is generated by passing the weighted sum through a Rectified Linear Unit (ReLU).
  • ReLU Rectified Linear Unit
  • a conventional attention branch network is one of models of a neural network that can explain how a model makes a decision by using an attention map in a convolutional neural network (CNN).
  • the attention branch network not only extracts an attention map related to the decision of the CNN model, but also uses the attention map to improve the performance of the network. This is achieved by introducing an attention branch for attention extraction in the attention branch network. Attention maps combine with the processed input so that high-level convolutional layers focus on the relevant part of the image.
  • the attention branch network outperforms the existing CNN model in image classification, and the visual explanation is similar to CAM or Grad-CAM.
  • the advantage of the attention branch network is that it can generate maps during training. On the other hand, in the case of CAM or Grad-CAM, it is required that the model be fully trained to obtain layer weights or backpropagation.
  • the conventional attention branch network may include a backbone network, an attention branch, and a perception branch.
  • the backbone network for extracting spatial features of input data may receive input data and output a feature map.
  • the backbone network may be a deep neural network model including a convolutional layer.
  • a convolutional layer can apply a convolution operation to the layer input by using a filter.
  • a neural network includes an input layer, a hidden layer, and an output layer.
  • the input layer, the hidden layer, and the output layer each include a plurality of nodes.
  • the hidden layer may include a variable number of layers.
  • nodes of layers other than an output layer may be connected to nodes of a next layer through links for transmitting an output signal, and the links may connect layers in various structures.
  • An output of an activation function regarding weighted inputs of nodes included in a previous layer may be input to each node included in the hidden layer.
  • a weight may be referred to as a parameter of a neural network.
  • the activation function may include a sigmoid, a hyperbolic tangent (tanh), and a rectified linear unit (ReLU), and the activation function may cause the neural network to have nonlinearity.
  • the feature map extracted from the backbone network may be input as an attention branch.
  • the attention branch may generate an attention map that provides explanatory possibilities for the decision of the attention branch network.
  • the attention branch may include a layer for calculating a class score corresponding to the attention branch based on the feature map.
  • the perception branch may include a layer for calculating a class score corresponding to the perception branch based on the feature map and the attention map generated from the attention branch.
  • the conventional attention branch network is a neural network structure in which a loss value is calculated based on the class score calculated from the attention branch and the class score calculated from the cognitive branch, and the parameters of the attention branch network are updated based on the calculated loss value.
  • the attention branch network trained by the training data may output a probability corresponding to each class in response to the input data.
  • a neural network according to an embodiment is different from an existing attention branch network in a loss function.
  • a neural network according to an embodiment is a neural network including an attention branch.
  • the neural network of the electrocardiogram diagnosis apparatus according to an embodiment may calculate a loss value based on a difference between the attention map and the reference response map as well as the class score calculated from the attention branch and the class score calculated from the cognitive branch.
  • the neural network according to an embodiment may further improve multi-label classification performance by using the reference response map, and may also provide explainability through attention visualization.
  • a structure of a neural network according to an embodiment will be described in more detail.
  • FIG. 1 illustrates a method for training a neural network of an electrocardiogram diagnosis apparatus according to an exemplary embodiment.
  • step 101 a process of receiving and pre-processing training electrocardiogram (ECG) data from a patient will be described.
  • ECG electrocardiogram
  • ECG data divided into 12 leads obtained from a patient may be used as training ECG data.
  • the neural network may apply post-processing to the acquired training ECG data and input it to the backbone network. Pre-processing of zero-padding may be applied to the training ECG data so that the length of data input to the backbone network is uniform for each read.
  • the range of the input data may be adjusted by applying normalized preprocessing to the training electrocardiogram data.
  • a feature map may be generated for each class of a predetermined number based on an attention branch of a neural network from the preprocessed training electrocardiogram data.
  • the neural network may generate a feature map through a convolution layer and ReLU for each class in the attention branch.
  • the neural network according to an embodiment generates a feature map for each class for multilabel classification in which input ECG data is assigned to a plurality of labels.
  • an attention map and a reference response map may be generated from the feature map.
  • the neural network may generate an attention map that provides the explanatory possibility of an attention branch based on the feature map generated for each class.
  • An attention map may be generated from a feature map corresponding to all classes among a plurality of feature maps generated by the attention branch.
  • a reference response map may be generated from a feature map corresponding to a ground truth class among the plurality of feature maps.
  • a ground truth class may indicate a class corresponding to an arrhythmic disease of a patient in the step of training a neural network of the electrocardiogram diagnosis apparatus according to an embodiment.
  • a loss value may be calculated based on the generated attention map and the reference response map.
  • a loss value is calculated based only on the class score calculated from the attention branch and the class score calculated from the recognition branch.
  • multi-class classification may be further improved by adding a value corresponding to the difference between the attention map and the reference response map to the loss value.
  • parameters of the neural network may be updated based on the calculated loss value.
  • FIG. 2 is a diagram illustrating a structure of a neural network of an electrocardiogram diagnosis apparatus according to an exemplary embodiment.
  • a neural network includes three main modules: a backbone network 210 , an attention branch 220 , and a perception branch 230 .
  • the neural network By generating an attention map, the neural network not only provides a visual explanation for the decision of the neural network, but also improves the classification performance of the neural network.
  • the neural network may obtain electrocardiogram data from a patient and use it as training data.
  • Training data means a pair of a training input and a training output, and the training output may indicate a true value label.
  • preprocessing may be applied to the acquired training electrocardiogram data 251 to input the preprocessed data to the backbone network 210 .
  • preprocessing including normalized and zero-padding may be applied to the training electrocardiogram data 251 .
  • ECG data measured from a patient may be divided into a total of 12 leads, and the ECG data divided into 12 leads may be used as the training ECG data 251 .
  • the 12 leads can represent ECGs of I, II, III, aVR, aVL, aVF, V1, V2, V3, V4, V5, and V6, and each standard ECG can be obtained by different measurement sites from the patient.
  • the neural network may apply preprocessing by subtracting a global mean and dividing by a global standard deviation to normalize the acquired training electrocardiogram data 251 .
  • the attention neural network may undergo a pre-processing of zero-padding in order to uniform the length of data input to the backbone network 210, which is a neural network including a convolutional layer.
  • the backbone network 210 which is a neural network including a convolutional layer.
  • each read of the acquired training electrocardiogram data 251 may be pre-processed according to a reference time defined as 72,000 time-points. That is, when the data obtained for each read of the training electrocardiogram data does not reach the reference time, a '0' may be filled in front of the obtained data to be the length of the reference time.
  • preprocessing of a normalization process and a process of zero-padding may be applied to the training electrocardiogram data 251 .
  • the training electrocardiogram data may be pre-processed so that the size of the input (x i ) to the backbone network 210 is 72,000 (time-point) ⁇ 12 (lead).
  • the backbone network may consist of one or more convolution layers.
  • the use of four convolutional layers as a backbone network is exemplarily described.
  • four convolutional layers as shown in Table 1 below may be used.
  • batch normalization is performed after each convolutional layer, and kernel dimensions of all convolutional layers and max pooling layers may be 3 ⁇ 3.
  • the stride may be set to 1, and in the case of a max pooling layer, the stride may be set to 3.
  • the backbone network may generate a first feature map g(x i ), 252 by extracting features of spatial information so that only important features remain from the input training electrocardiogram data.
  • the first feature map 252 may be delivered to the attention branch 220 that efficiently trains the deep features.
  • the first feature map 252 may be input as a residual function 203 of the attention branch 220 .
  • the residual function 203 may be composed of three consecutive convolutional layers. For example, it may be composed of a 1 ⁇ 1 convolutional layer of 64 filters, a 3 ⁇ 3 convolutional layer of 64 filters, and a 1 ⁇ 1 convolutional layer of 256 filters.
  • the application of the residual function 203 to the first feature map 252 (F(g((x i ))) is summed back with the first feature map 252 for a residual mapping (F(g)) It can be ((x i ))+g(x i )).
  • the output of the residual function 203 may be input to the first convolutional layer 205 after being subjected to batch normalization 205 .
  • the first convolutional layer 205 may generate K h ⁇ w-dimensional feature maps, which may be interpreted as feature maps of individual classes. In other words, the first convolutional layer 205 may output a K ⁇ h ⁇ w map.
  • h, w, and K may represent a natural number equal to or greater than 1, and K may represent the number of classes designated in advance in the neural network according to an embodiment.
  • a feature map corresponding to an individual class may be output by the first convolution layer 205 , and the output feature map may pass through an activation function.
  • the activation function may represent a Rectified Linear Unit (ReLU) 206 that extracts only positive values.
  • ReLU Rectified Linear Unit
  • the K feature maps of the h ⁇ w dimension extracted through the first convolutional layer 205 are input to the ReLU 206 so that only positive values can be extracted.
  • the K feature maps output through the relu 206 for each class are referred to as a second feature map (C k ).
  • C 1 represents a feature map corresponding to the first class among the second feature maps
  • C 2 represents a feature map corresponding to the second class of the second feature maps
  • C k represents the kth of the second feature maps. It may mean a feature map corresponding to a class.
  • the second feature map may be generated for each class of a predetermined number.
  • An attention map (M(x i )) 231 and a reference response map (R(x i ), reference response map) 232 may be generated from the second feature map.
  • the attention map 231 may be generated from the second feature maps corresponding to all classes among the plurality of second feature maps generated by the attention branch.
  • the reference response map 232 may be generated from the second feature map 270 corresponding to a ground truth class among the plurality of second feature maps.
  • the second feature map may be subjected to a 1 ⁇ 1 ⁇ 1 convolutional layer 209 and batch normalization 211 to calculate extracted values for K second feature maps corresponding to individual classes.
  • the attention map 231 having a dimension of 1 ⁇ h ⁇ w may be generated by applying the sigmoid function 212 to the calculated extracted value. That is, the attention map 231 may be generated based on second feature maps corresponding to all classes among the plurality of second feature maps, and the attention map 231 reflects all second feature maps corresponding to individual classes. can do.
  • the reference response map 232 may be generated based on the second feature map corresponding to the ground truth class, not all classes.
  • Equation 1 a method of generating the reference response map 232 from the second feature map corresponding to the true value class among the plurality of second feature maps will be described.
  • R is the reference response map 232
  • N multi is the number of true value classes
  • an average of the attention map corresponding to the true value class among the plurality of feature maps may be generated as the reference response map 232 . Since the reference response map 232 is an average of attention maps corresponding to ground truth classes, it can be said that feature maps of all true value classes are reflected.
  • a loss value may be calculated based on the attention map 231 and the reference response map 232 generated from the second feature map.
  • the neural network calculates a first binary cross-entropy value between a ground truth label and a first class score output from the attention branch, A second binary cross entropy value between the true value label and the second class score output from the recognition branch may be calculated.
  • the neural network according to an embodiment may calculate a loss value by summing the difference between the calculated attention map 231 and the reference response map 232, the first binary cross entropy value, and the second binary cross entropy value. .
  • the loss value may be calculated by summing the Euclidean distance between the first binary cross entropy value, the second binary cross entropy value, the attention map 231 and the reference response map 232 .
  • the Euclidean distance may be, for example, a Euclidean norm.
  • the process of calculating the loss value will be described in more detail.
  • the second feature map extracted through the Relu 206 is obtained by using a general average pooling (GAP) 207 and a sigmoid of the second feature map.
  • GAP general average pooling
  • a first class score may be extracted for each label through (208).
  • the GAP 207 is a layer that individually averages the extracted second feature map, and the sigmoid 208 normalizes the values extracted from the GAP 207 to obtain the first class score ( 233)). Equation 2 below shows a process of calculating the first class score 233 for each label.
  • S k att denotes the first class score for the k-th label
  • (1,j) denotes a specific position value in the second feature map (C n ) corresponding to the n-th label
  • denotes the sigmoy Denotes a function.
  • the attention map 231 extracted from the attention branch 220 may be input to the attention mechanism 240 .
  • the attention mechanism 240 may receive the first feature map 252 and the attention map 231 and extract the third feature map (g'(x i )) 253 .
  • Equation 3 Equation 3 below, a process of extracting the third feature map 253 through the attention mechanism 240 will be described.
  • the third feature map 253 may be input to the residual function 213 of the perception branch 230 .
  • the output of the residual function 213 goes through GAP and the third feature map is averaged, and arrives at the convolutional layer with 512 units through GAP.
  • the 512 units are fully-connected to the layer with K units corresponding to each class, and the K units are each activated with a sigmoid function to yield a second class score 234 for each class. can do.
  • Equation 4 a process of calculating the second class score 234 corresponding to each label through the cognitive branch 230 will be described.
  • the neural network of the electrocardiogram diagnosis apparatus may calculate the first class score 233 from the attention branch 220 and calculate the second class score 234 from the cognitive branch 230 .
  • the loss function (J(x i )) 290 of the neural network is between the first binary cross entropy value between the true value label and the first class score output from the attention branch, between the true value label and the second class score output from the attention branch. It may be calculated based on a second binary cross entropy value of , and a Euclidean norm between the attention map 231 and the reference response map 232 .
  • the loss function J(x i ) 290 is calculated by summing the first binary cross entropy value, the second binary cross entropy value, the Euclidean distance between the attention map 231 and the reference response map 232 .
  • the loss function J(x i ) 290 is a weighted Euclidean distance between the first binary cross entropy value, the second binary cross entropy value, and the attention map 231 and the reference response map 232 . It can be calculated by summing the values.
  • the loss function J(x i ) 290 may be expressed as in Equation 5 below.
  • L att (y i , S att ) represents the binary cross entropy value for the attention branch 220
  • L per (y i , S per ) represents the binary cross entropy value for the cognitive branch 230
  • L map (x i ) represents the Euclidean norm between the attention map 231 and the reference response map 232
  • represents a weight applied to the calculated Euclidean norm.
  • L map (x i ) may be expressed as in Equation 6 below.
  • L att (y i , S att ) and L per (y i , S per ) are one or more diseases indicated by input electrocardiogram data in a neural network according to an embodiment using multiple labels. It is related to the purpose of making accurate predictions for
  • the L map (x i ) term relates to the purpose of generating a comprehensive visual explanation for classification.
  • which means a weight applied to the Euclidean norm, represents a scaling factor for balancing the importance of the two purposes. For example, but not by way of limitation, ⁇ may have a value between 0.001 and 10.
  • the neural network of the electrocardiogram diagnosis apparatus may update parameters of the neural network based on the calculated loss value.
  • the neural network minimizes the binary cross entropy value between the class score and the true value label output from the attention branch and the binary cross entropy value between the class score and the true value label output from the recognition branch , and the parameter of the model may be updated in a direction of minimizing the Euclidean distance between the attention map generated in the attention branch and the reference response map generated from the feature map corresponding to the true value class.
  • the neural network of the electrocardiogram diagnosis apparatus may update and train parameters of the attention branch and the cognitive branch included in the neural network together based on the calculated loss value.
  • the neural network according to an embodiment is different from the conventional neural network, since the attention map generated in the attention branch is trained in a direction to minimize the distance from the reference response map that reflects all the properties of the true value label. It can improve both the explainability of the network and the problem of multi-label classification. In other words, the neural network according to an embodiment fine-tunes the attention map generated in the attention branch to reflect all the properties of the true value label. Accordingly, in the neural network according to an embodiment, since the attention map that provides the descriptive potential of the decision of the neural network approaches the reference response map that reflects the characteristic of the true value label, the descriptive potential of the neural network can be improved.
  • the neural network according to an embodiment may generate attention reflecting the multi-label properties. Furthermore, since the neural network according to an embodiment is trained in a direction to minimize the distance between the attention map and the reference response map reflecting all the properties of the true value label, as will be described later, the neural network and the existing neural network in multi-label classification performance improved by comparison.
  • Training ECG data used to evaluate model classification performance includes 6,877 ECG records for 12 leads (I, II, III, aVR, aVL, aVF, V1, V2, V3, V4, V5, V6) (recording).
  • CA can be divided into a normal class and eight subtypes.
  • the eight subtypes are atrial fibrillation (AF), first degree atrioventricular block (I-AVB), left-angle block (LBBB), right-angle block (RBBB), and prematrue. atrial contraction, PAC), or ST-segment elevated (STE).
  • ECG recordings can be sampled in the range of 6 s to 144 s at a frequency of 500 Hz, and 6877 recordings are split in a ratio of 76:4:20 to subset training, validation, and testing, respectively. test subset).
  • Table 2 below shows exemplary ECG training data.
  • a threshold of 0.5 Divide by constant if the class score for a specific class is greater than 0.5, the class score is redefined as 1, and when the class score is 0.5 or less, the class score is redefined as 0.
  • an evaluation method of the F1 score defined as in Equation 7 below may be used.
  • Equation 7 Precision and Recall may be defined as Equations 8 and 9 below.
  • TP may indicate a true positive
  • FP may indicate a false positive
  • FN may indicate a false negative
  • an F1 score evaluation method is used.
  • the evaluation method of the F1 score which is a well-known evaluation method in the prior art
  • a score is partially given to the corresponding model.
  • the evaluation method of subset accuracy even when the model correctly predicts some of the plurality of true value classes, if it does not accurately predict all true value classes, it is evaluated as incorrectly predicted. Subset accuracy is more rigorous and accurate in the evaluation of multi-label classification.
  • FIG. 3 illustrates a classification evaluation result according to a weight applied to a Euclidean norm of a neural network according to an embodiment.
  • the graph 300 evaluates the accuracy of multi-label classification according to the weight applied to the Euclidean norm between the attention map and the reference response map in the neural network whose parameters are updated by the loss function 290 by the F1 score. It is a graph. Referring to the graph 300 , when the weight ⁇ is 0.01, the F1 score of the neural network according to the embodiment is the highest.
  • Table 3 summarizes the classification performance of three models (the first model, the second model, and the model according to FIG. 2 ).
  • the first model was described by Chen et. al(2020) model.
  • the second model is a conventional attention branch network, in which a loss function is calculated based on only the binary cross entropy value for the attention branch and the binary cross entropy value for the cognitive branch.
  • the model according to FIG. 2 is a neural network according to an embodiment, in which a loss function is calculated based on a binary cross entropy value for an attention branch, a binary cross entropy value for a cognitive branch, and a Euclidean distance between the attention map and the reference response map. It is a determined network.
  • the neural network according to an embodiment When comparing overall classification accuracy using the F1 score, the neural network according to an embodiment is evaluated as 0.812, which is the highest score.
  • the first model When evaluating the overall subset accuracy by merging single and multi-label data, the first model shows a performance of 73.5%.
  • the first model When evaluating the subset accuracy-single with single-label data, the first model shows a performance of 77.4%.
  • the neural network according to an embodiment has an accuracy of 84.6%, and it is evaluated that the performance is much superior to that of the other two models.
  • the multi-label subset accuracy (subset-accuracy-multi) is improved compared to the first model.
  • the second model which is a conventional attention branch network model
  • the multi-label subset accuracy (subset-accuracy-multi) is improved compared to the first model.
  • FIGS. 4 and 5 illustrate an attention map generated when electrocardiogram test data is input to a neural network and a conventional attention branch network according to an embodiment.
  • attention is visualized, and the attention refers to a numerical value of the contribution of each part of the input data to the decision of the algorithm.
  • the neural network according to an embodiment is trained in a direction that minimizes the distance from the reference response map that reflects all the properties of the true label with the attention map generated from the attention branch, both the explainability of the neural network and the multi-label classification problem are improved. can do it.
  • the attention map of the neural network according to the embodiment is generated at the same time Effective for capturing CA types. 4 and 5 are visualizations of an attention map obtained from a model in order to evaluate explainability.
  • FIG. 4 illustrates an attention map generated when electrocardiogram test data diagnosed with LBBB and STE is input.
  • the attention map 401 represents an attention map generated when electrocardiogram test data diagnosed with LBBB and STE is input to the neural network according to an embodiment.
  • the attention map 402 represents an attention map generated when electrocardiogram test data diagnosed with LBBB and STE is input to a conventional attention branch network. Both the attention map 401 and the attention map 402 capture the QS complex of V1, which is a major indicator of LBBB around about 12.5 seconds, well. However, the attention map 401 of the neural network according to an embodiment also pays attention to the STE symptoms observed around 8 seconds in V1 to V6, but the attention map 402 of the second model focuses less on the corresponding part. it is confirmed that
  • FIG. 5 illustrates an attention map generated when ECG test data diagnosed with AF and STD is input.
  • the attention map 501 represents an attention map generated when ECG test data diagnosed as AF and STD is input to the neural network according to an exemplary embodiment.
  • the attention map 502 represents an attention map generated when the conventional attention branch network inputs ECG test data diagnosed with AF and STD. AF tends to appear consistently throughout the signal, and the neural network's attention map 501 according to an embodiment compares it with the conventional attention-branch network's attention map 502 to assign a uniform attention throughout. can be checked One of the cues reported to be symptomatic of STD, V2, reflects signs of STD (eg, down the ST segment and two pulses 2 seconds before onset). The attention map 501 highlights the area, but the attention map 502 does not pay attention to the symptoms of STD. Overall, the attention map 502 of a conventional attention branch network focuses on only a few prominent symptoms, whereas the attention map 501 focuses on the prominent symptoms with attention being relatively dispersed throughout the input signal. .
  • FIG. 6 is a block diagram illustrating a configuration of an apparatus for training a neural network of an electrocardiogram diagnosis apparatus according to an exemplary embodiment.
  • the apparatus 600 for training a neural network of the electrocardiogram diagnosis apparatus may include a communication unit 610 , a processor 620 , and a memory 630 .
  • the communication unit 610 may receive a training ECG signal from an external device.
  • the training electrocardiogram signal may be 12 standard electrocardiogram signals in which arrhythmia related diseases are recorded.
  • the memory 620 may store a neural network according to an embodiment.
  • the processor 630 may generate input data to be input to the neural network by applying preprocessing including normalized and zero-padding to the received training ECG data.
  • the processor 630 generates a second feature map for each class of a predetermined number based on the attention branch of the neural network from the training electrocardiogram data, and generates an attention map and a reference response map from the second feature map, A loss value may be calculated based on the map and the reference response map, and parameters of the neural network may be updated based on the calculated loss value.
  • the embodiments described above may be implemented by a hardware component, a software component, and/or a combination of a hardware component and a software component.
  • the apparatus, methods and components described in the embodiments may include, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate (FPGA) array), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions, may be implemented using a general purpose computer or special purpose computer.
  • the processing device may execute an operating system (OS) and a software application running on the operating system.
  • a processing device may also access, store, manipulate, process, and generate data in response to execution of the software.
  • OS operating system
  • a processing device may also access, store, manipulate, process, and generate data in response to execution of the software.
  • the processing device includes a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that can include For example, the processing device may include a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as parallel processors.
  • Software may comprise a computer program, code, instructions, or a combination of one or more thereof, which configures a processing device to operate as desired or is independently or collectively processed You can command the device.
  • the software and/or data may be any kind of machine, component, physical device, virtual equipment, computer storage medium or apparatus, to be interpreted by or to provide instructions or data to the processing device. , or may be permanently or temporarily embody in a transmitted signal wave.
  • the software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored in a computer-readable recording medium.
  • the method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium.
  • the computer readable medium may include program instructions, data files, data structures, etc. alone or in combination, and the program instructions recorded on the medium are specially designed and configured for the embodiment, or are known and available to those skilled in the art of computer software.
  • the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks.
  • - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like.
  • Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.
  • the hardware devices described above may be configured to operate as one or a plurality of software modules to perform the operations of the embodiments, and vice versa.

Landscapes

  • Health & Medical Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • Medical Informatics (AREA)
  • Public Health (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Veterinary Medicine (AREA)
  • Surgery (AREA)
  • Animal Behavior & Ethology (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Signal Processing (AREA)
  • Physiology (AREA)
  • Psychiatry (AREA)
  • Fuzzy Systems (AREA)
  • Databases & Information Systems (AREA)
  • Epidemiology (AREA)
  • Primary Health Care (AREA)
  • Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)

Abstract

일 실시예에 따른 프로세서에 의해 수행되는 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법은, 트레이닝 심전도(electrocardiogram, ECG) 데이터로부터 뉴럴 네트워크(Neural Network)의 어텐션 브랜치에 기초하여 미리 지정되는 개수의 클래스 별로 특징 맵(feature map)을 생성하는 단계, 특징 맵으로부터 어텐션 맵(attention map) 및 기준 응답 맵(reference response map)을 생성하는 단계, 어텐션 맵 및 기준 응답 맵에 기초하여 손실 값을 산출하는 단계, 및 산출된 손실 값에 기초하여 뉴럴 네트워크의 파라미터를 업데이트하는 단계를 포함할 수 있다.

Description

설명 가능한 다중 심전도 부정맥 진단 장치 및 방법
이하에서는, 심전도 데이터에 기초하여 심장 부정맥을 진단하는 기술에 관하여 설명한다.
심혈관 질환은 건강한 삶을 유지하는데 가장 큰 장애물 중 하나이며, 심장 관련 질환의 대부분은 심장 부정맥(cardiac arrhythmia, CA)로 설명될 수 있다. 심장 활동(cardiac activity)을 기록하는 여러 방법 중에서 전위를 측정하는 방법인 심전도(electrocardiogram, ECG)는 비침습적이고 효과적인 특성으로 인하여 가장 널리 사용된다. 심전도 데이터를 이용하여 심장 부정맥(CA)을 정확하게 감지하는 것은 심장 전문의에게 주요 과제 중 하나이다. 종래에는 심장 전문의의 심전도 신호 수동 해석에 의존하였으나, 심전도 데이터로부터 정확한 CA를 감지하기 위하여 기계 학습(machine learning) 및 딥러닝(deep learning)이 도입되었다.
기존의 심전도 데이터 분석 방법은, 인스턴스와 레이블 사이의 일대일 관계를 암시적으로 가정하여 분석을 수행함으로써, 실제로 환자가 가지는 복수의 CA 유형들을 모두 정확히 판단하지 못하는 문제점이 발생한다. 또한, 기존의 심전도 데이터를 분석하기 위한 CNN 기반의 모델들은 분류 결과에 대한 설명 가능성(explainability)이 모호한 문제점이 발생한다. 이른바, AI의 '블랙 박스(black box)'의 문제점이 발생한다. 그러나, 일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크는, 다중 레이블 학습(multilabel learning)이 용이하고, 임상의에게 해석 가능한 시각적 설명(visual explanation)을 제공하는 어텐션 맵(attention map)을 생성하기 때문에, 다중 레이블 분류(multilabel classification) 및 설명 가능성(explainability)의 문제를 해결할 수 있다.
일 실시예에 따른 프로세서에 의해 수행되는 심전도 진단 장치의 뉴럴 네트워크(Neural Network)를 트레이닝시키는 방법은, 트레이닝 심전도(electrocardiogram, ECG) 데이터로부터 뉴럴 네트워크의 어텐션 브랜치에 기초하여 미리 지정되는 개수의 클래스 별로 특징 맵(feature map)을 생성하는 단계, 상기 특징 맵으로부터 어텐션 맵(attention map) 및 기준 응답 맵(reference response map)을 생성하는 단계, 상기 어텐션 맵 및 상기 기준 응답 맵에 기초하여 손실 값을 산출하는 단계, 및 상기 산출된 손실 값에 기초하여 상기 뉴럴 네트워크의 파라미터를 업데이트하는 단계를 포함할 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법의 상기 어텐션 맵 및 기준 응답 맵을 생성하는 단계는, 상기 어텐션 브랜치에 의해 생성된 복수의 특징 맵들 중 모든 클래스에 대응하는 특징 맵으로부터 상기 어텐션 맵을 생성하는 단계, 및 상기 복수의 특징 맵들 중 참값 클래스(Ground Truth class)에 대응하는 특징 맵으로부터 상기 기준 응답 맵을 생성하는 단계를 포함할 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법의 상기 기준 응답 맵을 생성하는 단계는, 상기 복수의 특징 맵들 중 상기 참값 클래스에 대응하는 특징 맵의 평균을 상기 기준 응답 맵으로 생성하는 단계를 포함할 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법의 상기 손실 값을 산출하는 단계는, 상기 어텐션 맵 및 상기 기준 응답 맵 간의 차이를 산출하는 단계를 포함할 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법의 상기 차이를 산출하는 단계는, 상기 어텐션 맵 및 상기 기준 응답 맵 간의 유클리드 노름(Euclidean norm)을 산출하는 단계를 포함할 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법은, 상기 산출된 유클리드 노름에 가중치를 적용하는 단계를 포함할 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법의 상기 손실 값을 산출하는 단계는, 참값 레이블(Ground Truth label) 및 상기 어텐션 브랜치로부터 출력되는 클래스 스코어(class score) 사이의 제1 이진 교차 엔트로피(binary cross-entropy) 값을 산출하는 단계, 참값 레이블 및 상기 인지 브랜치로부터 출력되는 클래스 스코어 사이의 제2 이진 교차 엔트로피 값을 산출하는 단계, 및 상기 산출된 상기 어텐션 맵 및 상기 기준 응답 맵 간의 차이, 제1 이진 교차 엔트로피 값, 및 제2 이진 교차 엔트로피 값을 합산하여 상기 손실 값을 산출하는 단계를 포함할 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법은, 상기 트레이닝 심전도 데이터에 정규화(normalized) 및 제로 패딩(zero-padding)를 포함하는 전처리를 적용하여 상기 뉴럴 네트워크에 입력될 입력 데이터를 생성하는 단계를 더 포함할 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법의 상기 특징 맵을 생성하는 단계는, 트레이닝 심전도 데이터로부터 복수의 질병 분류 클래스들의 각각 별로 특징 맵을 추출하는 단계를 포함할 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 장치는, 어텐션 브랜치를 포함하는 뉴럴 네트워크를 저장한 메모리, 및 트레이닝 심전도 데이터로부터 뉴럴 네트워크의 어텐션 브랜치에 기초하여 미리 지정되는 개수의 클래스 별로 특징 맵을 생성하고, 상기 특징 맵으로부터 어텐션 맵 및 기준 응답 맵을 생성하며, 상기 어텐션 맵 및 상기 기준 응답 맵에 기초하여 손실 값을 산출하고, 상기 산출된 손실 값에 기초하여 상기 뉴럴 네트워크의 파라미터를 업데이트하는 프로세서를 포함할 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 장치의 프로세서는, 상기 어텐션 브랜치에 의해 생성된 복수의 특징 맵들 중 모든 클래스에 대응하는 특징 맵으로부터 상기 어텐션 맵을 생성하고, 상기 복수의 특징 맵들 중 참값 클래스(Ground Truth class)에 대응하는 특징 맵으로부터 상기 기준 응답 맵을 생성할 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 장치의 프로세서는, 상기 복수의 특징 맵들 중 상기 참값 클래스에 대응하는 특징 맵의 평균을 상기 기준 응답 맵으로 생성할 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 장치의 프로세서는, 상기 어텐션 맵 및 상기 기준 응답 맵 간의 차이를 산출할 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 장치의 프로세서는, 상기 어텐션 맵 및 상기 기준 응답 맵 간의 유클리드 노름(Euclidean norm)을 산출할 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 장치의 프로세서는, 상기 산출된 유클리드 노름에 가중치를 적용할 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 장치의 프로세서는, 참값 레이블(Ground Truth label) 및 상기 인지 브랜치로부터 출력되는 클래스 스코어(class score) 사이의 제1 이진 교차 엔트로피(binary cross-entropy) 값을 산출하고, 참값 레이블 및 상기 어텐션 브랜치로부터 출력되는 클래스 스코어 사이의 제2 이진 교차 엔트로피 값을 산출하며, 상기 산출된 상기 어텐션 맵 및 상기 기준 응답 맵 간의 차이, 제1 이진 교차 엔트로피 값, 및 제2 이진 교차 엔트로피 값을 합산하여 상기 손실 값을 산출할 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 장치의 프로세서는, 상기 트레이닝 심전도 데이터에 정규화(normalized) 및 제로 패딩(zero-padding)를 포함하는 전처리를 적용하여 상기 뉴럴 네트워크에 입력될 입력 데이터를 생성할 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 장치의 프로세서는, 트레이닝 심전도 데이터로부터 복수의 질병 분류 클래스들의 각각 별로 특징 맵을 추출할 수 있다.
도 1은 일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크(Neural Network)를 트레이닝 시키는 방법에 대하여 설명한다.
도 2는 일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크의 구조에 관하여 도시한다.
도 3은 일 실시예에 따른 뉴럴 네트워크의 유클리드 노름에 적용되는 가중치에 따른 분류 평가 결과를 도시한다.
도 4는 LBBB 및 STE로 진단된 심전도 테스트 데이터를 입력하는 경우에 생성되는 어텐션 맵을 도시한다.
도 5는 AF와 STD로 진단된 심전도 테스트 데이터를 입력하는 경우에 생성되는 어텐션 맵을 도시한다.
도 6은 일 실시예에 따라 심전도 진단 장치의 뉴럴 네트워크를 트레이닝 시키는 장치의 구성을 나타낸 블록도이다.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 구현될 수 있다. 따라서, 실제 구현되는 형태는 개시된 특정 실시예로만 한정되는 것이 아니며, 본 명세서의 범위는 실시예들로 설명한 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 실시예들을 첨부된 도면들을 참조하여 상세하게 설명한다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다.
다중 레이블 분류(Multilabel classification)
다중 클래스 학습(multiclass learning)이란 인스턴스(instance)를 여러 대상 레이블들 중 하나의 레이블에 매핑 시킴으로써 모델을 트레이닝 시킬 수 있다. 반면, 다중 레이블 학습(multilabel learning)에서는 인스턴스를 하나 이상의 대상 레이블에 매핑 시킴으로써 모델을 트레이닝 시킬 수 있다. 다중 레이블 분류는 예측된 레이블들을 관련성 있거나(relevnat), 관련성 없는(irrelevant) 집합으로 분류하므로, 분할(bipartitioning) 방법이 정의되어야 한다. 딥 러닝 네트워크(deep learning network)에서는, 클래스 확률(class probabilites)에 따라 레이블을 정렬할 수 있고, 분할에 대한 임계값(t)을 이용하여 레이블을 분류할 수 있다. 예를 들어, 분할에 대한 임계값(t)은 참값 레이블 일반적으로 0.5로 설정될 수 있으나, 이로 한정하지 않으며 다른 값으로 미리 설정될 수도 있다.
기존의 심전도 데이터 분석 방법은, 인스턴스(예를 들어, 심전도 데이터)와 레이블(예를 들어, 복수의 질병 분류 클래스들과 각각 대응됨) 사이의 일대일 관계를 가정하여 분류를 수행하기 때문에, 다중 레이블 분류에 적합하지 않았다. 예시적으로, 환자로부터 획득한 심전도 데이터로부터 딥러닝 네트워크를 이용하여 부정맥에 대한 8개의 질병(심방 세동, 방실 차단, 좌각차단, 우각차단, 심방 조기 수축, ST 분절 상승) 가능성이 예측될 수 있다. 정상 클래스(normal class)를 포함하여 8개의 질병 각각에 대하여 클래스가 생성되어, 총 9개의 클래스가 생성될 수 있다. 다시 말해, 기존의 심전도 데이터 분석 방법은, 환자로부터 획득하는 심전도 데이터에 대하여 하나의 질병에 대응하는 레이블이 할당되는 것이 암시적으로 가정되었다. 그러나, 실제로 환자는 복수의 질병을 가질 수 있으며, 환자로부터 획득한 심전도 데이터로부터 환자가 갖는 질병을 모두 정확히 분류할 필요가 있다. 일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크는 종래의 심전도 데이터 분석 방법과 비교하여, 다중 레이블 분류에 적합하여 입력되는 심전도 데이터를 복수의 레이블에 할당함으로써 환자가 갖는 복수의 질병들을 모두 정확히 판단할 수 있는 장점을 갖는다.
설명 가능한 AI(Explainable AI)
합성곱 신경망(Convolutional Neural Network, CNN)은 심전도 데이터의 질병 진단을 위한 효과적인 방법으로 알려져 있으나, 해석능력(interpretability) 또는 설명가능성(explainability)이 좋지 않아 임상 실습(clinical practice)에 적용되지 않았다. AI의 잘못된 해석성은 의학에 심각한 결과를 초래할 수 있기 때문에, 설명 가능성(explainability)는 매우 중요한 문제이다. 딥러닝의 알고리즘을 설명할 수 없다면 정확한 예측을 필요로하는 의료 AI 분야에서 실용화되기 어려우며, 설명가능성을 고려하지 않는다면 알고리즘이 잘못된 기준으로 학습될 가능성도 배제할 수 없다. 결국, 딥러닝을 이용한 심전도 데이터에 대한 CA 분류에서, 모델 결정(decision)의 재추적 가능성은 정확한 예측을 하는 것 만큼 중요하다.
응답 기반 방법(Response-based method)은 순방향 전파(forward propagation) 중 어텐션(attention)을 시각화(visualize)한다. 응답 기분 방법 중 하나의 예시로는, 이미지 분류 CNN에서 활성화 맵(activation map)을 추출하는 클래스 활성화 맵(class activation map, CAM)이 있다. CAM은 마지막 컨볼루션 레이어에 의해 생성된 압축된 공간 어텐션 또는 특징 맵들의 가중합을 나타낸다. 예측된 클래스 스코어는 해당 클래스와 관련된 각 단위의 가중치를 얻기 위하여 GAP(global-average pooling) 레이어에 다시 투영되며, 가중치를 GAP에 입력하고, 특징 맵들과 곱한 후 합산하여 CAM을 생성한다. CAM은 컴퓨터 비전에서 시각적 설명을 제공하는데 효과적이지만, 완전히 연결된 레이어(fully-connected layer)를 컨볼루션 레이어로 대체하기 때문에 모델의 분류 정확도가 떨어지는 단점이 있다.
이러한 한계를 해결하기 위하여, Grad-CAM이 도입되었다. Grad-CAM은 먼저, 이미지를 순방향 전파하고, 참값 레이블에 대한 확률 스코어를 계산한다. 역전파를 통하여, 스코어의 그라디언트(gradient)는 마지막 컨볼루션 레이어의 특징 맵과 관련하여 미분된다. 특징 맵들의 내적과 역전파 결과들이 합산되며, 중요도에 따라 특징 맵의 가중합을 반영한다고 가정한다. 최종 시각적 설명은 가중합을 렐루(Rectified Linear Unit, ReLU)를 통해 전달함으로써 생성한다.
종래의 어텐션 브랜치 네트워크(Attention Branch Network)는 합성곱 신경망(CNN) 내에서 어텐션 맵(attention map)을 활용하여 모델이 결정을 내리는 방법을 설명할 수 있는 뉴럴 네트워크의 모델 중 하나이다. 어텐션 브랜치 네트워크는 CNN 모델의 결정과 관계된 어텐션 맵(attention map)을 추출할 뿐만 아니라, 어텐션 맵을 사용하여 네트워크의 성능을 향상시킬 수도 있다. 이는, 어텐션 브랜치 네트워크에서 어텐션 추출을 위한 어텐션 브랜치(attention branch)를 도입함으로써 달성된다. 높은 레벨의 컨볼루션 레이어들은 이미지의 관련된 부분(relevant part)에 초점을 맞추도록 어텐션 맵은 처리된 입력과 결합한다. 어텐션 브랜치 네트워크는 이미지 분류에서 기존 CNN 모델을 능가하며, 시각적 설명(visual explanation)은 CAM 또는 Grad-CAM과 비슷하다. 어텐션 브랜치 네트워크의 장점은 트레이닝 중에 맵을 생성할 수 있다는 것에 있다. 반면, CAM 또는 Grad-CAM의 경우에서는 레이어 가중치 또는 역전파를 얻기 위하여 모델이 완전히 학습되는 것이 요구된다.
종래의 어텐션 브랜치 네트워크(ABN)는, 백본 네트워크(backbone network), 어텐션 브랜치(attention branch), 인지 브랜치(perception branch)를 포함할 수 있다.
입력 데이터의 공간적인 특징(spatial feature)을 추출하기 위한 백본 네트워크는, 입력 데이터를 입력 받아 특징 맵을 출력할 수 있다. 백본 네트워크는 컨볼루션 레이어를 포함하는 딥 뉴럴 네트워크 모델일 수 있다. 컨볼루션 레이어는 필터를 이용하여 컨볼루션 연산을 레이어 입력에 적용할 수 있다. 뉴럴 네트워크는 입력 레이어, 히든 레이어 및 출력 레이어를 포함한다. 입력 레이어, 히든 레이어 및 출력 레이어는 각각 복수의 노드들을 포함한다. 히든 레이어는 다양한 수의 레이어들을 포함할 수 있다. 뉴럴 네트워크에서 출력 레이어를 제외한 레이어들의 노드들은 출력 신호를 전송하기 위한 링크들을 통해 다음 레이어의 노드들과 연결될 수 있고, 링크들은 레이어들을 다양한 구조로 연결할 수도 있다. 히든 레이어에 포함된 각각의 노드에는 이전 레이어에 포함된 노드들의 가중된 입력들(weighted inputs)에 관한 활성 함수(activation function)의 출력이 입력될 수 있다. 가중치는 뉴럴 네트워크의 파라미터로 지칭될 수 있다. 활성 함수는 시그모이드(sigmoid), 하이퍼볼릭 탄젠트(hyperbolic tangent; tanh) 및 렐루(rectified linear unit; ReLU)를 포함할 수 있고, 활성 함수에 의해 뉴럴 네트워크가 비선형성을 가질 수 있다.
백본 네트워크로부터 추출된 특징 맵은 어텐션 브랜치(attention branch)로 입력될 수 있다. 어텐션 브랜치(attention branch)는 어텐션 브랜치 네트워크의 결정(decision)에 대한 설명 가능성을 제공하는 어텐션 맵(attention map)을 생성할 수 있다. 또한, 어텐션 브랜치는 특징 맵에 기초해서 어텐션 브랜치에 대응하는 클래스 스코어를 산출하는 레이어를 포함할 수 있다.
인지 브랜치(perception branch)는 특징 맵 및 어텐션 브랜치로부터 생성된 어텐션 맵에 기초해서 인지 브랜치에 대응하는 클래스 스코어를 산출하는 레이어를 포함할 수 있다.
종래의 어텐션 브랜치 네트워크는, 어텐션 브랜치로부터 산출된 클래스 스코어 및 인지 브랜치로부터 산출된 클래스 스코어에 기초하여 손실 값이 산출되며, 산출된 손실 값에 기초하여 어텐션 브랜치 네트워크의 파라미터가 업데이트되는 뉴럴 네트워크 구조이다. 트레이닝 데이터에 의하여 트레이닝된 어텐션 브랜치 네트워크는, 입력 데이터에 대응하여 각 클래스에 대응하는 확률을 출력할 수 있다.
반면, 일 실시예에 따른 뉴럴 네트워크는, 기존의 어텐션 브랜치 네트워크와 손실 함수에서 차이가 나타난다. 일 실시예에 따른 뉴럴 네트워크는 어텐션 브랜치를 포함하는 뉴럴 네트워크다. 일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크는, 어텐션 브랜치로부터 산출되는 클래스 스코어, 인지 브랜치로부터 산출되는 클래스 스코어 뿐만 아니라, 어텐션 맵 및 기준 응답 맵의 차이에 기초하여 손실 값을 산출할 수 있다. 후술하겠으나, 일 실시예에 따른 뉴럴 네트워크는, 기준 응답 맵을 사용하여 다중 레이블 분류 성능을 보다 향상시킬 수 있으며, 설명가능성 또한 어텐션 가시화(attention visulization)을 통하여 제공할 수 있다. 이하에서는, 일 실시예에 따른 뉴럴 네트워크의 구조에 관하여 보다 구체적으로 설명한다.
도 1은 일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크(Neural Network)를 트레이닝 시키는 방법에 대하여 설명한다.
단계(101)에서는, 환자로부터 트레이닝 심전도(electrocardiogram, ECG) 데이터를 입력 받아 전처리하는 과정을 설명한다.
예시적으로, 환자로부터 획득한 12개의 리드(lead)로 구분되는 심전도 데이터를 트레이닝 심전도 데이터로 사용할 수 있다. 일 실시예에 따른 뉴럴 네트워크는, 획득한 트레이닝 심전도 데이터에 전처리(post-processing)를 적용하여 백본 네트워크로 입력할 수 있다. 트레이닝 심전도 데이터에 대하여 각 리드 마다 백본 네트워크에 입력되는 데이터의 길이가 균일하도록 제로 패딩(zero-padding)의 전처리를 적용할 수 있다. 또한, 트레이닝 심전도 데이터에 정규화(normalized)의 전처리를 적용하여 입력 데이터의 범위를 조절할 수 있다.
단계(102)에서는 전처리된 트레이닝 심전도 데이터로부터 뉴럴 네트워크(Neural Network)의 어텐션 브랜치에 기초하여 미리 지정되는 개수의 클래스 별로 특징 맵(feature map)을 생성할 수 있다.
심전도 데이터로부터 추출 가능한 부정맥에 대한 복수의 질병 마다 클래스를 생성할 수 있다. 일 실시예에 따른 뉴럴 네트워크는, 어텐션 브랜치에서 각 클래스 별로 컨볼루션 레이어 및 렐루(ReLU)를 거쳐 특징 맵을 생성할 수 있다. 일 실시예에 따른 뉴럴 네트워크는, 입력되는 심전도 데이터를 복수의 레이블에 할당하는 다중 레이어 분류(multilabel classification)를 위하여, 각 클래스 별로 특징 맵을 생성한다.
단계(103)에서는 특징 맵으로부터 어텐션 맵(attention map) 및 기준 응답 맵(reference response map)을 생성할 수 있다.
일 실시예에 따른 뉴럴 네트워크는, 클래스 별로 생성된 특징 맵에 기초하여 어텐션 브랜치의 설명 가능성을 제공하는 어텐션 맵(attention map)을 생성할 수 있다. 어텐션 브랜치에 의해 생성된 복수의 특징 맵들 중 모든 클래스에 대응하는 특징 맵으로부터 어텐션 맵을 생성할 수 있다. 또한, 복수의 특징 맵들 중 참값 클래스(Ground Truth class)에 대응하는 특징 맵으로부터 기준 응답 맵을 생성할 수 있다. 본 명세서에서 참값 클래스란(Ground Truth class), 일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크를 트레이닝 시키는 단계에서, 환자가 갖는 부정맥 질병에 대응하는 클래스를 나타낼 수 있다.
단계(104)에서는 생성된 어텐션 맵 및 상기 기준 응답 맵에 기초하여 손실 값을 산출할 수 있다.
기존의 어텐션 브랜치 네트워크에서는, 손실 값은 어텐션 브랜치로부터 산출되는 클래스 스코어 및 인지 브랜치로부터 산출되는 클래스 스코어에만 기초하여 산출된다. 그러나, 일 실시예에 따른 뉴럴 네트워크에서의 손실 값은, 어텐션 맵 및 기준 응답 맵의 차이에 대응하는 값을 손실 값에 부가함으로써 다중 클래스 분류가 보다 향상될 수 있다.
단계(105)에서는 산출된 손실 값에 기초하여 뉴럴 네트워크의 파라미터를 업데이트 할 수 있다.
도 2에서는 각 단계에 대하여 보다 구체적으로 설명한다.
도 2는 일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크의 구조에 관하여 도시한다.
일 실시예에 따른 뉴럴 네트워크는 백본 네트워크(backbone network)(210), 어텐션 브랜치(attention branch)(220), 및 인지 브랜치(perception branch)(230)의 3가지 주요 모듈로 구성된다. 뉴럴 네트워크는 어텐션 맵(attention map)을 생성함으로써, 뉴럴 네트워크의 결정(decision)에 대한 시각적 설명(visual explanation)을 제공할 뿐만 아니라, 뉴럴 네트워크의 분류 성능이 향상된다.
이하에서는, 일 실시예에 따른 뉴럴 네트워크는 환자로부터 심전도 데이터를 획득하여 트레이닝 데이터로 이용할 수 있다. 트레이닝 데이터는, 트레이닝 입력 및 트레이닝 출력의 쌍을 의미하며, 트레이닝 출력은 참값 레이블을 지시할 수 있다. 일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크에서는, 획득한 트레이닝 심전도 데이터(251)에 전처리를 적용하여 백본 네트워크(210)에 전처리된 데이터를 입력할 수 있다. 구체적으로, 트레이닝 심전도 데이터(251)에 정규화(normalized) 및 제로 패딩(zero-padding)을 포함하는 전처리를 적용할 수 있다.
예시적으로, 환자로부터 측정되는 심전도 데이터는 총 12개의 리드(lead)로 구분될 수 있으며, 12개의 리드로 구분되는 심전도 데이터를 트레이닝 심전도 데이터(251)로 사용할 수 있다. 12개의 리드는 I, II, III, aVR, aVL, aVF, V1, V2, V3, V4, V5, V6의 심전도를 나타낼 수 있으며, 각 표준 심전도는 환자로부터 측정 부위를 달리함으로써 획득할 수 있다.
일 실시예에 따른 뉴럴 네트워크는 획득한 트레이닝 심전도 데이터(251)에 대하여 전역 평균(global mean)을 차감하고 전역 표준 편차(global standard deviation)로 나누어 정규화(normalized)함으로써 전처리를 적용할 수 있다.
또한, 일 실시예에 따른 어텐션 뉴럴 네트워크는, 컨볼루션 레이어를 포함하는 뉴럴 네트워크인 백본 네트워크(210)에 입력되는 데이터의 길이를 균일하게 하기 위하여 제로 패딩(zero-padding)의 전처리 과정을 거칠 수 있다. 예시적으로, 획득한 트레이닝 심전도 데이터(251)의 리드 별로, 72,000 타임 포인트(time-point)로 정의된 기준 시간에 맞추어 전처리할 수 있다. 즉, 트레이닝 심전도 데이터의 리드 마다 획득된 데이터가 기준 시간에 미치지 못하는 경우, 기준 시간의 길이가 되도록 획득된 데이터 앞에 '0'을 채울 수 있다.
다시 말해, 트레이닝 심전도 데이터(251)에 정규화 과정 및 제로 패딩(zero-padding)의 과정의 전처리를 적용할 수 있다. 예시적으로, 백본 네트워크(210)에 대한 입력(xi)의 크기가 72,000(time-point) × 12(lead)가 되도록 트레이닝 심전도 데이터를 전처리 할 수 있다.
백본 네트워크는 하나 이상의 컨볼루션 레이어(convolution layer)로 구성될 수 있다. 여기서는, 백본 네트워크로 4개의 컨볼루션 레이어를 사용하는 것을 예시적으로 설명한다. 예를 들어, 아래 표 1과 같은 4개의 컨볼루션 레이어가 사용될 수 있다.
Figure PCTKR2021016001-appb-img-000001
예시적으로, 각 컨볼루션 레이어 후에는 배치 정규화가 이루어지며, 모든 컨벌루션 레이어 및 맥스 풀링(Max pooling) 레이어의 커널 크기(kernel dimension)는 3×3일 수 있다. 컨볼루션 레이어의 경우 스트라이드(stride)는 1로 설정될 수 있고, 맥스 풀링 레이어의 경우 스트라이드는 3으로 설정될 수 있다.
백본 네트워크는 입력되는 트레이닝 심전도 데이터로부터 중요한 특징만 남도록 공간 정보(spatial information)의 특징을 추출하여 제1 특징 맵(g(xi), 252)을 생성할 수 있다.
제1 특징 맵(252)은 심층 특성을 효율적으로 트레이닝하는 어텐션 브랜치(220)로 전달 될 수 있다. 제1 특징 맵(252)은 어텐션 브랜치(220)의 잔여 함수(residual funciton, 203)로 입력될 수 있다. 잔여 함수(203)은 3개의 연속된 컨볼루션 레이어로 구성될 수 있다. 예를 들어, 64개 필터의 1×1 컨볼루션 레이어, 64개 필터의 3Х3 컨볼루션 레이어, 256개 필터의 1×1 컨볼루션 레이어로 구성될 수 있다. 제1 특징 맵(252)에 대한 잔여 함수(203)의 적용(F(g((xi)))은 잔여 매핑(residual mapping)을 위하여 제1 특징 맵(252)과 다시 합산(F(g((xi))+g(xi))될 수 있다.
잔여 함수(203)에 대한 출력은 배치 정규화(Batch normalization)(205)를 거친 후에, 제1 컨볼루션 레이어(205)에 입력 될 수 있다. 제1 컨볼루션 레이어(205)는 개별 클래스의 특징 맵으로 해석될 수 있는, h×w 차원의 특징 맵을 K개 생성할 수 있다. 다시 말해, 제1 컨볼루션 레이어(205)는 K×h×w 맵을 출력할 수 있다. 여기서, h, w, K는 1 이상의 자연수를 나타낼 수 있으며, K는 일 실시예에 따른 뉴럴 네트워크에서 미리 지정되는 클래스의 개수를 나타낼 수 있다.
제1 컨볼루션 레이어(205)에 의하여 개별 클래스에 대응하는 특징 맵이 출력될 수 있고, 출력된 특징 맵은 활성함수를 통과할 수 있다. 활성 함수는 양수 값 만을 추출하는 렐루(Rectified Linear Unit, ReLU)(206)를 나타낼 수 있다. 결국, 제1 컨볼루션 레이어(205)를 통하여 추출된 h×w 차원의 K개의 특징 맵은 렐루(ReLU, 206)에 입력되어 양수 값 만이 추출될 수 있다. 이하 명세서에서는, 각각의 클래스 별로 렐루(206)를 거쳐 출력되는 K개의 특징 맵을 제2 특징 맵(Ck)이라 한다. 예를 들어, C1는 제2 특징 맵 중 제1 클래스에 대응하는 특징 맵을, C2는 제2 특징 맵 중 제2 클래스에 대응하는 특징 맵을, Ck는 제2 특징 맵 중 제k 클래스에 대응하는 특징 맵을 의미할 수 있다. 정리하면, 트레이닝 심전도 데이터(251)로부터 어텐션 브랜치(220)에 기초하여 미리 지정되는 개수의 클래스 별로 제2 특징 맵을 생성할 수 있다.
제2 특징 맵으로부터 어텐션 맵(M(xi))(231) 및 기준 응답 맵(R(xi), reference response map)(232)을 생성할 수 있다. 어텐션 브랜치에 의해 생성된 복수의 제2 특징 맵들 중 모든 클래스에 대응하는 제2 특징 맵으로부터 어텐션 맵(231)을 생성할 수 있다. 또한, 복수의 제2 특징 맵들 중 참값 클래스(Ground Truth class)에 대응하는 제2 특징 맵(270)으로부터 기준 응답 맵(232)을 생성할 수 있다.
먼저, 제2 특징 맵으로부터 어텐션 브랜치(220)에 대한 어텐션 맵(231)을 생성하는 방법을 설명한다. 첫째로, 제2 특징 맵이 1×1×1 컨볼루션 레이어(209) 및 배치 정규화(211)를 거쳐 개별 클래스에 대응하는 K개의 제2 특징 맵에 대한 추출 값을 산출할 수 있다. 이어서, 산출된 추출 값에 시그모이드 함수(212)를 적용하여 1×h×w의 차원을 가지는 어텐션 맵(231)을 생성할 수 있다. 즉, 어텐션 맵(231)은 복수의 제2 특징 맵들 중 모든 클래스에 대응하는 제2 특징 맵에 기초하여 생성될 수 있으며, 어텐션 맵(231)은 개별 클래스에 대응하는 제2 특징 맵을 모두 반영할 수 있다.
반면, 기준 응답 맵(232)은 모든 클래스가 아닌, 참값 클래스(Ground Truth class)에 대응하는 제2 특징 맵에 기초하여 생성될 수 있다. 하기 수학식 1에서는, 복수의 제2 특징 맵들 중 참값 클래스에 대응하는 제2 특징 맵으로부터 기준 응답 맵(232)을 생성하는 방법을 설명한다.
Figure PCTKR2021016001-appb-img-000002
여기서, R은 기준 응답 맵(232), Nmulti는 참값 클래스의 수, I(·)는 I(true) = 1, I(false) = 0을 나타내는 인디케이터(indicator)를 의미한다.
다시 말해, 일 실시예에 따른 뉴럴 네트워크에서는 복수의 특징 맵들 중 참값 클래스에 대응하는 어텐션 맵의 평균을 기준 응답 맵(232)으로 생성할 수 있다. 기준 응답 맵(232)은 참값 클래스(Ground Truth class)에 대응하는 어텐션 맵의 평균이므로, 모든 참값 클래스의 특징 맵을 반영한다고 할 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법에 있어서, 제2 특징 맵으로부터 생성된 어텐션 맵(231) 및 기준 응답 맵(232)에 기초하여 손실 값을 산출할 수 있다. 구체적으로, 일 실시예에 따른 뉴럴 네트워크는 참값 레이블(Ground Truth label) 및 어텐션 브랜치로부터 출력되는 제1 클래스 스코어(class score) 사이의 제1 이진 교차 엔트로피(binary cross-entropy) 값을 산출하고, 참값 레이블 및 인지 브랜치로부터 출력되는 제2 클래스 스코어 사이의 제2 이진 교차 엔트로피 값을 산출할 수 있다. 일 실시예에 따른 뉴럴 네트워크는, 산출된 어텐션 맵(231) 및 기준 응답 맵(232) 간의 차이, 제1 이진 교차 엔트로피 값, 및 제2 이진 교차 엔트로피 값을 합산함으로써 손실 값을 산출할 수 있다. 일 실시예에 따르면, 제1 이진 교차 엔트로피 값, 제2 이진 교차 엔트로피 값, 어텐션 맵(231) 및 기준 응답 맵(232) 간의 유클리드 거리(Euclidean distance)를 합산함으로써 손실 값을 산출할 수 있다. 유클리드 거리는, 예를 들어, 유클리드 노름(Euclidean norm)일 수 있다. 이하에서는, 손실 값을 산출하는 과정에 대하여 보다 구체적으로 설명한다.
렐루(206)를 거쳐 추출된 제2 특징 맵은 각각의 클래스에 대한 공간적 표현(spatial representations)을 반영하기 위하여, 제2 특징 맵을 GAP(general average pooling)(207) 및 시그모이드(sigmoid)(208)를 거쳐 각 레이블 마다 제1 클래스 스코어(class score)를 추출할 수 있다. GAP(207)는 추출된 제2 특징 맵에 대하여 개별적으로 평균화(average)하는 레이어이며, 시그모이드(208)는 GAP(207)로부터 추출된 값을 정규화하여 각 레이블에 대한 제1 클래스 스코어(233)를 산출하는 레이어를 의미한다. 아래 수학식 2에서는, 각 레이블에 대한 제1 클래스 스코어(233)를 산출하는 과정을 나타낸다.
Figure PCTKR2021016001-appb-img-000003
여기서, Sk att는 k번째 레이블에 대한 제1 클래스 스코어를 나타내며, (1,j)는 n번째 레이블에 대응하는 제2 특징 맵(Cn)에서의 특정 위치 값을 나타내며, σ는 시그모이드 함수를 나타낸다.
또한, 어텐션 브랜치(220)로부터 추출되는 어텐션 맵(231)은 어텐션 메커니즘(attention mechanism)(240)에 입력될 수 있다. 어텐션 메커니즘(240)에서는 제1 특징 맵(252) 및 어텐션 맵(231)을 입력 받아 제3 특징 맵(g'(xi))(253)을 추출할 수 있다. 아래 수학식 3에서는, 어텐션 메커니즘(240)을 통하여 제3 특징 맵(253)을 추출하는 과정을 설명한다.
Figure PCTKR2021016001-appb-img-000004
제3 특징 맵(253)는 인지 브랜치(perception branch)(230)의 잔여 함수(213)에 입력 될 수 있다. 잔여 함수(213)의 출력은 GAP를 거쳐 제3 특징 맵이 평균화되며, GAP를 거쳐 512 유닛(unit)을 갖는 컨볼루션 레이어에 도달한다. 512개의 유닛들은 각 클래스와 대응되는 K개의 유닛이 있는 레이어와 완전히 연결(fully-connected)되며, K개의 유닛은 각각 시그모이드 함수로 활성화되어 개별 클래스에 대한 제2 클래스 스코어(234)를 산출할 수 있다. 아래 수학식 4에서는, 인지 브랜치(230)을 통하여 각 레이블에 대응하는 제2 클래스 스코어(234)를 산출하는 과정을 설명한다.
Figure PCTKR2021016001-appb-img-000005
정리하면, 일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크는 어텐션 브랜치(220)로부터 제1 클래스 스코어(233)를 산출할 수 있고, 인지 브랜치(230)로부터 제2 클래스 스코어(234)를 산출할 수 있다. 뉴럴 네트워크의 손실 함수(J(xi))(290)는 참값 레이블 및 어텐션 브랜치로부터 출력되는 제1 클래스 스코어 사이의 제1 이진 교차 엔트로피 값, 참값 레이블 및 어텐션 브랜치로부터 출력되는 제2 클래스 스코어 사이의 제2 이진 교차 엔트로피 값, 및 어텐션 맵(231) 및 기준 응답 맵(232) 사이의 유클리드 노름(Euclidean norm)에 기초하여 산출될 수 있다. 손실 함수(J(xi))(290)는 제1 이진 교차 엔트로피 값, 제2 이진 교차 엔트로피 값, 어텐션 맵(231) 및 기준 응답 맵(232) 간의 유클리드 거리(Euclidean distance)를 합산함으로써 산출될 수 있다. 또한, 손실 함수(J(xi))(290)는 제1 이진 교차 엔트로피 값, 제2 이진 교차 엔트로피 값, 및 어텐션 맵(231) 및 기준 응답 맵(232) 사이의 유클리드 거리에 가중치를 적용한 값을 합산함으로써 산출될 수 있다. 손실 함수(J(xi))(290)는, 아래 수학식 5와 같이 표현될 수 있다.
Figure PCTKR2021016001-appb-img-000006
여기서, Latt(yi, Satt)는 어텐션 브랜치(220)에 대한 이진 교차 엔트로피 값을 나타내며, Lper(yi, Sper)는 인지 브랜치(230)에 대한 이진 교차 엔트로피 값을 나타내며, Lmap(xi)은 어텐션 맵(231) 및 기준 응답 맵(232) 사이의 유클리드 노름(Euclidean norm)을 나타낸다. γ는 산출된 유클리드 노름에 적용되는 가중치를 나타낸다. Lmap(xi)은 아래 수학식 6과 같이 표현될 수 있다.
Figure PCTKR2021016001-appb-img-000007
상술한 수학식 5에서, Latt(yi, Satt), Lper(yi, Sper)는 다중 레이블을 이용하는 일 실시예에 따른 뉴럴 네트워크에서, 입력되는 심전도 데이터가 지시하는 하나 이상의 질병들에 대한 정확한 예측을 하기 위한 목적과 관련된다. Lmap(xi) 항은 분류를 위한 종합적인 시각적 설명(comprehensive visual explanation)을 생성하기 위한 목적과 관련된다. 또한, 유클리드 노름에 적용되는 가중치를 의미하는 γ는 두 목적의 중요성의 균형을 맞추기 위한 배율 인수를 나타낸다. 예를 들어, 그러나 한정되지 않게, γ는 0.001 내지 10 사이의 값을 가질 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크는 산출된 손실 값에 기초하여 뉴럴 네트워크의 파라미터를 업데이트 할 수 있다. 수학식 5를 참조하면, 일 실시예에 따른 뉴럴 네트워크는 어텐션 브랜치로부터 출력되는 클래스 스코어와 참값 레이블 간의 이진 교차 엔트로피 값 및 인지 브랜치로부터 출력되는 클래스 스코어와 참값 레이블 간의 이진 교차 엔트로피 값을 최소화하는 방향, 및 어텐션 브랜치에서 생성된 어텐션 맵과 참값 클래스에 대응하는 특징 맵으로부터 생성된 기준 응답 맵 사이의 유클리드 거리를 최소화하는 방향으로 모델의 파라미터를 업데이트 할 수 있다.
일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크는 산출된 손실 값에 기초하여 뉴럴 네트워크에 포함된 어텐션 브랜치 및 인지 브랜치의 파라미터를 함께 업데이트 및 트레이닝 시킬 수 있다.
정리하면, 일 실시예에 따른 뉴럴 네트워크는 종래의 뉴럴 네트워크와는 차별되게, 어텐션 브랜치에서 생성되는 어텐션 맵을 참값 레이블의 특성을 모두 반영한 기준 응답 맵과 거리를 최소화 시키는 방향으로 트레이닝되기 때문에, 뉴럴 네트워크의 설명 가능성 및 다중 레이블 분류 문제 모두를 향상시킬 수 있다. 다시 말해, 일 실시예에 따른 뉴럴 네트워크는 어텐션 브랜치에서 생성되는 어텐션 맵을 참값 레이블의 특성을 모두 반영하도록 파인 튜닝(fine-tuning) 한다. 따라서, 일 실시예에 따른 뉴럴 네트워크에서, 뉴럴 네트워크의 결정에 대한 설명 가능성을 제공하는 어텐션 맵이 참값 레이블의 특성을 반영하는 기준 응답 맵과 가까워지기 때문에 뉴럴 네트워크의 설명 가능성을 향상시킬 수 있다. 또한, 기준 응답 맵은 참값 레이블에 대응하는 특징 값들을 평균화한 것으로 다중 레이블의 특성을 반영하고 있기 때문에, 일 실시예에 따른 뉴럴 네트워크는 다중 레이블의 특성을 반영한 어텐션을 생성할 수 있다. 더 나아가, 일 실시예에 따른 뉴럴 네트워크는, 어텐션 맵 및 참값 레이블의 특성을 모두 반영한 기준 응답 맵 사이의 거리를 최소화하는 방향으로 트레이닝 되기 때문에, 후술하겠으나, 다중 레이블 분류 성능에서도 기존의 뉴럴 네트워크와 비교하여 향상된다.
이하에서는, 일 실시예에 따른 심전도 진단 장치의 뉴럴 네트워크의 분류 성능 결과에 대하여 설명한다.
일 실시예에 따른 모델 분류 성능 평가에 사용되는 트레이닝 심전도 데이터는 12개의 리드(I, II, III, aVR, aVL, aVF, V1, V2, V3, V4, V5, V6)에 대한 6,877개의 심전도 기록(recording)일 수 있다. CA는 정상 클래스(normal class) 및 8개의 하위 유형으로 나뉠 수 있다. 예를 들어, 8개의 하위 유형은 심방 세동(atrial fibrillation, AF), 1도 방실 차단(first degree atrioventricular block, I-AVB), 좌각차단(LBBB), 우각차단(RBBB), 심방 조기 수축(prematrue atrial contraction, PAC), ST분절 상승(ST-segment elevated, STE)일 수 있다. 심전도 기록은 500Hz의 주파수에서 6초에서 144초의 범위로 샘플링될 수 있으며, 6877개의 기록은 76:4:20의 비율로 분할되어 각각 학습(training), 검증(validation), 및 테스트의 하위 집합(test subset)으로 나뉠 수 있다. 아래 표 2는 예시적인 심전도 트레이닝 데이터를 나타낸다.
Figure PCTKR2021016001-appb-img-000008
네트워크 분류 성능 평가 단계에서는, 어텐션 브랜치로부터 출력되는 클래스 스코어(Satt)와 인지 브랜치로부터 출력되는 클래스 스코어(Sper)를 이진 교차 엔트로피 함수에서 참값 레이블(yi)과 비교하기 전에, 0.5의 임계 상수로 분할한다. 다시 말해, 특정 클래스에 대한 클래스 스코어가 0.5보다 큰 경우는 1로 클래스 스코어를 재정의하고, 클래스 스코어가 0.5 이하인 경우는 0으로 클래스 스코어를 재정의한다. 모델의 분류 성능을 측정하기 위하여, 하기 수학식 7과 같이 정의된 F1 스코어(F1 score)의 평가 방법을 사용할 수 있다.
Figure PCTKR2021016001-appb-img-000009
수학식 7에서, Precision 및 Recall은 아래 수학식 8 및 수학식 9과 같이 정의 될 수 있다.
Figure PCTKR2021016001-appb-img-000010
Figure PCTKR2021016001-appb-img-000011
여기서, TP는 True Positive를 나타내며, FP는 False Positive를 나타내고, FN은 False Negative를 나타낼 수 있다.
종래에는, 다중 레이블 분류(multilabel classification)에서 모델이 얼마나 분류를 잘 수행되는지 측정하기 위하여, F1 스코어(F1 score)의 평가 방법을 사용하였다. 그러나, 종래의 널리 알려진 평가 방법인 F1 스코어(F1 score)의 평가 방법은 모델이 심전도 데이터로부터 복수의 참값 클래스들 중 하나의 클래스를 올바르게 예측한 경우에도 해당 모델에 점수가 일부 부여된다. 반면, 하위 집합 정확도(subset accuracy)의 평가 방법은, 모델이 복수의 참값 클래스들 중 일부 클래스를 올바르게 예측한 경우에도 모든 참값 클래스를 정확히 예측하지 않는 경우에는 틀리게 예측된 것으로 평가하기 때문에, 하위 집합 정확도(subset accuracy)가 다중 레이블 분류의 평가에 보다 엄격하고 정확하다.
도 3은 일 실시예에 따른 뉴럴 네트워크의 유클리드 노름에 적용되는 가중치에 따른 분류 평가 결과를 도시한다.
그래프(300)는 손실 함수(290)에 의하여 파라미터가 업데이트되는 뉴럴 네트워크에서, 어텐션 맵 및 기준 응답 맵 간의 유클리드 노름에 적용되는 가중치에 따라 다중 레이블 분류(classification)의 정확도를 F1 스코어에 의하여 평가한 그래프이다. 그래프(300)을 참조하면, 가중치(γ)가 0.01인 경우에, 일 실시예에 따른 뉴럴 네트워크의 F1 스코어가 가장 높게 나타난다.
이하, 표 3은 세가지 모델(제1 모델, 제2 모델, 도 2에 따른 모델)의 분류 성능을 요약한다.
Figure PCTKR2021016001-appb-img-000012
제1 모델은 12채널 다중 레이블 심전도 데이터 분류를 위한 Chen et. al(2020) 모델이다. 제2 모델은, 종래의 어텐션 브랜치 네트워크로, 어텐션 브랜치에 대한 이진 교차 엔트로피 값 및 인지 브랜치에 대한 이진 교차 엔트로피 값만을 기초로 손실 함수가 산출되는 네트워크이다. 도 2에 따른 모델은 일 실시예에 따른 뉴럴 네트워크로, 어텐션 브랜치에 대한 이진 교차 엔트로피 값, 인지 브랜치에 대한 이진 교차 엔트로피 값, 및 어텐션 맵 및 기준 응답 맵 사이의 유클리드 거리에 기초하여 손실 함수가 결정되는 네트워크이다.
F1 스코어를 사용하여 전체 분류 정확도(overall classification accuracy)를 비교하는 경우, 일 실시예에 따른 뉴럴 네트워크가 0.812로 가장 높은 점수로 평가된다. 단일 및 다중 레이블 데이터를 병합하여 전체 하위 집합 정확도(Subset accuracy)를 평가하는 경우, 제1 모델은 73.5%의 성능으로 나타난다. 단일 레이블 데이터로 하위 집합 정확도(subset accuracy-single)를 평가하는 경우, 제1 모델은 77.4%의 성능으로 나타난다. 그러나, 다중 레이블 데이터로 하위 집합 정확도(subset accuracy-multi)를 평가하는 경우, 일 실시예에 따른 뉴럴 네트워크가 84.6%의 정확도를 가지며, 다른 두 모델 보다 성능이 훨씬 뛰어난 것으로 평가된다.
종래의 어텐션 브랜치 네트워크 모델인 제2 모델에 따라 심전도 데이터의 질병을 분류하는 경우, 제1 모델과 비교하여 다중 레이블 하위 집합 정확도(subset-accuracy-multi)가 향상된다. 그러나, 일 실시예에 따른 뉴럴 네트워크에 따라 심전도 데이터의 질병을 분류하는 경우, 하위 집합 정확도 및 F1 스코어의 개선이 나타날 뿐만 아니라, 9개의 레이블 중 5개에서 가장 높은 F1 스코어가 나타나는 것을 확인할 수 있다.
도 4 및 도 5는 일 실시예에 따른 뉴럴 네트워크 및 종래의 어텐션 브랜치 네트워크에 심전도 테스트 데이터를 입력했을 때 생성되는 어텐션 맵(attention map)을 도시한다. 도 4 및 도 5의 어텐션 맵에서는 어텐션이 가시화(visualization)되며, 어텐션이란 입력 데이터의 각 부분이 알고리즘의 결정에 나타내는 기여도를 수치화한 것을 의미한다.
일 실시예에 따른 뉴럴 네트워크는 어텐션 브랜치에서 생성되는 어텐션 맵을 참값 레이블의 특성을 모두 반영한 기준 응답 맵과 거리를 최소화 시키는 방향으로 트레이닝되기 때문에, 뉴럴 네트워크의 설명 가능성 및 다중 레이블 분류 문제 모두를 향상시킬 수 있다. 다시 말해, 일 실시예에 따른 뉴럴 네트워크는 어텐션 브랜치에서 생성되는 어텐션 맵에 참값 레이블의 특성을 모두 반영하도록 파인 튜닝(fine-tuning)되므로, 일 실시예에 따른 뉴럴 네트워크의 어텐션 맵은 동시에 발생하는 CA 유형들을 캡처하는데 효과적이다. 도 4 및 도 5는 설명 가능성(explainability)을 평가하기 위하여 모델에서 획득한 어텐션 맵(attention map)을 가시화(visualization)한 것이다.
도 4는 LBBB 및 STE로 진단된 심전도 테스트 데이터를 입력하는 경우에 생성되는 어텐션 맵을 도시한다.
어텐션 맵(401)은 일 실시예에 따른 뉴럴 네트워크에 LBBB 및 STE로 진단된 심전도 테스트 데이터를 입력하는 경우에 생성되는 어텐션 맵을 나타낸다. 어텐션 맵(402)는 종래의 어텐션 브랜치 네트워크에 LBBB 및 STE로 진단된 심전도 테스트 데이터를 입력하는 경우에 생성되는 어텐션 맵을 나타낸다. 어텐션 맵(401) 및 어텐션 맵(402)는 모두 약 12.5초 근처의 LBBB의 주요 지표인 V1의 QS 콤플렉스(complex)를 잘 포착한다. 그러나, 일 실시예에 따른 뉴럴 네트워크의 어텐션 맵(401)은 V1 내지 V6에서 약 8초 근처에서 관찰되는 STE 증상에도 주의를 기울이지만, 제2 모델의 어텐션 맵(402)은 해당 부분에 덜 집중하는 것이 확인된다.
도 5는 AF와 STD로 진단된 심전도 테스트 데이터를 입력하는 경우에 생성되는 어텐션 맵을 도시한다.
어텐션 맵(501)은 일 실시예에 따른 뉴럴 네트워크에 AF 및 STD로 진단된 심전도 테스트 데이터를 입력하는 경우에 생성되는 어텐션 맵을 나타낸다. 어텐션 맵(502)은 종래의 어텐션 브랜치 네트워크가 AF 및 STD로 진단된 심전도 테스트 데이터를 입력하는 경우에 생성되는 어텐션 맵을 나타낸다. AF는 신호 전체에서 일관되게 나타나는 경향이 있으며, 일 실시예에 따른 뉴럴 네트워크의 어텐션 맵(501)은 종래의 어텐션 브랜치 네트워크의 어텐션 맵(502)과 비교하여 전체에 걸쳐 균일한 어텐션을 할당하는 것을 확인할 수 있다. STD의 증상을 보이는 것으로 보고된 단서 중 하나인 V2는, STD의 징후를 반영한다(예를 들어, ST 세그먼트의 하향 및 발병 후 2초 전 두번의 맥박). 어텐션 맵(501)은 해당 영역을 강조하지만, 어텐션 맵(502)은 STD의 증상에 주목하지 않는다. 전반적으로, 종래의 어텐션 브랜치 네트워크의 어텐션 맵(502)은 몇가지 눈에 띄는 증상에만 집중하는 반면, 어텐션 맵(501)는 입력 신호 전반에 걸쳐 상대적으로 분산되는 주의를 기울이면서 두드러지는 증상에 집중한다.
도 6은 일 실시예에 따라 심전도 진단 장치의 뉴럴 네트워크를 트레이닝 시키는 장치의 구성을 나타낸 블록도이다.
일 실시예에 따라 심전도 진단 장치의 뉴럴 네트워크를 트레이닝 시키는 장치(600)는 통신부(610), 프로세서(620), 및 메모리(630)를 포함할 수 있다. 통신부(610)는 외부 장치로부터 트레이닝 심전도 신호를 수신할 수 있다. 예를 들어, 트레이닝 심전도 신호는 부정맥에 관한 질병이 기록된 12개의 표준 심전도 신호일 수 있다. 메모리(620)는 일 실시예에 따른 뉴럴 네트워크를 저장할 수 있다. 프로세서(630)는 수신한 트레이닝 심전도 데이터에 정규화(normalized) 및 제로 패딩(zero-padding)를 포함하는 전처리를 적용하여 상기 뉴럴 네트워크에 입력될 입력 데이터를 생성할 수 있다. 또한, 프로세서(630)는 트레이닝 심전도 데이터로부터 뉴럴 네트워크의 어텐션 브랜치에 기초하여 미리 지정되는 개수의 클래스 별로 제2 특징 맵을 생성하고, 제2 특징 맵으로부터 어텐션 맵 및 기준 응답 맵을 생성하며, 어텐션 맵 및 기준 응답 맵에 기초하여 손실 값을 산출하고, 산출된 손실 값에 기초하여 상기 뉴럴 네트워크의 파라미터를 업데이트할 수 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있으며 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
위에서 설명한 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 또는 복수의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 이를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (20)

  1. 프로세서에 의해 수행되는, 심전도 진단 장치의 뉴럴 네트워크(Neural Network)를 트레이닝시키는 방법에 있어서,
    트레이닝 심전도(electrocardiogram, ECG) 데이터로부터 상기 뉴럴 네트워크의 어텐션 브랜치에 기초하여 미리 지정되는 개수의 클래스 별로 특징 맵(feature map)을 생성하는 단계;
    상기 특징 맵으로부터 어텐션 맵(attention map) 및 기준 응답 맵(reference response map)을 생성하는 단계;
    상기 어텐션 맵 및 상기 기준 응답 맵에 기초하여 손실 값을 산출하는 단계; 및
    상기 산출된 손실 값에 기초하여 상기 뉴럴 네트워크의 파라미터를 업데이트하는 단계
    를 포함하는 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법.
  2. 제1항에 있어서,
    상기 어텐션 맵 및 기준 응답 맵을 생성하는 단계는,
    상기 어텐션 브랜치에 의해 생성된 복수의 특징 맵들 중 모든 클래스에 대응하는 특징 맵으로부터 상기 어텐션 맵을 생성하는 단계; 및
    상기 복수의 특징 맵들 중 참값 클래스(Ground Truth class)에 대응하는 특징 맵으로부터 상기 기준 응답 맵을 생성하는 단계
    를 포함하는 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법.
  3. 제2항에 있어서,
    상기 기준 응답 맵을 생성하는 단계는,
    상기 복수의 특징 맵들 중 상기 참값 클래스에 대응하는 특징 맵의 평균을 상기 기준 응답 맵으로 생성하는 단계
    를 포함하는 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법.
  4. 제1항에 있어서,
    상기 손실 값을 산출하는 단계는,
    상기 어텐션 맵 및 상기 기준 응답 맵 간의 차이를 산출하는 단계;
    를 포함하는 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법.
  5. 제4항에 있어서,
    상기 차이를 산출하는 단계는,
    상기 어텐션 맵 및 상기 기준 응답 맵 간의 유클리드 노름(Euclidean norm)을 산출하는 단계;
    를 포함하는 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법.
  6. 제5항에 있어서,
    상기 산출된 유클리드 노름에 가중치를 적용하는 단계
    를 포함하는 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법.
  7. 제4항에 있어서,
    상기 손실 값을 산출하는 단계는,
    참값 레이블(Ground Truth label) 및 상기 어텐션 브랜치로부터 출력되는 클래스 스코어(class score) 사이의 제1 이진 교차 엔트로피(binary cross-entropy) 값을 산출하는 단계;
    참값 레이블 및 인지 브랜치(perception branch)로부터 출력되는 클래스 스코어 사이의 제2 이진 교차 엔트로피 값을 산출하는 단계; 및
    상기 산출된 상기 어텐션 맵 및 상기 기준 응답 맵 간의 차이, 제1 이진 교차 엔트로피 값, 및 제2 이진 교차 엔트로피 값을 합산하여 상기 손실 값을 산출하는 단계
    를 포함하는 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법.
  8. 제4항에 있어서,
    상기 손실 값을 산출하는 단계는,
    참값 레이블 및 상기 어텐션 브랜치로부터 출력되는 클래스 스코어 사이의 제1 이진 교차 엔트로피 값을 산출하는 단계;
    참값 레이블 및 인지 브랜치로부터 출력되는 클래스 스코어 사이의 제2 이진 교차 엔트로피 값을 산출하는 단계; 및
    상기 산출된 상기 어텐션 맵 및 상기 기준 응답 맵 간의 유클리드 노름에 가중치가 적용된 값, 제1 이진 교차 엔트로피 값, 및 제2 이진 교차 엔트로피 값을 합산하여 상기 손실 값을 산출하는 단계
    를 포함하는 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법.
  9. 제1항에 있어서,
    상기 트레이닝 심전도 데이터에 정규화(normalized) 및 제로 패딩(zero-padding)를 포함하는 전처리를 적용하여 상기 뉴럴 네트워크에 입력될 입력 데이터를 생성하는 단계
    를 더 포함하는 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법.
  10. 제1항에 있어서,
    상기 특징 맵을 생성하는 단계는,
    트레이닝 심전도 데이터로부터 복수의 질병 분류 클래스들의 각각 별로 특징 맵을 추출하는 단계
    심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법.
  11. 하드웨어와 결합되어 제1항 내지 제10항 중 어느 하나의 항의 방법을 실행시키기 위하여 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.
  12. 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 장치에 있어서,
    어텐션 브랜치를 포함하는 상기 뉴럴 네트워크를 저장한 메모리;
    트레이닝 심전도 데이터로부터 상기 뉴럴 네트워크의 어텐션 브랜치에 기초하여 미리 지정되는 개수의 클래스 별로 특징 맵을 생성하고, 상기 특징 맵으로부터 어텐션 맵 및 기준 응답 맵을 생성하며, 상기 어텐션 맵 및 상기 기준 응답 맵에 기초하여 손실 값을 산출하고, 상기 산출된 손실 값에 기초하여 상기 뉴럴 네트워크의 파라미터를 업데이트하는 프로세서
    를 포함하는 심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 장치.
  13. 제12항에 있어서,
    상기 프로세서는,
    상기 어텐션 브랜치에 의해 생성된 복수의 특징 맵들 중 모든 클래스에 대응하는 특징 맵으로부터 상기 어텐션 맵을 생성하고, 상기 복수의 특징 맵들 중 참값 클래스(Ground Truth class)에 대응하는 특징 맵으로부터 상기 기준 응답 맵을 생성하는,
    심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법.
  14. 제13항에 있어서,
    상기 프로세서는,
    상기 복수의 특징 맵들 중 상기 참값 클래스에 대응하는 특징 맵의 평균을 상기 기준 응답 맵으로 생성하는,
    심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법.
  15. 제12항에 있어서,
    상기 프로세서는,
    상기 어텐션 맵 및 상기 기준 응답 맵 간의 차이를 산출하는,
    심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법.
  16. 제15항에 있어서,
    상기 프로세서는,
    상기 어텐션 맵 및 상기 기준 응답 맵 간의 유클리드 노름(Euclidean norm)을 산출하는,
    심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법.
  17. 제16항에 있어서,
    상기 프로세서는,
    상기 산출된 유클리드 노름에 가중치를 적용하는,
    심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법.
  18. 제15항에 있어서,
    상기 프로세서는,
    참값 레이블(Ground Truth label) 및 상기 어텐션 브랜치로부터 출력되는 클래스 스코어(class score) 사이의 제1 이진 교차 엔트로피(binary cross-entropy) 값을 산출하고, 참값 레이블 및 인지 브랜치(perception branch)로부터 출력되는 클래스 스코어 사이의 제2 이진 교차 엔트로피 값을 산출하며, 상기 산출된 상기 어텐션 맵 및 상기 기준 응답 맵 간의 차이, 제1 이진 교차 엔트로피 값, 및 제2 이진 교차 엔트로피 값을 합산하여 상기 손실 값을 산출하는,
    심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법.
  19. 제15항에 있어서,
    상기 프로세서는,
    참값 레이블 및 상기 어텐션 브랜치로부터 출력되는 클래스 스코어 사이의 제1 이진 교차 엔트로피 값을 산출하고, 참값 레이블 및 인지 브랜치로부터 출력되는 클래스 스코어 사이의 제2 이진 교차 엔트로피 값을 산출하며, 상기 산출된 상기 어텐션 맵 및 상기 기준 응답 맵 간의 유클리드 노름에 가중치가 적용된 값, 제1 이진 교차 엔트로피 값, 및 제2 이진 교차 엔트로피 값을 합산하여 상기 손실 값을 산출하는,
    심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법.
  20. 제11항에 있어서,
    상기 프로세서는,
    상기 트레이닝 심전도 데이터에 정규화(normalized) 및 제로 패딩(zero-padding)를 포함하는 전처리를 적용하여 상기 뉴럴 네트워크에 입력될 입력 데이터를 생성하는,
    심전도 진단 장치의 뉴럴 네트워크를 트레이닝시키는 방법.
PCT/KR2021/016001 2020-12-02 2021-11-05 설명 가능한 다중 심전도 부정맥 진단 장치 및 방법 WO2022119155A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2020-0166666 2020-12-02
KR1020200166666A KR102483693B1 (ko) 2020-12-02 2020-12-02 설명 가능한 다중 심전도 부정맥 진단 장치 및 방법

Publications (1)

Publication Number Publication Date
WO2022119155A1 true WO2022119155A1 (ko) 2022-06-09

Family

ID=81853248

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2021/016001 WO2022119155A1 (ko) 2020-12-02 2021-11-05 설명 가능한 다중 심전도 부정맥 진단 장치 및 방법

Country Status (2)

Country Link
KR (1) KR102483693B1 (ko)
WO (1) WO2022119155A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115293300A (zh) * 2022-10-09 2022-11-04 广东技术师范大学 基于tsk模糊语义的心律失常分类方法及系统
CN115429284A (zh) * 2022-09-16 2022-12-06 山东科技大学 心电信号分类方法、系统、计算机设备以及可读存储介质
CN117257324A (zh) * 2023-11-22 2023-12-22 齐鲁工业大学(山东省科学院) 基于卷积神经网络和ecg信号的房颤检测方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022179645A2 (zh) * 2022-06-13 2022-09-01 合肥心之声健康科技有限公司 心电图分析方法、装置、电子设备和存储介质
KR20240011089A (ko) 2022-07-18 2024-01-25 고려대학교 산학협력단 심층 신경망의 선형 근사를 기반으로 하는 설명 맵 생성 장치 및 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015184805A (ja) * 2014-03-20 2015-10-22 株式会社東芝 モデル更新装置及びモデル更新方法
JP2019192207A (ja) * 2018-04-25 2019-10-31 富士通株式会社 アプリケーションプログラム生成のための深層ニューラルネットワーク訓練
KR20190141326A (ko) * 2018-06-14 2019-12-24 한국과학기술원 심층 컨볼루션 신경망을 이용한 심전도 부정맥 분류 방법 및 장치
CN110738247A (zh) * 2019-09-30 2020-01-31 中国科学院大学 一种基于选择性稀疏采样的细粒度图像分类方法
JP6692488B2 (ja) * 2016-11-22 2020-05-13 三菱電機株式会社 ニューロンネットワークをトレーニングする方法及び能動学習システム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015184805A (ja) * 2014-03-20 2015-10-22 株式会社東芝 モデル更新装置及びモデル更新方法
JP6692488B2 (ja) * 2016-11-22 2020-05-13 三菱電機株式会社 ニューロンネットワークをトレーニングする方法及び能動学習システム
JP2019192207A (ja) * 2018-04-25 2019-10-31 富士通株式会社 アプリケーションプログラム生成のための深層ニューラルネットワーク訓練
KR20190141326A (ko) * 2018-06-14 2019-12-24 한국과학기술원 심층 컨볼루션 신경망을 이용한 심전도 부정맥 분류 방법 및 장치
CN110738247A (zh) * 2019-09-30 2020-01-31 中国科学院大学 一种基于选择性稀疏采样的细粒度图像分类方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
NORA VOGT: "CNNs, LSTMs, and Attention Networks for Pathology Detection in Medical Data", ARXIV.ORG, CORNELL UNIVERSITY LIBRARY, 201 OLIN LIBRARY CORNELL UNIVERSITY ITHACA, NY 14853, 2 December 2019 (2019-12-02), 201 Olin Library Cornell University Ithaca, NY 14853 , XP081543379 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115429284A (zh) * 2022-09-16 2022-12-06 山东科技大学 心电信号分类方法、系统、计算机设备以及可读存储介质
CN115429284B (zh) * 2022-09-16 2024-05-03 山东科技大学 心电信号分类方法、系统、计算机设备以及可读存储介质
CN115293300A (zh) * 2022-10-09 2022-11-04 广东技术师范大学 基于tsk模糊语义的心律失常分类方法及系统
CN115293300B (zh) * 2022-10-09 2022-12-23 广东技术师范大学 基于tsk模糊语义的心律失常分类方法及系统
CN117257324A (zh) * 2023-11-22 2023-12-22 齐鲁工业大学(山东省科学院) 基于卷积神经网络和ecg信号的房颤检测方法
CN117257324B (zh) * 2023-11-22 2024-01-30 齐鲁工业大学(山东省科学院) 基于卷积神经网络和ecg信号的房颤检测方法

Also Published As

Publication number Publication date
KR20220077583A (ko) 2022-06-09
KR102483693B1 (ko) 2023-01-03

Similar Documents

Publication Publication Date Title
WO2022119155A1 (ko) 설명 가능한 다중 심전도 부정맥 진단 장치 및 방법
US10758139B2 (en) Automatic method to delineate or categorize an electrocardiogram
Murugesan et al. Ecgnet: Deep network for arrhythmia classification
Rajpurkar et al. Cardiologist-level arrhythmia detection with convolutional neural networks
WO2020141807A2 (ko) 딥러닝을 이용한 정상동율동 심전도 상태에서의 발작성 심방세동 예측방법
Ganeshkumar et al. Explainable deep learning-based approach for multilabel classification of electrocardiogram
CN110974214A (zh) 一种基于深度学习的自动心电图分类方法、系统及设备
WO2022014942A1 (ko) 딥러닝 기반 심전도를 이용한 심장 질환 진단 장치 및 그 방법
WO2020180091A1 (ko) 뇌 구조를 이용한 뇌 영상 보정 방법 및 장치
WO2019031794A1 (ko) 피검체의 치명적 증상의 발생을 조기에 예측하기 위한 예측 결과를 생성하는 방법 및 이를 이용한 장치
Vijayarangan et al. Interpreting deep neural networks for single-lead ECG arrhythmia classification
WO2019098415A1 (ko) 자궁경부암에 대한 피검체의 발병 여부를 판정하는 방법 및 이를 이용한 장치
WO2020180135A1 (ko) 뇌 질환 예측 장치 및 방법, 뇌 질환을 예측하기 위한 학습 장치
WO2023120775A1 (ko) 심전도 판독을 수정하기 위한 방법 및 장치
CN116705300A (zh) 基于体征数据分析的医疗决策辅助方法、系统及存储介质
Bridge et al. Artificial intelligence to detect abnormal heart rhythm from scanned electrocardiogram tracings
Kafantaris et al. Application of dispersion entropy to healthy and pathological heartbeat ECG segments
WO2016171476A1 (ko) 동맥 혈압 파형의 특징점을 이용한 두개내압 파형의 피크 검출 장치 및 방법
WO2022119347A1 (ko) 초음파 영상 기반의 딥 러닝을 통한 관상동맥 경화반 조직 분석 방법, 장치 및 기록매체
WO2022014941A1 (ko) 딥러닝을 기반으로 하는 심장 질병 분류 장치 및 그 방법
Cayce et al. Improved neural network arrhythmia classification through integrated data augmentation
Wen et al. A scalable hybrid model for atrial fibrillation detection
Cen et al. Intelligence ECG Monitoring System: Wireless platform and Arrhythmia classification using Residual neural network
JP2023520944A (ja) 心電図解析
WO2023101090A1 (ko) 딥 러닝을 이용하여 심방세동을 감지하는 방법 및 장치

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21900843

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21900843

Country of ref document: EP

Kind code of ref document: A1