APP下载

基于多因素线索长短期记忆模型的血压分析预测

2019-08-01刘晶吴英飞袁贞明孙晓燕

计算机应用 2019年5期
关键词:高血压

刘晶 吴英飞 袁贞明 孙晓燕

摘 要:高血压是危害健康的重要因素,为了预防血压突然升高造成严重后果,在传统长短期记忆(LSTM)网络基础上,提出一种多因素线索LSTM模型,适用于血压的短期预测和长期预测,能够对血压的不良变化提前作出预警。模型中用到的多因素线索包括时序数据线索和上下文信息线索(包括个人基本信息和环境信息)两大類,使得血压预测不仅提取血压数据本身的特征,还提取与血压相关联的时序数据变化特征和其他关联属性的数据特征。模型首次将环境因素加入血压预测,并采用多任务学习方式,能够更好地捕捉数据之间隐藏的关联性,提高模型泛化能力。实验结果表明,所提模型相较于传统LSTM模型和添加了上下文信息层的LSTM(LSTMCL)模型在舒张压的预测误差与预测偏差方面分别降低2.5%,3.8%和1.9%,3.2%,在收缩压的预测误差和预测偏差分别降低0.2%,0.1%和0.6%,0.3%。

关键词:高血压;血压预测;长短期记忆; 时序数据;上下文信息

中图分类号:TP389.1

文献标志码:A

Abstract: Hypertension  is an important hazard to health. Blood pressure prediction is of great importance to avoid grave consequences caused by sudden increase of blood pressure. Based on traditional Long ShortTerm Memory (LSTM) network, a multifactor cue LSTM model for both shortterm prediction (predicting blood pressure for the next day) and longterm prediction (predicting blood pressure for the next several days) was proposed to provide early warning of undesirable change of blood pressure. Multifactor cues used in blood pressure prediction model included time series data cues (e.g. heart rate) and contextual information cues (e.g. age, BMI (Body Mass Index), gender, temperature).The change characteristics of time series data and data features of other associated attributes were extracted in the blood pressure prediction. Environment factor was firstly considered in blood pressure prediction and multitask learning method was used to help the model to capture the relation between data and improve the generalization ability of the model. The experimental results show that compared with traditional LSTM model and the LSTM with Contextual Layer (LSTMCL) model, the proposed model decreases prediction error and prediction bias by 2.5%, 3.8% and 1.9%, 3.2% respectively for diastolic blood pressure, and reduces prediction error and prediction bias by 0.2%, 0.1% and 0.6%, 0.3% respectively for systolic blood pressure.

0 引言

高血压是危害健康的一个重要因素,是老年人群中的常见慢性疾病。如果血压控制不好,容易发生心肌梗死、心力衰竭、脑出血、脑梗等突发情况,严重影响老人的身体健康。对血压数据的预测和高血压的及时预警能够有效避免高血压突发状况引发的危害,因此,对血压数据的预测分析已经成为该领域重点研究的课题。

人体血压受很多因素的影响,如外界温度、天气情况等环境因素,年龄、身体质量指数(Body Mass Index, BMI)、心率等多项生理指标因素,利用这些和血压相关的因素指标,有助于提高血压预测精准性。

1 相关工作

高血压病是目前比较常见的心血管疾病,高血压病的发病率呈上升趋势,越来越多地威胁到现代人的身体健康[1], 因此对于血压的监测及风险评估[2]越来越受到大家的关注。相关研究关注于血压预警的方向,现阶段的血压预警主要有两大方向,一种是实时血压估测,另一种是对血压的预测。

