CN116503673B - 一种基于心电图的心律失常识别检测方法及系统 - Google Patents
一种基于心电图的心律失常识别检测方法及系统 Download PDFInfo
- Publication number
- CN116503673B CN116503673B CN202310755802.2A CN202310755802A CN116503673B CN 116503673 B CN116503673 B CN 116503673B CN 202310755802 A CN202310755802 A CN 202310755802A CN 116503673 B CN116503673 B CN 116503673B
- Authority
- CN
- China
- Prior art keywords
- heart rate
- data point
- data points
- representation
- signal
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
- 206010003119 arrhythmia Diseases 0.000 title claims abstract description 90
- 238000001514 detection method Methods 0.000 title claims abstract description 90
- 230000006793 arrhythmia Effects 0.000 title claims abstract description 86
- 239000013598 vector Substances 0.000 claims abstract description 80
- 238000007906 compression Methods 0.000 claims abstract description 65
- 230000006835 compression Effects 0.000 claims abstract description 61
- 230000004913 activation Effects 0.000 claims abstract description 49
- 238000000034 method Methods 0.000 claims abstract description 40
- 230000008859 change Effects 0.000 claims abstract description 31
- 230000006870 function Effects 0.000 claims description 93
- 230000009466 transformation Effects 0.000 claims description 64
- 238000001994 activation Methods 0.000 claims description 48
- 238000005259 measurement Methods 0.000 claims description 26
- 238000004364 calculation method Methods 0.000 claims description 23
- 230000007246 mechanism Effects 0.000 claims description 23
- 230000033764 rhythmic process Effects 0.000 claims description 23
- 238000013528 artificial neural network Methods 0.000 claims description 22
- 239000000047 product Substances 0.000 claims description 17
- 238000007781 pre-processing Methods 0.000 claims description 16
- 239000011159 matrix material Substances 0.000 claims description 13
- 230000001131 transforming effect Effects 0.000 claims description 13
- 238000000605 extraction Methods 0.000 claims description 8
- 238000000844 transformation Methods 0.000 claims description 8
- 230000002159 abnormal effect Effects 0.000 claims description 7
- 238000005457 optimization Methods 0.000 claims description 7
- 238000001914 filtration Methods 0.000 claims description 6
- 238000009432 framing Methods 0.000 claims description 4
- 239000013589 supplement Substances 0.000 claims description 2
- 238000012545 processing Methods 0.000 abstract description 24
- 230000008901 benefit Effects 0.000 abstract description 2
- 238000012549 training Methods 0.000 description 20
- 230000008569 process Effects 0.000 description 9
- 230000035945 sensitivity Effects 0.000 description 9
- 238000002474 experimental method Methods 0.000 description 8
- 238000002790 cross-validation Methods 0.000 description 7
- 238000013507 mapping Methods 0.000 description 7
- 238000005070 sampling Methods 0.000 description 7
- 238000012795 verification Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 206010006578 Bundle-Branch Block Diseases 0.000 description 4
- 208000000418 Premature Cardiac Complexes Diseases 0.000 description 4
- 238000013145 classification model Methods 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 4
- 230000001502 supplementing effect Effects 0.000 description 4
- 208000024172 Cardiovascular disease Diseases 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 230000002861 ventricular Effects 0.000 description 3
- 206010006580 Bundle branch block left Diseases 0.000 description 2
- 206010006582 Bundle branch block right Diseases 0.000 description 2
- 230000001746 atrial effect Effects 0.000 description 2
- 201000001715 left bundle branch hemiblock Diseases 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 238000000718 qrs complex Methods 0.000 description 2
- 230000008439 repair process Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 201000007916 right bundle branch block Diseases 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 206010003658 Atrial Fibrillation Diseases 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000005311 autocorrelation function Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008033 biological extinction Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000747 cardiac effect Effects 0.000 description 1
- 230000008602 contraction Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000010219 correlation analysis Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 201000010099 disease Diseases 0.000 description 1
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 208000019622 heart disease Diseases 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000035790 physiological processes and functions Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000010183 spectrum analysis Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 230000002459 sustained effect Effects 0.000 description 1
- 208000019553 vascular disease Diseases 0.000 description 1
- 238000005303 weighing Methods 0.000 description 1
- 238000002759 z-score normalization Methods 0.000 description 1
Classifications
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/24—Detecting, measuring or recording bioelectric or biomagnetic signals of the body or parts thereof
- A61B5/316—Modalities, i.e. specific diagnostic methods
- A61B5/318—Heart-related electrical modalities, e.g. electrocardiography [ECG]
- A61B5/346—Analysis of electrocardiograms
- A61B5/349—Detecting specific parameters of the electrocardiograph cycle
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/72—Signal processing specially adapted for physiological signals or for diagnostic purposes
- A61B5/7235—Details of waveform analysis
- A61B5/7264—Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems
- A61B5/7267—Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems involving training the classification device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
- G06N3/0455—Auto-encoder networks; Encoder-decoder networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/09—Supervised learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/03—Recognition of patterns in medical or anatomical images
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- General Physics & Mathematics (AREA)
- Biomedical Technology (AREA)
- Software Systems (AREA)
- Medical Informatics (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Cardiology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Veterinary Medicine (AREA)
- Databases & Information Systems (AREA)
- Pathology (AREA)
- Public Health (AREA)
- Multimedia (AREA)
- Heart & Thoracic Surgery (AREA)
- Animal Behavior & Ethology (AREA)
- Surgery (AREA)
- Psychiatry (AREA)
- Signal Processing (AREA)
- Physiology (AREA)
- Fuzzy Systems (AREA)
- Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)
Abstract
本发明涉及一种基于心电图的心律失常识别检测方法及系统。通过基于Transformer的心电压缩栈式自编码器对心电图信号进行特征提取及压缩,利用外层Transformer块的并行计算能力和对长距离依赖性的处理能力,提高了处理速度和效率的同时还能够获取输入序列中的长距离依赖关系,提高检测的准确性,通过内部线性堆叠层对高维特征表示进行压缩,及通过非线性激活函数放大微小变化,压缩尺寸同时保留心电图信号的关键信息,再通过特征检测分类器的核函数计算低维特征表示与支持向量之间的相关性,及决策函数对心律失常进行分类检测以获取心律失常的预测结果,根据数据的特征自动调整分类边界,处理非线性关系,提高分类的准确性。
Description
技术领域
本发明属于心电图识别检测技术领域,尤其涉及一种基于心电图的心律失常识别检测方法及系统。
背景技术
根据世界卫生组织提供的数据,心血管疾病是全球死亡率的重要组成部分。心血管疾病是指心脏或血管障碍的集合术语,是一类在中年人群中普遍存在的危险疾病。而心电图(ECG)是一种记录心脏每个心动周期产生的电活动变化的技术,心电图反映了心脏活动的规律性和各个身体部分的生理状态,因此是心血管疾病的重要诊断介质。心电图由以下重要波形组成:P波、QRS波群、T波和ST段,心电图信号的复杂组成使得对其进行分析特别具有挑战性,即使是经过许可的全科医生在区分房颤和正常心跳时也只能达到92%的特异性和80%的敏感性。
传统技术中针对心电图常用的心律失常的检测方法包括计算心电图信号的平均心率、R波波幅、QRS波群宽度等时间域特征,以及频谱分析来提取频域特征,这些特征可以用于心律失常的分类和检测,然而,这种方式通常需要人工选择和设计特征,这需要领域专家对心电图信号有深入的理解和经验,且存在主观性和局限性,不能充分捕捉到信号中的复杂模式和结构,导致特征表达能力的不足。传统技术中也使用了一些基于数学模型的方法,例如基于传统信号处理技术的滤波器、相关分析、自相关函数等,这些方法虽然可以用于提取心电图信号中的脉冲特征,如QRS波群等,然而,这些方法往往对噪声和信号变异性敏感,需要针对不同的心电图信号进行参数调整,可能导致误判和不准确的检测结果,而且很难适应复杂的非线性关系。
近年来,深度学习技术在许多检测和预测任务中证明了其有效性,越来越多的研究开始使用深度学习模型来自动化心电图信号的检测。其中,卷积神经网络(CNN)和传统的循环神经网络(RNN)被广泛采用,然而,这些检测方式也存在一些问题,例如,卷积神经网络(CNN)在处理顺序数据和捕捉长期依赖关系方面并不理想,当处理包含复杂模式和关键的长期依赖关系的心电图信号时,这可能是一个缺点。传统的循环神经网络结构是按顺序处理数据,使得在训练过程中难以使用并行计算来加快速度,此外,一些研究表明,传统的循环神经网络结构在处理长序列时可能面临延迟信息传递的问题,导致模型性能下降,这对异常心电图检测构成了重大挑战。
发明内容
本发明提供一种基于心电图的心律失常识别检测系统及装置及其充电系统,旨在解决上述背景技术提到的问题。
本发明是这样实现的,提供一种基于心电图的心律失常识别检测方法,步骤包括:
对心电图进行信号检测以获取心电图信号;
构建基于transformer的心电压缩栈式自编码器并将心电图信号作为输入序列输入心电压缩栈式自编码器,以通过心电压缩栈式自编码器对输入序列进行特征提取及压缩,具体包括:
通过外层Transformer块的自注意力机制对输入序列中每个数据点与其他数据点之间的关系进行计算及变换以输出包含输入序列中长距离依赖关系的高维特征表示,及通过外层Transformer块的前馈神经网络对自注意力机制输出的高维特征表示进行非线性变换以得到包含输入序列中心电图信号的频率、幅度和时域特征信息的最终特征表示;
通过内部线性堆叠层对前馈神经网络输出的最终特征表示进行线性变换压缩以得到心电图信号的低维表示,及对心电图信号的低维表示进行非线性激活以放大微小变化捕获输入序列中的复杂模式和结构,对线性变换及非线性激活步骤重复执行四次以得到包含输入序列中复杂模式和结构信息的低维特征表示;
构建特征检测分类器并通过特征检测分类器的决策函数对基于transformer的心电压缩栈式自编码器压缩后的心电低维特征表示进行分类检测以获取心律失常的预测结果,具体包括:
计算核函数的值:K(xi,x)=,
计算决策函数的值:f(x)=Σ(αi*yi*K(xi,x))+b,
其中,K(xi,x)是核函数,用来表示实时的数据点的低维特征表示x与支持向量xi在高维空间中的点积,x为实时的数据点的低维特征表示,||xi-x||为欧几里得距离,表示xi与x两个点在空间中的直线距离,γ>0,为核函数的超参数,αi为每个支持向量的拉格朗日乘子,yi为支持向量对应的类别标签,心律正常的类别标签定为1,心律失常的类别标签定为-1,b为偏置项,
对决策函数f(x)的正负值进行判断,若f(x)>0,则x被分类为正类,类别标签定为1,并判定x对应的数据点的心律是正常的,若f(x)<0,则x被分类为负类,类别标签定为-1,并判定x对应的数据点的心律是失常的。
更进一步地,所述对心电图进行信号检测以获取心电图信号的步骤后还包括:
对没有检测到信号的时间点打上占位符并标记为缺失数据点;
对心电图信号进行预处理,所述预处理包括滤波、去基线漂移和QRS波检测;
从心电图信号中检测及定位QRS波,并计算相邻两个QRS波之间的时间间隔,设为RR间期,其中,对于第n个QRS波和第n+1个QRS波的时间戳tn和tn+1,RR间期Rn= tn+1-tn;
根据每个RR间期计算心率,并根据每个心率计算每个心搏对应的心率周期长度,其中,心率为每分钟的心搏数,对于第n个RR间期Rn,心率Hn = 60/Rn的平均值,心率周期长度Tn=1/Hn;
将心电图信号按照RR间期分割心率周期,根据占位符定位找到当前心率周期中的缺失数据点,对当前心率周期内缺失数据点与其相邻心率周期内各特征数据点之间的时间差进行计算,并根据时间差计算相邻心率周期内各特征数据点对当前心率周期内缺失数据点的插值权重,特征数据点包括QRS波的峰值点、ST段的起始点、ST段的结束点和T波的峰值点;
根据相邻心率周期内各特征数据点的信号值及各特征数据点的插值权重计算当前心率周期中缺失数据点的估算值,缺失数据点的估算值e'(t)=w1*e1+w2*e2+...+wn*en,其中,e1、e2、...、en为相邻心率周期内各特征数据点的信号值,w1、w2、...、wn为相邻心率周期内各特征数据点的插值权重。
更进一步地,所述根据时间差计算相邻心率周期内各特征数据点对当前心率周期中缺失数据点的插值权重的步骤包括:
判断相邻心率周期内特征数据点的变化是否均匀;
若相邻心率周期内特征数据点的变化均匀,则根据当前心率周期内缺失数据点与相邻心率周期内特征数据点的时间差进行线性插值计算以得到插值权重,插值权重=1-(时间差/相邻心率周期的周期长度);
若相邻心率周期内特征数据点的变化不均匀,则根据当前心率周期内缺失数据点与相邻心率周期内特征数据点之间的时间差进行时间差加权插值计算以得插值权重,插值权重=1/(时间差+ε),ε为一个趋近于0但不等于0的正数值。
更进一步地,所述判断相邻心率周期内特征数据点的变化是否均匀的步骤包括:
分别获取相邻心率周期和当前心率周期内的特征数据点序列;
对相邻周期内任一目标特征数据点与当前周期内对应位置的目标特征数据点之间的变化差异度量进行计算,变化差异度量=|(数据点(i)的信号值-数据点(i-1)的信号值)/数据点(i-1)的信号值|*100,其中数据点(i)的信号值为目标特征数据点在当前心率周期中的信号值,数据点(i-1)的信号值为目标特征数据点在相邻心率周期中的信号值;
根据计算得到的变化差异度量生成相邻心率周期内特征数据点之间的差异序列,并对差异序列中的变化差异度量进行平均值计算以得到变化差异度量平均值;
根据差异序列中的每个变化差异度量及变化差异度量平均值对相邻心率周期内特征数据点之间变化差异的方差进行计算;
将相邻心率周期内特征数据点之间变化差异的方差与方差阈值进行对比以判断相邻心率周期内特征数据点的变化是否均匀;
若相邻心率周期内特征数据点之间变化差异的方差小于方差阈值,则判定相邻心率周期内特征数据点的变化均匀;
若相邻心率周期内特征数据点之间变化差异的方差大于方差阈值,则判定相邻心率周期内特征数据点的变化不均匀。
更进一步地,所述构建特征检测分类器并通过特征检测分类器的决策函数对基于transformer的心电压缩栈式自编码器压缩后的心电低维特征表示进行分类检测以获取心律失常的预测结果的步骤后还包括:
确定滑动窗口的大小。这是一个超参数,可以通过交叉验证等方式进行调整。假设我们选择的窗口大小为 N;
根据心电图数据的采样频率及期望检测到的心律失常的持续时间设置初始窗口大小,初始窗口大小=采样频率*持续时间;
通过验证集对初始窗口大小进行上下调整及交叉验证并选择表现最好的窗口大小作为最终窗口大小;
根据特征检测分类器获取的输入序列内每个数据点对应的心律失常预测结果生成预测结果序列,预测结果序列为{y1,y2,y3,...,yn},其中,数据点的总数为n;
设置一个窗口,窗口大小为N;
从第一个数据点开始,通过窗口在预测结果上进行滑移,每次框取预测结果序列中的N个数据点并计算每个窗口内数据点对应的心律失常预测结果的平均值,直至遍历完整个预测结果序列,组成新序列,对于第i个数据点到第i+N-1个数据点对应的心律失常预测结果的平均值zi= (yi+ yi+1+ yi+2+...+yi+N-1) /N,得到的新序列为{z1,z2,...,zn-N+1},其中,zi表示对应窗口内心律失常预测结果的平均值;
根据阈值对每个窗口内的心律失常预测结果的平均值进行对比分析;
若窗口内的心律失常预测结果的平均值大于阈值,则判定窗口对应的时间段内存在心律失常。
更进一步地,所述通过外层Transformer块的自注意力机制对输入序列中每个数据点与其他数据点之间的关系进行计算及变换以输出包含输入序列中长距离依赖关系的高维特征表示的步骤包括:
将输入序列映射到三个向量空间,三个向量空间分别为查询、键和值,查询向量q=Wq*c,键向量k=Wk*c及值向量v=Wv*c,其中,Wq、Wk和Wv为学习参数,c为输入序列中数据点上的电压读数经过embedding后的嵌入表示;
对输入序列中每个数据点对应的查询向量与所有其他数据点对应的键向量的相似度分数进行点积计算并缩放处理,即score= ,其中,score为相似度分数,q为查询向量,k为键向量,dk为键向量的维度;
通过softmax函数对点积计算得到的相似度分数进行softmax分数计算以得到输入序列中每个数据点与其他数据点的相关程度,相关程度为a=softmax(score),对于c=[c1,c2,...,cn],softmax(ci)=,输入序列中每个数据点与其他数据点的相关程度为0到1之间的数;
对输入序列中每个数据点对应的值向量与其对应的softmax分数进行加权求和以得到每个数据点的高维特征表示,数据点的高维特征表示为f=a*v,其中,a 为输入序列中的数据点与其他数据点的相关程度,v为值向量。
更进一步地,所述通过外层Transformer块的前馈神经网络对自注意力机制输出的高维特征表示进行非线性变换以得到包含输入序列中心电图信号的频率、幅度和时域特征信息的最终特征表示的步骤包括:
对输入序列中每个数据点的高维特征表示进行一次线性变换以得到一次变换结果,一次变换结果为A=W1*f+b1,其中,W1为第一权重矩阵,b1为第一偏置项,f为数据点的高维特征表示;
通过非线性激活函数对一次变换结果进行计算以得到非线性激活结果,非线性激活结果为A'= ReLU(A),其中,ReLU(A)=max(0,A),A大于0则输出A,否则输出0,ReLU(A)为非线性激活函数;
对非线性激活结果进行二次线性变换以得到二次变换结果,二次变换结果为Y=W2*A'+b2,其中,W2为第二权重矩阵,b2为第二偏置项。
更进一步地,所述构建基于transformer的心电压缩栈式自编码器的步骤包括:
将原始高维特征输入心电表示学习器编码器,通过心电表示学习器编码器进行一系列的线性变换及非线性激活以将原始高维特征转换为低维空间表示;
将心电图信号的低维空间表示输入心电信号重建器解码器,通过心电信号重建器解码器进行一系列的线性变换及非线性激活以将心电图信号的低维空间表示重建还原为高维空间表示;
对心电信号重建器解码器重建还原的高维空间表示与原始高维特征的差异进行比较并计算均方差损失;
通过反向传播算法对损失函数对于心电表示学习器编码器和心电信号重建器解码器的权重的梯度进行计算;
根据权重的梯度并通过优化算法对心电表示学习器编码器和心电信号重建器解码器的参数进行更新以减小损失函数的值;
重复执行上述步骤,通过多次迭代对心电表示学习器编码器和心电信号重建器解码器的参数进行不断优化以构建性能良好的心电压缩栈式自编码器。
本发明还提供一种基于心电图的心律失常识别检测系统,用于执行基于心电图的心律失常识别检测方法,包括:
信号检测模块:用于对心电图进行信号检测以获取心电图信号;
特征提取压缩模块:用于构建基于transformer的心电压缩栈式自编码器并将心电图信号作为输入序列输入心电压缩栈式自编码器,以通过心电压缩栈式自编码器对输入序列进行特征提取及压缩,具体包括:
通过外层Transformer块的自注意力机制对输入序列中每个数据点与其他数据点之间的关系进行计算及变换以输出包含输入序列中长距离依赖关系的高维特征表示,及通过外层Transformer块的前馈神经网络对自注意力机制输出的高维特征表示进行非线性变换以得到包含输入序列中心电图信号的频率、幅度和时域特征信息的最终特征表示;
通过内部线性堆叠层对前馈神经网络输出的最终特征表示进行线性变换压缩以得到心电图信号的低维表示,及对心电图信号的低维表示进行非线性激活以放大微小变化捕获输入序列中的复杂模式和结构,对线性变换及非线性激活步骤重复执行四次以得到包含输入序列中复杂模式和结构信息的低维特征表示;
分类检测模块:用于构建特征检测分类器并通过特征检测分类器的决策函数对基于transformer的心电压缩栈式自编码器压缩后的心电低维特征表示进行分类检测以获取心律失常的预测结果,具体包括:
计算核函数的值:K(xi,x)=,
计算决策函数的值:f(x)=Σ(αi*yi*K(xi,x))+b,
其中,K(xi,x)是核函数,用来表示实时的数据点的低维特征表示x与支持向量xi在高维空间中的点积,x为实时的数据点的低维特征表示,||xi-x||为欧几里得距离,表示xi与x两个点在空间中的直线距离,γ>0,为核函数的超参数,αi为每个支持向量的拉格朗日乘子,yi为支持向量对应的类别标签,心律正常的类别标签定为1,心律失常的类别标签定为-1,b为偏置项,
对决策函数f(x)的正负值进行判断,若f(x)>0,则x被分类为正类,类别标签定为1,并判定x对应的数据点的心律是正常的,若f(x)<0,则x被分类为负类,类别标签定为-1,并判定x对应的数据点的心律是失常的。
更进一步地,还包括缺失数据补充模块,所述缺失数据补充模块用于:
对没有检测到信号的时间点打上占位符并标记为缺失数据点;
对心电图信号进行预处理,所述预处理包括滤波、去基线漂移和QRS波检测;
从心电图信号中检测及定位QRS波,并计算相邻两个QRS波之间的时间间隔,设为RR间期,其中,对于第n个QRS波和第n+1个QRS波的时间戳tn和tn+1,RR间期Rn= tn+1-tn;
根据每个RR间期计算心率,并根据每个心率计算每个心搏对应的心率周期长度,其中,心率为每分钟的心搏数,对于第n个RR间期Rn,心率Hn = 60/Rn的平均值,心率周期长度Tn=1/Hn;
将心电图信号按照RR间期分割心率周期,根据占位符定位找到当前心率周期中的缺失数据点,对当前心率周期内缺失数据点与其相邻心率周期内各特征数据点之间的时间差进行计算,并根据时间差计算相邻心率周期内各特征数据点对当前心率周期内缺失数据点的插值权重,特征数据点包括QRS波的峰值点、ST段的起始点、ST段的结束点和T波的峰值点;
根据相邻心率周期内各特征数据点的信号值及各特征数据点的插值权重计算当前心率周期中缺失数据点的估算值,缺失数据点的估算值e'(t)=w1*e1+w2*e2+...+wn*en,其中,e1、e2、...、en为相邻心率周期内各特征数据点的信号值,w1、w2、...、wn为相邻心率周期内各特征数据点的插值权重。
本发明的有益效果在于, 本发明的心电压缩栈式自编码器通过外层Transformer块的自注意力机制及前馈神经网络对输入序列进行特征提取,利用外层Transformer块的并行计算能力和对长距离依赖性的处理能力,提高了处理速度和效率的同时还能够获取输入序列中的长距离依赖关系和心电图信号的频率、幅度以及时域特征信息,从而有效捕捉心律失常的模式和特征的同时也从心电图数据中提取丰富的特征表示,提高检测的效率及准确性;并通过内部线性堆叠层对高维特征表示进行特征压缩,及通过非线性激活函数放大微小变化,更好地捕获输入序列中的复杂模式和结构,从而在压缩和减小心电图特征的尺寸、减少计算复杂性的同时保留心电图信号的关键重要信息及凸显心律失常的模式和特征,且本发明的心电压缩栈式自编码器对噪声具有一定的鲁棒性,具有很好的抗噪能力,进而能够实现更高的检测准确性和更强的泛化能力;
再通过特征检测分类器的核函数计算实时数据点的低维特征表示与支持向量之间的相关性,通过决策函数对心律失常进行分类检测,这种自适应分类器能够根据数据的特征自动调整分类边界,并且可以处理非线性关系,提高分类的准确性。
其中,采用核函数来表示实时数据点的低维特征表示与支持向量在高维空间中的点积,可以将低维特征映射到高维特征空间,从而更好地处理非线性关系,采用高斯核函数可以更准确地表达数据点之间的相似性;
并通过对支持向量的权重、类别标签和核函数的计算,构建决策函数来对数据点进行分类检测,利用了支持向量和它们对应的权重,以及核函数的计算结果,对数据点的特征表示进行加权求和,这种方式能够自适应地调整分类边界,并结合偏置项,通过判断决策函数的正负值来确定数据点的分类结果,从而能够更准确地判断数据点的心律状态。
附图说明
图1是本发明提供的基于心电图的心律失常识别检测方法的流程示意图;
图2是本发明提供的基于心电图的心律失常识别检测系统的系统框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例一
参考图1,实施例一提供一种基于心电图的心律失常识别检测方法,在老人所在房间内部署毫米波雷达及各类传感器,包括步骤S101~ S103:
S101,对心电图进行信号检测以获取心电图信号;
S102,构建基于transformer的心电压缩栈式自编码器并将心电图信号作为输入序列输入心电压缩栈式自编码器,以通过心电压缩栈式自编码器对输入序列进行特征提取及压缩,具体包括:
通过外层Transformer块的自注意力机制对输入序列中每个数据点与其他数据点之间的关系进行计算及变换以输出包含输入序列中长距离依赖关系的高维特征表示,及通过外层Transformer块的前馈神经网络对自注意力机制输出的高维特征表示进行非线性变换以得到包含输入序列中心电图信号的频率、幅度和时域特征信息的最终特征表示。
进一步的,所述通过外层Transformer块的自注意力机制对输入序列中每个数据点与其他数据点之间的关系进行计算及变换以输出包含输入序列中长距离依赖关系的高维特征表示的步骤包括:
将输入序列映射到三个向量空间,三个向量空间分别为查询(query)、键(key)和值(value),查询向量q=Wq*c,键向量k=Wk*c及值向量v=Wv*c,其中,Wq、Wk和Wv为学习参数,c为输入序列中数据点上的电压读数经过embedding后的嵌入表示,这将为每个数据点提供一个查询向量、一个键向量和一个值向量;
对输入序列中每个数据点对应的查询向量与所有其他数据点对应的键向量的相似度分数进行点积计算并缩放处理,即score= ,其中,score为相似度分数,q为查询向量,k为键向量,dk为键向量的维度,需要说明的是,原始的注意力得分是由查询和键的点积计算得到的,但直接使用点积结果可能会导致数值稳定性问题,特别是当 dk 很大时,点积的结果可能会非常大,导致 softmax 函数的输出非常接近0或1,这会导致梯度消失问题,因此,在计算注意力得分时除以/>,是一种归一化手段,保证注意力得分的范围不会随着dk的增大而变得过大,从而保证数值的稳定性;
通过softmax函数对点积计算得到的相似度分数进行softmax分数计算以得到输入序列中每个数据点与其他数据点的相关程度,相关程度为a=softmax(score),对于c=[c1,c2,...,cn],softmax(ci)=,输入序列中每个数据点与其他数据点的相关程度为0到1之间的数;
对输入序列中每个数据点对应的值向量与其对应的softmax分数进行加权求和以得到每个数据点的高维特征表示,数据点的高维特征表示为f=a*v,其中,a 为输入序列中的数据点与其他数据点的相关程度,v为值向量,数据点的高维特征表示包含了序列中所有其他数据点的信息,通过权衡并融合序列中不同数据点的信息,使得每个数据点的高维特征表示都包含了与其相关的上下文信息。
需要说明的是,结合运用了自注意力机制和softmax函数,通过映射到查询、键和值的向量空间,以及相似度计算和加权求和的方式,实现了对心电图信号的特征提取和表示学习,这种方式为心电图信号处理提供了新的思路,并有潜力提高心律失常检测的准确性和性能。
先将输入序列映射到三个向量空间,其中查询向量、键向量和值向量分别用于计算相似度分数和进行加权求和,这种映射方式通过学习参数来实现,使得模型能够自动学习到适合任务的特征表示,通过查询向量和键向量的相似度计算,模型可以确定输入序列中每个数据点与其他数据点的相关程度;
再运用自注意力机制计算查询向量和键向量之间的相似度,来获取输入序列中每个数据点与其他数据点的相关程度,这种机制能够充分捕捉输入序列中的长距离依赖关系,而不受固定窗口大小的限制,在心电图信号的处理中,能够捕捉到不同数据点之间的相关性以及心电图信号中的频率、幅度和时域特征信息;
再使用softmax函数对相似度分数进行缩放处理和归一化,以获得输入序列中每个数据点与其他数据点的相关程度。softmax函数能够将相似度分数转化为0到1之间的概率值,表示每个数据点的权重或注意力权重。通过对softmax分数进行加权求和,方案能够更加准确地捕捉到输入序列中每个数据点的重要性,从而生成数据点的高维特征表示。
更进一步的,所述通过外层Transformer块的前馈神经网络对自注意力机制输出的高维特征表示进行非线性变换以得到包含输入序列中心电图信号的频率、幅度和时域特征信息的最终特征表示的步骤包括:
对输入序列中每个数据点的高维特征表示进行一次线性变换以得到一次变换结果,一次变换结果为A=W1*f+b1,其中,W1为第一权重矩阵,b1为第一偏置项,f为数据点的高维特征表示,W1用于从输入空间到隐藏层的变换;
通过非线性激活函数对一次变换结果进行计算以得到非线性激活结果,非线性激活结果为A'= ReLU(A),其中,ReLU(A)=max(0,A),A大于0则输出A,否则输出0,ReLU(A)为非线性激活函数;
对非线性激活结果进行二次线性变换以得到二次变换结果,二次变换结果为Y=W2*A'+b2,其中,W2为第二权重矩阵,b2为第二偏置项,W2用于从隐藏层到输出空间的变换。
需要说明的是,通过引入线性变换、非线性激活函数和二次线性变换,对高维特征表示进行进一步的特征提取和表示学习,这种组合和顺序处理方式能够提高模型对数据点特征的表达能力,并更好地捕捉到数据中的复杂模式和结构。
首先通过一次线性变换,将高维特征表示进行线性变换,得到一次变换结果,这个线性变换由权重矩阵W1和偏置项b1组成,可以将高维特征表示映射到另一个向量空间,通过这种线性变换,可以引入一定的线性关系,从而提取更多特征的组合和相关性,进一步丰富数据点的表达能力;
再对一次变换结果进行非线性激活函数的计算,得到非线性激活结果,这里使用ReLU函数作为非线性激活函数,它具有非线性映射的特性,能够引入非线性关系并增强模型对复杂模式的表达能力,ReLU函数在输入大于0时输出输入值,而在输入小于等于0时输出0,这种门控机制能够放大正值的信号,并丢弃负值,从而激活特征表示中的重要部分;
再通过二次线性变换,将非线性激活结果再次进行线性变换,得到二次变换结果,这个二次线性变换由权重矩阵W2和偏置项b2组成,再次引入线性关系以进一步提取特征,二次线性变换能够捕捉更多特征的组合和交互作用,有助于更好地表达数据点的复杂模式和结构。
通过内部线性堆叠层对前馈神经网络输出的最终特征表示进行线性变换压缩以得到心电图信号的低维表示,及对心电图信号的低维表示进行非线性激活以放大微小变化捕获输入序列中的复杂模式和结构,非线性激活属于非线性的,这意味着即使输入数据在某些方面进行了微小的变化,输出数据也可能发生显著的变化,这样,即使输入数据中的模式和结构非常复杂,非线性激活函数也能够帮助我们的模型学习并捕获这些模式和结构。对线性变换及非线性激活步骤重复执行四次以得到包含输入序列中复杂模式和结构信息的低维特征表示。
需要说明的是,在构建心电压缩栈式自编码器的过程中,训练心电压缩栈式自编码器的特征压缩性能的时候,在对特征压缩后,还需要对压缩后的特征进行还原重建以优化心电表示学习器的性能,使得压缩后的特征能够最大程度保留心电图信号中关于心律失常特征的重要及关键信息,从而提高对心律失常检测的准确性,压缩重建训练步骤如下:
将原始高维特征输入心电表示学习器编码器,通过心电表示学习器编码器进行一系列的线性变换及非线性激活以将原始高维特征转换为低维空间表示;将心电图信号的低维空间表示输入心电信号重建器解码器,通过心电信号重建器解码器进行一系列的线性变换及非线性激活以将心电图信号的低维空间表示重建还原为高维空间表示;对心电信号重建器解码器重建还原的高维空间表示与原始高维特征的差异进行比较并计算均方差损失;通过反向传播算法对损失函数对于心电表示学习器编码器和心电信号重建器解码器的权重的梯度进行计算;根据权重的梯度并通过优化算法(如梯度下降)对编码器和解码器的参数进行更新以减小损失函数的值;重复执行上述步骤,通过多次迭代对心电表示学习器编码器和心电信号重建器解码器的参数进行不断优化以构建性能良好的心电压缩栈式自编码器。
通过上述步骤,心电压缩栈式自编码器可以从心电图信号中学习到数据的低维特征表示,并能够准确地重构原始数据,训练过程中的迭代和参数调整可以不断优化模型,以获得更好的性能。
S103,构建特征检测分类器并通过特征检测分类器的决策函数对基于transformer的心电压缩栈式自编码器压缩后的心电低维特征表示进行分类检测以获取心律失常的预测结果,具体包括:
计算核函数的值:K(xi,x)=,
计算决策函数的值:f(x)=Σ(αi*yi*K(xi,x))+b,
其中,K(xi,x)是核函数,用来表示实时的数据点的低维特征表示x与支持向量xi在高维空间中的点积,x为实时的数据点的低维特征表示,||xi-x||为欧几里得距离,表示xi与x两个点在空间中的直线距离,γ>0,为核函数的超参数,在训练的时候可以进行优化设定,控制了映射到新特征空间中的"宽度"或"扩展",αi为每个支持向量的拉格朗日乘子,yi为支持向量对应的类别标签,心律正常的类别标签定为1,心律失常的类别标签定为-1,b为偏置项,
对决策函数f(x)的正负值进行判断,若f(x)>0,则x被分类为正类,类别标签定为1,并判定x对应的数据点的心律是正常的,若f(x)<0,则x被分类为负类,类别标签定为-1,并判定x对应的数据点的心律是失常的。
需要说明的是, 在构建特征检测分类器的时候,将获得的低维特征表示作为输入数据,为输入数据的每个样本标注心律失常或心律正常的类别作为目标标签;可以使用标准的SVM算法(例如支持向量机分类器)来构建特征检测分类器,SVM需要通过寻找一个最优的超平面来实现数据的分类;可以根据具体情况选择线性核函数或非线性核函数(如高斯核函数)来定义SVM模型的决策边界;使用训练数据集对SVM分类器进行训练,训练过程中,SVM会根据样本的特征表示和相应的标签进行优化,以找到一个最优的决策边界;SVM的训练过程通常涉及到优化问题的求解,可以使用优化算法(如序列最小优化算法)进行模型参数的更新和优化;可以通过交叉验证等方法,调整SVM模型的超参数,如正则化参数C和核函数的参数等,以提高模型的性能和泛化能力。
本发明利用Transformer的并行处理能力,使得模型可以加速心电图信号的处理。在实验中,对于1秒的信号,预处理在CPU上花费1毫秒,神经网络推断在GPU上花费0.03毫秒,SVM预测在CPU上花费0.29毫秒。从信号采集到神经网络预测的总时间仅为1.32毫秒。这些结果显示了我们的模型在实时心电图信号处理方面的潜力。
本发明的心电压缩栈式自编码器总共有五层,其中Transformer位于最外层,用于生成特征矩阵,四个内部线性连接堆叠层用于压缩和使用逐层贪婪训练。模型是通过压缩与学习低维特征的映射,然后通过还原重构进行构建的,这样,神经网络可以自动学习低维数据特征表示,最后,使用SVM分类器进行高效的特征检测。
对心电压缩栈式自编码器进行训练时,当每个层的训练轮数为15,批处理大小为32,优化器为Adam,学习率为0.001时,模型达到最佳状态。Transformer块的参数定义为dmodel(64),head(4)和layer(3)。SVM使用高斯核函数(RBF),其惩罚系数C为0.5。
训练步骤包括:
数据预处理流程:本发明模型使用MIT-BIH心律失常数据库评估了模型的性能。该数据库包含48个独立测试患者的48个记录,总计约30227分钟,包括MLII、V5和V2导联。采样频率为360Hz。选取数据库中的五个标签作为检测标签,包括A(房性早搏)、L(左束支传导阻滞)、N(正常)、R(右束支传导阻滞)和V(室性早搏)。在数据预处理中,校正每个完整心电图信号的基线漂移,并对信号进行分段处理。选择MLII导联进行实验。由于数据的采样频率为360Hz,因此将1秒的信号分为一个段,即360个点为一个信号段。具体方法是以R峰前179个点到R峰后180个点。我们对分段数据的每个段进行Z-score归一化处理。
模型训练流程:初始时,训练Transformer的最外层,以获得心电表示学习器的输出和注意力权重矩阵。它的输出作为后续层的输入,然后与线性层形成一个自编码器(AE),对输入数据进行压缩与维度约简,并通过自身训练来重构数据。从最后一层获得的低维特征表示矩阵然后用作心电图(ECG)特征和SVM分类器的训练。在训练心电压缩栈式自编码器时,整个过程是无监督的。目标是通过最小化损失函数来重构未标记的心电图数据,以获得维度约简后的特征表示。SVM通过有监督的训练进行训练。心电压缩栈式自编码器采用逐层训练的方法来简化复杂问题并减少不稳定性。首先,预训练第一层以获得初始化参数,然后冻结第一层,并将第一层中间隐藏层的压缩输入到第二层进行继续训练。重复这个过程直到达到最内层。训练完所有层后,将所有层的心电表示学习器按顺序组合起来。原始数据依次通过心电表示学习器层输入,生成可用于检测的最低维度特征。
本发明对心律失常检测的抗噪效果,也在MIT-BIH心律失常数据库上进行了基准测试。如表1,在基于心拍的心律失常检测的十折交叉验证中,平均准确率、敏感度、特异度和F1分数分别为99.83%、98.84%、99.84%和99.13%。对于基于记录的十折交叉验证实验中,即实验中采用的训练和测试集来自独立记录的患者的心电图数据,其准确率、敏感度、特异度和F1分数分别为88.10%、49.79%、91.56%和39.95%。如表2,在-5dB的低信噪比条件下,基于心拍的十折交叉验证实验中,平均准确率、敏感度、特异度和F1分数分别达到了99.79%、98.65%、99.80%和98.92%。然而,在基于记录的十折交叉验证实验中,平均准确率、敏感度、特异度和F1分数分别达到了86.85%、46.43%、89.43%和36.50%。从表1和表2 的对比可以看出,去噪信号和带有高斯噪声的原始信号对实验结果的影响几乎没有差异,因此,可以看出噪声对本发明模型性能影响很小,从而表明该模型具有很好的抗噪能力,进而能够实现更高的检测准确性和更强的泛化能力。
表1 基于心拍与基于记录的十折交叉验证实验结果
表2 在不同信噪比下基于心拍与基于记录的十折交叉验证实验结果
其中,Acc:检测准确率(Accuracy),是一个评估分类模型的指标,它表示模型在所有样本中正确预测的比例,即预测正确的样本数除以总样本数。
Se:敏感度(Sensitivity),是一个评估分类模型的指标,它表示模型在预测正例时的准确性,即将实际为正例的样本预测为正例的能力,也被称为真阳性率或召回率。
Sp:特异性(Specificity),是一个评估分类模型的指标,它表示模型在预测负例时的准确性,即将实际为负例的样本预测为负例的能力。
F1:F1分数,是一个综合考虑准确率和敏感度的指标,它是准确率和敏感度的调和平均值,用于衡量分类模型的综合性能,尤其适用于不平衡数据集。 F1分数的取值范围在0到1之间,值越接近1表示模型的性能越好。
A:表示房性早搏,L:表示左束支传导阻滞,N:表示正常窦性心律,R:表示右束支传导阻滞,V:表示室性早搏,Total:表示平均结果。
本发明的心电压缩栈式自编码器通过外层Transformer块的自注意力机制及前馈神经网络对输入序列进行特征提取,利用外层Transformer块的并行计算能力和对长距离依赖性的处理能力,提高了处理速度和效率的同时还能够获取输入序列中的长距离依赖关系和心电图信号的频率、幅度以及时域特征信息,从而有效捕捉心律失常的模式和特征的同时也从心电图数据中提取丰富的特征表示,提高检测的效率及准确性;并通过内部线性堆叠层对高维特征表示进行特征压缩,及通过非线性激活函数放大微小变化,更好地捕获输入序列中的复杂模式和结构,从而在压缩和减小心电图特征的尺寸、减少计算复杂性的同时保留心电图信号的关键重要信息及凸显心律失常的模式和特征。且本发明的心电压缩栈式自编码器对噪声具有一定的鲁棒性,具有很好的抗噪能力,进而能够实现更高的检测准确性和更强的泛化能力。
再通过特征检测分类器的核函数计算实时数据点的低维特征表示与支持向量之间的相关性,通过决策函数对心律失常进行分类检测,这种自适应分类器能够根据数据的特征自动调整分类边界,并且可以处理非线性关系,提高分类的准确性。
其中,采用核函数来表示实时数据点的低维特征表示与支持向量在高维空间中的点积,可以将低维特征映射到高维特征空间,从而更好地处理非线性关系,采用高斯核函数可以更准确地表达数据点之间的相似性;
并通过对支持向量的权重、类别标签和核函数的计算,构建决策函数来对数据点进行分类检测,利用了支持向量和它们对应的权重,以及核函数的计算结果,对数据点的特征表示进行加权求和,这种方式能够自适应地调整分类边界,并结合偏置项,通过判断决策函数的正负值来确定数据点的分类结果,从而能够更准确地判断数据点的心律状态。
实施例二
所述对心电图进行信号检测以获取心电图信号的步骤后还包括:
对没有检测到信号的时间点打上占位符并标记为缺失数据点,占位符是在数据中表示缺失值的特殊标记或符号,能够有效地识别和标记心电图信号中的缺失数据,对缺失数据进行准确定位;
对心电图信号进行预处理以确保信号的质量和准确性,所述预处理包括滤波、去基线漂移和QRS波检测;
从心电图信号中检测及定位QRS波,并计算相邻两个QRS波之间的时间间隔,设为RR间期,其中,对于第n个QRS波和第n+1个QRS波的时间戳tn和tn+1,RR间期Rn= tn+1-tn,当RR间期超过某个预先设定的阈值时,通常表示心率的变化较大,可能存在异常或其他心电图变化,对于心电图数据,QRS波代表心脏的心室收缩,QRS波峰值时间点是心电图中的一个特征数据点,而相邻的两个QRS波峰值时间点之间的时间间隔被称为RR间期,用于测量心率和分析心律特征;
根据每个RR间期计算心率,并根据每个心率计算每个心搏对应的心率周期长度,其中,心率为每分钟的心搏数,对于第n个RR间期Rn,心率Hn = 60/Rn的平均值,心率周期长度Tn=1/Hn;
将心电图信号按照RR间期分割心率周期,根据占位符定位找到当前心率周期中的缺失数据点,对当前心率周期内缺失数据点与其相邻心率周期内各特征数据点之间的时间差进行计算,并根据时间差计算相邻心率周期内各特征数据点对当前心率周期内缺失数据点的插值权重,特征数据点包括QRS波的峰值点、ST段的起始点、ST段的结束点和T波的峰值点,在进行插值时,插值权重用于确定相邻周期特征数据对缺失数据点的影响程度,根据缺失数据点位置与相邻周期特征数据的时间点之间的时间差,可以计算插值权重,以衡量相邻周期特征数据对缺失数据点的贡献;
根据相邻心率周期内各特征数据点的信号值及各特征数据点的插值权重计算当前心率周期中缺失数据点的估算值,缺失数据点的估算值e'(t)=w1*e1+w2*e2+...+wn*en,其中,e1、e2、...、en为相邻心率周期内各特征数据点的信号值,w1、w2、...、wn为相邻心率周期内各特征数据点的插值权重。
需要说明的是,在获取心电图信号的时候,可能由于设备原因或者患者活动导致信号接收不良原因,可能会出现一些数据点信号缺失的情况,缺失的数据信号如果没有进行修复处理,可能会对最终的检测结果产生一定的影响,传统的缺失值处理方法往往是通用的,通常只考虑特征之间的相关性,而无法充分利用特定领域的特征和知识。
而本实施例采用了心电缺失数据点处理、心电图信号的预处理和插值处理的方法来修补缺失数据,以保证心电图信号的准确性和完整性,这种方式可以更好的适用于心电图信号特征,能够有效地提取心率相关信息,并填补心电缺失数据点,从而获得更完整和准确的心电图信号特征。
本实施例利用心电图信号中的周期性特征和相邻周期的信息来进行插值补充,通过利用心电图的信号特征和心率周期信息,能够更好地捕捉心电图信号中的周期性变化和特定的心电波形模式。且根据相邻心率周期内的特征数据点进行插值处理,利用相邻周期的信息来估算当前周期的缺失数据点,这种插值方式考虑了相邻周期的特征值和时间差异,更加贴近实际数据的动态变化,相对于简单的均值或线性插值,该方法更加准确地估算了缺失数据点。
且本实施例不仅使用相邻周期的特征数据点信号值,还考虑了特征数据点与当前缺失数据点之间的时间差异,并根据时间差计算插值权重,从而能够根据时间差的大小调整特征数据点对当前周期缺失数据点的影响程度,更加合理地估算缺失值。在针对心电图信号中的缺失数据进行处理的时候,还考虑了心率和心电波形的相关性,根据心电图信号的特点和需求,设计了专门的插值方式,能够更好地处理心电图信号中的缺失数据。
进一步的,所述根据时间差计算相邻心率周期中各特征数据点对当前心率周期中缺失数据点的插值权重的步骤包括:
判断相邻心率周期内特征数据点的变化是否均匀;
若相邻心率周期内特征数据点的变化均匀,则根据当前心率周期内缺失数据点与相邻心率周期内特征数据点的时间差进行线性插值计算以得到插值权重,插值权重=1-(时间差/相邻心率周期的周期长度),较远的数据点具有较小的权重,而较近的数据点具有较大的权重;
若相邻心率周期内特征数据点的变化不均匀,则根据当前心率周期内缺失数据点与相邻心率周期内特征数据点之间的时间差进行时间差加权插值计算以得插值权重,插值权重=1/(时间差+ε),ε为一个趋近于0但不等于0的正数值,若出现时间差为0的情况,ε可以避免除以零的情况。
需要说明的是,通过考虑特征数据点的均匀变化和不均匀变化两种不同的情况,分别采用线性插值和时间差加权插值的方式来计算插值权重,以更准确地估算当前心率周期中的缺失数据点,这种插值权重计算方式可以更好的适应不同的特征数据点的变化特性,充分利用特征数据点的变化特性和时间差信息,提高插值的准确性和适应性。
当相邻心率周期内特征数据点的变化均匀时,采用线性插值计算插值权重,这种方式考虑了时间差与相邻周期的周期长度之间的比例关系,这种插值方式能够根据时间差的大小调整特征数据点对当前周期缺失数据点的影响程度。
当相邻心率周期内特征数据点的变化不均匀时,采用时间差加权插值计算插值权重,这种方式能够将更大的权重分配给时间差较小的特征数据点,从而更好地估算缺失数据点。
更进一步的,所述判断相邻心率周期内特征数据点的变化是否均匀的步骤包括:
分别获取相邻心率周期和当前心率周期内的特征数据点序列;
对相邻周期内任一目标特征数据点与当前周期内对应位置的目标特征数据点之间的变化差异度量进行计算,变化差异度量=|(数据点(i)的信号值-数据点(i-1)的信号值)/数据点(i-1)的信号值|*100,其中数据点(i)的信号值为目标特征数据点在当前心率周期中的信号值,数据点(i-1)的信号值为目标特征数据点在相邻心率周期中的信号值;
根据计算得到的变化差异度量生成相邻心率周期内特征数据点之间的差异序列,并对差异序列中的变化差异度量进行平均值计算以得到变化差异度量平均值;
根据差异序列中的每个变化差异度量及变化差异度量平均值对相邻心率周期内特征数据点之间变化差异的方差进行计算,来评估数据点之间的变化分布和离散程度;
将相邻心率周期内特征数据点之间变化差异的方差与方差阈值进行对比以判断相邻心率周期内特征数据点的变化是否均匀;
若相邻心率周期内特征数据点之间变化差异的方差小于方差阈值,则判定相邻心率周期内特征数据点的变化均匀;
若相邻心率周期内特征数据点之间变化差异的方差大于方差阈值,则判定相邻心率周期内特征数据点的变化不均匀。
需要说明的是,通过计算变化差异度量、方差的计算和阈值对比,能够根据特征数据点的变化情况判断数据点的变化模式,从而能够更准确地评估特征数据点之间的变化均匀性,为插值处理提供依据。
先通过计算相邻周期内任一目标特征数据点与当前周期内对应位置的目标特征数据点之间的变化差异度量来衡量数据点的变化程度,这种度量方式是基于信号值之间的相对变化率对数据点的变化进行度量,能够更准确地反映特征数据点之间的变化差异。再根据计算得到的变化差异度量生成相邻心率周期内特征数据点之间的差异序列,并计算差异序列中的变化差异度量的平均值,可以更好地描述相邻周期内特征数据点之间的整体变化趋势和平均差异程度。接着利用差异序列中的每个变化差异度量及变化差异度量平均值来计算相邻心率周期内特征数据点之间变化差异的方差,并将方差与预设的阈值进行对比,从而能够评估数据点之间的变化分布和离散程度,判断数据点的变化是否均匀。最后根据方差与阈值的对比结果,判断相邻心率周期内特征数据点的变化是均匀还是不均匀,通过判断变化差异的方差,能够自适应地判断数据点的变化情况,从而确定相邻周期内特征数据点的变化模式。
实施例三
所述构建特征检测分类器并通过特征检测分类器的决策函数对基于transformer的心电压缩栈式自编码器压缩后的心电低维特征表示进行分类检测以获取心律失常的预测结果的步骤后还包括:
根据特征检测分类器获取的输入序列内每个数据点对应的心律失常预测结果生成预测结果序列,预测结果序列为{y1,y2,y3,...,yn},其中,数据点的总数为n;
设置一个窗口,窗口大小为N;
从第一个数据点开始,通过窗口在预测结果上进行滑移,每次框取预测结果序列中的N个数据点并计算每个窗口内数据点对应的心律失常预测结果的平均值,直至遍历完整个预测结果序列,组成新序列,对于第i个数据点到第i+N-1个数据点对应的心律失常预测结果的平均值zi= (yi+ yi+1+ yi+2+...+yi+N-1) /N,得到的新序列为{z1,z2,...,zn-N+1},其中,zi表示对应窗口内心律失常预测结果的平均值;
根据阈值对每个窗口内的心律失常预测结果的平均值进行对比分析;
若窗口内的心律失常预测结果的平均值大于阈值,则判定窗口对应的时间段内存在心律失常。
需要说明的是,为了进一步保证心律失常预测结果的准确性和可靠性,本实施例引入了滑动窗口的概念,并通过计算每个窗口内数据点对应的心律失常预测结果的平均值来获取新序列,该方案利用窗口内的预测结果平均值,能够减小窗口内个别数据点的影响,从而在特征检测分类器获取的预测结果的基础上提高预测结果的稳定性和可靠性。且采用滑动窗口在预测结果序列上进行滑移,这种数据采集能够保留数据的时序性和连续性,并能够在序列中捕捉到局部的特征和变化趋势,便于对较长时间范围内的心律失常进行检测。
再将每个窗口内的心律失常预测结果平均值与设定的阈值进行对比分析,通过设置合适的阈值,从而能够根据平均值的大小判断窗口对应的时间段内是否存在心律失常。阈值的设定在实际应用中需要依据具体的情况来定,在这里,假设 SVM 分类器的输出是一个连续的值,大于0表示正类(心律正常),小于 0 表示负类(心律失常),那么,阈值设为 0是一种自然的选择,因为这样的话窗口内预测结果的平均值大于 0 就意味着窗口内有更多的数据点被预测为正类。然而,根据实际的数据分布和分类器的性能,可能需要调整这个阈值,比如,如果分类器对于正类的预测更有信心(也就是说,当预测为正类时,输出的值往往远大于0),那么可以将阈值设定得更大一些,以减少误报的可能性,总的来说,阈值的设定需要根据实际情况进行调整,并通过交叉验证等方法进行验证。
设置窗口大小的步骤包括:
先根据心电图数据的采样频率及期望检测到的心律失常的持续时间设置初始窗口大小,初始窗口大小=采样频率*持续时间。例如,如果采样频率是500Hz(即每秒500个数据点),并且你希望能够检测到至少持续200毫秒的心律失常,那么初始窗口大小应为500Hz* 0.2s = 100个数据点;
再通过验证集对初始窗口大小进行上下调整及交叉验证并选择表现最好的窗口大小作为最终窗口大小。滑动窗口大小的选择需要一个权衡较大的窗口更能捕捉到持续的心律失常,但可能会在时间精度上有所损失,而较小的窗口可能会导致频繁的误判,但在时间精度上会更好,因此在选择时可以对初始窗口大小进行范围内调整及验证,例如,若初始窗口大小为100个数据点,那么可以尝试从50个数据点的窗口开始,然后逐渐增大到150个数据点,查看每个窗口大小下的模型性能如何,从而选择效果最好的窗口大小。
实施例四
参考图2,实施例四提供一种基于心电图的心律失常识别检测系统,包括:
信号检测模块:用于对心电图进行信号检测以获取心电图信号;
特征提取压缩模块:用于构建基于transformer的心电压缩栈式自编码器并将心电图信号作为输入序列输入心电压缩栈式自编码器,以通过心电压缩栈式自编码器对输入序列进行特征提取及压缩,具体包括:
通过外层Transformer块的自注意力机制对输入序列中每个数据点与其他数据点之间的关系进行计算及变换以输出包含输入序列中长距离依赖关系的高维特征表示,及通过外层Transformer块的前馈神经网络对自注意力机制输出的高维特征表示进行非线性变换以得到包含输入序列中心电图信号的频率、幅度和时域特征信息的最终特征表示,
通过内部线性堆叠层对前馈神经网络输出的最终特征表示进行线性变换压缩以得到心电图信号的低维表示,及对心电图信号的低维表示进行非线性激活以放大微小变化捕获输入序列中的复杂模式和结构,对线性变换及非线性激活步骤重复执行四次以得到包含输入序列中复杂模式和结构信息的低维特征表示;
分类检测模块:用于构建特征检测分类器并通过特征检测分类器的决策函数对基于transformer的心电压缩栈式自编码器压缩后的心电低维特征表示进行分类检测以获取心律失常的预测结果,具体包括:
计算核函数的值:K(xi,x)=,
计算决策函数的值:f(x)=Σ(αi*yi*K(xi,x))+b,
其中,K(xi,x)是核函数,用来表示实时的数据点的低维特征表示x与支持向量xi在高维空间中的点积,x为实时的数据点的低维特征表示,||xi-x||为欧几里得距离,表示xi与x两个点在空间中的直线距离,γ>0,为核函数的超参数,αi为每个支持向量的拉格朗日乘子,yi为支持向量对应的类别标签,心律正常的类别标签定为1,心律失常的类别标签定为-1,b为偏置项,
对决策函数f(x)的正负值进行判断,若f(x)>0,则x被分类为正类,类别标签定为1,并判定x对应的数据点的心律是正常的,若f(x)<0,则x被分类为负类,类别标签定为-1,并判定x对应的数据点的心律是失常的。
识别检测系统还包括缺失数据补充模块,所述缺失数据补充模块用于:
对没有检测到信号的时间点打上占位符并标记为缺失数据点;
对心电图信号进行预处理,所述预处理包括滤波、去基线漂移和QRS波检测;
从心电图信号中检测及定位QRS波,并计算相邻两个QRS波之间的时间间隔,设为RR间期,其中,对于第n个QRS波和第n+1个QRS波的时间戳tn和tn+1,RR间期Rn= tn+1-tn;
根据每个RR间期计算心率,并根据每个心率计算每个心搏对应的心率周期长度,其中,心率为每分钟的心搏数,对于第n个RR间期Rn,心率Hn = 60/Rn的平均值,心率周期长度Tn=1/Hn;
将心电图信号按照RR间期分割心率周期,根据占位符定位找到当前心率周期中的缺失数据点,对当前心率周期内缺失数据点与其相邻心率周期内各特征数据点之间的时间差进行计算,并根据时间差计算相邻心率周期内各特征数据点对当前心率周期内缺失数据点的插值权重,特征数据点包括QRS波的峰值点、ST段的起始点、ST段的结束点和T波的峰值点;
根据相邻心率周期内各特征数据点的信号值及各特征数据点的插值权重计算当前心率周期中缺失数据点的估算值,缺失数据点的估算值e'(t)=w1*e1+w2*e2+...+wn*en,其中,e1、e2、...、en为相邻心率周期内各特征数据点的信号值,w1、w2、...、wn为相邻心率周期内各特征数据点的插值权重。
所述缺失数据补充模块用于:
判断相邻心率周期内特征数据点的变化是否均匀;
若相邻心率周期内特征数据点的变化均匀,则根据当前心率周期内缺失数据点与相邻心率周期内特征数据点的时间差进行线性插值计算以得到插值权重,插值权重=1-(时间差/相邻心率周期的周期长度);
若相邻心率周期内特征数据点的变化不均匀,则根据当前心率周期内缺失数据点与相邻心率周期内特征数据点之间的时间差进行时间差加权插值计算以得插值权重,插值权重=1/(时间差+ε),ε为一个趋近于0但不等于0的正数值。
所述缺失数据补充模块还用于:
分别获取相邻心率周期和当前心率周期内的特征数据点序列;
对相邻周期内任一目标特征数据点与当前周期内对应位置的目标特征数据点之间的变化差异度量进行计算,变化差异度量=|(数据点(i)的信号值-数据点(i-1)的信号值)/数据点(i-1)的信号值|*100,其中数据点(i)的信号值为目标特征数据点在当前心率周期中的信号值,数据点(i-1)的信号值为目标特征数据点在相邻心率周期中的信号值;
根据计算得到的变化差异度量生成相邻心率周期内特征数据点之间的差异序列,并对差异序列中的变化差异度量进行平均值计算以得到变化差异度量平均值;
根据差异序列中的每个变化差异度量及变化差异度量平均值对相邻心率周期内特征数据点之间变化差异的方差进行计算;
将相邻心率周期内特征数据点之间变化差异的方差与方差阈值进行对比以判断相邻心率周期内特征数据点的变化是否均匀;
若相邻心率周期内特征数据点之间变化差异的方差小于方差阈值,则判定相邻心率周期内特征数据点的变化均匀;
若相邻心率周期内特征数据点之间变化差异的方差大于方差阈值,则判定相邻心率周期内特征数据点的变化不均匀。
识别检测系统还包括结果修正模块,所述结果修正模块用于:
根据特征检测分类器获取的输入序列内每个数据点对应的心律失常预测结果生成预测结果序列,预测结果序列为{y1,y2,y3,...,yn},其中,数据点的总数为n;
设置一个窗口,窗口大小为N;
从第一个数据点开始,通过窗口在预测结果上进行滑移,每次框取预测结果序列中的N个数据点并计算每个窗口内数据点对应的心律失常预测结果的平均值,直至遍历完整个预测结果序列,组成新序列,对于第i个数据点到第i+N-1个数据点对应的心律失常预测结果的平均值zi= (yi+ yi+1+ yi+2+...+yi+N-1) /N,得到的新序列为{z1,z2,...,zn-N+1},其中,zi表示对应窗口内心律失常预测结果的平均值;
根据阈值对每个窗口内的心律失常预测结果的平均值进行对比分析;
若窗口内的心律失常预测结果的平均值大于阈值,则判定窗口对应的时间段内存在心律失常。
所述特征提取压缩模块还用于:
将输入序列映射到三个向量空间,三个向量空间分别为查询、键和值,查询向量q=Wq*c,键向量k=Wk*c及值向量v=Wv*c,其中,Wq、Wk和Wv为学习参数,c为输入序列中数据点上的电压读数经过embedding后的嵌入表示;
对输入序列中每个数据点对应的查询向量与所有其他数据点对应的键向量的相似度分数进行点积计算并缩放处理,即score= ,其中,score为相似度分数,q为查询向量,k为键向量,dk为键向量的维度;
通过softmax函数对点积计算得到的相似度分数进行softmax分数计算以得到输入序列中每个数据点与其他数据点的相关程度,相关程度为a=softmax(score),对于c=[c1,c2,...,cn],softmax(ci)=,输入序列中每个数据点与其他数据点的相关程度为0到1之间的数;
对输入序列中每个数据点对应的值向量与其对应的softmax分数进行加权求和以得到每个数据点的高维特征表示,数据点的高维特征表示为f=a*v,其中,a 为输入序列中的数据点与其他数据点的相关程度,v为值向量。
所述特征提取压缩模块还用于:
对输入序列中每个数据点的高维特征表示进行一次线性变换以得到一次变换结果,一次变换结果为A=W1*f+b1,其中,W1为第一权重矩阵,b1为第一偏置项,f为数据点的高维特征表示;
通过非线性激活函数对一次变换结果进行计算以得到非线性激活结果,非线性激活结果为A'= ReLU(A),其中,ReLU(A)=max(0,A),A大于0则输出A,否则输出0,ReLU(A)为非线性激活函数;
对非线性激活结果进行二次线性变换以得到二次变换结果,二次变换结果为Y=W2*A'+b2,其中,W2为第二权重矩阵,b2为第二偏置项。
所述特征提取压缩模块还用于:
将原始高维特征输入心电表示学习器编码器,通过心电表示学习器编码器进行一系列的线性变换及非线性激活以将原始高维特征转换为低维空间表示;
将心电图信号的低维空间表示输入心电信号重建器解码器,通过心电信号重建器解码器进行一系列的线性变换及非线性激活以将心电图信号的低维空间表示重建还原为高维空间表示;
对心电信号重建器解码器重建还原的高维空间表示与原始高维特征的差异进行比较并计算均方差损失;
通过反向传播算法对损失函数对于心电表示学习器编码器和心电信号重建器解码器的权重的梯度进行计算;
根据权重的梯度并通过优化算法对心电表示学习器编码器和心电信号重建器解码器的参数进行更新以减小损失函数的值;
重复执行上述步骤,通过多次迭代对心电表示学习器编码器和心电信号重建器解码器的参数进行不断优化以构建性能良好的心电压缩栈式自编码器。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种基于心电图的心律失常识别检测方法,其特征在于,步骤包括:
对心电图进行信号检测以获取心电图信号;
构建基于transformer的心电压缩栈式自编码器并将心电图信号作为输入序列输入心电压缩栈式自编码器,以通过心电压缩栈式自编码器对输入序列进行特征提取及压缩,具体包括:
通过外层Transformer块的自注意力机制对输入序列中每个数据点与其他数据点之间的关系进行计算及变换以输出包含输入序列中长距离依赖关系的高维特征表示,及通过外层Transformer块的前馈神经网络对自注意力机制输出的高维特征表示进行非线性变换以得到包含输入序列中心电图信号的频率、幅度和时域特征信息的最终特征表示,
通过内部线性堆叠层对前馈神经网络输出的最终特征表示进行线性变换压缩以得到心电图信号的低维表示,及对心电图信号的低维表示进行非线性激活以放大微小变化捕获输入序列中的复杂模式和结构,对线性变换及非线性激活步骤重复执行四次以得到包含输入序列中复杂模式和结构信息的低维特征表示;
构建特征检测分类器并通过特征检测分类器的决策函数对基于transformer的心电压缩栈式自编码器压缩后的心电低维特征表示进行分类检测以获取心律失常的预测结果,具体包括:
计算核函数的值:K(xi,x)=,
计算决策函数的值:f(x)=Σ(αi*yi*K(xi,x))+b,
其中,K(xi,x)是核函数,用来表示实时的数据点的低维特征表示x与支持向量xi在高维空间中的点积,x为实时的数据点的低维特征表示,||xi-x||为欧几里得距离,表示xi与x两个点在空间中的直线距离,γ>0,为核函数的超参数,αi为每个支持向量的拉格朗日乘子,yi为支持向量对应的类别标签,心律正常的类别标签定为1,心律失常的类别标签定为-1,b为偏置项,
对决策函数f(x)的正负值进行判断,若f(x)>0,则x被分类为正类,类别标签定为1,并判定x对应的数据点的心律是正常的,若f(x)<0,则x被分类为负类,类别标签定为-1,并判定x对应的数据点的心律是失常的。
2.根据权利要求1所述的基于心电图的心律失常识别检测方法,其特征在于,所述对心电图进行信号检测以获取心电图信号的步骤后还包括:
对没有检测到信号的时间点打上占位符并标记为缺失数据点;
对心电图信号进行预处理,所述预处理包括滤波、去基线漂移和QRS波检测;
从心电图信号中检测及定位QRS波,并计算相邻两个QRS波之间的时间间隔,设为RR间期,其中,对于第n个QRS波和第n+1个QRS波的时间戳tn和tn+1,RR间期Rn= tn+1-tn;
根据每个RR间期计算心率,并根据每个心率计算每个心搏对应的心率周期长度,其中,心率为每分钟的心搏数,对于第n个RR间期Rn,心率Hn = 60/Rn的平均值,心率周期长度Tn=1/Hn;
将心电图信号按照RR间期分割心率周期,根据占位符定位找到当前心率周期中的缺失数据点,对当前心率周期内缺失数据点与其相邻心率周期内各特征数据点之间的时间差进行计算,并根据时间差计算相邻心率周期内各特征数据点对当前心率周期内缺失数据点的插值权重,特征数据点包括QRS波的峰值点、ST段的起始点、ST段的结束点和T波的峰值点;
根据相邻心率周期内各特征数据点的信号值及各特征数据点的插值权重计算当前心率周期中缺失数据点的估算值,缺失数据点的估算值e'(t)=w1*e1+w2*e2+...+wn*en,其中,e1、e2、...、en为相邻心率周期内各特征数据点的信号值,w1、w2、...、wn为相邻心率周期内各特征数据点的插值权重。
3.根据权利要求2所述的基于心电图的心律失常识别检测方法,其特征在于,所述根据时间差计算相邻心率周期内各特征数据点对当前心率周期中缺失数据点的插值权重的步骤包括:
判断相邻心率周期内特征数据点的变化是否均匀;
若相邻心率周期内特征数据点的变化均匀,则根据当前心率周期内缺失数据点与相邻心率周期内特征数据点的时间差进行线性插值计算以得到插值权重,插值权重=1-(时间差/相邻心率周期的周期长度);
若相邻心率周期内特征数据点的变化不均匀,则根据当前心率周期内缺失数据点与相邻心率周期内特征数据点之间的时间差进行时间差加权插值计算以得插值权重,插值权重=1/(时间差+ε),ε为一个趋近于0但不等于0的正数值。
4.根据权利要求3所述的基于心电图的心律失常识别检测方法,其特征在于,所述判断相邻心率周期内特征数据点的变化是否均匀的步骤包括:
分别获取相邻心率周期和当前心率周期内的特征数据点序列;
对相邻周期内任一目标特征数据点与当前周期内对应位置的目标特征数据点之间的变化差异度量进行计算,变化差异度量=|(数据点(i)的信号值-数据点(i-1)的信号值)/数据点(i-1)的信号值|*100,其中数据点(i)的信号值为目标特征数据点在当前心率周期中的信号值,数据点(i-1)的信号值为目标特征数据点在相邻心率周期中的信号值;
根据计算得到的变化差异度量生成相邻心率周期内特征数据点之间的差异序列,并对差异序列中的变化差异度量进行平均值计算以得到变化差异度量平均值;
根据差异序列中的每个变化差异度量及变化差异度量平均值对相邻心率周期内特征数据点之间变化差异的方差进行计算;
将相邻心率周期内特征数据点之间变化差异的方差与方差阈值进行对比以判断相邻心率周期内特征数据点的变化是否均匀;
若相邻心率周期内特征数据点之间变化差异的方差小于方差阈值,则判定相邻心率周期内特征数据点的变化均匀;
若相邻心率周期内特征数据点之间变化差异的方差大于方差阈值,则判定相邻心率周期内特征数据点的变化不均匀。
5.根据权利要求1所述的基于心电图的心律失常识别检测方法,其特征在于,所述构建特征检测分类器并通过特征检测分类器的决策函数对基于transformer的心电压缩栈式自编码器压缩后的心电低维特征表示进行分类检测以获取心律失常的预测结果的步骤后还包括:
根据特征检测分类器获取的输入序列内每个数据点对应的心律失常预测结果生成预测结果序列,预测结果序列为{y1,y2,y3,...,yn},其中,数据点的总数为n;
设置一个窗口,窗口大小为N;
从第一个数据点开始,通过窗口在预测结果上进行滑移,每次框取预测结果序列中的N个数据点并计算每个窗口内数据点对应的心律失常预测结果的平均值,直至遍历完整个预测结果序列,组成新序列,对于第i个数据点到第i+N-1个数据点对应的心律失常预测结果的平均值zi= (yi+ yi+1+ yi+2+...+yi+N-1) /N,得到的新序列为{z1,z2,...,zn-N+1},其中,zi表示对应窗口内心律失常预测结果的平均值;
根据阈值对每个窗口内的心律失常预测结果的平均值进行对比分析;
若窗口内的心律失常预测结果的平均值大于阈值,则判定窗口对应的时间段内存在心律失常。
6.根据权利要求1所述的基于心电图的心律失常识别检测方法,其特征在于,所述通过外层Transformer块的前馈神经网络对自注意力机制输出的高维特征表示进行非线性变换以得到包含输入序列中心电图信号的频率、幅度和时域特征信息的最终特征表示的步骤包括:
对输入序列中每个数据点的高维特征表示进行一次线性变换以得到一次变换结果,一次变换结果为A=W1*f+b1,其中,W1为第一权重矩阵,b1为第一偏置项,f为数据点的高维特征表示;
通过非线性激活函数对一次变换结果进行计算以得到非线性激活结果,非线性激活结果为A'= ReLU(A),其中,ReLU(A)=max(0,A),A大于0则输出A,否则输出0,ReLU(A)为非线性激活函数;
对非线性激活结果进行二次线性变换以得到二次变换结果,二次变换结果为Y=W2*A'+b2,其中,W2为第二权重矩阵,b2为第二偏置项。
7.根据权利要求1所述的基于心电图的心律失常识别检测方法,其特征在于,所述构建基于transformer的心电压缩栈式自编码器的步骤包括:
将原始高维特征输入心电表示学习器编码器,通过心电表示学习器编码器进行一系列的线性变换及非线性激活以将原始高维特征转换为低维空间表示;
将心电图信号的低维空间表示输入心电信号重建器解码器,通过心电信号重建器解码器进行一系列的线性变换及非线性激活以将心电图信号的低维空间表示重建还原为高维空间表示;
对心电信号重建器解码器重建还原的高维空间表示与原始高维特征的差异进行比较并计算均方差损失;
通过反向传播算法对损失函数对于心电表示学习器编码器和心电信号重建器解码器的权重的梯度进行计算;
根据权重的梯度并通过优化算法对心电表示学习器编码器和心电信号重建器解码器的参数进行更新以减小损失函数的值;
重复执行上述步骤,通过多次迭代对心电表示学习器编码器和心电信号重建器解码器的参数进行不断优化以构建性能良好的心电压缩栈式自编码器。
8.一种基于心电图的心律失常识别检测系统,其特征在于,包括:
信号检测模块:用于对心电图进行信号检测以获取心电图信号;
特征提取压缩模块:用于构建基于transformer的心电压缩栈式自编码器并将心电图信号作为输入序列输入心电压缩栈式自编码器,以通过心电压缩栈式自编码器对输入序列进行特征提取及压缩,具体包括:
通过外层Transformer块的自注意力机制对输入序列中每个数据点与其他数据点之间的关系进行计算及变换以输出包含输入序列中长距离依赖关系的高维特征表示,及通过外层Transformer块的前馈神经网络对自注意力机制输出的高维特征表示进行非线性变换以得到包含输入序列中心电图信号的频率、幅度和时域特征信息的最终特征表示,
通过内部线性堆叠层对前馈神经网络输出的最终特征表示进行线性变换压缩以得到心电图信号的低维表示,及对心电图信号的低维表示进行非线性激活以放大微小变化捕获输入序列中的复杂模式和结构,对线性变换及非线性激活步骤重复执行四次以得到包含输入序列中复杂模式和结构信息的低维特征表示;
分类检测模块:用于构建特征检测分类器并通过特征检测分类器的决策函数对基于transformer的心电压缩栈式自编码器压缩后的心电低维特征表示进行分类检测以获取心律失常的预测结果,具体包括:
计算核函数的值:K(xi,x)=,
计算决策函数的值:f(x)=Σ(αi*yi*K(xi,x))+b,
其中,K(xi,x)是核函数,用来表示实时的数据点的低维特征表示x与支持向量xi在高维空间中的点积,x为实时的数据点的低维特征表示,||xi-x||为欧几里得距离,表示xi与x两个点在空间中的直线距离,γ>0,为核函数的超参数,αi为每个支持向量的拉格朗日乘子,yi为支持向量对应的类别标签,心律正常的类别标签定为1,心律失常的类别标签定为-1,b为偏置项,
对决策函数f(x)的正负值进行判断,若f(x)>0,则x被分类为正类,类别标签定为1,并判定x对应的数据点的心律是正常的,若f(x)<0,则x被分类为负类,类别标签定为-1,并判定x对应的数据点的心律是失常的。
9.根据权利要求8所述的基于心电图的心律失常识别检测系统,其特征在于,还包括缺失数据补充模块,所述缺失数据补充模块用于:
对没有检测到信号的时间点打上占位符并标记为缺失数据点;
对心电图信号进行预处理,所述预处理包括滤波、去基线漂移和QRS波检测;
从心电图信号中检测及定位QRS波,并计算相邻两个QRS波之间的时间间隔,设为RR间期,其中,对于第n个QRS波和第n+1个QRS波的时间戳tn和tn+1,RR间期Rn= tn+1-tn;
根据每个RR间期计算心率,并根据每个心率计算每个心搏对应的心率周期长度,其中,心率为每分钟的心搏数,对于第n个RR间期Rn,心率Hn = 60/Rn的平均值,心率周期长度Tn=1/Hn;
将心电图信号按照RR间期分割心率周期,根据占位符定位找到当前心率周期中的缺失数据点,对当前心率周期内缺失数据点与其相邻心率周期内各特征数据点之间的时间差进行计算,并根据时间差计算相邻心率周期内各特征数据点对当前心率周期内缺失数据点的插值权重,特征数据点包括QRS波的峰值点、ST段的起始点、ST段的结束点和T波的峰值点;
根据相邻心率周期内各特征数据点的信号值及各特征数据点的插值权重计算当前心率周期中缺失数据点的估算值,缺失数据点的估算值e'(t)=w1*e1+w2*e2+...+wn*en,其中,e1、e2、...、en为相邻心率周期内各特征数据点的信号值,w1、w2、...、wn为相邻心率周期内各特征数据点的插值权重。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310755802.2A CN116503673B (zh) | 2023-06-26 | 2023-06-26 | 一种基于心电图的心律失常识别检测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310755802.2A CN116503673B (zh) | 2023-06-26 | 2023-06-26 | 一种基于心电图的心律失常识别检测方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116503673A CN116503673A (zh) | 2023-07-28 |
CN116503673B true CN116503673B (zh) | 2023-09-19 |
Family
ID=87325140
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310755802.2A Active CN116503673B (zh) | 2023-06-26 | 2023-06-26 | 一种基于心电图的心律失常识别检测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116503673B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117290364B (zh) * | 2023-11-24 | 2024-01-30 | 深圳市成为高科技有限公司 | 一种市场调查数据智能存储方法 |
CN117785818B (zh) * | 2024-02-26 | 2024-05-10 | 山东惠分仪器有限公司 | 一种气相色谱仪数据优化存储方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110751131A (zh) * | 2019-11-16 | 2020-02-04 | 李汭傧 | 一种心律失常检测装置 |
CN114847905A (zh) * | 2022-05-10 | 2022-08-05 | 武汉大学 | 一种心率失常数据检测识别方法及系统 |
CN114970637A (zh) * | 2022-06-10 | 2022-08-30 | 湖北工业大学 | 一种轻量级基于深度学习的心律失常分类方法 |
CN115337018A (zh) * | 2022-09-19 | 2022-11-15 | 广东技术师范大学 | 基于整体动态特征的心电信号分类方法及系统 |
CN115530788A (zh) * | 2022-09-17 | 2022-12-30 | 贵州大学 | 基于自注意力机制的心律失常分类方法 |
CN115618196A (zh) * | 2022-10-18 | 2023-01-17 | 湖北工业大学 | 基于时空特征下的Transformer异常检测方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220015711A1 (en) * | 2020-07-20 | 2022-01-20 | Board Of Regents, The University Of Texas System | System and method for automated analysis and detection of cardiac arrhythmias from electrocardiograms |
KR102322234B1 (ko) * | 2020-12-29 | 2021-11-05 | (주)씨어스테크놀로지 | 딥러닝을 이용한 심전도 시각화 방법 및 장치 |
-
2023
- 2023-06-26 CN CN202310755802.2A patent/CN116503673B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110751131A (zh) * | 2019-11-16 | 2020-02-04 | 李汭傧 | 一种心律失常检测装置 |
CN114847905A (zh) * | 2022-05-10 | 2022-08-05 | 武汉大学 | 一种心率失常数据检测识别方法及系统 |
CN114970637A (zh) * | 2022-06-10 | 2022-08-30 | 湖北工业大学 | 一种轻量级基于深度学习的心律失常分类方法 |
CN115530788A (zh) * | 2022-09-17 | 2022-12-30 | 贵州大学 | 基于自注意力机制的心律失常分类方法 |
CN115337018A (zh) * | 2022-09-19 | 2022-11-15 | 广东技术师范大学 | 基于整体动态特征的心电信号分类方法及系统 |
CN115618196A (zh) * | 2022-10-18 | 2023-01-17 | 湖北工业大学 | 基于时空特征下的Transformer异常检测方法 |
Non-Patent Citations (1)
Title |
---|
A FEASIBLE ARRHYTHMIA CLASSIFICATION ALGORITHM BASED ON TRANSFORMER MODEL;Shi Cui et al.;《JOURNAL OF NONLINEAR AND CONVEX ANALYSIS》;第23卷(第9期);第2035-2047页 * |
Also Published As
Publication number | Publication date |
---|---|
CN116503673A (zh) | 2023-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107951485B (zh) | 基于人工智能自学习的动态心电图分析方法和装置 | |
CN107714023B (zh) | 基于人工智能自学习的静态心电图分析方法和装置 | |
CN116503673B (zh) | 一种基于心电图的心律失常识别检测方法及系统 | |
WO2019100560A1 (zh) | 基于人工智能自学习的心电图自动分析方法和装置 | |
Ge et al. | Cardiac arrhythmia classification using autoregressive modeling | |
Übeyli | Combining recurrent neural networks with eigenvector methods for classification of ECG beats | |
Alghamdi et al. | A novel blood pressure estimation method based on the classification of oscillometric waveforms using machine-learning methods | |
Mohebbi et al. | Prediction of paroxysmal atrial fibrillation using recurrence plot-based features of the RR-interval signal | |
CN110974214A (zh) | 一种基于深度学习的自动心电图分类方法、系统及设备 | |
Liu et al. | Automatic diagnosis of premature ventricular contraction based on Lyapunov exponents and LVQ neural network | |
Kayikcioglu et al. | Time-frequency approach to ECG classification of myocardial infarction | |
Daqrouq et al. | Neural network and wavelet average framing percentage energy for atrial fibrillation classification | |
Zhang et al. | Deep time–frequency representation and progressive decision fusion for ECG classification | |
Li et al. | Signal processing and feature selection preprocessing for classification in noisy healthcare data | |
CN110638430A (zh) | 多任务级联神经网络ecg信号心律失常疾病分类模型和方法 | |
Wang et al. | Atrial fibrillation detection and ECG classification based on CNN-BiLSTM | |
Bhoi et al. | QRS Complex Detection and Analysis of Cardiovascular Abnormalities: A Review. | |
Xiong et al. | Enhancing the detection of atrial fibrillation from wearable sensors with neural style transfer and convolutional recurrent networks | |
Hassan et al. | Performance comparison of CNN and LSTM algorithms for arrhythmia classification | |
Kishore et al. | Cardiac analysis and classification of ECG signal using GA and NN | |
Banerjee et al. | Non-invasive detection of coronary artery disease based on clinical information and cardiovascular signals: A two-stage classification approach | |
CN112037906A (zh) | 一种长时生理信号时间序列的样本数据的扩充方法及系统 | |
Gordon et al. | PVC detection using a convolutional autoencoder and random forest classifier | |
Hua et al. | An interpretable model for ECG data based on bayesian neural networks | |
Jiang et al. | Heartbeat classification system based on modified stacked denoising autoencoders and neural networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |