APP下载

基于生活习惯的糖尿病预测与可视分析

2021-10-28母东生蔡梦杰王桂娟陈华容吴亚东

计算机技术与发展 2021年10期
关键词:生活习惯可视化血糖

母东生,蔡梦杰,王桂娟,陈华容,吴亚东

(1.西南科技大学 计算机科学与技术学院,四川 绵阳 621000; 2.四川轻化工大学 计算机科学与工程学院,四川 自贡 643000)

0 引 言

据世界卫生组织估计,全球约有4.22亿糖尿病患者,每年约有340万人死于糖尿病,预计到2030年糖尿病将成为第7位主要死因,糖尿病已经成为严重威胁人类健康和生命安全的主要慢性疾病之一[1]。大量的流行病学研究表明:超重、肥胖、静息活动、不良生活习惯和糖尿病家族史等是诱发糖尿病的致病因素,大致概括为遗传因素与环境因素。随着人们生活水平的显著提高,环境因素在糖尿病的发展中成为了一个非常重要的因素。患者日常生活的不良习惯,例如吸烟、嗜酒、饮食不合理等都会促使其病情的加剧,而现如今还未探索出治愈糖尿病的治疗方法,但是可以通过控制其自身或周边的危险因素来有效预防和控制糖尿病病情的发展[2]。因此糖尿病的预防应该从合理的生活方式开始,倡导健康的生活方式,改变不良的生活习惯。同时也可以通过机器学习模型对糖尿病患者的病情进行预测,让患者了解病情发展情况,进而才会主动采取有效的措施预防糖尿病。另外,不同的预测模型针对不同的数据类型预测的效果也不尽相同,一个好的预测结果能提高临床决策和诊疗方案制定的速度。因而探究糖尿病的风险因素影响以及糖尿病预测都具有重大意义。

可视分析作为大数据领域的一个分支,其综合了数据挖掘、可视化模型设计等相关技术,通过人的参与及机器的自动分析,既保持了数据分析过程的高效性,又结合了人的经验知识提高分析结果的准确性。与晦涩难懂的数学模型及枯燥乏味的数据表格相比,可视分析以图形化的方式展示了数据背后的模式和规律,辅助用户更好地发掘、认知数据所蕴含的信息[3]。利用可视化与可视分析可以帮助患者与医师能更好地发现医疗健康数据所蕴藏的价值。因此,文中设计了糖尿病演变与预测的可视分析系统。通过关联多个视图,提供丰富的交互操作,探究一定时间内糖尿病变化程度,分析生活习惯对疾病演变的影响方向。同时,利用随机森林、GBDT、线性回归等算法建立预测模型,对患者血糖变化进行预测。构建折线图分析预测效果,对各类模型的预测效果进行比较。并通过交互手段根据用户生活习惯得到血糖变化。有利于提高患者的防范意识,辅助医生进行及时干预从而降低糖尿病的死亡率。对于节约医疗资源,减轻家庭重担,实现疾病早预警和治未病具有重要意义。

文中利用了某公司提供的医疗健康数据,验证文中所提系统的研究意义。主要贡献如下:

(1)设计了一个交互式可视分析系统,通过交互的方式来分析生活习惯对于疾病演变的影响。

(2)通过患者生活习惯,利用多种机器学习模型预测血糖变化,评估预测模型效果。进一步分析了当前生活习惯的影响。

(3)设计了交互界面,根据输入信息预测患者血糖值。让患者清楚知道当前生活习惯的优劣。

1 相关工作

近年来随着城市化的大力发展,人们生活水平的升高,生活方式的改变以及人口老龄化的加剧,糖尿病的患病率也在不断攀升。因此,预防糖尿病是当今社会研究的一个重要主题。部分研究者从影响糖尿病的危险因素出发,研究生活方式对于糖尿病的影响;通过构建预测模型对糖尿病的发生进行预测提供辅助治疗;构建可视化视图利用可视分析的方式探究疾病信息。文中概述了关于上述3个方面的相关工作。

1.1 糖尿病影响因素