实时血压估测中,研究者们多用光电容积脉搏波(PhotoPlethysmoGraph, PPG)[3]、脉搏传导时间(Pulse Transit Time, PTT)[4]、心电图(EleCtrocardioGram, ECG)[5]、血压仪示波[6]等这些人体生理信号来估测实时的血压值。对于这类血压估测经常用到的模型有:线性回归模型[7]、支持向量机(Support Vector Machine, SVM)[8]、支持向量回归(Support Vector Regression, SVR)[9]、递归神经网络[10]、改进的高斯混合回归(Improved Gaussian Mixture Regression, IGMR)方法[11]、多模型混合[12-13]等。文献[14]将深度信念网络(Deep Belief Network)引入血压值的估测;文献[15]提出模拟特征回归模型学习从示波信号获得的模拟特征向量与目标血压之间的复杂非线性关系;文献[16]提出一种小波神经网络算法,根据PPG信号重建完整的血压波形以提取收缩压和舒张压。以上研究都是利用人体生理指标来实现对血压数据的估测,但这些方法多用于医疗辅助测量,供用户实时了解血压状况,不具有提前预测的能力,对血压突变预警能力差。

目前使用历史血压测量数据对血压值进行预测的研究还比较少,该方面研究多采用机器学习算法和神经网络算法。文献[17]采用多模糊函数模型来预测平均动态血压,改善了在进行连续多个时间段的血压预测的误差累积状况,但没能充分利用血压数据时间状态上的关联性和其他与血压关联的因素对其的影响;文献[18]采用回声状态网络来进行血压预测,回声状态网络是为解决传统递归神经网络(Recurrent Neural Network, RNN)出现梯度消失与梯度爆炸问题而提出,其在RNN中添加了储备池来对简单时序数据进行记忆,但该网络只能进行短期的记忆,不能很好处理复杂动态问题;文献[19]分别采用反向传播(Back Propagation, BP)神经网络和径向基神经网络使用血压关联的信息预测用户的舒张压情况,不具有实时预测、实时监控的能力;文献[20]基于递归神经网络,提出了一种添加了上下文信息层的长短期记忆(Long ShortTerm Memory with Contextual Layer, LSTMCL)来预测用户的血压值,但模型没有考虑基本信息与血压的相关性大小差异和时序测量数据与血压变化关系。以上方法单从血压本身或一些简单的相关数据出发,没能充分利用与血压相关联的数据变化对血压的影响。

本文选用循环神经网络[21-22],对传统长短期记忆(Long ShortTerm Memory, LSTM)网络的应用进行改进,提出一种多因素线索LSTM模型,将与血压关联的时序测量数据和用户的上下文信息(个人基本信息和环境信息等)一起作为未来线索数据与血压预测相结合,从而提高血压预测的准确度,同时,模型结合了多任务学习方式,更加充分地利用了时序数据变化与血压变化隐藏的关联性。

2 预测算法

2.1 LSTM网络

LSTM网络解决了RNN在处理长时间序列预测时会出现梯度爆炸的问题,其主要在于LSTM网络每个神经元中加入了一个判断信息有用与否的记忆单元,适合于处理和预测时间序列中间隔和延迟相对较长的重要事件。LSTM记忆单元中被放置了3个控制门,分别叫作输入门、遗忘门和输出门,一个信息进入LSTM的网络中,可以根据规则来判断是否有用,只有符合算法认证的信息才会留下,不符的信息则通过遗忘门被遗忘。式(1)~(5)表示其参数更新过程,其中σ代表sigmoid函数,ht-1代表LSTM記忆单元的前一个输出,ht代表当前的输出,将LSTM记忆单元中的输入门、遗忘门、输出门分别定义为i、 f、o。ct为当前时刻存储单元的状态,式(4)代表记忆单元状态转换的过程,其当前状态由上一时刻状态ct-1及当前时刻LSTM记忆单元中遗忘门结果ft和输入门结果it共同计算,LSTM记忆单元的结构图如图1。

2.2 多因素线索LSTM网络

2.2.1 基本结构

传统的血压处理模型在医疗辅助测量方面具有一定的优势,但对血压突变预警能力差。为了提升对血压突变的预警能力,本文提出一种多因素线索LSTM网络来进行血压预测,模型具体结构如图2所示。该模型包括双通道预测:血压预测通道和时序预测通道:血压预测通道利用近期血压观测值X1=[x11,x12,…,x1n]预测血压预测值y1;时序预测通道通过与血压关联的时序测量数据X2 = [x21,x22,…,x2n]预测时序数据预测值y2,二者取相同的n个时间长度的数据。

