基于机器学习的冠心病风险预测模型构建与比较
作者机构:清华大学医院管理研究院 清华大学医院管理研究院清华大学医学院
出 版 物:《中国全科医学》 (Chinese General Practice)
年 卷 期:2024年
学科分类:12[管理学] 1201[管理学-管理科学与工程(可授管理学、工学学位)] 1002[医学-临床医学] 081104[工学-模式识别与智能系统] 08[工学] 100201[医学-内科学(含:心血管病、血液病、呼吸系病、消化系病、内分泌与代谢病、肾病、风湿病、传染病)] 0835[工学-软件工程] 0811[工学-控制科学与工程] 0812[工学-计算机科学与技术(可授工学、理学学位)] 10[医学]
主 题:冠心病 机器学习 风险预测模型 Logistic回归 k最邻近算法 支持向量机 决策树 XGBoost
摘 要:背景 冠状动脉粥样硬化性心脏病(Coronary atherosclerotic heart disease,CHD)(以下简称冠心病是全球重要的死亡原因之一。目前关于冠心病风险评估的研究在逐年增长。然而,在这些研究中常忽略了数据不平衡的问题,而解决该问题对于提高分类算法中识别冠心病风险的准确性至关重要。目的 探索冠心病的影响因素,通过使用2种平衡数据的方法,基于5种算法建立冠心病风险相关的预测模型,比较这5种模型对冠心病风险的预测价值。方法 基于2021年美国国家行为风险因素监测系统(Behavioral Risk Factor Surveillance System,BRFSS)横断面调查数据筛选出112 606位研究对象的健康相关风险行为、慢性健康状况等24个变量信息,结局指标为自我报告是否患有冠心病并据此分为冠心病组和非冠心病组。通过进行单因素分析和逐步Logistic回归分析探索冠心病发生的影响因素并筛选出纳入预测模型的变量。随机抽取112 606位受访者的10%(共计11 261名),以8:2的比例随机划分为训练与测试的数据集,采用随机过采样(Random oversampling)和合成少数过采样技术(Synthetic Minority Over-sampling Technique,SMOTE)两种过采样(Over-sampling)的方法处理不平衡数据,基于k最邻近算法(K-Nearest Neighbor,KNN)、Logistic回归、支持向量机(Support Vector Machine,SVM)、决策树和XGBoost算法分别建立冠心病预测模型。结果 两组年龄、性别、BMI、种族、婚姻状态、教育水平、收入水平、是否被告知患高血压、是否被告知患处于高血压前期、是否被告知患妊娠高血压、现在是否在服用高血压药物、是否被告知患有高血脂、是否被告知患有糖尿病、抽烟情况、过去30 d内是否至少喝过1次酒、是否为重度饮酒者、是否为酗酒者、过去30 d内是否有体育锻炼、心理健康状况以及自我健康评价比较,差异有统计学意义(P0.05)。逐步Logistic回归分析结果显示:年龄、性别、BMI水平、种族、教育水平、收入水平、是否被告知患高血压、是否被告知患处于高血压前期、是否被告知患妊娠高血压、现在是否在服用高血压药物、是否被告知患有高血脂、是否被告知患有糖尿病、抽烟情况、过去30天内是否至少喝过一次酒、是否为重度饮酒者、是否为酗酒者以及自我健康评价为冠心病的影响因素(P0.05)。风险模型构建的分析结果显示:k最邻近算法、Logistic回归、支持向量机、决策树和XGBoost采用合成少数过采样技术处理不平衡数据的总体分类精度分别为59.2%、67.4%、66.2%、69.2%和85.9%;召回率分别为75.2%、71.4%、70.5%、62.9%和34.8%;精确度分别为15.4%、18.2%、17.5%、17.6%和28.7%;F值分别为0.256、0.290、0.280、0.275和0.315;AUC分别为0.80、0.78、0.72、0.72和0.82;采用随机过采样处理不平衡数据的总体分类精度分别为62.5%、68.5%、69.0%、60.2%和70.1%;召回率分别为70.0%、69.5%、71.9%、69.0%和67.6%;精确度分别为15.8%、18.4%、19.1%、14.8%和19.0%;F值分别为0.258、0.291、0.302、0.244和0.297;受试者工作特征曲线下面积分别为0.80、0.77、0.72、0.72和0.83。结论 本研究不仅确认了已知冠心病的影响因素,还发现了自我健康评价水平、收入水平和教育水平对冠心病具有潜在影响。在使用2种数据平衡方法后,5种算法的性能显著提高。其中XGBoost模型表现最佳,可作为未来优化冠心病预测模型的参考。此外,鉴于XGBoost模型的优异性能以及逐步Logistic回归的操作便捷和可解释性,推荐在冠心病风险预测模型中,结合使用数据平衡后的XGBoost和逐步Logistic回归分析。