大量研究表明生活方式干预是预防糖尿病的一种有效方式。当医生诊断出患者患有轻度糖尿病时,他们会建议患者改善他的生活方式,采取一个健康的制度和一个良好的饮食习惯可以帮助预防糖尿病。单纯的运动因素及生活习惯能改变血糖水平。曹锦梅等[4]通过数据挖掘技术表明慢性非传染性疾病与人的日常生活、生活习惯等紧密相关。所以了解生活习惯对疾病的影响是预防糖尿病的重要措施之一。王洪峰[5]通过改进Apriori算法从医疗数据中得到了慢性病的生活习惯影响规则,并利用此规则建立了生活习惯预测系统。陈松景等[6]利用反向传播神经网络的患病因素对血糖影响的量化进行分析,筛选出性别、体重等10个因素。通过相关学者研究结果,文中提炼了糖尿病患者的日主食量、吸烟量、饮酒量、每日锻炼时间、每周锻炼次数等作为影响糖尿病的生活习惯因素进行研究。

1.2 预测模型

机器学习模型可以对疾病进行有效预测,给医生与患者提供参考。大量学者构建预测模型,对糖尿病预测进行了深入研究。这些预测模型利用不同的危险因素分析糖尿病。如Chien K[7]用Cox回归模型建立了适合中国人群的糖尿病风险预测模型。侯玉梅[8]和杨光[9]探索决策树模型在糖尿病预测中的应用,发掘糖尿病患病的得病风险规律。张颖[10]建立了基于支持向量机的预测模型,探讨支持向量机筛选疾病影响因素及构建基本预测模型的作用。张春富[11]提出一种GA_Xgboost模型应用于糖尿病风险预测。Neha[12]挖掘糖尿病病人的生活方式和家庭背景数据,利用多种机器学习分类的方法分析2型糖尿病数据进行预测。并对各类机器模型进行对比。基于此,文中也利用了随机森林、GBDT以及线性回归算法预测糖尿病患者血糖变化量。

1.3 疾病可视化

随着医疗信息化高速发展,智能信息化医疗不断创新,医疗数据可视化分析技术对于直观展示医疗数据分析结果变得尤为重要。张易轩等[13]通过临床医生对于糖尿病的强化治疗设计了一种带有多维相关数的时变事件可视化工具来帮助临床医生对糖尿病的管理,促进教育干预。Hakone等[14]以病人为中心,通过可视化对比两种预测模型来评估患者的风险帮助前列腺癌患者对于保守治疗和手术的选择。Michael等[15]采用差分层级比价算法分析患者之间的表型。提出了PhoneBlocks表型比较可视化系统帮助医师对临床性疾病的鉴别。

杨沁柳[16]通过对Apriori挖掘2型糖尿病的关联规则,并通过构建决策树与支持向量机预测患者的病情情况。而文中从可视分析的方式出发,设计了糖尿病血糖演变与生活习惯分布图,探究生活习惯对于血糖变化的影响,利用预测模型得出的预测值进一步分析各生活习惯的影响程度。此外还对各类预测模型进行了对比。

2 系统概述

文中系统主要由4个模块组成,即数据处理模块、预测模型构建、可视化模块以及交互模块。根据这4个模块,提出了可视分析的系统流程,如图1所示。

图1 系统设计流程

首先对原始数据进行清洗、变换操作。便于进一步结合可视化图表分析病情演变与拟合预测模型。然后,通过对数据可视化以及不同视图之间的交互,分析生活习惯对于糖尿病病情的演变影响。通过可视化直观分析各机器学习模型的预测效果并比较模型。以与用户交互的形式帮助用户分析当前生活习惯的影响程度。

3 模型构建

3.1 数据处理

文中的原始数据利用的是某地区的糖尿病随访数据。对于提取的原始数据,需要分析其噪声数据与异常数据,如对于这类数据可以用均值、中位数或众数来代替。所取数据中,删除了离散较大的值,例如血糖高于50 mmol/l、身高低于1 m等。生活习惯存在少量空值,因为大多数人的生活习惯差异不大,所以文中采用众数来填充空值。

3.2 模型描述

3.2.1 随机森林模型

随机森林[17]是由Breiman将其在1996年提出的Bagging集成学习理论[18]与Ho在1998年提出的随机子空间方法[19]相结合,于2001年发表的一种机器学习算法。随机森林主要应用于分类和回归。文中主要研究糖尿病的血糖变化,属于回归问题。随机森林回归(RFR)的基本思想随机森林回归算法是由一组回归决策子树{h(x,θt),t=1,2,…}构成的组合模型。其中θt是服从独立同分布的随机变量,x表示自变量,T表示决策树的个数。利用集成学习的思想取各决策子树{h(X,θt)}的均值作为回归预测结果。

