一种血糖预测方法及装置与流程

文档序号:15837412发布日期:2018-11-07 08:01阅读:286来源:国知局
一种血糖预测方法及装置与流程
本发明涉及血糖监测领域,具体涉及一种血糖预测方法及装置。
背景技术
糖尿病是人体血糖浓度值长期偏离正常范围(70-120mg/dl)的慢性病。若血糖长期高于正常范围将会引起严重的并发症,血糖突然低于正常值也会引起不适症状,严重者可导致死亡。目前,尚无根治糖尿病的办法,控制血糖在正常范围内是糖尿病患者日常管理的重要部分,所以连续的血糖监测,可以准确实时的了解病人的血糖水平,也为专家学者研究血糖预测提供了大量的血糖数据。越来越多的专家学者为提高血糖预测的精度建立了许多模型,常用的有时间序列分析模型,机器学习算法模型等,但单一的模型总是有一定的适用范围,在超出某些情况外,预测效果急剧下降。也有些模型对患者的历史数据样本容量有较高要求,总之,不同模型都有各自的特点,无法通过一种模型得到精确度好而适应性又高的预测结果。公开于该
背景技术
部分的信息仅仅旨在增加对本发明的总体背景的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域一般技术人员所公知的现有技术。技术实现要素:本发明的目的是为了解决现有技术中单一的模型适用范围小,血糖预测的准确度低的问题,提出一种血糖预测方法及装置。为解决上述技术问题,本发明提供了一种基于组合预测的血糖预测方法,其特征在于,所述血糖预测方法的步骤:ⅰ.对原始测量的血糖数据进行清洗,ⅱ.利用卡尔曼滤波对经过清洗处理后的数据进行平滑去噪,ⅲ.根据滤波后的数据分别应用自回归模型、支持向量回归模型和长短期记忆网络模型进行预测,分别得到所述模型的血糖预测结果,iv.分别计算所述模型的权重,进而对各自所述模型的血糖预测结果及各自模型权重进行线性组合,得到组合预测模型预测值。优选地,上述技术方案中,所述模型的权重定义为下式中的wi:n为组合预测模型中子模型的个数,是第i个模型在j时间的预测值,wi为所述模型权重,为i个模型线性组合后的预测值。在时刻k,第i个模型的预测误差用ei(k)表示,那么在k时刻之前的误差ei(j)则表示为下式:则模型i在k时刻之前误差平方和si(j)表示为下式:权重wi(j)应满足下式得到第i个模型在j时刻的权重wi(j)可以表示为下式:优选地,上述技术方案中,所述模型i在k时刻之前误差平方和si(j)中加入一个遗忘因子α,α取α∈(0,1),si(j)可以表示为:优选地,上述技术方案中,不断更新所述子模型的权重,使得预测效果好的子模型获得更大的权重。优选地,上述技术方案中,在运用所述支持向量回归模型预测血糖时,运用核函数进行运算,完成对所述原始测量的血糖数据的分类。优选地,上述技术方案中,所述核函数是将所述原始测量的血糖数据从低维空间映射到高维空间的算法,即在低维空间进行运算,所述原始测量的血糖数据的分类效果表现在高维空间,避免在高维空间上进行复杂的计算。优选地,上述技术方案中,采用均方根误差对所述自回归模型、支持向量回归模型、长短期记忆网络模型和组合预测模型分别进行评价。优选地,上述技术方案中,所述原始测量的血糖数据不断进行差分处理,直至所述血糖数据平稳。本发明提供了一种血糖预测的装置,在所述基于组合预测的血糖预测方法中使用,其特征在于,所述装置包括:存储器,用于存放预测血糖的程序,处理器,用于执行所述程序。所述程序被所述处理器执行时实现前述基于组合模型的血糖预测方法的步骤。优选地,上述技术方案中,所述程序包括有预处理程序、自回归模型的生成程序、支持向量回归模型的生成程序、长短期记忆网络模型的生成程序、组合预测模型的生成程序,在所述装置上输入原始测量的血糖数据集,数据经过预处理程序得到连续和平滑的数据集,然后所述的数据集分别通过自回归模型的生成程序、支持向量回归模型的生成程序和长短期记忆网络模型的生成程序,得到所述模型的血糖预测结果,最后通过组合预测模型的生成程序,得到组合预测模型预测值。优选地,上述技术方案中,不断更新所述子模型的权重,使得预测效果好的子模型获得更大的权重。与现有技术相比,本发明具有如下有益效果:与现有技术相比,本发明提供一种血糖预测方法及装置,它综合多种模型优点,而且实现各种模型权重可变来预测血糖,使预测结果精确度更高,上述方法适用的范围更广。附图说明图1是组合模型预测血糖流程图。图2是不同核函数下的预测45min血糖曲线图。图3是不同核函数的均方根误差。图4是不同模型下的血糖预测曲线图。图5是不同模型预测结果的均方根误差。主要附图标记说明:图1的ar代表自回归模型,svr代表滑动平均模型,lstm代表长短期记忆网络模型。具体实施方式下面结合附图,对本发明的具体实施方式进行详细描述,但应当理解本发明的保护范围并不受具体实施方式的限制。除非另有其它明确表示,否则在整个说明书和权利要求书中,术语“包括”或其变换如“包含”或“包括有”等等将被理解为包括所陈述的元件或组成部分,而并未排除其它元件或其它组成部分。图1所示,基于组合模型的血糖预测方法包括以下步骤:ⅰ.对原始测量的血糖数据进行清洗。对原始测量血糖数据集进行数据清洗时,时间戳在数据集中以字符串的形式存储,可以通过时间戳转换函数可以将其转换为北京时间表示。在同一组数据里,可以根据前后两个数据点的时间间隔是否为3分钟来判断数据集的连续性;若原始的测量血糖数据集并不连续,且遗漏的数据点较少,则在每个患者参与血糖数据收集的开始时期内,他们的常规信息,例如起床时间、睡眠时间、工作时间、用餐时间都可作为必要信息被收集。这些信息可以用于合理推断出患者的遗漏数据。因此,当同一组数据里如果有不连续的情况可以按照常规信息合理推断出遗漏的数据点。若原始的测量血糖数据集并不连续,且遗漏的数据点较多,则可以根据间断处将不连续的血糖时间序列划分成若干个连续的时间序列。ⅱ.利用卡尔曼滤波对经过清洗处理后的数据进行平滑去噪。使用卡尔曼滤波对清洗后的数据集进行平滑去噪处理,使得到的平滑血糖数据集与预处理后的血糖数据集相比,除了可以保证较小的时间延迟,同时高频噪声下降明显。卡尔曼滤波算法需要不断地更新不同时刻的估计值与测量值,从而获得对于当前状态变量的最优估计,选择调谐参数q与r,定义均方根误差(rmse)作为衡量平滑数据相较于原始测量血糖数据的准确性,其计算方式为原始血糖数据与平滑数据偏差的平方和与数据个数比值的平方根(量纲为:mmol/l),公式描述为:其中,xf=[x1,f,…,xn,f]与x=[x1,…,xn]均为一维向量,分别代表了平滑后的血糖数据与原始的测量血糖数据,通过滤波结果的均方根误差来调整参数q和r,从而刻画出滤波效果的平滑性。为了考察卡尔曼滤波方法的实时性,以一天中480个数据点中的最大值(波峰)为基准,计算平滑数据比原始血糖数据滞后的数据点数。滞后的数据点数越少,说明在该初始条件下的卡尔曼滤波器的时间延迟越小;选取一组q、r值使得滤波后的血糖数据与原始测量血糖数据相比:均方根误差较小且以最大值为基准的滞后点数较少。ⅲ.子模型预测。根据血糖数据用户id的不同,将单人的连续血糖数据集划分四个部分:输入训练集、输入测试集、输出训练集、输出测试集。首先验证数据的平稳性,若数据不平稳则进行差分处理,直至数据平稳。具有平稳性的数据才能进行血糖预测。计算数据的自相关函数和偏相关函数,通过两个函数的图像进行模式识别,选择利用自回归模型。根据aic信息准则计算结果如表1,故采用3阶模型ar(3)模型预测未来15min、30min、45min、75min的病人血糖值。表1aic准则定阶序号模型aic值1ar(1)132.3012ar(2)128.3433ar(3)112.3454ar(4)113.4725ar(5)125.2246ar(6)131.2457ar(7)135.2348ar(8)138.2429ar(9)140.25310ar(10)144.273支持向量回归模型需要对数据进行分类,当数据不能线性可分时,需将数据映射到高维空间,从而在高维空间构建超平面,完成分类,核函数就是低维空间映射到高维空间的转换,但它是先在低维空间运算,分类效果表现在高维空间,故可避免在高维空间上进行复杂的计算,仍然可以得到相同的结果。支持向量回归模型选择不同的核函数,分别使用线性核函数、sigmoid核函数、径向基核函数,同时预设一个关于滚动预测的窗口取值的数组,保持svr模型中的核参数不变,并遍历该数组,寻找使得血糖预测值与原始测量血糖值的均方根误差值最小时对应的核函数与窗口取值并返回。核函数与窗口取值确定的条件下,调整惩罚因子c与不敏感因子ε取值,计算出各个参数的取值组合下所训练出的预测模型对连续血糖的预测值与其原始测量血糖值的均方根误差;选出最小均方根误差对应的核参数的组合作为svr模型中的核参数;输出可以预测一个数据点的训练模型。利用这个病人的血糖数据进行核函数测试,预测45分钟,结果如图2,不同核函数的均方根误差如图3,通过以上两图,选择径向基核函数作为支持向量回归模型的核函数。根据先验知识,选择c=1,ε=0.01。同样,利用这个模型预测未来15min、30min、45min、75min的血糖值。长短期记忆网络模型具体算法是通过三个门实现,每个门的含义是控制信息流入和留出的量。遗忘门表示遗弃哪些历史数据,输入门控制流入细胞状态的信息,输出门决定哪些信息流出。同时前一时刻的信息留出也将作为下一时刻的信息流入部分,因此lstm模型可以实现长期记忆,且信息在其中流转传输时没有非线性的操作计算因而可以保持稳定不变。预留最后一天的数据480个点为测试集。前128个数据点作为测试集的集中输入集。均为一维矩阵。激活函数通常选用双曲函数,选用均方根误差作为模型的损失函数,使用自适应矩量估计优化器,其优点是使参数更新更加平稳。同样,利用这个模型预测未来15min、30min、45min、75min的血糖值。iv.组合预测模型算法。模型可以定义为(2)式:n为组合预测模型中子模型的个数,是第i个模型在j时间的预测值,wi为所述模型权重,为i个子模型线性组合后的预测值。现假设有n个不同的模型,第i个模型在k时刻的预测值称为如果一个模型在k时刻之前的预测效果要好于其他,那么在k+1时刻的预测值就要跟倾向于这个模型,也就是说这个模型的权重要变大。在时刻k,第i个模型的预测误差用ei(k)表示,那么在k时刻之前的误差则表示为(3)式:则模型i在k时刻之前误差平方和为(4)式:考虑到血糖数据的连续变化是与数据距离有很大关系,离预测时刻越近的数据与预测值有更大的关联,对预测结果又更大的影响,因此不同时刻的误差应有不同的权重。这里,加一个遗忘因子α,取α∈(0,1),增强近期数据的影响力,修正后的误差平方和为(5)式:显然,si(j)越大,第i个模型在当前时刻以前的预测效果越差,对应的模型在j时刻权重就应该越小,因此第i个模型在j时刻的权重与si(j)成反比,即(6)式:权重应满足(7)式得到第i个模型在j时刻的权重wi(j)可以表示为(8)式:各个子模型算法独立预测结果之后,将各自权重与各自预测结果进行线性组合,得到组合预测模型的预测结果为(9)式:将上述所得到的子模型的血糖预测结果加入到组合预测模型中,得到未来15min、30min、45min、75min的血糖值对比图如图4,不同模型的均方根误差如图5。从图5可以看出组合预测模型预测效果好于单独预测的三个子模型,其中自回归模型预测效果随预测时间增长效果下降较快,而组合模型由于是三个模型根据预测效果,权重可变的线性组合,其预测结果的精确性更好,表现出更好的预测性能。本发明提供了一种血糖预测的装置,所述装置包括:存储器,用于存放预测血糖的程序,处理器,用于执行所述程序。所述程序被所述处理器执行时实现所述基于组合模型的血糖预测方法的步骤。在所述基于组合预测的血糖预测方法中使用,在所述装置上输入原始测量的血糖数据集,数据经过预处理程序得到连续和平滑的数据集,然后所述的数据集分别通过自回归模型的生成程序、支持向量回归模型的生成程序和长短期记忆网络模型的生成程序,得到所述模型的预测未来15min、30min、45min、75min的血糖值,最后通过组合预测模型的生成程序,得到如图4所示的未来15min、30min、45min、75min的组合预测模型预测值对比图。综上,本发明提供一种基于组合预测模型的血糖预测方法,它综合多种模型优点,而且实现各种模型权重可变来预测血糖,使预测结果精确度更高,上述方法适用的范围更广。以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属
技术领域
的普通技术人员来说,在不脱离本发明构思的前提下做出若干替代或明显变型,而且性能或用途相同,都应当视为属于本发明的保护范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1