CN115862795A - 一种基于预训练和数据分解两阶段的血糖预测方法 - Google Patents

一种基于预训练和数据分解两阶段的血糖预测方法 Download PDF

Info

Publication number
CN115862795A
CN115862795A CN202211157514.9A CN202211157514A CN115862795A CN 115862795 A CN115862795 A CN 115862795A CN 202211157514 A CN202211157514 A CN 202211157514A CN 115862795 A CN115862795 A CN 115862795A
Authority
CN
China
Prior art keywords
data
blood glucose
decomposition
training
blood sugar
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.)
Pending
Application number
CN202211157514.9A
Other languages
English (en)
Inventor
请求不公布姓名
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Kefu Biotechnology Co ltd
Original Assignee
Shenzhen Kefu Biotechnology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Kefu Biotechnology Co ltd filed Critical Shenzhen Kefu Biotechnology Co ltd
Priority to CN202211157514.9A priority Critical patent/CN115862795A/zh
Priority to PCT/CN2022/141240 priority patent/WO2024060438A1/zh
Publication of CN115862795A publication Critical patent/CN115862795A/zh
Priority to US18/206,095 priority patent/US20240115170A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/145Measuring characteristics of blood in vivo, e.g. gas concentration, pH value; Measuring characteristics of body fluids or tissues, e.g. interstitial fluid, cerebral tissue
    • A61B5/14532Measuring characteristics of blood in vivo, e.g. gas concentration, pH value; Measuring characteristics of body fluids or tissues, e.g. interstitial fluid, cerebral tissue for measuring glucose, e.g. by tissue impedance measurement
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7235Details of waveform analysis
    • A61B5/7246Details of waveform analysis using correlation, e.g. template matching or determination of similarity
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7235Details of waveform analysis
    • A61B5/725Details of waveform analysis using specific filters therefor, e.g. Kalman or adaptive filters
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7235Details of waveform analysis
    • A61B5/7264Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems
    • A61B5/7267Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems involving training the classification device
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7271Specific aspects of physiological measurement analysis
    • A61B5/7275Determining trends in physiological measurement data; Predicting development of a medical condition based on physiological measurements, e.g. determining a risk factor
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/20ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/70ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for mining of medical data, e.g. analysing previous cases of other patients