(1)

其中,h(x,θt)为基于x和θ的输出。

3.2.2 GBDT算法

GBDT(gradient boosting decision tree)又叫梯度提升树,是一种迭代的决策树算法,在1999年由Jerome Friedman[20]提出,该算法由多棵决策树组成,最终结果由所有树的结论相加组成。主要思想是每次建立模型是在之前建立的模型损失函数的梯度下降方向,这也是Boosting思想在GBDT中的体现。GBDT的模型可以表示为:

(2)

GBDT的提升方法采用的是加法模型以及不断减小训练过程产生的残差来完成数据分类或者回归。那么第m个分类器的预测结果表示为:

F(x)=Fm-1(x)+λmhm(x)

(3)

而hm(x)的优化目标就是最小化当前预测结果Fm-1(xi)+hm(xi)和yi之间的差距。

(4)

3.2.3 线性回归

多元回归分析预测法,是指通过对两个或两个以上的自变量与一个因变量的相关分析,建立预测模型进行预测的方法。当自变量与因变量之间存在线性关系时,称为多元线性回归分析。多元线性回归模型的一般形式为:

Y=β0+β1X1+β2X2+β3X3+…+

βjXj+…+βkXk+μ

(5)

其中,k为解释变量的数目,βj(j=1,2,…,k)为回归系数(regression coefficient),μ为去除k个自变量对Y影响后的随机误差。

3.3 模型评估

为了能主观、定量地评价模型的优劣,文中主要从精度方面分析。模型精度评价指标选用平均绝对误差MAE、均方根误差MSE、平均绝对百分比误差MAPE以及确定性系数(R2)。MAE、MSE和MAPE用于评估真实值和预测值的差异,它们是回归任务中最常用的性能指标,值越小代表预测越准确。R2用于评估模型的解释度,值越大模型解释性越强。各指标计算公式分别为:

(6)

(7)

(8)

(9)

4 可视化设计

基于需求,文中设计了基于生活习惯的糖尿病病情预测与可视分析系统。通过多个视图可视化糖尿病病情的演变与预测信息。利用不同视图之间的交互分析生活习惯与糖尿病病情衍变的关系,同时利用了随机森林、GBDT、线性回归等多种机器学习模型预测患者血糖变化,并对各模型的预测效果进行比较。

该系统主要包括糖尿病人群的血糖衍变图、生活习惯分布图与预测模型的预测效果对比图,以下将各个视图的可视化设计细节做进一步阐述。

4.1 糖尿病人群的血糖演变图

中华医学会糖尿病学分会[21]中指出,糖尿病患者的空腹血糖参考值为:轻度糖尿病:7.0~8.4 mmol/l,中度糖尿病:8.4~11.1 mmol/l,重度糖尿病:大于11.1 mmol/l。据此,文中将空腹血糖值划分为四个等级。正常血糖值小于7.0 mmol/l。同时,以年作为糖尿病病情演变的时间单位。如图2所示,各个节点表示那一年属于这个血糖等级的人群。由节点的长度,分析人员可以得出这个血糖等级的数量。节点的迁移线宽度表示经过一年的时间当前血糖等级的人群向后一年的血糖等级衍变的数量,宽度越大表示所指向的那个血糖等级节点的人群数量越多。如图2,当选中某个节点,系统会默认高亮这个血糖等级节点与之相关的后一年的节点与迁移线。能够直观地帮助分析人员了解此血糖等级的人群经过一年的生活习惯影响后血糖等级的变化情况。

图2 系统界面概览

4.2 生活习惯分布图

图2中呈现了生活习惯数据的分布。生活习惯数据比较分散,种类繁多。所以文中采用了不受异常值影响,能够准确稳定地描绘出生活习惯数据离散分布情况的箱形图作为生活习惯分布图。箱线图(又称盒须图、箱形图)通过绘制连续型变量的五数总括(最小值、下四分位数、中位数、上四分位数、最大值)来描述其分布。以中位数代表当前人群生活习惯。箱线图的高度表示生活习惯数据的跨度。鉴于生活习惯指标度量单位之间的差异,标准化的处理虽是一个好方法,但在同一坐标系中视图的可读性很弱,所以文中采用了small-multiple chart的形式来展示不同单位之间的数据。

