基于XGBoost算法的潜在高血脂症预测研究

2021-04-20 02:23李荣杨嘉烨宋苏燕郭志高丁有伟
电子技术与软件工程 2021年2期
关键词:高血脂症数据量决策树

李荣 杨嘉烨 宋苏燕 郭志高 丁有伟

(南京中医药大学人工智能与信息技术学院 江苏省南京市 210033)

1 引言

随着人民生活水平和膳食结构的改变,我国血脂异常的发生率呈持续上升趋势,血脂异常与动脉粥样硬化密切相关,是冠心病、脑卒中、心肌梗死、猝死的危险因素[1]。我国成人血脂异常患者的知晓率和治疗率仍处于较低水平,血脂异常的防治工作有待加强[2],因此高血脂的评估和预测对阻止病情的发生,延缓病情具有重要意义。

近年来,机器学习技术发展迅速,并被广泛用于慢性病预测。M Chen 等人[3]在数据不完整的情况下使用潜在因素模型重建丢失数据,并对某一地区的慢性病脑梗死患者的结构化和非结构化数据进行试验,提出了一种新的基于CNN 的多模态疾病风险预测算法(CNN-MDRP),该算法准确率高,收敛速度快。A Wang 等人[4]借助logistic 回归对风险因素初筛,进而采构建BP 算法的多层感知神经网络模型预测高血压。将Logistic 回归和ANN 进行有效结合,对于高血压筛查具有重要意义。Chang W 等人[5]使用递归特征消除与交叉验证从体检数据中提取最佳特征子集后,采用SVM、决策树、随机森林、XGBoost 预测高血压,发现XGBoost 预测性能最好,此试验对深入研究高血压并发症具有较强的现实意义。

在国内外的相关研究中,将机器学习应用于疾病预测的研究可以分为用于预测慢性疾病的模型设计和通过不同模型比较预测结果,大部分研究主要针对高血压等一些慢性疾病,由于高血脂症和其他慢性疾病同样重要,因此本研究选择高血脂症作为主要分析的疾病,提出基于XGBoost 算法的潜在高血脂疾病预测方法。针对采集到的数据进行数据的清洗、转化等处理,利用XGBoost、随机森林和Logistics 三种算法对潜在高血压进行预测,并比对不同算法的预测结果,从而找到最理想的算法,为早期高血压的检测和防治提供保障。

2 相关技术

2.1 高血脂症的预测原理

高血脂症是指血清中的胆固醇(TC)和(或)甘油三酯(TG)水平升高,通常患有高血脂症的患者会在某些方面的身体数据指标有异于正常人的表现。潜在高血脂症的预测原理是通过机器学习相关理论及在海量个体生理数据中搜索异常的,可能引发高血脂症的相关数据。

2.2 随机森林

随机森林(Random Forest)是由Breiman[6]提出的,是基于多棵决策树的集成分类方法。随机森林由多棵决策树构成,用随机的方法组成森林,决策树之间互不关联。当有样本需要判断时,将抽取的样本数据放到决策树的根节点,抽取样本采用有放回的抽样方法,保证每棵树之间相互独立。决策树根据选择的属性进行判断,并得到一个结果,最后汇总这些结果,通过少数服从多数的方法,出现最多的分类结果就是最后的答案。

2.3 XGBoost

XGBoost(eXtreme Gradient Boosting)是由陈天奇[7]等人2015年提出,是一种基于决策树的集成机器学习算法。是在GBDT 基础上,加入目标函数的二次泰勒展开项和模型复杂度的正则项,使得目标函数与实际数据相差更小,达到减少数据误差,提高预测准确度的一种算法。

2.4 Logistic回归

Logistic 回归算法是从统计学中借鉴而来的,通过使用固有的Logistic 函数估计概率,来衡量因变量与一个或者多个自变量之间的关系。逻辑回归假设数据服从伯努利分布,通过极大化化似然函数方法,运用梯度下降来求解参数达到将数据二分的目的。

3 数据预处理

实际在生活中取得的数据存在许多问题,特别是医疗领域的数据,有其独特的特点,决定了数据处理过程中面临诸多问题,比如冗余性,不完整性,不一致性,多类别数据特征等,因此,数据预处理在数据建模过程中占据重要作用,本研究主要使用下述方法对体检数据进行预处理。

(1)数据清洗。对待预测人员体检数据采集的过程中,不可避免会有大量与潜在高血脂症预测无关的冗余信息以及不完整信息,因此,需要对采集到的数据集进行清洗。

(2)数据转换。将隶属于非布尔属性的体检数据转换成布尔数据属性。可以通过文本关键词的提取,长文本转换成数值向量等方式进行处理。

通过上述方式处理得到待预测人员的体检数据,能更方便的进行高血脂症的数据预测分析,为潜在高血脂症的预测提供数据支撑。

4 实验结果及其分析

4.1 实验环境和条件

实验使用的是Windows 10、i5 处理器、8GB 内存的计算机,编程语言采用的是Python 3.8。

4.2 实验数据集

本实验选择美年体检数据,其中包括57298 份体检报告,2795项体检项目。该体检报告中包括数值型数据和文本型数据,体检项目名称已被脱敏处理,个人id 也进行加密处理。

4.3 分类性能评判标准

使用准确率(precision,P)、召回率(recall,R)和F1 值(F1-measure,F1)3 个指标作为分类器评判标准。在分类问题中,可将样本根据真实类和分类模型给出的预测类的组合,划分为真正例(True Positive,TP)、假正例(False Positive,FP)、真反例(True Negative,TN)、假反例(False Negative,FN)四种情况。则有如下定义:

4.4 不同分类模型的比较

本研究主要从体检数据中提取个体特征,对疾病进行风险预测,预测其胆固醇和血清甘油三酯是否处于异常,从而判断是否属于高血脂。

为验证XGBoost 算法分类的准确性,本研究还选择了随机森林和Logistics 两种算法,在100%数据量下,进行比较。由表1可知,XGBoost 算法的结果要明显优于其他两种算法。

4.5 不同数据量的影响

随机选取20%、40%、60%、80%的数据作为训练集。从图1中可以看出,随着数据量的增加,模型的结果逐步增强,但是有一定的波动。由于数据集样本分布并不均衡,且一些字段存在一定的缺失率,这导致了模型结果出现波动,但从F1 值来来看,随着数据量的增加,模型的结果逐步增强,且未出现明显下降的趋势。如表2所示。

图1:XGBoost 在不同的数据量下测试结果的变化

表1:XGBoost 与其他算法的对比

表2:训练样本数据量对xgboost 算法的影响

5 结束语

针对高血脂预测问题提出了基于XGBoost 算法的预测方法。通过与其他算法的比较可以发现XGBoost 算法结果好于其他算法,通过不同数据量的测试可以看出:随着训练样本的增加,准确率有一定程度的提高。通过本研究可以为高血脂症的预测提供强而有力的理论基础。

猜你喜欢
高血脂症数据量决策树
基于大数据量的初至层析成像算法优化
计算Lyapunov指数的模糊C均值聚类小数据量法
宽带信号采集与大数据量传输系统设计与研究
一种针对不均衡数据集的SVM决策树算法
决策树和随机森林方法在管理决策中的应用
基于决策树的出租车乘客出行目的识别
高血脂症的诊治
基于肺癌CT的决策树模型在肺癌诊断中的应用