一种预测血压的方法和装置与流程

专利2022-06-29  67


本发明涉及电生理信号处理技术领域,特别涉及一种预测血压的方法和装置。



背景技术:

心脏是人体血液循环的中心,心脏通过有规律的搏动产生血压,进而向全身供血完成人体的新陈代谢,血压是人体非常重要的生理信号之一。正常范围内的血压才能保证血液正常循环流动,许多因素共同作用下才能使血压保持正常,从而人体的各个器官与组织能获得足够的血量,进而保持人体正常运转。人体血压含有两个重要的数值:收缩压和舒张压,医学上通过这两个量来判断人体血压的正常与否。长期持续观测血压这两项参数,可以帮助人们对自身心脏健康状态有较为清晰的认识。但是,当下大多数传统的血压测量方式均采用压力计之类的外力上压检测方式,不仅操作繁琐,且容易引起被测者的不适,因此也就不能多次地使用以达到连续监测的目的。



技术实现要素:

本发明的目的,就是针对现有技术的缺陷,提供一种预测血压的方法和装置,首先使用光体积变化描记图法(photoplethysmography,ppg)对测试者进行数据采集并经过转换生成脉搏波信号数据,然后采用由血压卷积神经网络(convolutionalneuralnetwork,cnn)模型和血压长短期记忆网络(long-shorttermmemory,lstm)模型组成的特征提取回归融合网络对脉搏波信号数据进行特征提取操作生成血压特征数据并对血压特征数据进行回归计算从而预测出测试者的血压数据(舒张压、收缩压);本发明实施例的卷积方案有两种,一种如果向量长度不够就使用全向量卷积方式,如果向量足够长就可以采用分段向量卷积方式;通过本发明实施例,既避免了常规测试手段的繁琐和不适感,又产生了一种自动智能的数据分析方法,从而使得应用方可以方便地对被测对象进行多次连续监测。

为实现上述目的,本发明实施例第一方面提供了一种预测血压的方法,其特征在于,所述方法包括:

对光体积变化描记图法ppg信号数据进行脉搏波转换及采样处理生成脉搏波一维向量;将所述脉搏波一维向量划分为多个脉搏波一维片段并获取片段总数;将所述脉搏波一维片段划分多个脉搏波一维子片段并获取子片段总数;

获取卷积神经网络cnn方案标识符;所述cnn方案标识符包括第一方案和第二方案两种标识符;

当所述cnn方案标识符为所述第一方案时,利用血压cnn模型对所述脉搏波一维向量进行全向量卷积池化计算操作,并将计算结果按血压长短期记忆网络lstm的输入参数格式进行张量降维处理生成第一lstm输入三维张量;

当所述cnn方案标识符为所述第二方案时,利用所述血压cnn模型对所述脉搏波一维向量进行分段向量卷积池化计算操作,并将计算结果按所述血压lstm的输入参数格式进行张量降维处理生成第二lstm输入三维张量;

根据所述cnn方案标识符,利用所述血压lstm模型的lstm网络层,对所述第一lstm输入三维张量或所述第二lstm输入三维张量进行血压长短期记忆计算操作,生成lstm输出三维张量;所述血压lstm网络模型包括所述lstm网络层和全连接层;

利用所述全连接层,对所述lstm输出三维张量进行血压回归计算操作,生成血压预测三维张量[x,y,2];所述x为所述片段总数;所述y为所述子片段总数;

按所述多个脉搏波一维片段顺序与所述多个脉搏波一维子片段顺序,从所述血压预测三维张量[x,y,2]中依次提取出预测血压数据,生成血压预测数据集合。

优选的,所述对光体积变化描记图法ppg信号数据进行脉搏波转换及采样处理生成脉搏波一维向量;将所述脉搏波一维向量划分为多个脉搏波一维片段并获取片段总数;将所述脉搏波一维片段划分多个脉搏波一维子片段并获取子片段总数,具体包括:

调用ppg信号采集设备,在生物体局部皮肤表面对预置光源信号进行光强信号采集,生成一段长度为信号采集时间阈值的所述ppg信号数据;对所述ppg信号数据进行脉搏波数据转换操作生成脉搏波信号数据;对所述脉搏波信号数据按特征采样频率阈值进行特征数据采样生成脉搏波一维向量;所述预置光源信号至少包括红光源信号、红外光源信号和绿光源信号的一类;

按片段长度阈值对所述脉搏波一维向量进行数据片段划分生成多个所述脉搏波一维片段,并以所述脉搏波一维向量包括的所述脉搏波一维片段的总数为所述片段总数;

按子片段长度阈值对所述脉搏波一维片段进行数据子片段划分生成多个所述脉搏波一维子片段,并以所述脉搏波一维片段包括的所述脉搏波一维子片段的总数为所述子片段总数。

优选的,所述当所述cnn方案标识符为所述第一方案时,利用血压cnn模型对所述脉搏波一维向量进行全向量卷积池化计算操作,并将计算结果按血压长短期记忆网络lstm的输入参数格式进行张量降维处理生成第一lstm输入三维张量,具体包括:

当所述cnn方案标识符为所述第一方案时,根据所述片段总数和所述脉搏波一维向量,进行第一血压cnn输入参数设置操作,生成第一cnn输入四维张量;

按预置的卷积层数阈值,利用所述血压cnn模型对所述第一cnn输入四维张量进行多层卷积池化计算生成第一cnn输出四维张量;

按血压长短期记忆网络lstm的输入参数格式,对所述第一cnn输出四维张量进行张量降维处理,生成所述第一lstm输入三维张量。

进一步的,所述当所述cnn方案标识符为所述第一方案时,根据所述片段总数和所述脉搏波一维向量,进行第一血压cnn输入参数设置操作,生成第一cnn输入四维张量,具体包括:

当所述cnn方案标识符为所述第一方案时,设置所述第一cnn输入四维张量具体为第一cnn输入四维张量[b1,1,w1,1];所述第一cnn输入四维张量[b1,1,w1,1]包括所述b1个第一cnn输入三维张量[1,w1,1];所述b1为所述第一cnn输入四维张量[b1,1,w1,1]的第四维度参数,且所述b1为所述片段总数;所述w1为所述第一cnn输入四维张量[b1,1,w1,1]的第二维度参数,且所述w1为所述片段长度阈值;

依次提取所述脉搏波一维向量包括的所述脉搏波一维片段,对所述第一cnn输入四维张量[b1,1,w1,1]中对应的所述第一cnn输入三维张量[1,w1,1]进行矩阵元素赋值处理。

进一步的,所述按预置的卷积层数阈值,利用所述血压cnn模型对所述第一cnn输入四维张量进行多层卷积池化计算生成第一cnn输出四维张量,具体包括:

步骤51,初始化第一索引的值为1;初始化第一总数为所述卷积层数阈值;初始化第一索引临时四维张量为所述第一cnn输入四维张量;

步骤52,利用所述血压cnn模型的第一索引层卷积层,对所述第一索引临时四维张量进行卷积计算处理,生成第一索引卷积输出数据四维张量;利用所述血压cnn模型的第一索引层池化层,对所述第一索引卷积输出数据四维张量进行池化计算处理,生成第一索引池化输出数据四维张量;所述血压cnn模型包括多层所述卷积层和多层所述池化层;