与血糖演变图结合,该图会根据用户选择的血糖等级显示这部分血糖等级演变的人群的生活习惯分布。通过筛选血糖升高人群与血糖降低人群,对比这两个人群生活习惯分布的差异。以此来了解生活习惯对于血糖升高降低的影响。

4.3 生活习惯预测

系统利用预测模型探究了以生活习惯数据预测糖尿病患者的血糖变化。以时间跨度内的空腹血糖值变化值作为预测标签,以3个基本因素(基础血糖值,身高,体重)与5个生活习惯因素(吸烟,主食,日运动时间,周运动次数,饮酒)作为预测因子。数据处理后,将数据集以4∶1划分为训练集与测试集。在训练集中分别应用随机森林、GBDT、线性回归等机器模型算法建立血糖预测模型,用测试集进行模型验证。

机器学习模型的预测效果很大一部分取决于参数的选择,不同的参数有不同的功能,这些参数设定是否合理,对于模型的评估有着重要的影响。而超参数的调节通常取决于经验判断和遍历实验,传统方法效果欠佳且缺乏理论支持。因此文中采用过程简单、速度快的贝叶斯优化,得到模型最优参数。

如图2所示,系统展示利用测试数据验证的各种分类器的预测值与真实值。以测试集的数据量为x轴,预测结果为y轴,生成各模型预测效果对比图。此外,分析人员利用数据区域缩放对所选部分的数据细节展示,通过拖动与放大细节可以更加清楚地观察到各个机器学习模型的预测结果。通过点击各条折线图就能查看各机器学习模型具体的预测值,能直观精确地比较各种模型的预测误差。定性地评价各模型优劣。此外,为了能对预测模型有个定量的直观的评价分析,图2展示了三个预测模型不同精度评价的量化指标。利于患者直观的根据评价指标选择较好的预测模型。

患者糖尿病预测值的融合设计如图2所示,系统提供了生活习惯数据与预测模型的交互选择设计了一个能输入患者生活习惯数据的交互界面,分析人员可以填入各项数据。系统会根据所填数据,给出患者血糖变化的预测结果。同时血糖演变图会根据当前的生活习惯与预测血糖变化值高亮与之相匹配的血糖等级演变,让分析人员及患者更加清楚地了解到生活习惯对于血糖的影响。

此外在图2中,系统给出了与预测标签相关的特征重要性评估。为预测因子对于预测效果的重要性做了排名。能供用户清楚直观地知道不同的生活习惯因素对于血糖演变的重要程度。

5 案例分析

基于文中所提出的系统,采用某地区的糖尿病建档数据,提取了数据中2015年到2018年非药物治疗的糖尿病患者生活习惯数据。对数据进行过滤筛选后,选择了3 061条数据。将空腹血糖值划分为四个血糖等级,利用生活习惯以及预测模型来分析不同血糖等级的人群生活习惯对于血糖变化的影响。

5.1 生活习惯与血糖

系统通过血糖演变视图展现了不同血糖等级的糖尿病人群经过一年时间的血糖等级演变情况。从图中知道,每个等级的人群,经过一年生活习惯的影响,都会存在着变化。如图3(a)选中2016年患轻度糖尿病的人群节点(记为“节点16”)可以发现,经过一年的时间,轻度血糖等级的1 419人中有846人血糖值没有发生改变或者变化不大。573人的血糖等级发生改变。而这573人中有305人的血糖等级升高了。另有268人的血糖等级降低了,图3(a)中的饼图表示了不同血糖变化的占比。图3(c)展示了由2016年轻度血糖人群的血糖等级升高、不变、降低的三类人群的生活习惯分布。如图,吸烟与饮酒的1/4位,1/2位于3/4位重叠且为最低,表明大部分血糖患者是不吸烟不饮酒。而以中位数评判,血糖降低人群的日锻炼时间与周锻炼次数则高于血糖升高人群。且彼此之间的差距则明显大于吸烟饮酒之间的差异。这可能说明锻炼相比于吸烟,饮酒更能让糖尿病患者的血糖值发生改变。此外,图2中对于生活习惯特征重要性的排名,锻炼的重要性都高于吸烟与饮酒,也能对此观点进行辅证。主食的差异不大。

