基于机器学习的糖尿病预测模型构建方法及系统

文档序号:26054074发布日期:2021-07-27 15:30阅读:698来源:国知局
基于机器学习的糖尿病预测模型构建方法及系统

本发明涉及大数据分析领域,具体涉及一种基于机器学习的糖尿病预测模型构建方法及系统。



背景技术:

2型糖尿病作为糖尿病的主要类型,危害在于其并发症。糖尿病及其并发症已成为人群致死、致残的主要原因,并严重威胁到人们的健康。需要说明的是2型糖尿病是一种可防可控的慢性病,其发生发展往往经历一段时间。由于糖尿病和糖尿病前期的复杂性和多因素性,预防糖尿病和糖尿病前期必须参考多种危险因素。然而有许多预测因素同时存在时,很难评估一个人的糖代谢异常风险。一个整合了多种相关因素的糖尿病风险预测模型,将有助于促进健康教育与咨询。协助医护人员快速、高效的评估患者风险。特别是在农村居民患者中。现有传统的系统和模型,并不能精确的分析对应的数据,实现数据预测,且模型精度和泛化能力较弱,无法应用到现有的预测设备中。



技术实现要素:

有鉴于此,本发明的目的在于提供一种基于机器学习的糖尿病预测模型构建方法及系统,有效提升了模型精度和泛化能力,能快速预测待测者患有糖代谢异常相关的疾病的概率,节约了紧张的医疗资源。

为实现上述目的,本发明采用如下技术方案:

一种基于机器学习的糖尿病预测模型构建方法,包括以下步骤:

步骤s1:获取样本人群的糖代谢数据,并构建第一样本数据集;

步骤s2:对得到的初始样本数据集进行预处理,得到第二样本集,并按预设比例分为训练集和验证集;

步骤s3:选取若干单分类机器学习模型构造一级模型,将训练集作为输入进行训练,得到若干单一疾病预测模型;

步骤s4:对单一疾病预测模型进行多样性分析,选取差异性大且精度最高的两种模型进行融合,得到融合模型;

步骤s5:基于单一疾病预测模型和合模型,构建综合预测模型。

进一步的,所述第一样本数据集包括变量具体为:人口统计学特征、合并症、生活方式、饮食方式、人体测量学特征、生理特征。

进一步的,所述步骤s2具体为:根据糖代谢常规检查数据所对应的疾病知识库对所述第一样本集进行数据清洗和标准化,同时进行特征变量筛选,剔除无关变量,剩余变量构成第二样本集。

进一步的,所述数据清洗和标准化具体为:

根据疾病知识库剔除糖代谢检查数据中不符合生物学规律的数据以及相互矛盾的数据,然后对所述糖代谢检查数据进行数据标准化,将其映射到[0,1,2]上;

对缺失数据以及偏移数据进行处理,包括对缺失较多指标值的元组进行删除;存在个别缺失值的元组用人工填补缺失值法处理;超出不合理范围的数据,超过上限的用最大值代替,低于下限的用最小值代替;分类缺失值众数代替,数值型缺失数据均值代替,采用人工修正法将偏移数据值与对应的属性名称进行匹配。

进一步的,所述特征变量筛选具体为:使用单因素逻辑回归对训练集中的参与者进行分析,筛选影响3年糖代谢异常发生率的特征变量;通过结合专家知识最终确定用于模型构建的特征变量;其中将p<0.05的变量作为显著变量并纳入最终的模型构建,其余的特征变量进行筛除,将p<0.05的变量作为显著变量并纳入最终的模型构建。

进一步的,所述步骤s3具体为:选取bp神经网络、随机森林、梯度提升树、支持向量机单分类机器学习模型构造一级模型,将所述训练集作为以上四种单分类模型的输入,得到单一疾病预测模型。

进一步的,所述步骤s4具体为:

对若干种机器学习模型进行多样性分析,选取差异性大且精度最高的两种模型进行融合;

对训练集进行五折交叉验证,其中四折作为训练,另外一折作为验证并预测出结果;