步骤53,设置所述第一索引临时四维张量为所述第一索引池化输出数据四维张量;

步骤54,将所述第一索引加1;

步骤55,判断所述第一索引是否大于所述第一总数,如果所述第一索引大于所述第一总数转至步骤56,如果所述第一索引小于或等于所述第一总数转至步骤52;

步骤56,设置所述第一cnn输出四维张量为所述第一索引临时四维张量;所述第一cnn输出四维张量具体为第一cnn输出四维张量[b2,1,w2,c2];所述b2为所述第一cnn输出四维张量[b2,1,w2,c2]的第四维度参数,且所述b2为所述片段总数;所述w2为所述第一cnn输出四维张量[b2,1,w2,c2]的第二维度参数,且所述w2为预置的lstm层神经元总数阈值;所述c2为所述第一cnn输出四维张量[b2,1,w2,c2]的第一维度参数,且所述c2为预置的lstm层神经元长度阈值。

进一步的,所述第一lstm输入三维张量具体为第一lstm输入三维张量[h3,w3,c3];所述h3为所述第一lstm输入三维张量[h3,w3,c3]的第三维度参数,且所述h3为所述片段总数;所述w3为所述第一lstm输入三维张量[h3,w3,c3]的第二维度参数,且所述w3为所述w2;所述c3为所述第一lstm输入三维张量[h3,w3,c3]的第一维度参数,且所述c3为所述c2。

优选的,所述当所述cnn方案标识符为所述第二方案时,利用所述血压cnn模型对所述脉搏波一维向量进行分段向量卷积池化计算操作,并将计算结果按所述血压lstm的输入参数格式进行张量降维处理生成所述第二lstm输入三维张量,具体包括:

当所述cnn方案标识符为所述第二方案时,根据所述片段总数乘以所述子片段总数的乘积生成张量总数;

根据所述张量总数和所述脉搏波一维向量,进行第二血压cnn输入参数设置操作,生成第二cnn输入四维张量组;所述第二cnn输入四维张量组包括所述张量总数个第二cnn输入四维张量;

按预置的卷积层数阈值,利用所述血压cnn模型对所述第二cnn输入四维张量组中的所有所述第二cnn输入四维张量分别进行多层卷积池化计算生成第二cnn输出四维张量组;所述第二cnn输出四维张量组包括所述张量总数个第二cnn输出四维张量;

对所述第二cnn输出四维张量组中的所有所述第二cnn输出四维张量进行四维张量合并操作,生成第三cnn输出四维张量;

按所述血压lstm的输入参数格式,对所述第三cnn输出四维张量进行张量降维处理,生成所述第二lstm输入三维张量。

进一步的,所述根据所述张量总数和所述脉搏波一维向量,进行第二血压cnn输入参数设置操作,生成第二cnn输入四维张量组,具体包括:

对所述脉搏波一维向量的所有脉搏波一维子片段进行排序,生成子片段全序列;所述子片段全序列包括所述张量总数个所述脉搏波一维子片段;

设置所述第二cnn输入四维张量组;设置所述第二cnn输入四维张量具体为第二cnn输入四维张量[1,1,w4,1];所述第二cnn输入四维张量组包括所述张量总数个所述第二cnn输入四维张量[1,1,w4,1];所述w4为所述第二cnn输入四维张量[1,1,w4,1]的第二维度参数,且所述w4为所述子片段长度阈值;

依次提取所述子片段全序列中的所述脉搏波一维子片段,向所述第二cnn输入四维张量组中对应的第二cnn输入四维张量[1,1,w4,1]进行矩阵元素赋值处理。

进一步的,所述第二cnn输出四维张量组具体包括所述张量总数个所述第二cnn输出四维张量;所述第二cnn输出四维张量具体为第二cnn输出四维张量[1,1,1,c5];所述c5为所述第二cnn输出四维张量[1,1,1,c5]的第一维度参数。

进一步的,所述对所述第二cnn输出四维张量组中的所有所述第二cnn输出四维张量进行四维张量合并操作,生成第三cnn输出四维张量,具体包括:

设置所述第三cnn输出四维张量具体为第三cnn输出四维张量[b6,1,1,c6];所述b6为所述第三cnn输出四维张量[b6,1,1,c6]的第四维度参数,且所述b6为所述张量总数;所述c6为所述第三cnn输出四维张量[b6,1,1,c6]的第一维度参数,且所述c6为所述c5;

在所述第二cnn输出四维张量组中,依次提取所述第二cnn输出四维张量[1,1,1,c5]的矩阵元素序列,向所述第三cnn输出四维张量[b6,1,1,c6]进行矩阵元素赋值处理。

进一步的,所述第二lstm输入三维张量具体为lstm输入三维张量[h7,w7,c7];所述h7为所述第二lstm输入三维张量[h7,w7,c7]的第三维度参数,且所述h3的值为所述片段总数;所述w7为所述第二lstm输入三维张量[h7,w7,c7]的第二维度参数,且所述w7为所述b6除以所述h3的商;所述c7为所述第二lstm输入三维张量[h7,w7,c7]的第一维度参数,且所述c7为所述c6。

优选的,所述根据所述cnn方案标识符,利用所述血压lstm模型的lstm网络层,对所述第一lstm输入三维张量或所述第二lstm输入三维张量进行血压长短期记忆计算操作,生成lstm输出三维张量,具体包括:

当所述cnn方案标识符为所述第一方案时,利用所述血压lstm模型的lstm网络层,对所述第一lstm输入三维张量进行所述血压长短期记忆计算操作,生成所述lstm输出三维张量;

当所述cnn方案标识符为所述第二方案时,利用所述血压lstm模型的lstm网络层,对所述第二lstm输入三维张量进行所述血压长短期记忆计算操作,生成所述lstm输出三维张量。

优选的,所述按所述多个脉搏波一维片段顺序与所述多个脉搏波一维子片段顺序,从所述血压预测三维张量[x,y,2]中依次提取出预测血压数据,生成血压预测数据集合,具体包括:

初始化所述血压预测数据集合为空;设置血压数据组;初始化所述血压数据组的舒张压数据为空;初始化血压数据组的收缩压数据为空;

依次提取所述血压预测三维张量[x,y,2]包括的血压预测一维向量[2]生成当前一维向量[2];设置所述血压数据组的所述收缩压数据为所述当前一维向量[2]中的子片段收缩压数据,设置所述血压数据组的所述舒张压数据为所述当前一维向量[2]中的子片段舒张压数据;将所述血压数据组向所述血压预测数据集合进行数据组添加操作;所述血压预测三维张量[x,y,2]包括x*y个所述血压预测一维向量[2];所述血压预测一维向量[2]包括所述子片段收缩压数据和所述子片段舒张压数据。

本发明实施例第一方面提供的一种预测血压的方法,使用ppg对测试者进行数据采集并经过转换生成脉搏波信号数据,然后采用由血压cnn模型和血压lstm模型组成的特征提取回归融合网络对脉搏波信号数据进行特征提取操作生成血压特征数据并对血压特征数据进行回归计算从而预测出测试者的血压数据(舒张压、收缩压);本发明实施例的卷积方案有两种,一种如果向量长度不够就使用全向量卷积方式,如果向量足够长就可以采用分段向量卷积方式;通过本发明实施例,既避免了常规测试手段的繁琐和不适感,又产生了一种自动智能的数据分析方法,从而使得应用方可以方便地对被测对象进行多次连续监测。