模型的具体工作流程如下:

1)时序数据X=[X1,X2]通过双层LSTM网络,对输出结果进行拆分,分别得到血压和时序预测通道上隐藏层的输出h1和h2,对二者选用Relu(x)=max(0,x)来进行非线性激活。Relu会使部分神经元的输出为0,缓解了过拟合问题的发生,使用Relu在进行反向传播时计算量会节省很多,相比较的,对于深层网络,sigmoid和tanh在反向传播时,很容易会出现梯度消失的情况。

2)为血压预测通道隐藏层输出h3、时序数据预测通道隐藏层输出h4、上下文线索b的联合添加额外的隐藏层,将隐藏层添加在此处,使得模型能够将循环结构与上下文信息进行联合。数据联合后依然采用Relu来进行非线性激活得到隐藏层输出h5,如式(6),多数据的联合使得血压预测不光从血压数据中提取特征,同时从与血压关联的数据中提取特征。最后应用线性回归来得到血压和时序线索的预测值1、2,如式(7)、(8):

其中:V1、V2分别是血压和时序线索数据线性回归的参数; b1、b2分别是它们的偏差; Wi(i=1,2,3)、T、Q均代表权重。

模型在输出血压预测结果的同时,将心率的预测结果作为辅助输出运用的是多任务学习的思想,多任务学习是基于共享表示,把多个相关的任务放在一起学习的一种机器学习方法,是一种推导迁移学习。主任务使用相关任务训练信号所拥有的领域相关信息,推导偏差来提升主任务泛化效果。其工作原理是多个相关的任务同时并行学习,梯度同时反向传播,多个任务通过底层的共享表示来互相帮助学习,提升泛化效果。本文模型中血压预测作为主任务,心率预测作为相关任务,二者共享LSTM神经网络层,通过相同的模型结构来共享大量的数据特征用以捕捉到隐藏的关联性,提高模型泛化能力。

2.2.2 相关因素的选择

1)模型中时序数据的选择部分。实验时序数据包括心率和环境温度,对于心率,多项研究已经表明心率变化与血压变化息息相关,如文献[23]通过研究夜间收缩压变化与心率变化之间的关系证明血压变化与心率变化有很大关联性。图3为本文实验数据中某用户心率和血压的变化趋势图,图中变化趋势可以看出心率和血压变化趋势有很大的相似性。对于温度数据,实验温度数据采用每天气温的平均值,这导致短期温度数据的变化趋势不明显,不适合作时序数据线索,所以本实验采用心率作为时序线索。

2)模型中加入了会影响人体血压变化的温度因素。由于温度数据提取的限制,本实验采用用户测量血压当天的平均气温作为实验所用的温度数据。这种提取温度的方法导致短时间内温度变化不明显,因此,对于实验中每个时序序列,选用该序列长度n天的平均气温作为温度线索。

3)上下文信息数据的处理。原始数据中包含多个与血压数据相关联的因素数据,首先采用皮尔森相关系数去计算各关联因素数据与血压数值的相关性大小,计算方法见式(9),其中对于用户的上下文信息线索,采用用户个人所有血压数据记录的平均值来计算与其相关系数大小,从中选取相关系数排列的前5个因素按式(10)融合得到模型中的上下文信息线索b。

2.2.3 Loss函数

本模型的最后一层选择线性回归来完成数值预测,此处,Loss函数选用二次损失函数,其主要思想是最小化模型的最终输出与目标之间的误差。

3 实验与分析

3.1 数据准备

3.1.1 数据介绍

实验数据采自某养老院中190个用户在2017年的全部血压数据,共20774条血压数据,其中信息完整的有131人,本实验选用信息完整的用户进行血压预测,共19162条血压数据。对用户进行分类分析,其中,男女分布比例为62∶70,按年龄将用户分为70~79、80~89、90~99三个年龄段,按BMI值的大小将用户分为以下5类:过轻(低于18.5)、正常(18.5~23.9)、过重(24~27.9)、肥胖(28~32)、非常肥胖(高于32)。