递归地完成5次训练,得出5个结果并把其列拼接起来作为新的训练集的一列;

测试集则取五次平均的结果作为新的测试集的一列;

用所选取的两个模型所生成的两列新的训练集和测试集横向拼接起来,导入线性回归模型训练,对新的测试集进行预测,得出模型融合结果。

一种基于机器学习的糖尿病预测模型的预测系统,包括依次连接的数据处理分析模块、机器学习模型模块、参数调整模块、预测模块和数据保存模块;所述数据处理分析模块用于获取糖代谢数据并进行初步分析处理;所述机器学习模型模块包括单分类器预测模型和融合模型;所述参数调整模块采用网格搜索对模型进行优化;所述预测模块用于模型的输出,预测用户是否患病;所述保存模块用于存储病人病历信息。

进一步的,所述预测模块还设置有模型评测单元,采用f1score以及auc,其中f1score为召回率和准确率的调和平均,auc为评测分类模型优劣的标准。

本发明与现有技术相比具有以下有益效果:

本发明有效提升了模型精度和泛化能力,能快速预测待测者患有糖代谢异常相关的疾病的概率,节约了紧张的医疗资源;

本发明针对糖代谢各类检查数据的不同属性而采用了不同的筛选和清洗方法,提高了数据的有效性和精确性,降低了模型的训练误差和训练时间,因而更好的鲁棒性。

附图说明

图1是本发明方法流程图;

图2是本发明系统原理示意图。

具体实施方式

下面结合附图及实施例对本发明做进一步说明。

请参照图1,本实施例提供一种基于机器学习的糖尿病预测模型构建方法,包括以下步骤:

步骤s1:获取样本人群的糖代谢数据,共含有72个变量构成第一样本集;

步骤s2:根据糖代谢常规检查数据所对应的疾病知识库对所述第一样本集进行数据清洗和标准化,同时进行特征变量筛选,剔除无关变量,剩余32个变量构成第二样本集,并将所述第二样本集按预设比例划分为训练集、验证集;

步骤s3:将所述第二样本集按6:4比例划分为训练集、验证集,选取bp神经网络、随机森林、梯度提升树、支持向量机等单分类机器学习模型构造一级模型,将所述训练集作为以上四种单分类模型的输入;训练所述四种算法模型直至其输出值与真实值偏差低于阈值,得到单一疾病预测模型;

步骤s4:对单一疾病预测模型进行多样性分析,选取差异性大且精度最高的两种模型进行融合,提升模型泛化能力和模型精度;

步骤s5:基于单一疾病预测模型和合模型,构建综合预测模型。

优选的,第一样本数据集包括变量具体为:人口统计学特征(年龄、性别、教育水平、婚姻状况、家族史),合并症(超重、肥胖、腹型肥胖、骨质疏松、血脂异常、肿瘤、心血管和脑血管疾病、高血压、脂肪肝、胆道疾病、胃肠疾病、肾脏疾病、呼吸道疾病、打鼾、骨折),生活方式(吸烟史、饮茶史、午睡时长、夜间睡眠时长、睡眠质量、低等强度体力活动、中等强度体力活动、高等强度体力活动),饮食方式(薯类、肉类、家禽类、海鲜、水果、鸡蛋、奶制品、豆制品、油炸食物、果味饮料、碳酸饮料、腌制食物、咖啡、动物内脏、营养品)。人体测量学特征包括身高、体重、腰围、臀围、颈围。辅助检查包括血压、脉搏、abi、bapwv和心电图。

优选的,在本实施例中数据获取方式如下:

