关键词:
糖尿病风险
不平衡数据
过采样
机器学习分类算法
摘要:
近年来,全球糖尿病形势愈发严峻,患病人群数量庞大。机器学习算法在医疗诊断领域应用广泛,但医疗数据常常存在数据不平衡的问题。因此,本文提出一种改进SMOTE算法平衡数据集,并建立糖尿病风险预测模型,旨在降低诊断过程中的漏诊率和误诊率,对风险人群起到早期诊断、疾病预警作用,及时干预糖尿病前期或者预防糖尿病并发症,同时尽可能节约医疗资源。本文对于来自天池精准医疗大赛的糖尿病数据集进行研究,主要的研究工作和结论如下:(1)根据后续算法要求,对数据进行预处理。处理异常值时保留温和异常值,剔除极端异常值。对于缺失值,删除缺失比例超过70%的特征和小于1%的特征样本,其余特征采用填充法,服从正态分布则填充均值,否则填充中位数。进行特征选择时,结合Spearman相关系数和随机森林的特征重要度筛选出22个特征。(2)对于非均衡数据的处理,针对SMOTE可能会生成噪音点、样本分布边缘化的问题,提出一种改进SMOTE算法。该算法融合边界思想和聚类算法,根据K近邻将少数类样本分为噪音点、边界点和安全点,剔除噪音点后对余下的少数类样本进行K-means++聚类。对于每一簇,在生成新样本时仅选取边界点,将聚类中心的最近邻边界点和同簇内随机选取的其它两个边界点构建三角形,在两个随机选取的边界点与三角形重心的连线上分别生成新样本。本文将改进SMOTE算法与SMOTE、Borderline-SMOTE方法进行比较,验证改进SMOTE算法的有效性。首先从KEEL平台中选取5个不平衡数据集进行实验对比,结果表明改进SMOTE算法总体表现最好,初步验证了改进SMOTE算法的可行性。然后对于糖尿病数据集,平衡数据集后分别建立多种机器学习模型,实验结果表明结合改进SMOTE算法建立的模型预测效果更好,进一步验证了改进SMOTE算法的有效性。(3)对结合改进SMOTE方法建立的机器学习模型进行分析。本文运用逻辑回归、随机森林、GBDT、XGBoost、Cat Boost算法建立糖尿病风险预测模型。实验表明,逻辑回归模型的性能最好,其次是Cat Boost、XGBoost模型。根据模型的特征重要度探究患糖尿病风险的影响因素,年龄为最主要因素。实验分析表明,改进SMOTE算法结合逻辑回归模型预测效果最好,能有效辅助医疗诊断,节约医疗资源。