本发明实施例第二方面提供了一种设备,该设备包括存储器和处理器,存储器用于存储程序,处理器用于执行第一方面及第一方面的各实现方式中的方法。

本发明实施例第三方面提供了一种包含指令的计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行第一方面及第一方面的各实现方式中的方法。

本发明实施例第四方面提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现第一方面及第一方面的各实现方式中的方法。

附图说明

图1为本发明实施例一提供的一种预测血压的方法示意图;

图2为本发明实施例二提供的一种预测血压的方法示意图;

图3为本发明实施例三提供的一种预测血压的装置的设备结构示意图。

具体实施方式

为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

在通过实施例对本发明做进一步详细阐述之前,先就文中提及的一些技术手段做下简要说明。

ppg信号是利用光感传感器对特定光源的光强识别记录光强变化的一组信号。在心脏搏动时,对血管内单位面积的血流量形成周期性变化,与之对应的血液体积也相应发生变化,从而导致反映血液吸收光量的ppg信号也呈现周期性变化趋势。一个心动周期包括两个时间期:心脏收缩期和心脏舒张期;当心脏收缩期时,心脏对去全身做功,造成血管内压力与血流体积产生连续周期性变化,此时血管内血液对光线的吸收最多;当心脏舒张期时,对血管的压力相对性较小,此时上一次心脏收缩向全身推出的血液经过循环撞击心脏瓣膜从而对光线产生一定的反射与折射效应,造成舒张周期时血管内血液对光线能量的吸收降低。因此,反映血管内血液吸收光能的ppg信号波形就由两部分信号叠加而成:心脏收缩时期信号和心脏舒张时期信号;常见的ppg信号中有大小两个峰值,前一个属于心脏收缩期后一个属于心脏舒张期。

初期采集的ppg信号中,存在较多的噪声与干扰源,那么在采集之后需要对ppg信号进行一定的滤波降噪转换,将转换后的信号我们视为基本能够正常体现测试者脉搏波动周期特性的脉搏波信号。通过对脉搏波信号进行进一步的特征识别和回归分类处理,我们就可以进一步的获取到血压的收缩压与舒张压的预测值。具体的:首先对脉搏波数据进行有效数据提取,也就是所谓的特征提取或者特征计算;然后将获得的特征数据通过使用血压回归计算方式得到回归数据作为预测结果。因为脉搏波单个信号中包括了收缩特征和舒张特征信号,所以在血压回归计算中的回归数据对应也为两个:舒张压数据与收缩压数据,其中收缩压数据大于舒张压数据。

有关特征计算,我们已知cnn长期以来是特征识别领域的核心算法之一。应用在图像识别中,可以在精细分类识别中用于提取图像的判别特征以供其它分类器进行学习。应用血压特征识别领域中,是对输入的一维脉搏波数据进行脉搏波特征提取计算:在对输入的原始脉搏波数据进行卷积和池化之后,保留符合脉搏波特性的特征数据以供其他网络进行学习。文中提及的血压cnn模型是一种已经通过血压特征提取训练完成后的cnn模型,具体由卷积层和池化层组成,其中,卷积层负责对cnn模型的输入数据进行血压特征提取计算,池化层则是对卷积层的提取结果进行降采样;本文的血压cnn模型分为多个cnn网络层,每个cnn网络层包括一个卷积层和一个池化层。血压cnn模型的输入数据和输出数据格式均为4维张量形式:[b,h,w,c]。每经过一层卷积层或池化层,输出数据某些维度参数的值会发生变化,即张量的总数据长度会缩短,变化的特点是:b作为四维中的第四维参数(脉搏波一维数据序列的片段总数)不会发生变化;h、w为四维中的第三和二维参数,二者的变化与每一个卷积层的卷积核大小以及滑动步长的设定有关,也与池化层的池化窗口大小和滑动步长有关;c为四维中的第一维参数,它的变化与卷积层中选定的输出空间维数(卷积核的个数)有关。

进一步的,本发明实施例针对cnn特征计算,提供了两种卷积方案,分别是:方案一、将脉搏波数据作为整体送入血压cnn模型进行整体卷积与池化计算并输出特征张量;方案二、将脉搏波按片段划分,对每个片段再做多个子片段划分,按片段顺序将所有子片段送入血压cnn模型分别进行卷积池化计算并输出片段总数*子片段总数个特征张量来,再将所有输出的特征张量进行合并生成整体脉搏波的特征张量。之所以提供两种方案,是根据实际工程经验,发现,在数据量不够充分时可以通过调整血压cnn模型的输入、输出参数结构提高特征提取效果,弥补数据量不足的损失。

lstm网络适合于处理和预测时间序列中间隔和延迟非常长的重要事件,可以对时序上前一步的信息进行选择性的记忆或者遗忘,通过使用时序特征数据对lstm网络进行训练可以实现回归分类的模型效果。本发明实施例使用已经通过批量脉搏波信号特征数据与对应的批量实测血压数据训练完成的血压lstm网络模型针对由血压cnn模型输出的特征数据根据其数据的时序性作进一步回归分类处理,并最终输出预测血压结果。本发明实施例中的血压lstm网络模型包括多层lstm网络和全连接层。每层lstm网络由多个处理器单元组成,这些处理器单元按顺序连接,可以按照指定方向传递信息使得网络变得有记忆功能,处理器单元中也存在参数设定可以控制输出的维度大小,时序上从前向后传递的称为正向、从后向前的称为反向。在本实施例中使用的lstm网络模型的第一层lstm网络为双向lstm网络,其后的几层均为单向lstm网络。最后一层lstm网络的最后一个处理器单元输出的数据格式为三维张量形式,将此三维张量输入全连接层进行血压回归计算最终获得预测的需要数据,其中包括舒张压数据与收缩压数据。

如图1为本发明实施例一提供的一种预测血压的方法示意图所示,本方法主要包括如下步骤:

步骤1,对光体积变化描记图法ppg信号数据进行脉搏波转换及采样处理生成脉搏波一维向量;将脉搏波一维向量划分为多个脉搏波一维片段并获取片段总数;将脉搏波一维片段划分多个脉搏波一维子片段并获取子片段总数;

具体包括:步骤11,调用ppg信号采集设备,在生物体局部皮肤表面对预置光源信号进行光强信号采集,生成一段长度为信号采集时间阈值的ppg信号数据;对ppg信号数据进行脉搏波数据转换操作生成脉搏波信号数据;对脉搏波信号数据按特征采样频率阈值进行特征数据采样生成脉搏波一维向量;预置光源信号至少包括红光源信号、红外光源信号和绿光源信号的一类;

此处,脉搏波一维向量具体为脉搏波一维向量[a];a为脉搏波一维向量[a]的第一维度参数,且a的值为信号采集时间阈值乘以特征采样频率阈值的乘积。例如,设信号采集时间阈值为10秒,特征采样频率阈值为125hz,那么此处的a=125*10=1250,表示采集到的数据有1250个。脉搏波一维向量[a]具体就成为脉搏波一维向量[1250],是一个包括了1250个独立脉搏波数据的一维向量;