Landscapes

  • Health & Medical Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Public Health (AREA)
  • Medical Informatics (AREA)
  • Physics & Mathematics (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Veterinary Medicine (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Surgery (AREA)
  • Animal Behavior & Ethology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Signal Processing (AREA)
  • Physiology (AREA)
  • Psychiatry (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Epidemiology (AREA)
  • Primary Health Care (AREA)
  • Evolutionary Computation (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Optics & Photonics (AREA)
  • Emergency Medicine (AREA)
  • Investigating Or Analysing Biological Materials (AREA)

Abstract

本发明涉及一种基于预训练和数据分解两阶段的血糖预测方法,包括以下步骤:结合健康人群和糖尿病人群的血糖数据,开发预训练模型;采集待预测的糖尿病患者的数据;数据进行缺值补充处理和平滑处理;数据进行模态分解,分解为含有不同频率信息的固有模态分量;进行样本熵分析,对样本熵最大的分量进行二次分解;加载预训练模型的权重,导入步骤5处理过的糖尿病患者的数据至集成学习模块。本发明先结合健康人群和糖尿病人群的血糖数据,训练一个通用的血糖预测模型作为预训练模型,让模型具备预测数据储备,以解决现有血糖预测方法单一,只考虑了单个糖尿病人的血糖数据,无法很好地预测样本数据外患者的血糖浓度。

Description

一种基于预训练和数据分解两阶段的血糖预测方法
技术领域
本发明涉及血糖预测领域,具体的说,是涉及一种基于预训练和数据分解两阶段的血糖预测方法。
背景技术
糖尿病是由胰岛素分泌紊乱而引起的代谢性疾病,患者体内的葡萄糖无法正常吸收,长此以往会导致短期或长期的并发症,严重影响患者的生活质量和生命安全。血糖浓度是诊断糖尿病的标准,借助CGMS(连续动态血糖监测)获得患者连续的血糖数据采集,再进行血糖预测。
血糖预测方式中常见的一类是基于数据驱动模型的方式,该方式仅考虑患者的血糖数据,利用近期的血糖值,结合算法预测未来一段时间的血糖浓度变化,例如Sandham提出的递归神经网络,Bremer提出的自回归模型,Fayrouz提出采用自反馈神经网络的方法,Georga利用支持向量机算法,莫雪等人利用极限学习机算法,李宁等人利用回声状态网络建立起血糖混沌预报模型等。利用上述算法可以建立血糖预测模型,利用患者数据进行算法验证,获得较为准确的实验结果。此方式仅利用患者历史血糖数据进行血糖预测,不需要考虑其他生理因素。
目前血糖预测都只采用上述其中一个模型,单一的方法泛化能力较弱,且大多只考虑了单个糖尿病人的血糖数据,无法很好地预测样本数据外患者的血糖浓度。
以上问题,值得解决。
发明内容
为了克服现有技术的问题:血糖预测只采用一个模型,且只考虑单个糖尿病人的血糖数据,泛化能力较弱,无法很好地预测样本数据外患者的血糖浓度,本发明提供一种基于预训练和数据分解两阶段的血糖预测方法。
本发明技术方案如下所述:
一种基于预训练和数据分解两阶段的血糖预测方法,包括以下步骤:
S1、结合健康人群和糖尿病人群的血糖数据,开发预训练模型;
S2、采集待预测的糖尿病患者的数据;
S3、对步骤2的数据进行缺值补充处理和平滑处理;
S4、对步骤3所得的数据进行模态分解,分解为一系列含有不同频率信息的固有模态分量;
S5、对步骤4分解得到的模态分量进行样本熵分析,对样本熵最大的分量进行二次分解;
S6、加载步骤1的预训练模型的权重,导入步骤5处理过的糖尿病患者的数据至集成学习模块,所述集成学习模块用于预测未来30分钟和未来60分钟的血糖值。
根据上述方案的本发明,步骤1包括以下步骤:
S101、导入第一数据库,第一数据库的样本包括糖尿病人群的血糖数据和健康人群的血糖数据;
其中,第一数据库的数据包括低血糖风险(LBGI)和高血糖风险(HBGI);
LBGI的算法是对血糖监测结果进行统计学转化,根据转化结果计算低血糖风险,然后计算所有低血糖风险值的平均值,公式如下:
Figure BDA0003859426380000021
HBGI算法是对血糖监测结果进行统计学转化,根据转化结果计算高血糖风险,然后计算所有高血糖风险值的平均值,公式如下:
Figure BDA0003859426380000022
fbgi=1.509×(log(BG)1.084-5.381);
公式中,fbgi为转化后的血糖值,n为血糖测量总数。
低血糖风险与高血糖风险的和作为风险指数(Risk Index),即有:
Risk Index=LBGI+HBGI。
S102、筛选出过去30分钟、过去1小时、过去2小时、过去4小时和过去8小时的历史血糖数据;
S103、将筛选出的血糖数据送入LSTM模型,将训练结果保存为权重文件,作为预训练模型,用作后续训练模型的默认参数;
其中,LSTM主要通过三个门:忘记门(遗忘门)、输入门、输出门,来达到信息的传递的作用;忘记门通过上一隐藏层和当前输入层通过一个sigmoid单元决定忘记上一轮记忆的细胞信息的多少,即有:ft=σ(Wxfxt+Whfht-1+bf);
输入门有个sigmoid单元决定输入信息、输出比例,即有:it=σ(xtWxi+ht-1Whi+bi);
输入信息通过tanh单元得到,即有:
Figure BDA0003859426380000031
经过门控的作用真实的输入信息为
Figure BDA0003859426380000032
细胞信息是通过上一轮残留下来的信息和当前获取到的信息共同决定的,所以/>
Figure BDA0003859426380000033
即:
ct=ftct-1+it*tanh(xtWxc+ht-1Whc+bc);
获取细胞信息通过tanh单元得到隐藏输出层信息,同时有个输出们通过sigmoid单元控制输出量,有:
ot=σ(xtWxo+ht-1Who+ct-1Wco+bo);
ht=ottanh(ct);
最终输出
Figure BDA0003859426380000034
为:/>
Figure BDA0003859426380000035
进一步的,步骤S101中的血糖数据为连续50天的血糖动态监测数据;其样本的群体包括若干名儿童、若干名青少年和若干名成年人。
根据上述方案的本发明,步骤2包括以下步骤:
S201、采集待预测糖尿病患者的历史血糖数据,作为第二数据库;
S202、导入第二数据库。
进一步的,步骤S201的采集血糖数据要求包括:血糖检测仪器必须在连续7天中至少采集4天;必须收集至少96小时的动态血糖监测数据,其中至少有24小时是过夜(即晚上10点到早上6点)。
更进一步的,第二数据库的样本为一型糖尿病患者的血糖数据,样本群体的年龄在3.5~17.7岁,平均年龄9.9岁。
根据上述方案的本发明,步骤3包括以下步骤:
S301、利用数据缺值补充法处理含有缺失值的病患血糖数据;
S302、利用数据平滑滤波法使血糖数据平滑。
进一步的,数据缺值补充法包括双线性插值和线性外推,数据平滑滤波法包括卡尔曼滤波、中值滤波。
根据上述方案的本发明,步骤4包括以下步骤:
S401、选取过去1小时,过去3小时,过去8小时的历史血糖数据;
S402、采用集合经验模态分解模型对选出的数据进行滚动分解,滚动分解的时间步长设置为两天,获得不同频率信号,即若干imf分量;
其中,CEEMDAN具体分解步骤如下:
1)将高斯白噪声加入到待分解信号y(t)得到新信号y(t)+(-1)qενj(t),其中q=1,2,对新信号进行EMD分解,得到第一阶本征模态分量C1
Figure BDA0003859426380000041
其中,Ei(·)为经过EMD分解后得到的第i个本征模态分量,vj为满足标准正态分布的高斯白噪声信号,j=1,2,…,N为加入白噪声的次数,ε为白噪声的标准表,y(t)为待分解信号;
2)对产生的N个模态分量进行总体平均就得到CEEMDAN分解的第1个本征模态分量:
Figure BDA0003859426380000051
3)计算去除第一个模态分量后的残差:
Figure BDA0003859426380000052
4)在r1(t)中加入正负成对高斯白噪声得到新信号,以新信号为载体进行EMD分解,得到第一阶模态分量D1,由此可以得到CEEMDAN分解的第2个本征模态分量:
Figure BDA0003859426380000053
5)计算去除第二个模态分量后的残差:
Figure BDA0003859426380000054
6)重复上述步骤,直到获得的残差信号为单调函数,不能继续分解,算法结束;此时得到的本征模态分量数量为K,则原始信号y(t)被分解为:
Figure BDA0003859426380000055
根据上述方案的本发明,步骤5包括以下步骤:
S501、计算imf分量之间的混乱程度,对计算得到的熵值按结果从大到小进行排序;
S502、对熵值最大的分量进行二次分解,使得所有分解分量的熵值维持在一定区间内,降低血糖数据的非线性和非平稳性。
进一步的,在对熵值最大的分量进行二次分解时,采用变分模态分解模型。
根据上述方案的本发明,步骤6中的集成学习模块包括若干不同的机器学习算法,所述导入步骤5处理过的糖尿病患者的数据具体包括以下步骤:
S601、先送入三个不同的机器学习算法:LSTM、GRU和SRNN,获得若干预测结果;
S602、将若干预测结果组合,作为基础预测结果;
S603、将步骤602获得的基础预测结果作为训练集,送入模型Nested-LSTM,得出最终的预测结果。
根据上述方案的本发明,其有益效果在于:
本发明先结合健康人群和糖尿病人群的血糖数据,训练一个通用的血糖预测模型作为预训练模型,使得模型预先学习一批糖尿病人和健康人群的血糖特征,让模型具备预测数据储备,再针对需要预测的糖尿病患者,结合该糖尿病患者的相关血糖特征和历史血糖数据来预测该糖尿病患者接下来30分钟和60分钟的血糖浓度;
本发明对模型预测的结果采用加权叠加的方式得到初步的血糖预测结果;通过构建并结合多个机器学习器来完成学习任务,让不同的网络模型学习并结合相应的血糖特征,以达到更好的血糖预测效果;
进一步的,本发明对含有缺失值得患者血糖数据进行数据处理,从而使采集到的CGMs数据更平稳,更接近真实血糖数据;
进一步的,本发明应用滚动分解之后,可以更好地观测到每次滚动预测后的血糖数据差异;
进一步的,本发明通过使用样本熵和排列熵对滚动分解得到的子序列进行熵值大小排序,按每次分解后得到子序列的预测难易程度排序,可以改善模型的预测效果。
附图说明
图1为本发明的方法流程图;
图2为双线性插值处理前的血糖浓度曲线图;
图3为双线性插值处理后的血糖浓度曲线图;
图4为线性外推法处理前的血糖浓度曲线图;
图5为线性外推法处理后的血糖浓度曲线图;
图6为本发明的血糖预测效果图。
具体实施方式
为了更好地理解本发明的目的、技术方案以及技术效果,以下结合附图和实施例对本发明进行进一步的讲解说明。同时声明,以下所描述的实施例仅用于解释本发明,并不用于限定本发明。
如图1所示,一种基于预训练和数据分解两阶段的血糖预测方法,包括以下步骤:
S1、结合健康人群和糖尿病人群的血糖数据,开发预训练模型;
S2、采集待预测的糖尿病患者的数据;
S3、对步骤2的数据进行缺值补充处理和平滑处理;
S4、对步骤3所得的数据进行模态分解,分解为一系列含有不同频率信息的固有模态分量;
S5、对步骤4分解得到的模态分量进行样本熵分析,对样本熵最大的分量进行二次分解;
S6、加载步骤1的预训练模型的权重,导入步骤5处理过的糖尿病患者的数据至集成学习模块,所述集成学习模块用于预测未来30分钟和未来60分钟的血糖值。
在本发明中,步骤1包括以下步骤:
S101、导入第一数据库,第一数据库的样本包括糖尿病人群的血糖数据和健康人群的血糖数据;步骤S101中的血糖数据为连续50天的血糖动态监测数据;其样本的群体包括若干名儿童、若干名青少年和若干名成年人,下表展示了第一数据库中的部分数据:
70<=BG<=180 BG>180 BG<70 8G>250 BG<50 LBGI HBGI RiskIndex
adolescent#001 100 0 0 0 0 0.09676098 0.463578908 0.560339888
adolescent#002 65.54405944 26.24123325 8.214707312 1.71515867 2.159572252 1.171796584 3.318713869 4.490510454
adolescent#003 90.22290119 7.64530241 2.131796403 0 0.041663773 0.450470542 1.173219672 1.623690214
adolescent#004 83.77196028 10.02708145 6.200958267 0 0.416637733 1.112974384 1.427978028 2.540952412
adolescent#005 72.9046594 21.48461912 5.610721478 2.076244705 1.520727727 0.803204025 1.980683 2.783887026
adolescent#006 96.99326436 3.006735643 0 0 0 0 0.650280805 0.650280805
adolescent#007 60.16943268 30.09513228 9.735435039 6.666203736 3.374765641 1.517738784 3.348977457 4.866716241
adolescent#008 74.29345184 23.713631 1.992917159 4.367752239 0.201374905 0.200909844 3.031484356 3.2323942
adolescent#009 87.41059649 9.811818624 2.77758489 0 0.034719811 0.449631403 1.241904231 1.691535634
adolescent#010 100 0 0 0 0 0.15347298 0.550416861 0.703889841
adult#001 94.75036456 2.076244705 3.173390737 0 0.152767169 0.952691517 0.838390316 1.791081834
adult#002 99.75001736 0 0.24998264 0 0 0.746803859 0.138988932 0.88579279
adult#003 99.4861468 0.513853205 0 0 0 0.000432686 1.037869297 1.038301983
adult#004 91.10478439 8.89521561 0 0 0 0.036388601 0.869165834 0.905554436
adult#005 99.7986251 0.201374905 0 0 0 0.081975835 0.587434717 0.669410552
adult#006 97.02104021 2.180404139 0.798555656 0 0 0.31741661 0.997322393 1.314739003
adult#007 100 0 0 0 0 0.111917245 0.372978494 0.484895739
adult#008 99.88195264 0 0.118047358 0 0 0.441736332 0.210514029 0.652250361
adult#009 78.37650163 2.972015832 18.65148254 0 5.020484689 3.586734245 0.783422917 4.370157161
adult#010 92.73661551 7.068953545 0.194430942 0 0 0.21420621 1.348410878 1.562617088
child#001 77.23074786 8.513297688 14.25595445 0.138879244 0.270814527 1.442716999 0.085306997 1.528023996
child#002 77.45989862 0.458301507 22.08179988 0 4.555239219 3.43699239 0.40437962 3.84137201
child#003 2.673425457 0.631900562 96.69467398 0.020831887 96.43080342 48.17427454 1.342774247 49.51704878
child#004 35.89334074 0 64.10665926 0 35.86556489 16.3029539 0.00805608 16.31100998
child#005 60.69717381 0 39.30282619 0 15.36004444 9.055627983 0.007604162 9.063232145
child#006 70.8631345 11.97833484 17.15853066 0.305534338 3.388653566 2.023331011 0.679482298 2.702813309
child#007 86.89674328 0 13.10325672 0 0.145823207 2.51141117 0.023325293 2.534736464
child#008 0.826331505 0.458301507 98.71536699 0.263870565 98.6945351 20.07692865 6.561082585 26.63801124
child#009 77.30713145 4.701062426 17.99180612 0 1.31240886 1.821780755 0.170821179 1.992601935
child#010 66.82174849 19.90139574 13.27685577 7.207832789 1.999861121 1.347517243 1.188008525 2.535525768
其中,第一列表示样本类别,包括10名青少年(adolescent)、10名成年人(adult)和10名儿童(child);BG为CGMs监测到的血糖值,第二列表示血糖值在正常血糖范围(70-180mg/dl)的占比,第三列表示血糖值在高血糖范围(>180mg/dl)的占比,第四列表示血糖值在低血糖范围(<70mg/dl)的占比,第五列表示血糖值>250mg/dl的占比,第六列表示血糖值<50mg/dl的占比。例如,adolescent#010的所有血糖数据都在该区间,证明该样本属于健康人群;再如adult#002,99.75%的血糖数据都属于70<=BG<=180区间,只有0.25%的时间处于低血糖范围,小于4%,是血糖控制较好的糖尿病患者。
表中第七列——LBGI(低血糖风险)是一个综合评分,由Koatchev等于20世纪90年代提出,可以反映1个月SMBG中低血糖事件发生的频率及程度,并可用于预测未来3~6个月内发生严重低血糖的风险;
LBGI的算法是对血糖监测结果进行统计学转化,根据转化结果计算低血糖风险,然后计算所有低血糖风险值的平均值,公式如下:
Figure BDA0003859426380000081
表中第八列——HBGI(高血糖风险)算法是对血糖监测结果进行统计学转化,根据转化结果计算高血糖风险,然后计算所有高血糖风险值的平均值,公式如下:
Figure BDA0003859426380000091
fbgi=1.509×(log(BG)1.084-5.381);
公式中,fbgi为转化后的血糖值,n为血糖测量总数。
表中第九列——Risk Index(风险指数)=LBGI+HBGI。
步骤1还包括以下步骤:
S102、筛选出过去30分钟、过去1小时、过去2小时、过去4小时和过去8小时的历史血糖数据;
S103、将筛选出的血糖数据送入LSTM模型,将训练结果保存为权重文件,作为预训练模型,用作后续训练模型的默认参数。
在本发明中,LSTM模型是一种特殊类型的RNN模型,可以学习长期依赖的信息,LSTM公式如下:
it=σi(xtWxi+ht-1Whi+bi),
ft=σf(xtWxf+ht-1Whf+bf),
ct=ft⊙ct-1+it⊙σt(xtWxc+ht-1Whc+bc),
ot=σo(xtWxo+ht-1Who+bo),
ht=ot⊙σh(ct);
其中,σ表示逻辑sigmoid函数,it表示输入门;ft表示遗忘门;ct表示单元激活向量;ot表示输出门;ht表示隐藏层单元;Wxi表示输入门与输入特征向量之间的权重矩阵;Whi表示输入门与隐藏层单元之间的权重矩阵;Wci分别表示输入门与单元激活向量之间的权重矩阵;Wxf表示遗忘门与输入特征向量之间的权重矩阵;Whf表示遗忘门与隐藏层单元之间的权重矩阵;Wcf表示遗忘门与单元激活向量之间的权重矩阵;Wxo表示输出门与输入特征向量之间的权重矩阵;Who表示输出门与隐藏层单元之间的权重矩阵;Wco表示输出门与单元激活向量之间的权重矩阵;Wxc、Whc分别表示单元激活向量与特征向量之间的权重矩阵、单元激活向量与隐藏层单元之间的权重矩阵;t表示采样时刻;tanh为激活函数;bi、bf、bc、bo分别表示为输入门、遗忘门、单元激活向量、输出门的偏差值。
LSTM主要通过三个门:忘记门(遗忘门)、输入门、输出门,来达到信息的传递的作用;忘记门通过上一隐藏层和当前输入层通过一个sigmoid单元决定忘记上一轮记忆的细胞信息的多少,即有:ft=σ(Wxfxt+Whfht-1+bf);
输入门有个sigmoid单元决定输入信息、输出比例,即有:it=σ(xtWxi+ht-1Whi+bi);
输入信息通过tanh单元得到,即有:
Figure BDA0003859426380000101
经过门控的作用真实的输入信息为
Figure BDA0003859426380000102
细胞信息是通过上一轮残留下来的信息和当前获取到的信息共同决定的,所以/>
Figure BDA0003859426380000103
即:
ct=ftct-1+it*tanh(xtWxc+ht-1Whc+bc);
获取细胞信息通过tanh单元得到隐藏输出层信息,同时有个输出们通过sigmoid单元控制输出量,有:
ot=σ(xtWxo+ht-1Who+ct-1Wco+bo);
ht=ottanh(ct);
最终输出
Figure BDA0003859426380000104
为:/>
Figure BDA0003859426380000105
在本发明中,步骤2包括以下步骤:
S201、采集待预测糖尿病患者的历史血糖数据,作为第二数据库;
S202、导入第二数据库。
其中,步骤S201的采集血糖数据要求包括:CGM仪器必须在连续7天中至少采集4天;必须收集至少96小时的动态血糖监测数据,其中至少有24小时是过夜(即晚上10点到早上6点)。可见,第二数据库包含CGMs数据量大,持续时间长,针对同一患者,有充足的数据来研究一型糖尿病血糖预测算法,可充分利用血糖数据的长期性(利用历史8小时的数据)和短期性(利用历史30分钟的数据)特征。
在本实施例中,第二数据库的样本为一型糖尿病患者,样本群体的年龄在3.5~17.7岁,平均年龄9.9岁。
在本发明中,步骤3包括以下步骤:
S301、利用数据缺值补充法处理含有缺失值的病患血糖数据;
S302、利用数据平滑滤波法使血糖数据平滑。
数据缺值补充法包括双线性插值和线性外推,数据平滑滤波法包括卡尔曼滤波、中值滤波。
如图2和图3所示,双线性插值是在二维度上,适用于在已知数据存在缺失的情况下,对确实的数据点进行重构的常用方法,在此不作赘述。图2和图3表示采用双线性插值前后的血糖浓度曲线对比图,图2表示处理前的血糖浓度曲线,图3表示处理后的血糖浓度曲线,图中的纵坐标表示患者的血糖浓度,单位为mg/dl。可见,采用双线性插值后,血糖数据的缺失值得到了补充。
如图4和图5所示,线性外推是用来研究随时间按恒定增长率变化的事物;在以时间为横坐标的坐标图中,事物的变化接近一条直线,根据这条直线,可以推断事物未来的变化,也是常规的数据缺值补充法之一,在此不作赘述。图4和图5表示采用线性外推法前后的血糖浓度曲线对比图,图4表示处理前的血糖浓度曲线,图5表示处理后的血糖浓度曲线,图中的纵坐标表示患者的血糖浓度,单位为mg/dl。可见,采用线性外推法后,血糖数据的缺失值得到了补充。
卡尔曼滤波的实施步骤包括预测和校正,预测是基于上一时刻的状态估计,估计当前时刻状态,而校正则是综合当前时刻的估计状态和观测状态,估计出最优的状态;
预测与校正过程如下:
xk=Axk-1+Buk-1 (2-1);
Pk=APk-1AT+Q (2-2);
Kk=PkHT(HPkHT+R)-1 (2-3);
xk=xk+Kk(zk-Hxk) (2-4);
Pk=(I-KkH)Pk (2-5);
其中,公式(2-1)是状态预测,公式(2-2)是误差矩阵预测,公式(2-3)是kalman增益计算,公式(2-4)是状态校正,其输出即是最终的kalman滤波结果,公式(2-5)是误差矩阵更新;
各变量说明如下:xk是k时刻的状态;A是状态转移矩阵,和具体的线性系统相关;uk是K时刻外界对系统的作用;B是输入控制矩阵,将外界的影响转化为对状态的影响;P是误差矩阵;Q是预测噪声协方差矩阵;R是测量噪声协方差矩阵;H是观测矩阵;Kk是K时刻的kalman增益;zk是K时刻的观测值。
在本发明中,步骤4包括以下步骤:
S401、选取过去1小时,过去3小时,过去8小时的历史血糖数据;
S402、采用集合经验模态分解模型(CEEMDAN)对选出的数据进行滚动分解,滚动分解的时间步长设置为两天,获得不同频率信号,即若干imf分量。
以2000条数据量为例说明滚动分解,先送入1-576条血糖数据,进行分解;再送入2-577条血糖数据,进行分解;以此类推。
其中,CEEMDAN(集合经验模态分解)自适应噪声完备集合经验模态分解,是在EMD的基础上加以改进,同时借用了EEMD中加入高斯噪声和通过多次叠加并平均以抵消噪声;EMMD是将添加白噪声后的M个信号直接做EMD分解,然后相对应的IMF间直接求均值;CEEMDAN方法是每求完一阶IMF分量,又重新给残值加入白噪声(或白噪声的IMF分量)并求此时的IMF分量均值,并逐次迭代;
其中涉及的算法原理:设Ei(·)为经过EMD分解后得到的第i个本征模态分量,CEEMDANFEN分解得到的第i个本征模态分量为
Figure BDA0003859426380000131
vj为满足标准正态分布的高斯白噪声信号,j=1,2,…,N为加入白噪声的次数,ε为白噪声的标准表,y(t)为待分解信号;
具体分解步骤如下:
1)将高斯白噪声加入到待分解信号y(t)得到新信号y(t)+(-1)qενj(t),其中q=1,2,对新信号进行EMD分解,得到第一阶本征模态分量C1
Figure BDA0003859426380000132
其中,Ei(·)为经过EMD分解后得到的第i个本征模态分量,vj为满足标准正态分布的高斯白噪声信号,j=1,2,…,N为加入白噪声的次数,ε为白噪声的标准表,y(t)为待分解信号;
2)对产生的N个模态分量进行总体平均就得到CEEMDAN分解的第1个本征模态分量:
Figure BDA0003859426380000133
3)计算去除第一个模态分量后的残差:
Figure BDA0003859426380000134
4)在r1(t)中加入正负成对高斯白噪声得到新信号,以新信号为载体进行EMD分解,得到第一阶模态分量D1,由此可以得到CEEMDAN分解的第2个本征模态分量:
Figure BDA0003859426380000135
5)计算去除第二个模态分量后的残差:
Figure BDA0003859426380000136
6)重复上述步骤,直到获得的残差信号为单调函数,不能继续分解,算法结束;此时得到的本征模态分量数量为K,则原始信号y(t)被分解为:
Figure BDA0003859426380000141
由于血糖浓度的时间序列具有高度的时变性,是典型的非线性非平稳序列,直接使用循环神经网络预测血糖序列会在一定程度上降低预测的准确性;采用对复杂的血糖数据进行分解的方法,可以将非线性的血糖数据分解为频率成分相对单一的子序列,最终可将单个患者的历史数据分解为低频近似成分(趋势成分或主要成分)和高频细节成分(瞬态变化与噪声成分)。相对于血糖数据进行一次全序列分解,利用数据分解技术,并将其改造成滚动分解的形式,采用滚动分解的方式是对某一时段的血糖数据进行分解,如过去1小时,过去3小时,过去8小时等,可以更好的观察到患者在某一时段的血糖波动情况,以及应用滚动分解之后,可以更好地观测到每次滚动预测后的血糖数据差异。
在本发明中,步骤5包括以下步骤:
S501、计算imf分量之间的混乱程度,对计算得到的熵值按结果从大到小进行排序;
对滚动分解得到的频率成分相对单一的子序列进行熵排序重组;通过使用样本熵和排列熵对滚动分解得到的子序列进行熵值大小排序,使熵值小的序列排在前面,熵值大的序列排在后面,按顺序重组滚动分解得到的子序列,使每次滚动分解得到的子序列熵值排序相同,即按每次分解后得到子序列的预测难易程度排序,可以改善模型的预测效果。
S502、对熵值最大的分量进行二次分解,使得所有分解分量的熵值维持在一定区间内,降低血糖数据的非线性和非平稳性。
在对熵值最大的分量进行二次分解时,采用变分模态分解模型(VMD),VMD步骤如下:首先构造变分问题,假设原始信号f被分解为k个分量,保证分解序列为具有中心频率的有限带宽的模态分量,同时各模态的估计带宽之和最小,约束条件为所有模态之和与原始信号相等,则相应约束变分表达式为:
Figure BDA0003859426380000142
Figure BDA0003859426380000151
式中K为需要分解的模态个数(正整数),{μk}{ωk}分别对应分解后第k个模态分量和中心频率,δ(t)为狄拉克函数,*为卷积运算符;
然后求解上式(3-1),引入拉格朗日(Lagrange)乘法算子λ,将约束变分问题转变为非约束变分问题,得到增广Lagrange表达式为:
Figure BDA0003859426380000152
式中,λ为拉格朗日乘法算子,α为二次惩罚因子,作用是降低高斯噪声的干扰,利用交替方向乘子(ADMM)迭代算法结合Parseval/Plancherel、傅里叶等距变换,优化得到各模态分量和中心频率,并搜寻增广Lagrange函数的鞍点,交替寻优迭代后的后uk、ωk和λ的表达式如下:
Figure BDA0003859426380000153
Figure BDA0003859426380000154
Figure BDA0003859426380000155
式中,γ为噪声容忍度,满足信号分解的保真度要求;
Figure BDA0003859426380000156
分别对应/>
Figure BDA0003859426380000157
的傅里叶变换,/>
Figure BDA0003859426380000158
为拉格朗日乘法算子在频域的第n次迭代;/>
Figure BDA0003859426380000159
为模态μk在频域的第n+1次迭代;
VMD的主要迭代求解过程如下:
S1、初始化
Figure BDA00038594263800001510
λ1和最大迭代次数N;
S2、利用公式(3-3)(3-4)更新
Figure BDA00038594263800001511
和ωk
S3、利用公式(3-5)更新
Figure BDA00038594263800001512
S4、精度收敛判据ε>0,若不满足
Figure BDA0003859426380000161
且n小于N,则返回第二步,否则完成迭代,输出最终的/>
Figure BDA0003859426380000162
和ωk
在本发明中,步骤6中的集成学习模块包括若干不同的机器学习算法,所述导入步骤5处理过的糖尿病患者的数据具体包括以下步骤:
S601、先送入三个不同的机器学习算法:LSTM、GRU和SRNN,获得若干预测结果;
S602、将若干预测结果组合,作为基础预测结果;
S603、将步骤602获得的基础预测结果作为训练集,送入模型Nested-LSTM,得出最终的预测结果,参照图6,纵坐标表示患者的血糖浓度,单位为mg/dl。
可见,本发明应用集成学习,并不是使用一个单独的机器学习算法,而是通过构建并结合多个机器学习器来完成学习任务,这样可以让不同的网络模型学习并结合相应的血糖特征,以达到更好的血糖预测效果。
上述的Nested-LSTM模型(长短时记忆网络)是由LSTM模型改进而来,使用已学习的函数Ct=mt(ft⊙Ct-1,it⊙gt)来替代LSTM中计算Ct的加运算,函数的状态表示为m在时间t的内部记忆,调用该函数以计算Ct和mt+1,使用另一个LSTM单元来实现该记忆函数,生成Nested-LSTM模型;当该记忆函数由另一个Nested-LSTM单元替换,就构建任意深的嵌套网络;Nested-LSTM中记忆函数的输入和隐藏状态为:
Figure BDA0003859426380000163
Figure BDA0003859426380000164
当记忆函数是加性的,则记忆单元的状态更新为:
Figure BDA0003859426380000165
内部LSTM模型的运算方式由以下一组方程式控制:
Figure BDA0003859426380000166
Figure BDA0003859426380000171
Figure BDA0003859426380000172
Figure BDA0003859426380000173
Figure BDA0003859426380000174
现在,外部LSTM的单元状态更新为:
Figure BDA0003859426380000175
综上所述,本发明利用迁移学习的预训练模型,采集数据后进行缺值补充处理和平滑滤波处理,采用滚动数据分解的方法来处理数据,并使用集成学习来预测血糖浓度;具体地,根据糖尿病患者和健康人群的血糖变化规律,采用过去30分钟,过去1小时,过去2小时,过去4小时和过去8小时的数据来预测接下来的30分钟,接下来的1小时的血糖值。对构建好的数据集使用机器学习算法的预训练,如GRU、SRNN、LSTM等循环神经网络,将训练好的模型作为后续任务的预训练模型,即后续模型训练时先加载该预训练模型的参数;将待预测患者的历史血糖数据进行数据处理(缺失补充处理和平滑处理),使得整体数据更接近真实血糖数据;在数据处理完成后,对处理完的患者数据进行模态分解,如CEEMDAN(集合经验模态分解)模态分解技术,将上述处理好的血糖数据分解为一系列含有不同频率信息的固有模态分量(IMF),并对模态分解技术分解得到的模态分量进行样本熵分析,对样本熵最大的分量采用变分模态分解(VMD)进行二次分解,显着降低血糖数据的非线性和非平稳性。获得预训练模型和处理完数据后,将处理好的数据送入集成学习的机器学习模型,并在此基础上采用两阶段预测方法进一步提高模型的预测效果,进而得到最终的预测结果。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种基于预训练和数据分解两阶段的血糖预测方法,包括以下步骤:
S1、结合健康人群和糖尿病人群的血糖数据,开发预训练模型;
S2、采集待预测的糖尿病患者的数据;
S3、对步骤2的数据进行缺值补充处理和平滑处理;
S4、对步骤3所得的数据进行模态分解,分解为一系列含有不同频率信息的固有模态分量;
S5、对步骤4分解得到的模态分量进行样本熵分析,对样本熵最大的分量进行二次分解;
S6、加载步骤1的预训练模型的权重,导入步骤5处理过的糖尿病患者的数据至集成学习模块,所述集成学习模块用于预测未来30分钟和未来60分钟的血糖值。
2.根据权利要求1所述的基于预训练和数据分解两阶段的血糖预测方法,其特征在于,步骤1包括以下步骤:
S101、导入第一数据库,第一数据库的样本包括糖尿病人群的血糖数据和健康人群的血糖数据;
S102、筛选出过去30分钟、过去1小时、过去2小时、过去4小时和过去8小时的历史血糖数据;
S103、将筛选出的血糖数据送入LSTM模型,将训练结果保存为权重文件,作为预训练模型,用作后续训练模型的默认参数。
3.根据权利要求2所述的基于预训练和数据分解两阶段的血糖预测方法,其特征在于,步骤S101中的血糖数据为连续50天的血糖动态监测数据;样本的群体包括若干名儿童、若干名青少年和若干名成年人。
4.根据权利要求1所述的基于预训练和数据分解两阶段的血糖预测方法,其特征在于,步骤2包括以下步骤:
S201、采集待预测糖尿病患者的历史血糖数据,作为第二数据库;
S202、导入第二数据库。
5.根据权利要求4所述的基于预训练和数据分解两阶段的血糖预测方法,其特征在于,步骤S201的采集血糖数据要求包括:血糖检测仪器必须在连续7天中至少采集4天;必须收集至少96小时的动态血糖监测数据。
6.根据权利要求1所述的基于预训练和数据分解两阶段的血糖预测方法,其特征在于,步骤3包括以下步骤:
S301、利用数据缺值补充法处理含有缺失值的病患血糖数据;
S302、利用数据平滑滤波法使血糖数据平滑。
7.根据权利要求1所述的基于预训练和数据分解两阶段的血糖预测方法,其特征在于,数据缺值补充法包括双线性插值和线性外推,数据平滑滤波法包括卡尔曼滤波、中值滤波。
8.根据权利要求1所述的基于预训练和数据分解两阶段的血糖预测方法,其特征在于,步骤4包括以下步骤:
S401、选取过去1小时,过去3小时,过去8小时的历史血糖数据;
S402、采用集合经验模态分解模型对选出的数据进行滚动分解,滚动分解的时间步长设置为两天,获得不同频率信号,即若干imf分量。
9.根据权利要求1所述的基于预训练和数据分解两阶段的血糖预测方法,其特征在于,步骤5包括以下步骤:
S501、计算imf分量之间的混乱程度,对计算得到的熵值按结果从大到小进行排序;
S502、对熵值最大的分量进行二次分解,使得所有分解分量的熵值维持在一定区间内,降低血糖数据的非线性和非平稳性。
10.根据权利要求1所述的基于预训练和数据分解两阶段的血糖预测方法,其特征在于,步骤6中的集成学习模块包括若干不同的机器学习算法,所述导入步骤5处理过的糖尿病患者的数据具体包括以下步骤:
S601、先送入三个不同的机器学习算法:LSTM、GRU和SRNN,获得若干预测结果;
S602、将若干预测结果组合,作为基础预测结果;
S603、将步骤602获得的基础预测结果作为训练集,送入模型Nested-LSTM,得出最终的预测结果。
CN202211157514.9A 2022-09-22 2022-09-22 一种基于预训练和数据分解两阶段的血糖预测方法 Pending CN115862795A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202211157514.9A CN115862795A (zh) 2022-09-22 2022-09-22 一种基于预训练和数据分解两阶段的血糖预测方法
PCT/CN2022/141240 WO2024060438A1 (zh) 2022-09-22 2022-12-23 一种基于预训练和数据分解两阶段血糖预测方法
US18/206,095 US20240115170A1 (en) 2022-09-22 2023-06-06 Two-stage blood glucose prediction method based on pre-training and data decomposition

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211157514.9A CN115862795A (zh) 2022-09-22 2022-09-22 一种基于预训练和数据分解两阶段的血糖预测方法