受试者静止休息5min后,使用欧姆龙血压计(每天校准)连续测量3次后取平均血压及脉搏。采用日本欧姆龙bp-203preiii全自动动脉硬化多普勒超声自动分析得到左右两侧的abi值和bapwv值。取两侧平均值作为该患者的bapwv值进行统计分析,取两侧最低值作为该患者的abi值进行统计分析。并于当日留取隔夜空腹静脉血(空腹至少8h)测定空腹血糖(fpg)、空腹血清胰岛素(fins)、糖化血红蛋白(hba1c)、血脂四项(高密度脂蛋白胆固醇、低密度脂蛋白胆固醇、总胆固醇、三酰甘油),肝功能(谷丙转氨酶、谷草转氨酶、碱性磷酸酶),肾功能(肌酐、尿酸)。2h后时抽取静脉血测定口服葡萄糖耐量试验2h血糖(ogtt2hpg)。血糖用己糖激酶法测定,fins及hba1c用放射免疫法测定,肝功能、肾功能、血脂四项采用自动生化仪(modulare170,roche)检测。骨密度测量选择左足跟骨,采用achillesexpress超声骨密度分析仪(gelunarcorp,美国威斯康星州麦迪逊)进行骨密度测定。

优选的,在本实施例中,根据糖代谢常规检查数据所对应的疾病知识库对所述第一样本集进行数据清洗和标准化,同时进行特征变量筛选,剔除无关变量,剩余变量构成第二样本集。

根据疾病知识库剔除糖代谢检查数据中不符合生物学规律的数据以及相互矛盾的数据,然后对所述糖代谢检查数据进行数据标准化,将其映射到[0,1,2]上;

对缺失数据以及偏移数据进行处理,包括对缺失较多指标值的元组进行删除。其余各指标缺失值均较少,填补过后对模型结果无影响。其中,存在个别缺失值的元组用人工填补缺失值法处理。超出不合理范围的数据,超过上限的用最大值代替,低于下限的用最小值代替。分类缺失值众数代替,数值型缺失数据均值代替,采用人工修正法将偏移数据值与对应的属性名称进行匹配。

使用单因素逻辑回归对训练集中的参与者进行分析,筛选影响3年糖代谢异常发生率的特征变量;通过结合专家知识最终确定用于模型构建的特征变量;其中将p<0.05的变量作为显著变量并纳入最终的模型构建,其余的特征变量进行筛除,将p<0.05的变量作为显著变量并纳入最终的模型构建。

在本实施例中,步骤s4具体为:

对若干种机器学习模型进行多样性分析,选取差异性大且精度最高的两种模型进行融合;

对训练集进行五折交叉验证,其中四折作为训练,另外一折作为验证并预测出结果;

递归地完成5次训练,得出5个结果并把其列拼接起来作为新的训练集的一列;

测试集则取五次平均的结果作为新的测试集的一列;

用所选取的两个模型所生成的两列新的训练集和测试集横向拼接起来,导入线性回归模型训练,对新的测试集进行预测,得出模型融合结果。

参考图2,本实施例中,还提供一种基于机器学习的糖尿病预测模型的预测系统,包括依次连接的数据处理分析模块、机器学习模型模块、参数调整模块、预测模块和数据保存模块;所述数据处理分析模块用于获取糖代谢数据并进行初步分析处理;所述机器学习模型模块包括单分类器预测模型和融合模型;所述参数调整模块采用网格搜索对模型进行优化;所述预测模块用于模型的输出,预测用户是否患病;所述保存模块用于存储病人病历信息。数据处理分析模块提取用户信息并预处理后,通过单分类器预测模型和融合模型预测,得到预测结果;预测模块根据预测结果判断用户是否患病,最后将结果输出并存储于保存模块。

优选的,在本实施例中,参数调整模块包括两部分,分别为交叉验证和完备训练集设定区,设定交叉验证比例,一般设定参考值为0.2~0.3,以此划分验证集通过验证集来验证最优参数,而完备训练集设定模块不需要设定。实例设定为0.3,点击拟合来进行训练模型,展示模块会展示模型通过网格搜索来寻找某一组较优的参数,设置最佳迭代次数为200,最大特征筛选采用“sqrt”,最大决策树深度为7,最小叶子节点为9。其中,为了简化参数搜过过程,避免工程师经验不足,交叉验证设定的参数为系统内置设定好。

优选的,在本实施例中,所述预测模块还设置有模型评测单元,采用f1score以及auc,其中f1score为召回率和准确率的调和平均,auc为评测分类模型优劣的标准。

以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1