步骤12,按片段长度阈值对脉搏波一维向量进行数据片段划分生成多个脉搏波一维片段,并以脉搏波一维向量包括的脉搏波一维片段的总数为片段总数;

步骤13,按子片段长度阈值对脉搏波一维片段进行数据子片段划分生成多个脉搏波一维子片段,并以脉搏波一维片段包括的脉搏波一维子片段的总数为子片段总数。

此处,因为后续要使用血压cnn对脉搏波一维向量中的数据进行特征计算,鉴于血压cnn的输入有要求,则按照血压cnn输入的最大数据长度对脉搏波一维向量进行片段划分,其中,片段长度阈值就是血压cnn输入的最大数据长度。

步骤2,获取卷积神经网络cnn方案标识符的值为第一方案;

其中,cnn方案标识符包括第一方案和第二方案两种标识符。

此处,cnn方案标识符用以对cnn的两种处理方式做区分:当cnn方案标识符为第一方案时,是将脉搏波一维向量作为一个整体输入cnn中进行全向量卷积池化计算,并将输出的结果作为下一步lstm计算的输入。

步骤3,当cnn方案标识符为第一方案时,利用血压cnn模型对脉搏波一维向量进行全向量卷积池化计算操作,并将计算结果按血压长短期记忆网络lstm的输入参数格式进行张量降维处理生成第一lstm输入三维张量;

具体包括:步骤31,当cnn方案标识符为第一方案时,根据片段总数和脉搏波一维向量,进行第一血压cnn输入参数设置操作,生成第一cnn输入四维张量;

具体包括:步骤311,当cnn方案标识符为第一方案时,设置第一cnn输入四维张量具体为第一cnn输入四维张量[b1,1,w1,1];

其中,第一cnn输入四维张量[b1,1,w1,1]包括b1个第一cnn输入三维张量[1,w1,1];b1为第一cnn输入四维张量[b1,1,w1,1]的第四维度参数,且b1为片段总数;w1为第一cnn输入四维张量[b1,1,w1,1]的第二维度参数,且w1为片段长度阈值;

此处,将得到的脉搏波一维片段转换为4维数据,四个维度[b,h,w,c]分别代表片段个数(batch)、片段数据的高度(height)、片段数据的宽度(width)和片段数据的通道数(channel)。在处理彩色图像数据时,片段的高度、宽度和通道数分别对应图像的高、宽和rgb通道。由于脉搏波数据是一维向量,所以片段个数b应设置为片段总数,高度h应设置为1,通道数c应设置为1,宽度w为此前设定的片段长度阈值,例如:假设片段长度阈值为250,将脉搏波一维向量[1250]进行转换后得到的第一cnn输入四维张量是[5,1,250,1];

步骤312,依次提取脉搏波一维向量包括的脉搏波一维片段,对第一cnn输入四维张量[b1,1,w1,1]中对应的第一cnn输入三维张量[1,w1,1]进行矩阵元素赋值处理;

此处,假设脉搏波一维向量[1250]={d1,……d1250},片段总数为5,则脉搏波一维向量分成5段分别是:{d1,……d250}、{d251,……d500}、{d501,……d750}、{d751,……d1000}、{d1001,……d1250};假设第一cnn输入四维张量为[5,1,250,1],既第一cnn输入四维张量包括5个第一cnn输入三维张量[1,250,1]i(i的取值为1到5);那么,

第一cnn输入三维张量[1,250,1]1={d1,……d250}、

第一cnn输入三维张量[1,250,1]2={d251,……d500}、

第一cnn输入三维张量[1,250,1]3={d501,……d750}、

第一cnn输入三维张量[1,250,1]4={d751,……d1000}、

第一cnn输入三维张量[1,250,1]5={d1001,……d1250};

再分别完成数据添加之后,第一cnn输入四维张量是[5,1,250,1]用数据序列表示就是:[{d1,……d250},{d251,……d500},{d501,……d750},{d751,……d1000},

{d1001,……d1250}];

步骤32,按预置的卷积层数阈值,利用血压cnn模型对第一cnn输入四维张量进行多层卷积池化计算生成第一cnn输出四维张量;

具体包括:步骤321,初始化第一索引的值为1;初始化第一总数为卷积层数阈值;初始化第一索引临时四维张量为第一cnn输入四维张量;

步骤322,利用血压cnn模型的第一索引层卷积层,对第一索引临时四维张量进行卷积计算处理,生成第一索引卷积输出数据四维张量;利用血压cnn模型的第一索引层池化层,对第一索引卷积输出数据四维张量进行池化计算处理,生成第一索引池化输出数据四维张量;

其中,血压cnn模型包括多层卷积层和多层池化层;

步骤323,设置第一索引临时四维张量为第一索引池化输出数据四维张量;

步骤324,将第一索引加1;

步骤325,判断第一索引是否大于第一总数,如果第一索引大于第一总数转至步骤326,如果第一索引小于或等于第一总数转至步骤322;

步骤326,设置第一cnn输出四维张量为第一索引临时四维张量;

其中,第一cnn输出四维张量具体为第一cnn输出四维张量[b2,1,w2,c2];b2为第一cnn输出四维张量[b2,1,w2,c2]的第四维度参数,且b2为片段总数;w2为第一cnn输出四维张量[b2,1,w2,c2]的第二维度参数,且w2为预置的lstm层神经元总数阈值;c2为第一cnn输出四维张量[b2,1,w2,c2]的第一维度参数,且c2为预置的lstm层神经元长度阈值;

此处,步骤32,是对血压cnn对第一输入数据四维张量进行多层卷积池化计算生成第一cnn输出四维张量的阐述;此处,血压cnn模型由卷积层和池化层组成,一般的结构是一层卷积搭配一层池化后再连接下一个卷积层,网络的最终层数由卷积层的数量决定即卷积层数阈值;假设卷积层数阈值为4,则此处需要完成4次卷积 池化计算;每层计算的输出结果都将作为下一层计算的输入。

此处,第一cnn输出四维张量具体为第一cnn输出四维张量[b2,1,w2,c2];b2为第一cnn输出四维张量[b2,1,w2,c2]的第四维度参数,且b2的值为片段总数;w2为第一cnn输出四维张量[b2,1,w2,c2]的第二维度参数,且w2为预置的lstm层神经元总数阈值;c2为第一cnn输出四维张量[b2,1,w2,c2]的第一维度参数,且c2为预置的lstm层神经元长度阈值;假设片段总数为5,lstm层神经元总数阈值为5,lstm层神经元长度阈值为64,那么第一cnn输出四维张量为[5,1,5,64]。

步骤33,按血压长短期记忆网络lstm的输入参数格式,对第一cnn输出四维张量进行张量降维处理,生成第一lstm输入三维张量;

其中,第一lstm输入三维张量具体为第一lstm输入三维张量[h3,w3,c3];h3为第一lstm输入三维张量[h3,w3,c3]的第三维度参数,且h3为片段总数;w3为第一lstm输入三维张量[h3,w3,c3]的第二维度参数,且w3为w2;c3为第一lstm输入三维张量[h3,w3,c3]的第一维度参数,且c3为c2。