Publications (1)

Publication Number Publication Date
CN115862795A true CN115862795A (zh) 2023-03-28

Family

ID=85661054

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211157514.9A Pending CN115862795A (zh) 2022-09-22 2022-09-22 一种基于预训练和数据分解两阶段的血糖预测方法

Country Status (3)

Country Link
US (1) US20240115170A1 (zh)
CN (1) CN115862795A (zh)
WO (1) WO2024060438A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117409984A (zh) * 2023-09-21 2024-01-16 山东第一医科大学附属省立医院 一种糖尿病随访管理系统、装置、电子设备和存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109935333B (zh) * 2019-03-07 2022-12-09 东北大学 基于ovmd-se-pso-bp的在线血糖预测方法
WO2020243576A1 (en) * 2019-05-31 2020-12-03 Ydo Wexler Systems for biomonitoring and blood glucose forecasting, and associated methods
CN113679348B (zh) * 2021-08-26 2024-02-06 深圳平安智慧医健科技有限公司 血糖预测方法、血糖预测装置、设备及存储介质
CN113951879B (zh) * 2021-12-21 2022-04-05 苏州百孝医疗科技有限公司 血糖预测方法和装置、监测血糖水平的系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117409984A (zh) * 2023-09-21 2024-01-16 山东第一医科大学附属省立医院 一种糖尿病随访管理系统、装置、电子设备和存储介质

