US 12,279,875 B2
Electrocardiogram (ECG) signal detection and positioning method based on weakly supervised learning
Minglei Shu, Jinan (CN); Pengyao Xu, Jinan (CN); Shuwang Zhou, Jinan (CN); Zhaoyang Liu, Jinan (CN); and Kaiwei Li, Jinan (CN)
Assigned to QILU UNIVERSITY OF TECHNOLOGY (SHANDONG ACADEMY OF SCIENCES), Jinan (CN); and SHANDONG COMPUTER SCIENCE CENTER (NATIONAL SUPERCOMPUTING CENTER IN JINAN), Jinan (CN)
Filed by Qilu University of Technology (Shandong Academy of Sciences), Jinan (CN); and SHANDONG COMPUTER SCIENCE CENTER (NATIONAL SUPERCOMPUTING CENTER IN JINAN), Jinan (CN)
Filed on Dec. 14, 2023, as Appl. No. 18/539,331.
Claims priority of application No. 2023104375867 (CN), filed on Apr. 23, 2023.
Prior Publication US 2024/0350066 A1, Oct. 24, 2024
Int. Cl. A61B 5/318 (2021.01); A61B 5/00 (2006.01); A61B 5/308 (2021.01); G06N 3/0895 (2023.01)
CPC A61B 5/318 (2021.01) [A61B 5/308 (2021.01); A61B 5/7203 (2013.01); G06N 3/0895 (2023.01)] 6 Claims
OG exemplary drawing
 