假设第一cnn输出四维张量为[5,1,5,64],那么lstm输入三维张量为[5,5,64]。此处因为第一cnn输出四维张量保持四维度参数不变,去除三维度参数降维,那么实际降维后的三维度参数应等于降维前的四维度参数,降维后的二维度参数应等于降维前的三维度参数乘以二维度参数的乘积,因为第一cnn输出四维张量的第三维度参数实际为1,所以降维后二维度参数未发生变化。

步骤4,利用血压lstm模型的lstm网络层,对第一lstm输入三维张量进行血压长短期记忆计算操作,生成lstm输出三维张量;

其中,血压lstm网络模型包括lstm网络层和全连接层;

具体包括:步骤41,当cnn方案标识符为第一方案时,利用血压lstm模型的lstm网络层,对第一lstm输入三维张量进行血压长短期记忆计算操作,生成lstm输出三维张量;

步骤42,当cnn方案标识符为第二方案时,利用血压lstm模型的lstm网络层,对第二lstm输入三维张量进行血压长短期记忆计算操作,生成lstm输出三维张量。

步骤5,利用全连接层,对lstm输出三维张量进行血压回归计算操作,生成血压预测三维张量[x,y,2];

其中,x为片段总数;y为子片段总数。

此处,假设lstm输入三维张量为[5,5,64],那么血压预测三维张量应是[5,5,2],就是有5*5=25个一维张量[2],每个一维张量[2]包括两个血压预测数据:舒张压参考值和收缩压参考值;血压预测三维张量应是[5,5,2]也即是包括了25对对血压预测值。

步骤6,按多个脉搏波一维片段顺序与多个脉搏波一维子片段顺序,从血压预测三维张量[x,y,2]中依次提取出预测血压数据,生成血压预测数据集合;

具体包括:步骤61,初始化血压预测数据集合为空;设置血压数据组;初始化血压数据组的舒张压数据为空;初始化血压数据组的收缩压数据为空;

步骤62,依次提取血压预测三维张量[x,y,2]包括的血压预测一维向量[2]生成当前一维向量[2];设置血压数据组的收缩压数据为当前一维向量[2]中的子片段收缩压数据,设置血压数据组的舒张压数据为当前一维向量[2]中的子片段舒张压数据;将血压数据组向血压预测数据集合进行数据组添加操作;血压预测三维张量[x,y,2]包括x*y个血压预测一维向量[2];血压预测一维向量[2]包括子片段收缩压数据和子片段舒张压数据。

此处,步骤6是将血压预测三维张量应是[5,5,2]中的了25对血压预测值逐一提取来,以25个血压数据组的形式添加进血压预测数据集合。此处的血压预测数据集合就是使用cnn和lstm融合网络对ppg信号数据进行血压预测的计算结果。

如图2为本发明实施例二提供的一种预测血压的方法示意图所示,本方法主要包括如下步骤:

步骤101,对光体积变化描记图法ppg信号数据进行脉搏波转换及采样处理生成脉搏波一维向量;将脉搏波一维向量划分为多个脉搏波一维片段并获取片段总数;将脉搏波一维片段划分多个脉搏波一维子片段并获取子片段总数;

具体包括:步骤1011,调用ppg信号采集设备,在生物体局部皮肤表面对预置光源信号进行光强信号采集,生成一段长度为信号采集时间阈值的ppg信号数据;对ppg信号数据进行脉搏波数据转换操作生成脉搏波信号数据;对脉搏波信号数据按特征采样频率阈值进行特征数据采样生成脉搏波一维向量;预置光源信号至少包括红光源信号、红外光源信号和绿光源信号的一类;

此处,脉搏波一维向量具体为脉搏波一维向量[a];a为脉搏波一维向量[a]的第一维度参数,且a的值为信号采集时间阈值乘以特征采样频率阈值的乘积。例如,设信号采集时间阈值为10秒,特征采样频率阈值为125hz,那么此处的a=125*10=1250,表示采集到的数据有1250个。脉搏波一维向量[a]具体就成为脉搏波一维向量[1250],是一个包括了1250个独立脉搏波数据的一维向量;

步骤1012,按片段长度阈值对脉搏波一维向量进行数据片段划分生成多个脉搏波一维片段,并以脉搏波一维向量包括的脉搏波一维片段的总数为片段总数;

步骤1013,按子片段长度阈值对脉搏波一维片段进行数据子片段划分生成多个脉搏波一维子片段,并以脉搏波一维片段包括的脉搏波一维子片段的总数为子片段总数。

此处,因为后续要使用血压cnn对脉搏波一维向量中的数据进行特征计算,鉴于血压cnn的输入有要求,则按照血压cnn输入的最大数据长度对脉搏波一维向量进行片段划分,其中,片段长度阈值就是血压cnn输入的最大数据长度。

步骤102,获取卷积神经网络cnn方案标识符的值为第二方案;

其中,cnn方案标识符包括第一方案和第二方案两种标识符。

此处,cnn方案标识符用以对cnn的两种处理方式做区分:当cnn方案标识符为第二方案时,是将脉搏波一维向量拆分为多个片段及子片段之后,将每一个子片段利用血压cnn模型中进行分段向量卷积池化计算,并将输出的结果作为下一步lstm计算的输入。

步骤103,当cnn方案标识符为第二方案时,利用血压cnn模型对脉搏波一维向量进行分段向量卷积池化计算操作,并将计算结果按血压lstm的输入参数格式进行张量降维处理生成第二lstm输入三维张量;

具体包括:步骤1031,当cnn方案标识符为第二方案时,根据片段总数乘以子片段总数的乘积生成张量总数;

步骤1032,根据张量总数和脉搏波一维向量,进行第二血压cnn输入参数设置操作,生成第二cnn输入四维张量组;

其中,第二cnn输入四维张量组包括张量总数个第二cnn输入四维张量;

具体包括:步骤10321,对脉搏波一维向量的所有脉搏波一维子片段进行排序,生成子片段全序列;

其中,子片段全序列包括张量总数个脉搏波一维子片段;

步骤10322,设置第二cnn输入四维张量组;设置第二cnn输入四维张量具体为第二cnn输入四维张量[1,1,w4,1];

其中,第二cnn输入四维张量组包括张量总数个第二cnn输入四维张量[1,1,w4,1];w4为第二cnn输入四维张量[1,1,w4,1]的第二维度参数,且w4为子片段长度阈值;

此处,是对第二cnn输入四维张量组结构进行设置;假设脉搏波一维向量[a]具体就成为脉搏波一维向量[1250]分为5个片段,每个片段分为5个子片段,那么就是将5*5=25个子片段一维数据进行四维张量转换,生成第二cnn输入四维张量组;此处,第二cnn输入四维张量就是针对每个子片段的四维张量,第二cnn输入四维张量组总共包括25个第二cnn输入四维张量;

步骤10323,依次提取子片段全序列中的脉搏波一维子片段,向第二cnn输入四维张量组中对应的第二cnn输入四维张量[1,1,w4,1]进行矩阵元素赋值处理;