实验数据包括三部分,目标数据X1、时序关联数据X2及用户上下文信息b,如表1所示。

3.1.2 数据预处理

1)对于血压和心率实验数据的选取,选用用户一天内测量数据的平均值作为用户当天的测量数据。

2)为了提升模型的收敛速度和提升模型的精度,首先进行数据的归一化处理,由于所有数据都是确定的,所以选用Minmax标准化方式处理数据。Minmax是对原始数据的线性变换,使结果落在[0,1]区间,如式(12)所示:

3)将所有数据按用户个人划分,对于短期预测,即采用用户n天的连续血压数据预测后1天的血压,每个用户的血压、心率数据处理成n+1个一组。按1-(n+1),2-(n+2)…对每个用户的测量数据进行分组以保证保留数据的连续性,对于长期预测,即采用用戶n天的连续血压数据预测后t天的血压,将每个用户的血压、心率数据处理成n+t个一组,分组方法和短期预测相同。

3.2 实验设计及验证

实验分为短期预测和长期预测两部分:短期预测采用用户n天的连续血压数据预测后1天的血压;长期预测采用用户n天的连续血压数据预测后t天的血压。

3.2.1 短期预测

1)采用多因素线索LSTM模型分别进行不同时间长度序列预测,挑选模型的最优效果序列长度,分别采用10d、15d、30d的时序长度来进行短期预测,实验部分均采用连续血压数据记录超过31d的用户数据。

2)分别采用传统LSTM模型、添加了上下文信息的LSTM模型(LSTMCL)、添加了用户心率作为时序关联数据的LSTM模型(多任务LSTM)与多因素线索LSTM模型来对同一批数据进行血压预测,比较模型预测结果。

3)分别按照年龄和BMI值对人群进行分类,按年龄分类训练模型时,保证训练数据中包含等量的各个年龄层的数据,以避免数据量本身带来的差距,同时也采用等量的测试数据对各个年龄层数据进行测试。同样,按BMI值分类也遵循上述规则。

3.2.2 长期预测

用多因素线索LSTM网络实现长期预测模型,长期预测选用时间尺度比较长的30d来进行实验,该部分实验采用用户连续30d血压数据预测其接下来3d的血压,采用两种方法实现:第一种是依次预测,即依次对下个时间点数据进行预测,过程中将每次预测结果添加进原来序列,以共同预测下个时间点数据;第二种方法是直接预测,即根据序列数据直接预测接下来连续多个时间点的数据。

3.3 实验结果评价方法

预测结果的评价选用平均绝对误差(Mean Absolute Error, MAE)和均方根误差(Root Mean Square Error, RMSE),MAE能很好地反映预测值误差的实际情况,RMSE用来衡量预测值与真实值之间的偏差。

3.4 实验结果

3.4.1 短期预测实验结果

1)不同时序长度预测结果。

通过对10d、15d、30d的不同时序长度进行的血压预测结果进行比较(见表2),经过对比分析,针对本实验数据,模型选取10d的时间长度时较后两者效果更好:一方面,因为是短期预测,短期序列更容易抓取短期规律;另一方面,因为数据处理方式,10d的数据使得同样数据得到的时序数据组更多。因此,构建短期预测模型时应选择10d的序列长度。

3.4.2 长期预测实验结果

依次预测每一天的结果见表6,直接预测3d的结果见表7。实验结果表明,多因素线索LSTM模型有能力进行长期血压预测。对3d的血压预测结果分析可知两种方法预测准确度都会随着时间往后而有所下降。整体比较来看,依次预测效果要好于直接预测效果,依次预测方式其准确度之间会有相关性,所以要确保前面的预测结果尽可能地准确,否则会直接影响后面的准确度;另一方面,依次预测结果不光结合了已知序列的相关性,还利用了预测结果的相关性,所以当能保证每次预测结果的准确度时,这种方式会表现出更好的效果。第二种直接预测的方法中,每一天预测结果之间没有关联性,就不会因为前面数据预测不准确而影响后面预测的准确度,但同时,这种方法也就不能充分利用与预测结果之间的相关性。依据血压预测对准确度的要求,依次预测方式更适合于血压的长期预测。

