膳食方案反应性预测模型及建模方法、电子设备与流程

文档序号:21581273发布日期:2020-07-24 16:19阅读:207来源:国知局
膳食方案反应性预测模型及建模方法、电子设备与流程

本发明涉及生物医学工程技术与营养健康领域,具体涉及一种膳食方案反应性预测模型及建模方法。



背景技术:

膳食对代谢疾病的预防和治疗的作用不容忽视,研究表明合适的膳食可以改善代谢疾病的血糖、血压和血脂情况。但是目前医生开具的膳食方案存在如下问题:

(1)膳食方案的效果不可控,医生在开具膳食方案之前,只清楚该膳食方案可以改善患者的代谢情况,但不清楚这种膳食方案可以改善到什么程度。

(2)目前的膳食方案无法做到有针对性,针对同种疾病的患者,医生开具的膳食方案可能是一样的,但由于个体其他条件的差异,实际产生的效果是不一样的,因此对于同种膳食方案,有些患者的改善效果很好,有些患者的改善效果很差。

(3)膳食方案过于粗放,医生按照指南开具的是规定用户该吃哪些食物、不该吃哪些食物,未能具体量化患者的更多膳食信息,诸如脂肪、碳水化合物、糖、咖啡因、酒精等指标的含量以及评价这些膳食信息对干预效果的影响。

因此,亟待开发一种预测模型,能够针对不同的患者做到有针对性的膳食方案。



技术实现要素:

为了使医生对开具的膳食方案的效果可以预测,本发明的提供一种膳食方案反应性预测模型及建模方法、电子设备。

根据本发明的第一方面,本发明公开一种膳食方案反应性预测模型的建模方法,包括如下步骤:

s101:采集训练数据并进行预处理,所述采集训练数据并进行预处理的方法包括:采集训练用的代谢疾病患者的指标和膳食信息数据;通过评价代谢疾病患者的指标得到膳食方案效果;以及通过分析膳食方案效果筛选出显著影响因素;其中,所述代谢疾病患者的指标包括一般指标、综合评估指标和代谢指标;

s102:设置xgboost的训练参数;

s103:以显著影响因素和膳食信息数据作为模型的输入,以膳食方案效果作为模型的输出,基于xgboost算法采用十折交叉验证法对模型进行训练;

s104:使用步骤s103中训练好的模型进行预测。

根据本发明的一示例实施方式,所述一般指标包括年龄、性别、受教育程度和疾病史,所述一般指标在给定膳食方案周期开始前采集。

根据本发明的一示例实施方式,所述综合评估指标包括临床指标和膳食习惯,所述临床指标包括:性别、心率、身高、吸烟史、饮酒史、家族史、既往疾病史、心电图、超声心动图、实验室检查结果以及临床合并症,所述膳食习惯包括:调查患者的宗教饮食属性、就餐规律程度、饮水量、零食习惯、用盐量、用油量、乳品食用情况、豆制品食用情况、肉类食用情况、蔬菜食用情况和主食食用情况,所述综合评估指标分别在给定膳食方案周期开始前和给定膳食方案周期结束后采集。

根据本发明的一示例实施方式,所述代谢指标包括空腹血糖、舒张压、收缩压、总胆固醇、甘油三酯和体重,所述代谢指标分别在给定膳食方案周期开始前和给定膳食方案周期结束后采集。

根据本发明的一示例实施方式,所述膳食信息数据包括酒精含量、咖啡因含量、碳水化合物含量、膳食纤维、摄入能量、脂肪、蛋白质、钠、糖、水以及碳水化合物与脂肪的比率,所述膳食信息数据在给定膳食方案周期内每天进行采集。其中,酒精含量、碳水化合物含量、膳食纤维、脂肪、蛋白质、糖和水的单位均为克,咖啡因含量和钠的单位均为毫克,摄入能量的单位为卡路里。

根据本发明的一示例实施方式,所述给定膳食方案周期为1个月以上。

根据本发明的一示例实施方式,通过评价代谢疾病患者的指标得到膳食方案效果的方法包括:基于给定膳食方案周期开始和给定膳食方案周期结束的代谢指标变化情况,评价膳食方案效果为有效或无效,满足一下所有条件则认为膳食方案有效,反之则认为膳食方案无效:

如果患有糖尿病时,给定膳食方案周期结束时的空腹血糖值低于给定膳食方案周期开始时的空腹血糖值且降低超过给定血糖阈值;

如果患有高血压时,给定膳食方案周期结束时的血压低于给定膳食方案周期开始时的血压,且收缩压至少降低给定收缩压阈值和舒张压至少降低给定舒张压阈值,其中所述血压包括收缩压和舒张压;

如果患血脂异常时,给定膳食方案周期结束时的血脂低于给定膳食方案周期开始时的血脂,且总胆固醇至少降低给定总胆固醇阈值和甘油三酯至少降低给定甘油三酯阈值,其中所述血脂包括总胆固醇和甘油三酯;

如果肥胖或超重时,给定膳食方案周期结束时的体重低于给定膳食方案周期开始时的体重,且控制在正常水平,且至少降低给定体重阈值。

根据本发明的一示例实施方式,所述通过分析膳食方案效果筛选出显著影响因素的方法包括:基于单变量分析筛选法分析代谢疾病患者的指标,对于服从正态分布的数据采用独立t检验,对于不服从正态分布的数据采用wilconxon秩和检验。在构建模型之前,面临的第一步往往就是降维,或者说筛选特征。单变量分析筛选法的主要思路就是根据统计检验的方法分别对每个变量进行检验,然后排序选择分数最高的那些特征。

根据本发明的一示例实施方式,所述设置xgboost的训练参数的内容包括:树的最大深度设置为6;学习率设为0.3;学习目标定义为:膳食方案有效定义为1,膳食方案无效定义为0;迭代次数设置为50棵。

根据本发明的一示例实施方式,所述基于xgboost算法采用十折交叉验证法对模型进行训练的方法包括:采用xgboost算法生成一个分类树的集合,每个分类树利用十折交叉验证法进行训练,将对应每棵树的叶子节点得分相加,对第i个样本的特征计算出预测估计值,建立目标函数,再将机器学习模型输出的预测估计值经过四舍五入后定义为膳食方案效果的有无。其中,i为1到n的自然数,n表示训练用的代谢疾病患者的样本数量,n为大于或等于1000的自然数。

为了充分利用样本及确保算法的准确性,采用十折交叉验证法将n例患者的数据集分成十份,分为训练集和测试集,轮流将其中的9份作为训练数据,1份作为测试数据进行试验。

根据本发明的一示例实施方式,所述对第i个样本的特征计算出的预测估计值的计算公式如公式1所示:

公式1

其中,fk表示每一棵回归树的预测结果,k为回归树的数量,xi表示第i个样本的特征,yi表示第i个样本的预测估计值,公式1表示给定一个输入值xi,输出值为k棵回归树的预测估计值yi;

第t次迭代的目标函数如公式2所示:

公式2

其中,l是一个可以微分的损失函数,yi,yi~(t-1)表示第t-1次迭代中第i个样本的实际值与预测值yi之间的差异,ft(xi)是经过第t次迭代后第i个样本的预测结果,ω(ft)是复杂度的惩罚函数,用来避免过拟合,t为大于1的自然数。

根据本发明的一示例实施方式,所述使用步骤s103中训练好的模型进行预测的方法包括:

采集需要预测的代谢疾病患者的指标和膳食信息数据;

从需要预测的代谢疾病患者的指标中筛选出显著影响因素;和

将需要预测的代谢疾病患者的显著影响因素和膳食信息数据输入训练好的模型中,得到膳食方案反应性预测结果。

根据本发明的第二方面,本发明公开一种膳食方案反应性预测模型,包括:

训练数据采集模块,所述训练数据采集模块与膳食方案有效性分析模块、显著影响因素筛选模块、算法模块连接,用于采集训练用的代谢疾病患者的指标和膳食信息数据;

测试数据采集模块,所述测试数据采集模块与显著影响因素筛选模块、算法模块连接,用于采集需要预测的代谢疾病患者的指标和膳食信息数据;

膳食方案有效性分析模块,所述膳食方案有效性分析模块与训练数据采集模块、显著影响因素筛选模块、算法模块连接,用于通过训练用的代谢疾病患者的指标分析膳食方案的有效性;

显著影响因素筛选模块,所述显著影响因素筛选模块与训练数据采集模块、测试数据采集模块、膳食方案有效性分析模块、算法模块连接,用于根据训练用的代谢疾病患者的指标和膳食方案有效性分析出显著影响因素,还用于筛选出需要预测的代谢疾病患者的显著影响因素;和

算法模块,所述算法模块用于根据训练用的代谢疾病患者的显著影响因素、膳食信息数据和膳食方案有效性进行训练,还用于接收需要预测的代谢疾病患者的显著影响因素和膳食信息数据,并输出预测数据所对应的膳食方案的有效性。

根据本发明的一示例实施方式,所述算法模块包括训练参数模块和xgboost函数模块,所述训练参数模块存储xgboost算法中的训练参数,包括树的最大深度、学习率、学习目标和迭代次数,所述xgboost函数包括xgboost算法中的调用函数,所述xgboost算法中的调用函数包括train函数和predict函数。

根据本发明的一示例实施方式,所述预测模型根据所述膳食方案反应性预测模型的建模方法建立。

根据本发明的第三方面,本发明公开一种电子设备,包括:处理器、存储器和总线,所述处理器和所述存储器通过所述总线完成相互间的通信,所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令,能够执行所述膳食方案反应性预测模型的建模方法。

本发明提供了一种膳食方案反应性预测模型及建模方法,该模型基于xgboost机器学习算法构建,能够预测患者经过一个给定膳食方案周期的干预后,细化的膳食方案带来的效果是否能够使患者的代谢指标改善到目标值,从而辅助医生形成更有效的膳食方案,提高膳食干预效果。在膳食方案效果有无的定义中,本发明还针对血糖、血压、血脂给定了阈值,这种阈值既可以用来定义膳食方案效果的有无,也可以理解为希望患者能够改善的程度,当预测模型通过输入膳食方案预测该膳食方案可以满足达到效果时,也就可以认为该方案可以实现给定设置的改善程度,因此,本发明的预测模型能够让医生直观地看到膳食方案对患者代谢的改善程度。

附图说明

通过参照附图详细描述其示例实施例,本发明的上述和其它目标、特征及优点将变得更加显而易见。

图1是膳食方案反应性预测模型的建模方法流程图。

图2是膳食方案反应性预测模型的模块关系图。

具体实施方式

现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本发明的描述将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。附图仅为本发明的示意性图解,并非一定是按比例绘制。

此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本发明的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、步骤等。在其它情况下,不详细示出或描述公知结构、方法、实现或者操作以避免喧宾夺主而使得本发明的各方面变得模糊。

本发明的第一种实施方式公开了一种膳食方案反应性预测模型的建模方法,如图1所示,包括以下步骤:

步骤101:采集训练数据并进行预处理;

步骤102:设置xgboost的训练参数;

步骤103:基于xgboost算法采用十折交叉验证法对模型进行训练;

步骤104:使用步骤s103中训练好的模型进行预测。

步骤101中,采集训练数据并进行预处理的方法包括如下步骤:

步骤s201:采集n例训练用的代谢疾病患者的指标和膳食信息数据,n为大于或等于1000的自然数。代谢疾病患者的指标包括一般指标、综合评估指标和代谢指标。一般指标包括年龄、性别、受教育程度和疾病史,一般指标在给定膳食方案周期开始前采集。综合评估指标包括临床指标和膳食习惯,临床指标包括:性别、心率、身高、吸烟史、饮酒史、家族史、既往疾病史、心电图、超声心动图、实验室检查结果以及临床合并症,膳食习惯包括:调查患者的宗教饮食属性、就餐规律程度、饮水量、零食习惯、用盐量、用油量、乳品食用情况、豆制品食用情况、肉类食用情况、蔬菜食用情况和主食食用情况。综合评估指标分别在给定膳食方案周期开始前和给定膳食方案周期结束后采集。代谢指标包括空腹血糖、舒张压、收缩压、总胆固醇、甘油三酯和体重,代谢指标分别在给定膳食方案周期开始前和给定膳食方案周期结束后采集。膳食信息数据包括酒精含量、咖啡因含量、碳水化合物含量、膳食纤维、摄入能量、脂肪、蛋白质、钠、糖、水以及碳水化合物与脂肪的比率。其中,酒精含量、碳水化合物含量、膳食纤维、脂肪、蛋白质、糖和水的单位均为克,咖啡因含量和钠的单位均为毫克,摄入能量的单位为卡路里。膳食信息数据在给定膳食方案周期内每天进行采集。给定膳食方案周期为1个月以上。采集代谢疾病患者的指标和膳食信息数据时,对所有指标参数和膳食信息数据进行归一化处理,保证所有指标数值和膳食信息数据的范围在0-1之间。

步骤s202:通过评价代谢疾病患者的指标得到膳食方案效果,膳食方案效果为有效或无效,基于给定膳食方案周期开始和给定膳食方案周期结束的代谢指标变化情况得出,满足以下条件则认为有效,否则认为无效:

如果患有糖尿病时,给定膳食方案周期结束时的空腹血糖值低于给定膳食方案周期开始时的空腹血糖值且超过给定血糖阈值,给定血糖阈值用athra表示;

如果患有高血压时,给定膳食方案周期结束时的收缩低于膳食方案周期开始时的收缩压且收缩压至少降低给定收缩压阈值、并且给定膳食方案周期结束时的舒张压低于膳食方案周期开始时的舒张压且舒张压至少降低给定舒张压阈值,给定收缩压阈值用bthra表示,给定舒张压阈值用bthrb表示;

如果患血脂异常时,给定膳食方案周期结束时的总胆固醇低于给定膳食方案周期开始时的总胆固醇且总胆固醇至少降低给定总胆固醇阈值、并且给定膳食方案周期结束时的甘油三酯低于给定膳食方案周期开始时的甘油三酯且甘油三酯至少降低给定甘油三酯阈值,给定总胆固醇阈值用cthra表示,给定甘油三酯阈值用cthrb表示;

如果肥胖或超重时,给定膳食方案周期结束时的体重低于给定膳食方案周期开始时的体重,且控制在正常水平,且至少降低给定体重阈值,给定体重阈值用dthra表示。

步骤s203:通过分析膳食方案效果筛选出显著影响因素,基于单变量分析筛选法分析代谢疾病患者的指标,对于服从正态分布的数据采用独立t检验,对于不服从正态分布的数据采用wilconxon秩和检验。

步骤102中,设置xgboost的四个训练参数:

树的最大深度设置为6,树的最大深度即为树的层数,通常树的层数越深模型越复杂;

学习率设置为0.3,学习率即每次调整参数需要走的距离,适当的学习率可以准确找到损失函数的最小值,即为模型参数的最优解;

学习目标,即定义模型的输出,模型的输出需要判断膳食方案为有效或无效,是二分类问题,因此定义膳食方案有效为1,膳食方案无效为0;

迭代次数,表示定义模型会用到多少课树,将迭代次数设置为50棵。

在xgboost中设置训练参数,输入以下代码:

param=['max_depth':6,'eta':0.3,'silent':0,'obejctive':'binary:logistic']

其中,max_depth表示树的最大深度,eta表示学习率,slient表示静默模式,objective表示学习目标参数,binary:logistic表示模型中输出二分类的逻辑回归的概率。

步骤103中,开始训练模型,以显著影响因素和膳食信息数据作为模型的输入,以膳食方案效果作为模型的输出,基于xgboost算法采用十折交叉验证法对模型进行训练。在xgboost机器学习系统中调用xgboost中的train函数,输入以下代码:

bst=xgb.train(param,dtrain,50)

其中,bst表示最后train训练后的结果,50表示迭代次数。

train函数在调用的过程中,通过以下原理进行计算:

采用xgboost算法生成一个分类树的集合,每个分类树利用十折交叉验证法进行训练,将对应每棵树的叶子节点得分相加,对第i个样本的特征计算出预测估计值,建立目标函数,再将机器学习模型输出的预测估计值经过四舍五入后定义为膳食方案的有无其中,i为1到n的自然数。

对第i个样本的特征计算出的预测估计值的计算公式如公式1所示:

公式1

其中,fk表示每一棵回归树的预测结果,k为回归树的数量,xi表示第i个样本的特征,yi表示第i个样本的预测估计值,公式1表示给定一个输入值xi,输出值为k棵回归树的预测估计值yi;

第t次迭代的目标函数如公式2所示:

公式2

其中,l是一个可以微分的损失函数,yi,yi~(t-1)表示第t-1次迭代中第i个样本的实际值yi~(t-1)与预测值yi之间的差异,ft(xi)是经过第t次迭代后第i个样本的预测结果,ω(ft)是复杂度的惩罚函数,用来避免过拟合,t为大于1的自然数。

步骤104中,用步骤s103中训练好的模型进行预测,具体方法为:

步骤s301:采集m例需要预测的代谢疾病患者的指标和膳食信息数据,m为大于或等于100的自然数,采集代谢疾病患者的指标和膳食信息数据时,对所有指标和膳食信息数据参数进行归一化处理,保证所有指标数值和膳食信息数据的范围在0-1之间;

步骤s302:从需要预测的代谢疾病患者的指标中筛选出显著影响因素;

步骤s303:将需要预测的代谢疾病患者的显著影响因素和膳食信息数据输入训练好的模型中,调用xgboost中的predict函数,机器学习模型输出的预测估计值如果输出的数值≥0.5则认为膳食方案有效,如果输出的数值<0.5则认为膳食方案无效;因此,将predict输出的结果百分数通过round函数四舍五入转换成0或1,输出的结果为预测膳食方案效果的有无,膳食方案有效则输出1,膳食方案无效则输出0。通过输入以下代码实现:

test_preds=bst.predict(dtest)

test_predictions=[round(value)forvalueintest_preds]

y_test=dtest.get_label()

test_accuracy=accuracy_score(y_test,test_predictions)

训练好的模型最终输出值为0或1,直观地显示膳食方案的有效或无效。

本发明的第二种实施方式公开了一种膳食方案反应性预测模型,该预测模型根据第一种实施方式的建模方法建立,如图2所示,包括:训练数据采集模块1、测试数据采集模块2、膳食方案有效性分析模块3、显著影响因素筛选模块4和算法模块5;算法模块1与训练数据采集模块1、测试数据采集模块2、膳食方案有效性分析模块3、显著影响因素筛选模块4连接,显著影响因素筛选模块4与测试数据采集模块2、训练数据采集模块1、膳食方案有效性分析模块3、算法模块5连接,膳食方案有效性分析模块3与训练数据采集模块1、显著影响因素分析模块4、算法模块5连接。

训练数据采集模块1用于采集训练用的代谢疾病患者的指标和膳食信息数据;测试数据采集模块2用于采集需要预测的代谢疾病患者的指标和膳食信息数据;膳食方案有效性分析模块3用于通过训练用的代谢疾病患者的指标分析膳食方案的有效性;显著影响因素筛选模块4用于根据训练用的代谢疾病患者的指标和膳食方案有效性分析出显著影响因素,还用于筛选出需要预测的代谢疾病患者的指标中的显著影响因素;算法模块5用于根据训练用的代谢疾病患者的显著影响因素、膳食信息数据和膳食方案有效性进行训练,还用于接收需要预测的代谢疾病患者的显著影响因素和膳食信息数据,并输出预测数据所对应的膳食方案的有效性。算法模块5包括训练参数模块和xgboost函数模块,训练参数模块存储xgboost算法中的训练参数,包括树的最大深度、学习率、学习目标和迭代次数,xgboost函数模块包括xgboost算法中的调用函数,调用函数包括train函数和predict函数。

本发明以上基于xgboost机器学习算法构建的预测模型,能够预测患者经过一个给定膳食周期的干预后,能够判断医生对代谢疾病患者所开具的细化的膳食方案是否能够使患者的代谢指标改善到目标值,从而辅助医生形成更有效的膳食方案,提高膳食干预效果。

本发明的第三种实施方式公开了一种电子设备,包括:处理器、存储器和总线,处理器和存储器通过总线完成相互间的通信,存储器存储有可被处理器执行的程序指令,处理器调用所述程序指令,能够执行第一种实施方式的膳食方案反应性预测模型的建模方法。

以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。

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