此处,是对第二cnn输入四维张量组具体数值进行赋值处理;假设脉搏波一维向量[a]具体就成为脉搏波一维向量[1250]分为5个片段,每个片段分为5个子片段,那么第二cnn输入四维张量组总共包括25个第二cnn输入四维张量;假设子片段长度阈值为50,那么第二cnn输入四维张量具体为[1,1,50,1];假设脉搏波一维向量[1250]={d1,……d1250},那么第二cnn输入四维张量组为:{

第二cnn输入四维张量[1,1,50,1]1={d1,……d50},

……

第二cnn输入四维张量[1,1,50,1]25={d1226,……d1250}};

步骤1033,按预置的卷积层数阈值,利用血压cnn模型对第二cnn输入四维张量组中的所有第二cnn输入四维张量分别进行多层卷积池化计算生成第二cnn输出四维张量组;

其中,第二cnn输出四维张量组包括张量总数个第二cnn输出四维张量;第二cnn输出四维张量组具体包括张量总数个第二cnn输出四维张量;第二cnn输出四维张量具体为第二cnn输出四维张量[1,1,1,c5];c5为第二cnn输出四维张量[1,1,1,c5]的第一维度参数;

此处,是对第二cnn输入四维张量组中的25个第二cnn输入四维张量分别进行卷积计算,生成第二cnn输出四维张量组,第二cnn输出四维张量组与输入对应,也包括25个第二cnn输出四维张量[1,1,1,c5];假设lstm神经单元的长度为64,则第二cnn输出四维张量为[1,1,1,64];

步骤1034,对第二cnn输出四维张量组中的所有第二cnn输出四维张量进行四维张量合并操作,生成第三cnn输出四维张量;

具体包括:步骤10341,设置第三cnn输出四维张量具体为第三cnn输出四维张量[b6,1,1,c6];

其中,b6为第三cnn输出四维张量[b6,1,1,c6]的第四维度参数,且b6为张量总数;c6为第三cnn输出四维张量[b6,1,1,c6]的第一维度参数,且c6为c5;

步骤10342,在第二cnn输出四维张量组中,依次提取第二cnn输出四维张量[1,1,1,c5]的矩阵元素序列,向第三cnn输出四维张量[b6,1,1,c6]进行矩阵元素赋值处理;

此处,因为后续要进行lstm输入,所以需要对第二cnn输出四维张量组的多个第二cnn输出四维张量进行合并生成一个四维张量;假设第二cnn输出四维张量组包括25个第二cnn输出四维张量[1,1,1,64],那么合并完成后的第三cnn输出四维张量就是[25,1,1,64];对应的第二cnn输出四维张量组中各个张量的具体数据序列也需要向第三cnn输出四维张量进行依次添加;

步骤1035,按血压lstm的输入参数格式,对第三cnn输出四维张量进行张量降维处理,生成第二lstm输入三维张量;

其中,第二lstm输入三维张量具体为lstm输入三维张量[h7,w7,c7];h7为第二lstm输入三维张量[h7,w7,c7]的第三维度参数,且h3的值为片段总数;w7为第二lstm输入三维张量[h7,w7,c7]的第二维度参数,且w7为b6除以h3的商;c7为第二lstm输入三维张量[h7,w7,c7]的第一维度参数,且c7为c6。

此处,lstm网络层的输入参数结构为三维张量形式,所以本步骤需要将合并生成的第三cnn输出四维张量进行张量降维处理,本次降维的原则是将降维后的三维张量的第三维度参数设置为片段总数,降维后的张量的第三和第二维度参数的乘积等于降维前第四维度参数,降维后第一维度参数的值不变;假设第三cnn输出四维张量为[25,1,1,64],那么降维后的第二lstm输入三维张量为[5,5,64];由此可见实际张量的数据值序列并未发生增减,只是张量形状进行变换而已。

步骤104,利用血压lstm模型的lstm网络层,对第二lstm输入三维张量进行血压长短期记忆计算操作,生成lstm输出三维张量;

其中,血压lstm网络模型包括lstm网络层和全连接层;

具体包括:步骤1041,当cnn方案标识符为第一方案时,利用血压lstm模型的lstm网络层,对第一lstm输入三维张量进行血压长短期记忆计算操作,生成lstm输出三维张量;

步骤1042,当cnn方案标识符为第二方案时,利用血压lstm模型的lstm网络层,对第二lstm输入三维张量进行血压长短期记忆计算操作,生成lstm输出三维张量。

步骤105,利用全连接层,对lstm输出三维张量进行血压回归计算操作,生成血压预测三维张量[x,y,2];

其中,x为片段总数;y为子片段总数。

此处,假设第二lstm输入三维张量为[5,5,64],那么血压预测三维张量应是[5,5,2],就是有5*5=25个一维张量[2],每个一维张量[2]包括两个血压预测数据:舒张压参考值和收缩压参考值;血压预测三维张量应是[5,5,2]也即是包括了25对对血压预测值。

步骤106,按多个脉搏波一维片段顺序与多个脉搏波一维子片段顺序,从血压预测三维张量[x,y,2]中依次提取出预测血压数据,生成血压预测数据集合;

具体包括:步骤1061,初始化血压预测数据集合为空;设置血压数据组;初始化血压数据组的舒张压数据为空;初始化血压数据组的收缩压数据为空;

步骤1062,依次提取血压预测三维张量[x,y,2]包括的血压预测一维向量[2]生成当前一维向量[2];设置血压数据组的收缩压数据为当前一维向量[2]中的子片段收缩压数据,设置血压数据组的舒张压数据为当前一维向量[2]中的子片段舒张压数据;将血压数据组向血压预测数据集合进行数据组添加操作;血压预测三维张量[x,y,2]包括x*y个血压预测一维向量[2];血压预测一维向量[2]包括子片段收缩压数据和子片段舒张压数据。

此处,是将血压预测三维张量[5,5,2]中的25对血压预测值逐一提取来,以25个血压数据组的形式添加进血压预测数据集合。此处的血压预测数据集合就是使用cnn和lstm融合网络对ppg信号数据进行血压预测的计算结果。

如图3为本发明实施例三提供的一种预测血压的装置的设备结构示意图所示,该设备包括:处理器和存储器。存储器可通过总线与处理器连接。存储器可以是非易失存储器,例如硬盘驱动器和闪存,存储器中存储有软件程序和设备驱动程序。软件程序能够执行本发明实施例提供的上述方法的各种功能;设备驱动程序可以是网络和接口驱动程序。处理器用于执行软件程序,该软件程序被执行时,能够实现本发明实施例提供的方法。

需要说明的是,本发明实施例还提供了一种计算机可读存储介质。该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时,能够实现本发明实施例提供的方法。

本发明实施例还提供了一种包含指令的计算机程序产品。当该计算机程序产品在计算机上运行时,使得处理器执行上述方法。

本发明实施例提供的一种预测血压的方法和装置,首先将采集到ppg信号数据转换为脉搏波信号数据,然后采用由血压cnn和lstm组成的融合网络对脉搏波信号数据进行特征提取操作生成血压特征数据并对血压特征数据进行回归计算从而预测出测试者的血压数据(舒张压、收缩压)。通过本发明实施例,既避免了常规测试手段的繁琐和不适感,又产生了一种自动智能的数据分析方法,从而使得应用方可以方便地对被测对象进行多次连续监测。

专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。


技术特征:

1.一种预测血压的方法,其特征在于,所述方法包括:

对光体积变化描记图法ppg信号数据进行脉搏波转换及采样处理生成脉搏波一维向量;将所述脉搏波一维向量划分为多个脉搏波一维片段并获取片段总数;将所述脉搏波一维片段划分多个脉搏波一维子片段并获取子片段总数;

获取卷积神经网络cnn方案标识符;所述cnn方案标识符包括第一方案和第二方案两种标识符;

当所述cnn方案标识符为所述第一方案时,利用血压cnn模型对所述脉搏波一维向量进行全向量卷积池化计算操作,并将计算结果按血压长短期记忆网络lstm的输入参数格式进行张量降维处理生成第一lstm输入三维张量;

当所述cnn方案标识符为所述第二方案时,利用所述血压cnn模型对所述脉搏波一维向量进行分段向量卷积池化计算操作,并将计算结果按所述血压lstm的输入参数格式进行张量降维处理生成第二lstm输入三维张量;

根据所述cnn方案标识符,利用所述血压lstm模型的lstm网络层,对所述第一lstm输入三维张量或所述第二lstm输入三维张量进行血压长短期记忆计算操作,生成lstm输出三维张量;所述血压lstm网络模型包括所述lstm网络层和全连接层;

利用所述全连接层,对所述lstm输出三维张量进行血压回归计算操作,生成血压预测三维张量[x,y,2];所述x为所述片段总数;所述y为所述子片段总数;

按所述多个脉搏波一维片段顺序与所述多个脉搏波一维子片段顺序,从所述血压预测三维张量[x,y,2]中依次提取出预测血压数据,生成血压预测数据集合。

2.根据权利要求1所述的预测血压的方法,其特征在于,所述对光体积变化描记图法ppg信号数据进行脉搏波转换及采样处理生成脉搏波一维向量;将所述脉搏波一维向量划分为多个脉搏波一维片段并获取片段总数;将所述脉搏波一维片段划分多个脉搏波一维子片段并获取子片段总数,具体包括:

调用ppg信号采集设备,在生物体局部皮肤表面对预置光源信号进行光强信号采集,生成一段长度为信号采集时间阈值的所述ppg信号数据;对所述ppg信号数据进行脉搏波数据转换操作生成脉搏波信号数据;对所述脉搏波信号数据按特征采样频率阈值进行特征数据采样生成脉搏波一维向量;所述预置光源信号至少包括红光源信号、红外光源信号和绿光源信号的一类;

按片段长度阈值对所述脉搏波一维向量进行数据片段划分生成多个所述脉搏波一维片段,并以所述脉搏波一维向量包括的所述脉搏波一维片段的总数为所述片段总数;

按子片段长度阈值对所述脉搏波一维片段进行数据子片段划分生成多个所述脉搏波一维子片段,并以所述脉搏波一维片段包括的所述脉搏波一维子片段的总数为所述子片段总数。

3.根据权利要求2所述的预测血压的方法,其特征在于,所述当所述cnn方案标识符为所述第一方案时,利用血压cnn模型对所述脉搏波一维向量进行全向量卷积池化计算操作,并将计算结果按血压长短期记忆网络lstm的输入参数格式进行张量降维处理生成第一lstm输入三维张量,具体包括:

当所述cnn方案标识符为所述第一方案时,根据所述片段总数和所述脉搏波一维向量,进行第一血压cnn输入参数设置操作,生成第一cnn输入四维张量;

按预置的卷积层数阈值,利用所述血压cnn模型对所述第一cnn输入四维张量进行多层卷积池化计算生成第一cnn输出四维张量;

按血压长短期记忆网络lstm的输入参数格式,对所述第一cnn输出四维张量进行张量降维处理,生成所述第一lstm输入三维张量。

4.根据权利要求3所述的预测血压的方法,其特征在于,所述当所述cnn方案标识符为所述第一方案时,根据所述片段总数和所述脉搏波一维向量,进行第一血压cnn输入参数设置操作,生成第一cnn输入四维张量,具体包括:

当所述cnn方案标识符为所述第一方案时,设置所述第一cnn输入四维张量具体为第一cnn输入四维张量[b1,1,w1,1];所述第一cnn输入四维张量[b1,1,w1,1]包括所述b1个第一cnn输入三维张量[1,w1,1];所述b1为所述第一cnn输入四维张量[b1,1,w1,1]的第四维度参数,且所述b1为所述片段总数;所述w1为所述第一cnn输入四维张量[b1,1,w1,1]的第二维度参数,且所述w1为所述片段长度阈值;

依次提取所述脉搏波一维向量包括的所述脉搏波一维片段,对所述第一cnn输入四维张量[b1,1,w1,1]中对应的所述第一cnn输入三维张量[1,w1,1]进行矩阵元素赋值处理。

5.根据权利要求3所述的预测血压的方法,其特征在于,所述按预置的卷积层数阈值,利用所述血压cnn模型对所述第一cnn输入四维张量进行多层卷积池化计算生成第一cnn输出四维张量,具体包括:

步骤51,初始化第一索引的值为1;初始化第一总数为所述卷积层数阈值;初始化第一索引临时四维张量为所述第一cnn输入四维张量;

步骤52,利用所述血压cnn模型的第一索引层卷积层,对所述第一索引临时四维张量进行卷积计算处理,生成第一索引卷积输出数据四维张量;利用所述血压cnn模型的第一索引层池化层,对所述第一索引卷积输出数据四维张量进行池化计算处理,生成第一索引池化输出数据四维张量;所述血压cnn模型包括多层所述卷积层和多层所述池化层;

步骤53,设置所述第一索引临时四维张量为所述第一索引池化输出数据四维张量;

步骤54,将所述第一索引加1;

步骤55,判断所述第一索引是否大于所述第一总数,如果所述第一索引大于所述第一总数转至步骤56,如果所述第一索引小于或等于所述第一总数转至步骤52;

步骤56,设置所述第一cnn输出四维张量为所述第一索引临时四维张量;所述第一cnn输出四维张量具体为第一cnn输出四维张量[b2,1,w2,c2];所述b2为所述第一cnn输出四维张量[b2,1,w2,c2]的第四维度参数,且所述b2为所述片段总数;所述w2为所述第一cnn输出四维张量[b2,1,w2,c2]的第二维度参数,且所述w2为预置的lstm层神经元总数阈值;所述c2为所述第一cnn输出四维张量[b2,1,w2,c2]的第一维度参数,且所述c2为预置的lstm层神经元长度阈值。

6.根据权利要求5所述的预测血压的方法,其特征在于,

所述第一lstm输入三维张量具体为第一lstm输入三维张量[h3,w3,c3];所述h3为所述第一lstm输入三维张量[h3,w3,c3]的第三维度参数,且所述h3为所述片段总数;所述w3为所述第一lstm输入三维张量[h3,w3,c3]的第二维度参数,且所述w3为所述w2;所述c3为所述第一lstm输入三维张量[h3,w3,c3]的第一维度参数,且所述c3为所述c2。