4 结语

本文提出一种多因素线索LSTM模型用于血压预测,模型利用双通道提前预测与血压相关联的时序数据结果,并且将这些时序关联数据预测结果与用户的上下文信息一起作为线索数据传给血压预测通道,血压预测不光提取血压数据本身的特征,更添加了更多的关联特征,共同作用进行血压预测。实验选取数据方面,没有拘泥于选用用户本身的生理指标作为关联因素,还选用对血压变化影响很大的环境因素温度作为一个关联因素; 同时,模型采用多任务学习方式,帮助模型捕捉数据之间隐藏的关联性,提高模型泛化能力。这些共同作用来提高血压预测的精准度。模型不光能实现血压的短期预测,为用户下一天血压变化作出提醒,更能够实现血压长期预测,提醒用户提前对不良血压变化采取措施。之后的工作中,希望能够提取更多与血压变化关联的时序线索添加进模型,使模型更加完善。

参考文献 (References)

[1] CHOBANIAN A V, BAKRIS G, BLACK H, et al. Seventh report of the joint national committee on prevention, detection, evaluation, and treatment of high blood pressure[J]. Hypertension, 2003, 42(6): 1206-1252.

[2] NIIRANEN T J, HAVULINNA A S, SALOMAA V, et al. Prediction of blood pressure and blood pressure change with a genetic risk score[J]. Journal of Clinical Hypertension, 2016, 18(3):181-186.

[3] SIDERIS C, KALANTARIAN H, NEMATI E, et al. Building continuous arterial blood pressure prediction models using recurrent networks[C]// Proceedings of the 2016 IEEE International Conference on Smart Computing. Piscataway, NJ: IEEE,2016:1-5.

[4] LO F P W, LI C X T, WANG J K, et al. Continuous systolic and diastolic blood pressure estimation utilizing long shortterm memory network[C]// Proceedings of the 2017 39th Annual International Conference of the IEEE Engineering in Medicine and Biology Society. Piscataway, NJ: IEEE, 2017:1853-1856.

[5] SHRIMANTI G, ANKUR B, NILANJAN R, et al. Continuous blood pressure prediction from pulse transit time using ECG and PPG signals[C]// Proceedings of the 2016 IEEE Healthcare Innovation PointofCare Technologies Conference. Piscataway, NJ: IEEE, 2016: 188-191.

[6] FOROUZANFAR M, DAIANI H R, GROZA V Z, et al. Featurebased neural network approach for oscillometric blood pressure estimation[J]. IEEE Transactions on Instrumentation & Measurement, 2011, 60(8):2786-2796.

[7] HSIEH Y Y, YU T, WU C D, et al. A linear regression model with dynamic pulse transit time features for noninvasive blood pressure prediction[C]// Proceedings of the 2016 IEEE Biomedical Circuits and Systems Conference. Piscataway, NJ: IEEE, 2017:604-607.

[8] LIANG B, DUAN K F, XIE Q S, et al. Live demonstration: a support vector machine based hardware platform for blood pressure prediction [C]// Proceedings of the 2016 IEEE Biomedical Circuits and Systems Conference. Piscataway, NJ: IEEE, 2017:130.

[9] 貴明俊, 张新峰, 张钊, 等. 基于 SVR 的桡动脉血压预测[J]. 北京生物医学工程, 2016, 35(3):267-271. (GUI M J, ZHANG X F, ZHANG Z, et al. Prediction of radial blood pressure based on SVR[J]. Beijing Biomedical Engineering, 2016, 35(3):267-271.)

[10] SIDERIS C, KALANTARIAN H, NEMATI E, et al. Building continuous arterial blood pressure prediction models using recurrent networks[C]// Proceedings of the 2016 IEEE International Conference on Smart Computing. Piscataway, NJ: IEEE, 2016: 1-5.

[11] LEE S, PARK C H, CHANG J H. Improved Gaussian mixture regression based on pseudo feature generation using bootstrap in blood pressure estimation [J]. IEEE Transactions on Industrial Informatics, 2015, 12(6):2269-2280.

[12] MUAMMAR S, SHIEH J S, FAN S Z, et al. Intermittent blood pressure prediction via multiscale entropy and ensemble artificial neural networks [C]// Proceedings of the 2016 IEEE EMBS Conference on Biomedical Engineering and Sciences. Piscataway, NJ: IEEE, 2017: 356-359.

[13] KAUR G, ARORA A S, JAIN V K. Using hybrid models to predict blood pressure reactivity to unsupported back based on anthropometric characteristics[J]. Frontiers of Information Technology & Electronic Engineering, 2015, 16(6): 474-485.

[14] LEE S, CHANG J H. Deep belief networks ensemble for blood pressure estimation [J]. IEEE Access, 2017, 5: 9962-9972.

[15] LEE S, CHANG J H. Deep Boltzmann regression with mimic features for oscillometric blood pressure estimation[J]. IEEE Sensors Journal, 2017, 17(18): 5982-5993.

[16] LI P, LIU M, ZHANG X, et al. Novel wavelet neural network algorithm for continuous and noninvasive dynamic estimation of blood pressure from photoplethysmography[J]. Science China: Information Sciences, 2016, 59(4):042405.

[17] ABBASI R, MORADI M H, MOLAEEZADEH S F. Longterm prediction of blood pressure time series using multiple fuzzy functions[C]// Proceedings of the 2014 21th Iranian Conference on Biomedical Engineering. Piscataway, NJ: IEEE, 2015:124-127.

[18] FONG A, MITTU R, RATWANI R, et al. Predicting electrocardiogram and arterial blood pressure waveforms with different echo state network architectures[EB/OL].[2018-06-20]. https://www.cs.umd.edu/sites/default/files/scholarly_papers/Fong.pdf.

[19] WU T H, PANG K H, KWONG W Y. Predicting systolic blood pressure using machine learning[C]// Proceedings of the 7th International Conference on Information and Automation for Sustainability. Piscataway, NJ: IEEE, 2015:1-6.

[20] LI X H, WU S, WANG L, et al. Blood pressure prediction via recurrent models with contextual layer[C]// Proceedings of the 26th International Conference on World Wide Web. Geneva: International World Wide Web Conferences Steering Committee,2017:685-693.

[21] SAK H, SENIOR A, BEAUFAYS F. Long shortterm memory recurrent neural network architectures for large scale acoustic modeling[EB/OL].[2018-05-20]. http://193.6.4.39/~czap/letoltes/IS14/IS2014/PDF/AUTHOR/IS141304.PDF.

[22] GERS F A, SCHMIDHUBER J, CUMMINS F. Learning to forget: continual prediction with LSTM[J]. Neural Computation, 2000, 12(10):2451-2471.

[23] 劉洪洋, 李莉, 崔天祥,等. 血压控制良好的原发性高血压患者夜间收缩压下降率与心率及心率变异性的关系[J]. 中华高血压杂志, 2015, 23(11):1076-1079.(LIU H Y, LI L, CUI T X, et al. Relationship between the rate of night systolic blood pressure drop and heart rate and heart rate variability in patients with essential hypertension with good blood pressure control [J]. Chinese Journal of Hypertension, 2015, 23(11):1076-1079.)

猜你喜欢

高血压
高血压年轻化,如何科学预防与治疗
教你这样“制服”高血压
舒张压高 算不算高血压
除了遗传,得高血压还有几个原因
Hold住,你的血压!
美国更新高血压诊断标准
高血压界定范围
中医保健食疗方 预防高血压高血脂
补肾降压汤为主治疗老年单纯收缩期高血压32例
高血压病人应具有的知识