ACS-Stacking Prediction Model Based on Machine Learning
Acute Coronary Syndrome (ACS) is a significant disease that threatens human health, and the rapid differential diagnosis technology for acute myocardial infarction still requires further research. This study involved clinical data from 813 patients at the Cardiovascular Hospital of Shanxi Medical University, described by 24 predictive variables related to demographic/comorbidity characteristics and in-hospital complications. Using “Acute Myocardial Infarction (AMI) and Unstable Angina (UA)” as binary classification variables as the target variables, an interpretable machine learning (ML) model was established to identify significant related indicators to assist clinicians in making rapid and effective identification of ACS patients. The performance of these seven ML models was trained and evaluated, and the Xgboost, Adaboost, and Randomforest models that performed better in the test set were fused into the best-performing interpretable Stacking ensemble model (named: ACS-Stacking prediction model). The ACS ensemble prediction model achieved an AUC value of 0.96562 in the test set and an accuracy rate of 89% under 10-fold Cross-Validation. This model helps doctors quickly identify ACS patients in clinical diagnosis by combining model prediction results, model visualization, and clinical experience.
ACS
ACS是威胁人类健康的重要疾病之一
为解决该临床问题并减轻急诊工作负荷,多个临床诊疗指南均推荐使用高敏肌钙蛋白检测来快速进行AMI患者和UA患者的鉴别。但其在临床实际使用中受到诸多影响,如:患者发病时胸痛症状不典型、心电图未显示ST段异常等,可能导致相关生物标记物的检测率不足;此外,不同的年龄、性别对高敏肌钙蛋白的正常范围也存在影响;且生物标志物的升高受多种疾病的影响,如何进行相关疾病的鉴别仍需要临床医生的观察、解释。有文献报道,约24%~35%的患者存在心肌梗死,但心电图未显示应有的缺血改变,从而导致治疗的延误,并最终导致ACS患者死亡率增加14%~22%
近年来,人们对机器学习和深度学习算法在医学领域进行了广泛的研究
本研究数据来自山西省医科大学附属心血管病医院,其中813名患者被纳入研究,504例患者数据被分配到训练集,309例患者数据被分配到测试集,训练了七种机器学习模型,将表现较好的Adaboost,Xgboost,Randomforest融合成可解释的Stacking模型。
KNN填充算法属于基于局部的单次填充算法,使用K个近邻样本对应的属性值判断缺失样本缺失的属性值,能简单快速地解决数据缺失问题
在相关性分析中可能出现多个自变量之间存在高度相关性,这种现象会使得模型的解释变得困难,并降低了模型识别具有统计显著性的自变量的能力。因此,本研究通过多重共线性分析,来识别和减轻这种问题所带来的影响
本研究利用Relief算法,结合上述特征训练Relief模型,选择并消除最弱的特征,对剩余的特征重复这个过程,直到达到指定数量的特征
从
结合RELIEF和遗传算法,本研究选择特征权重绝对值在前70% (16个特征)以及在遗传算法中被选择次数在10次以上的特征,最终选择10个特征如下:嗜中性粒细胞、收缩压(mmHg)、BMI、入院心率、LVEF、性别、吸烟史、年龄、舒张压(mmHg)和高血压病史。
本研究采用独立测试集和交叉验证
本研究拟训练Xgboost,Adaboost,Randomforest,KNN,SVM,Naive_Bayes,Logistic七种机器学习分类模型,并将测试集上性能比较好的Xgboost,Adaboost,Randomforest融合成表现最佳的Stacking模型(其命名为ACS-Stacking预测模型),利用10-fold的网格搜索方法对机器学习的超参数进行优化
7种ML分类模型以及ACS-Stacking预测模型的最佳超参数见
模型 |
超参数 |
Xgboost |
n_estimators = 22, max_depth = 6, alpha = 0.15, colsample_bytree = 0.9, subsample = 0.7, gamma = 0.6, eta = 0.17 |
Adaboost |
DecisionTreeClassifier (max_depth = 9), n_estimators = 80, learning_rate = 0.83 |
Randomforest |
n_estimators = 80, bootstrap = “true”, max_depth = 7, max_features = 0.1, min_samples_leaf = 1, min_samples_split = 2, random_state = 0 |
KNN |
algorithm = “brute”, n_neighbors = 19, p = 1, weights = “distance” |
SVM |
C = 100, kernel = “rbf”, gamma = “scale”, degree = 1, probability = True |
Naive_Bayes |
无 |
Logistic |
“C”:0.1, “penalty”: “l2”, “solver”: “newton-cg” |
ACS-Stacking |
(Randomtree: n_estimators = 80, bootstrap = “true”, max_depth = 7, max_features = 0.1, min_samples_leaf = 1, min_samples_split = 2, random_state = 0) (AdaBoost: DecisionTreeClassifier (max_depth = 7), n_estimators = 80, learning_rate = 0.1) (Xgboost: n_estimators = 80, max_depth = 6, alpha = 0.15, colsample_bytree = 0.9, subsample = 0.7, gamma = 0.6, eta = 0.17) |
本研究采用10-fold验证计算曲线下面积(AUC)、f1分数、独立测试集准确率和召回率(Recall)、敏感度来评估8个模型的性能。
曲线下面积(AUC)因其独立于类分布而被用作性能的预测因子。其他性能指标,包括F1分数、召回率,敏感度用于进一步评估模型的校准。本研究从F1分数、召回率、敏感度以及10-fold-cv下的平均准确率四个评价指标方面,评估了7种ML分类模型以及ACS-Stacking预测模型的预测结果。每个模型在各个评价指标下的结果见
算法 |
F1分数 |
召回率 |
敏感度 |
交叉验证 |
Xgboost |
0.887 |
90.0% |
87.5% |
0.87 |
Adaboost |
0.903 |
90.0% |
90.625% |
0.86 |
Randomforest |
0.889 |
94.0% |
84.375% |
0.88 |
KNN |
0.816 |
82.0% |
81.25% |
0.82 |
SVM |
0.832 |
82.0% |
84.375% |
0.87 |
Naive_Bayes |
0.838 |
78.0% |
90.625% |
0.84 |
Logistic |
0.825 |
78.0% |
87.5% |
0.87 |
ACS-Stacking |
0.923 |
94.0% |
90.625% |
0.89 |
图4. 融合模型ROC曲线图
本研究通过SHAP汇总图(见
可以从
本研究通过SHAP决策图(
急性心肌梗死(AMI)是心血管疾病的最严重形式,诊断和治疗必须及时,否则可能引发不可逆的后果
随着心脏病患者人数的逐年增加,对现有的医疗系统也产生了巨大的压力,如何利用机器学习进行疾病方面的诊疗优化成为新的临床问题。例如在急性心肌梗死的快速诊断方案,有研究依托高敏肌钙蛋白
这种可解释的模型是解决临床医生对将ML输出纳入临床决策的犹豫不决的关键第一步
未来研究将扩充高血压病史患者数据,以优化预测其患急性心肌梗死(AMI)或不稳定心绞痛(UA)倾向。同时,计划实现对患者主观描述的采集和分析,以完善特例样本在临床实际中所呈现出的异常情况。最后,以验证本研究在其他地区的适用性,扩充数据,实现基于多源多中心数据的模型优化。我们的团队将解决上述存在的问题,并通过未来的研究努力建立更好的ACS预测模型,以帮助医生快速准确地判断相应的预后,以改进冠状动脉疾病患者个性化治疗和管理。
*通讯作者。