7.根据权利要求2所述的预测血压的方法,其特征在于,所述当所述cnn方案标识符为所述第二方案时,利用所述血压cnn模型对所述脉搏波一维向量进行分段向量卷积池化计算操作,并将计算结果按所述血压lstm的输入参数格式进行张量降维处理生成所述第二lstm输入三维张量,具体包括:

当所述cnn方案标识符为所述第二方案时,根据所述片段总数乘以所述子片段总数的乘积生成张量总数;

根据所述张量总数和所述脉搏波一维向量,进行第二血压cnn输入参数设置操作,生成第二cnn输入四维张量组;所述第二cnn输入四维张量组包括所述张量总数个第二cnn输入四维张量;

按预置的卷积层数阈值,利用所述血压cnn模型对所述第二cnn输入四维张量组中的所有所述第二cnn输入四维张量分别进行多层卷积池化计算生成第二cnn输出四维张量组;所述第二cnn输出四维张量组包括所述张量总数个第二cnn输出四维张量;

对所述第二cnn输出四维张量组中的所有所述第二cnn输出四维张量进行四维张量合并操作,生成第三cnn输出四维张量;

按所述血压lstm的输入参数格式,对所述第三cnn输出四维张量进行张量降维处理,生成所述第二lstm输入三维张量。

8.根据权利要求7所述的预测血压的方法,其特征在于,所述根据所述张量总数和所述脉搏波一维向量,进行第二血压cnn输入参数设置操作,生成第二cnn输入四维张量组,具体包括:

对所述脉搏波一维向量的所有脉搏波一维子片段进行排序,生成子片段全序列;所述子片段全序列包括所述张量总数个所述脉搏波一维子片段;

设置所述第二cnn输入四维张量组;设置所述第二cnn输入四维张量具体为第二cnn输入四维张量[1,1,w4,1];所述第二cnn输入四维张量组包括所述张量总数个所述第二cnn输入四维张量[1,1,w4,1];所述w4为所述第二cnn输入四维张量[1,1,w4,1]的第二维度参数,且所述w4为所述子片段长度阈值;

依次提取所述子片段全序列中的所述脉搏波一维子片段,向所述第二cnn输入四维张量组中对应的第二cnn输入四维张量[1,1,w4,1]进行矩阵元素赋值处理。

9.根据权利要求7所述的预测血压的方法,其特征在于,

所述第二cnn输出四维张量组具体包括所述张量总数个所述第二cnn输出四维张量;所述第二cnn输出四维张量具体为第二cnn输出四维张量[1,1,1,c5];所述c5为所述第二cnn输出四维张量[1,1,1,c5]的第一维度参数。

10.根据权利要求9所述的预测血压的方法,其特征在于,所述对所述第二cnn输出四维张量组中的所有所述第二cnn输出四维张量进行四维张量合并操作,生成第三cnn输出四维张量,具体包括:

设置所述第三cnn输出四维张量具体为第三cnn输出四维张量[b6,1,1,c6];所述b6为所述第三cnn输出四维张量[b6,1,1,c6]的第四维度参数,且所述b6为所述张量总数;所述c6为所述第三cnn输出四维张量[b6,1,1,c6]的第一维度参数,且所述c6为所述c5;

在所述第二cnn输出四维张量组中,依次提取所述第二cnn输出四维张量[1,1,1,c5]的矩阵元素序列,向所述第三cnn输出四维张量[b6,1,1,c6]进行矩阵元素赋值处理。

11.根据权利要求7所述的预测血压的方法,其特征在于,

所述第二lstm输入三维张量具体为lstm输入三维张量[h7,w7,c7];所述h7为所述第二lstm输入三维张量[h7,w7,c7]的第三维度参数,且所述h3的值为所述片段总数;所述w7为所述第二lstm输入三维张量[h7,w7,c7]的第二维度参数,且所述w7为所述b6除以所述h3的商;所述c7为所述第二lstm输入三维张量[h7,w7,c7]的第一维度参数,且所述c7为所述c6。

12.根据权利要求1所述的预测血压的方法,其特征在于,所述根据所述cnn方案标识符,利用所述血压lstm模型的lstm网络层,对所述第一lstm输入三维张量或所述第二lstm输入三维张量进行血压长短期记忆计算操作,生成lstm输出三维张量,具体包括:

当所述cnn方案标识符为所述第一方案时,利用所述血压lstm模型的lstm网络层,对所述第一lstm输入三维张量进行所述血压长短期记忆计算操作,生成所述lstm输出三维张量;

当所述cnn方案标识符为所述第二方案时,利用所述血压lstm模型的lstm网络层,对所述第二lstm输入三维张量进行所述血压长短期记忆计算操作,生成所述lstm输出三维张量。

13.根据权利要求1所述的预测血压的方法,其特征在于,所述按所述多个脉搏波一维片段顺序与所述多个脉搏波一维子片段顺序,从所述血压预测三维张量[x,y,2]中依次提取出预测血压数据,生成血压预测数据集合,具体包括:

初始化所述血压预测数据集合为空;设置血压数据组;初始化所述血压数据组的舒张压数据为空;初始化血压数据组的收缩压数据为空;

依次提取所述血压预测三维张量[x,y,2]包括的血压预测一维向量[2]生成当前一维向量[2];设置所述血压数据组的所述收缩压数据为所述当前一维向量[2]中的子片段收缩压数据,设置所述血压数据组的所述舒张压数据为所述当前一维向量[2]中的子片段舒张压数据;将所述血压数据组向所述血压预测数据集合进行数据组添加操作;所述血压预测三维张量[x,y,2]包括x*y个所述血压预测一维向量[2];所述血压预测一维向量[2]包括所述子片段收缩压数据和所述子片段舒张压数据。

14.一种设备,包括存储器和处理器,其特征在于,所述存储器用于存储程序,所述处理器用于执行如权利要求1至13任一项所述的方法。

15.一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行如权利要求1至13任一项所述的方法。

16.一种计算机可读存储介质,包括指令,当所述指令在计算机上运行时,使所述计算机执行根据权利要求1至13任一项所述的方法。

技术总结
本发明实施例涉及一种预测血压的方法和装置,所述方法包括:对PPG信号进行转换生成脉搏波一维向量;将脉搏波一维向量划分为多个脉搏波一维片段并获取片段总数;将脉搏波一维片段划分多个脉搏波一维子片段并获取子片段总数;获取CNN方案标识符;CNN方案标识符为第一方案时对脉搏波一维向量进行全向量卷积池化计算并将结果降维生成第一LSTM输入三维张量;CNN方案标识符为第二方案时对脉搏波一维向量进行分段向量卷积池化计算并将结果降维生成第二LSTM输入三维张量;对第一或二LSTM输入三维张量进行血压长短期记忆计算生成LSTM输出三维张量;对LSTM输出三维张量进行血压回归计算生成血压预测三维张量[X,Y,2];生成血压预测数据集合。

技术研发人员:张碧莹;曹君
受保护的技术使用者:乐普(北京)医疗器械股份有限公司
技术研发日:2020.02.21
技术公布日:2020.06.09

转载请注明原文地址: https://bbs.8miu.com/read-29076.html

最新回复(0)