1. An electrocardiograph (ECG) detection and positioning method based on weakly supervised learning, comprising the following steps:
a-1) operating a plurality of ECG devices to obtain n pieces of ECG signal data of different lengths;
a-2) collecting the n pieces of ECG signal data of different lengths from the plurality of ECG devices to obtain an original ECG dataset X0, wherein X0={x1, x2, . . . , xj, . . . , xn}, xj represents a jth original ECG signal record, and j∈{1, 2, . . . , n};
b) preprocessing the original ECG dataset X0 to obtain a preprocessed ECG dataset X0′, wherein X0′={x1′, x2′, . . . , xj′, . . . , xn′}, and xj′ represents a jth preprocessed original ECG signal record;
c) establishing a deep learning model, and inputting the preprocessed ECG dataset into the deep learning model to obtain a globally recorded category prediction value ypre and a predicted abnormal signal location set L; and
d) training the deep learning model;
wherein the step c) comprises the following substeps:
c-1) constituting the deep learning model by a multi-scale feature extraction module, a self-attention encoding module, and a classification and positioning module;
c-2) constituting the multi-scale feature extraction module of the deep learning model by a start convolutional block, a first multi-scale feature extraction block, and a second multi-scale feature extraction block, wherein the start convolutional block of the multi-scale feature extraction module is sequentially constituted by a first start convolutional layer, a batch normalization (BN) layer, a PRELU activation function layer, and a second start convolutional layer; and inputting the jth preprocessed original ECG signal record xj′ into the start convolutional block of the multi-scale feature extraction module to obtain a feature map X1;
c-3) constituting the first multi-scale feature extraction block of the multi-scale feature extraction module by a first BN layer, a first PRELU activation function layer, a channel local attention (CLA) layer, a first convolutional layer, a second BN layer, a second PRELU activation function layer, a dropout layer, a second convolutional layer, and a maximum pooling layer, wherein the CLA layer is constituted by a first branch and a second branch, the first branch of the CLA layer is sequentially constituted by a global average pooling layer, a first fully connected layer, a Swish activation function layer, a second fully connected layer, and a Sigmoid activation function layer, and the second branch of the CLA layer is sequentially constituted by a global maximum pooling layer, a maximum pooling layer, a first fully connected layer, a Swish activation function layer, a second fully connected layer, a Sigmoid activation function layer, and an upsampling layer; sequentially inputting the feature map X1 into the first BN layer and the first PRELU activation function layer of the first multi-scale feature extraction block to obtain a feature map X1_1; inputting the feature map X1_1 into the first branch of the CLA layer of the first multi-scale feature extraction block to obtain a feature map X1_11_2; inputting the feature map X1_1 into the second branch of the CLA layer of the first multi-scale feature extraction block to obtain a feature map X1_12_3; multiplying the feature map X1_1 and the feature map X1_11_2 to obtain a first product, and then multiplying the first product and the feature map X1_12_3 to obtain a feature map X1_2; sequentially inputting the feature map X1_2 into the first convolutional layer, the second BN layer, the second PRELU activation function layer, the dropout layer, and the second convolutional layer of the first multi-scale feature extraction block to obtain a feature map X1_3; and adding up the feature map X1_3 and the feature map X1 to obtain a first addition result, and then inputting the first addition result into the maximum pooling layer of the first multi-scale feature extraction block to obtain a feature map X2;
c-4) constituting the second multi-scale feature extraction block of the multi-scale feature extraction module by a first BN layer, a first PRELU activation function layer, a CLA layer, a first convolutional layer, a second BN layer, a second PRELU activation function layer, a dropout layer, a second convolutional layer, and a maximum pooling layer; sequentially inputting the feature map X2 into the first BN layer and the first PRELU activation function layer of the second multi-scale feature extraction block to obtain a feature map X2_1; inputting the feature map X2_1 into a first branch of the CLA layer of the second multi-scale feature extraction block to obtain a feature map X2_11_2; inputting the feature map X2_1 into a second branch of the CLA layer of the second multi-scale feature extraction block to obtain a feature map X2_12_3; multiplying the feature map X2_1 and the feature map X2_11_2 to obtain a second product, and then multiplying the second product and the feature map X2_12_3 to obtain a feature map X2_2; sequentially inputting the feature map X2_2 into the first convolutional layer, the second BN layer, the second PRELU activation function layer, the dropout layer, and the second convolutional layer of the second multi-scale feature extraction block to obtain a feature map X2_3; and adding up the feature map X2_3 and the feature map X2 to obtain a second addition result, and then inputting the second addition result into the maximum pooling layer of the second multi-scale feature extraction block to obtain a feature map X3;
c-5) encoding the feature map X3 based on a predefined location to obtain a location information graph X3P, and concatenating the feature map X3 and the location information graph X3P to obtain a feature map X4;
c-6) constituting the self-attention encoding module of the deep learning model by a multi-head self-attention layer, a layer norm layer, and a multi-layer perceptron (MLP) layer, and inputting the feature map X4 into the self-attention encoding module to obtain a feature map X5;
c-7) constituting the classification and positioning module by a local classification module, a fusion module, and an abnormal location output module;
c-8) constituting the local classification module of the classification and positioning module sequentially by a convolutional layer, a flatten layer, a fully connected layer, and a Softmax function; and inputting the feature map X5 into the local classification module to obtain a predicted value ycpre of a local location, wherein ycpre={y1pre, y2pre, . . . , ylpre, . . . ylpre}, ylpre represents a predicted value output by the fully connected layer for an lth location, l∈{1, 2, . . . , m}, m represents a pre quantity of predicted values output by the fully connected layer, ylpre=0 indicates a normal ECG signal, and ylpre=1 indicates an abnormal ECG signal;
c-9) inputting the predicted value ycpre of the local location into the fusion module of the classification and positioning module to obtain the globally recorded category prediction value ypre; and
c-10) inputting the predicted value ycpre of the local location into the abnormal location output module of the classification and positioning module, wherein the abnormal location output module determines whether each location in the predicted value ycpre of the local location has an abnormal signal, wherein the abnormal signal reflects an activity state of a heart, and outputs the abnormal signal location set L, wherein L={l, l2, . . . , l, . . . , lk}, li represents coordinates of a location of an ith abnormal signal in the predicted value ycpre of the local location, i∈{1, 2, . . . , k}, and k represents a quantity of predicted abnormal signals;
wherein in the step c-9), the globally recorded category prediction value ypre is calculated according to a formula ypre=(1/b2)log((1/m)Σl=1mexp(bylpre)), wherein b is a constant.