如图3(b),选中血糖改变较多的2017年中度糖尿病的人群节点(记为“节点17”)。这个人群的血糖改变约占50%,且血糖等级变低的超过30%。结合图3(c)与图3(d)两个血糖等级人群的生活习惯可以发现,“节点17”(图3(d))的生活习惯数据跨度比“节点16”(图3(c))的跨度大。这可能说明跨度越大生活习惯越不稳定,表示血糖等级变化的可能也就越大。相反,跨度越小代表血糖等级发生变化的可能也就越小。

图3 生活习惯与血糖交互分析

5.2 模型预测

采用最开始一年的数据。则预测标签为2015年到2016年这一年的血糖变化值。预测因子为2015年到2016年的生活习惯数据。如图4所示,展示了随机森林、GBDT和线性回归三种机器学习模型的预测结果与真实值对比。通过拖动与放大细节可以发现真实值的分布更离散,三种预测曲线的线性变化虽都与真实值的线性变化相似,但预测值的波动幅度没有真实值大。原因可能在于,训练模型中较大值与较小值出现次数少,从而权重较小,导致模型的预测趋向于常见值。而三种模型中随机森林模型的线性变化与真实值之间更为吻合,用户通过点击各条折线就能方便地查看和比较各种模型预测误差。线性回归差距最大。GBDT模型的预测效果和随机森林预测误差偏小。

图4 预测模型效果与对比

评估三种预测模型的精度指标,如图5所示。可以发现,随机森林的R-squred稍大,证明GBDT与线性回归解释性方面不如随机森林。随机森林的MAE、MSE与MAPE稍小,说明随机森林模型的预测精度较优。

另外,通过填写一名患者的生活习惯数据(基础血糖7.2 mmoL/l、主食量400 g、身高164 cm、吸烟0根/天、饮酒0 L/d、日锻炼时间30分钟、周锻炼次数4次),选用随机森林模型预测。系统给出预测结果为此生活习惯下一年后患者血糖为6.6 mmoL/l,血糖变化为降低了。

图5 预测模型评估

经过案例分析,可以发现生活方式能对血糖变化产生影响。不同的生活方式,影响的血糖变化不一,健康的生活方式能对血糖变化有积极的作用。针对此数据,集成模型的预测效果明显优于线性回归模型。

6 结束语

文中通过可视化的方式探究了生活习惯对于糖尿病演变的影响,并通过构建多个机器学习模型(线性回归,随机森林和GBDT)来预测糖尿病的血糖变化。首先,系统将糖尿病的血糖分为正常、轻度、中度和重度四个等级并设计了单位时间内的血糖演变图,并利用箱线图展示不同血糖等级的生活习惯分布情况。结合二者,探究了在不同血糖等级的情况下生活习惯对于血糖的影响不同。健康的生活习惯对于单位时间内的血糖降低有一定的作用。并结合由机器学习算法得出的影响血糖值变化的特征重要性,分析出了生活习惯特征对于血糖的影响效果不同。通常有效的锻炼比饮食、吸烟和饮酒更能影响血糖的变化。可视化了各机器学习模型的预测效果,并对各预测效果进行了比较。

通过对某地区2015-2018的糖尿病随访数据的可视分析,表明了该系统具有良好的使用性和拓展性。但通过总结实际应用中存在的问题发现,它仍存在着不足。文中结合可视分析,在设计中尽可能地使用简单易用的可视化技术,但很多可视化细节仍需改进,可视化图的信息传递还可以更为丰富和细腻。系统分析的是不同生活习惯对于血糖等级的影响,血糖演变的时间跨度也统一为1年。在未来工作中,将分析相同生活习惯对于不同血糖等级的影响,引入不同时间跨度分析血糖演变情况,并将其设为新的机器学习模型的特征值加入训练。此外,此系统的预测模型只考虑了三类不具有多样性,还可以引入其他类别机器学习算法。

猜你喜欢

生活习惯可视化血糖
自然资源可视化决策系统
细嚼慢咽,对减肥和控血糖有用么
一吃饺子血糖就飙升,怎么办?
思维可视化
减肥好难!餐后血糖大幅下降更易饿
当心!这些生活习惯 正在摧毁你的听力
复变函数级数展开的可视化实验教学
复变函数级数展开的可视化实验教学
复变函数共形映射的可视化实验教学
复变函数共形映射的可视化实验教学