Also Published As

Publication number Publication date
US20240115170A1 (en) 2024-04-11
WO2024060438A1 (zh) 2024-03-28

Similar Documents

Publication Publication Date Title
Hahn et al. Bayesian regression tree models for causal inference: Regularization, confounding, and heterogeneous effects (with discussion)
CN109567793B (zh) 一种面向心律不齐分类的ecg信号处理方法
Holmes et al. Bayesian radial basis functions of variable dimension
Rubin-Falcone et al. Deep Residual Time-Series Forecasting: Application to Blood Glucose Prediction.
CN113723007B (zh) 基于drsn和麻雀搜索优化的设备剩余寿命预测方法
Yu et al. Online glucose prediction using computationally efficient sparse kernel filtering algorithms in type-1 diabetes
CN112530594B (zh) 一种基于卷积生存网络的血透并发症长期风险预测系统
CN115482932A (zh) 一种基于迁移学习和糖化血红蛋白的多变量血糖预测算法
CN114399032A (zh) 一种电能表计量误差预测方法及系统
CN115862795A (zh) 一种基于预训练和数据分解两阶段的血糖预测方法
EP4018394A1 (en) Systems and methods for supplementing data with generative models
CN113836823A (zh) 一种基于负荷分解和优化双向长短期记忆网络的负荷组合预测方法
CN116072213A (zh) 集成多源信息和改进LightGCN的DDI预测方法
CN113298131B (zh) 一种基于注意力机制的时序数据缺失值插补方法
Sun et al. A fuzzy brain emotional learning classifier design and application in medical diagnosis
CN114027786A (zh) 基于自监督式记忆网络的睡眠呼吸障碍检测方法及系统
Si On the use of auxiliary variables in multilevel regression and poststratification
CN115985513B (zh) 一种基于多组学癌症分型的数据处理方法、装置及设备
EP4220650A1 (en) Systems and methods for designing augmented randomized trials
Li et al. Improving fuzzy rule interpolation performance with information gain-guided antecedent weighting
Backenroth et al. Nonnegative decomposition of functional count data
Rimal et al. Comparative study of various machine learning methods on ASD classification
CN113469203A (zh) 评估操作结果的方法、电子设备和计算机程序产品
van Gorp et al. Aleatoric Uncertainty Estimation of Overnight Sleep Statistics Through Posterior Sampling Using Conditional Normalizing Flows
CN115358367B (zh) 一种基于多模型学习集成的动态自适应脑机接口解码方法

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