源自风暴统计网:一键统计分析与绘图的网站

20种机器学习算法,就为了选一个最佳预测模型!

今天分享一篇中国学者发表在《Scientific Reports》的研究论文,旨在预测结粪石性阑尾炎患者在保守治疗期间发生阑尾穿孔的风险。

让我们一起来看一下今天这篇文章!

研究设计

本研究是一项多中心回顾性队列研究,经过纳排,共纳入1247例年龄≥18岁的粪石性阑尾炎患者

  • 开发队列来自4个中心(2018-2023年),外部验证队列来自第5个独立中心(2023-2024年),共225例。

主要结局为保守治疗开始后72小时内发生阑尾穿孔。

√缺失值处理

数据预处理方面,缺失值采用链式方程多重插补(MICE),所有连续变量均进行标准化,分类变量采用one-hot编码。

√数据集拆分

数据按70%:15%:15%的比例拆分为训练集、验证集和测试集,并按结局分层抽样。

√预测特征筛选

特征选择采用LASSO正则化,通过5折交叉验证确定最优正则化参数,并采用30次Bootstrap重采样验证特征选择的稳定性。

最终筛选出8个最优预测特征:粪石大小、白细胞计数、C反应蛋白、阑尾壁厚度、患者年龄、心率、降钙素原、阑尾直径。

√模型构建

20种机器学习算法涵盖树模型、线性模型、集成方法、神经网络、实例方法和概率方法。

  • 树模型包括Random Forest、Extra Trees、Gradient Boosting Machine、XGBoost、LightGBM、CatBoost、Decision Tree;

  • 线性模型包括Logistic Regression、Ridge Regression、Lasso Regression、Elastic Net;

  • 集成方法包括Voting Classifier、Stacking Classifier、AdaBoost;

  • 神经网络包括Multi-layer Perceptron、Deep Neural Network;

  • 实例方法包括K-Nearest Neighbors、Support Vector Machine;

  • 概率方法包括Naive Bayes、Gaussian Process。

采用5折交叉验证加贝叶斯优化进行超参数调优,使用2000次Bootstrap重采样计算性能指标的95%置信区间。

√模型评估

评估指标包括AUC、敏感性、特异性、阳性预测值(PPV)、阴性预测值(NPV)、F1分数和准确率。

在可解释性与临床效用评估方面,研究团队首先使用SHAP分析计算了每个特征的SHAP值,并绘制beeswarm图,用于展示各个特征对预测结果的正负影响方向以及全局特征重要性排序。

在此基础上,通过决策曲线分析,在0-80%的阈值概率范围内计算了各模型的净收益,并与“全部治疗”和“全部不治疗”两种默认策略进行比较。

同时,将患者按照风险进行分层,分为低风险(<30%)、中风险(30%-60%)和高风险(>60%)三组,并计算各组实际穿孔率,以验证该风险分层的临床区分度。

此外,研究还采用三维曲面图和散点图,可视化关键特征对之间的协同效应。

最后,在独立的外部验证队列(n=225)中,研究团队应用最佳模型,评估了其AUC、校准曲线(Brier评分)、敏感性、特异性、PPV、NPV,并按相同的低中高风险分层计算了各组的实际穿孔率。

主要研究结果

研究结果显示,在20种算法中,Gradient Boosting表现最佳,AUC为0.892(95% CI: 0.871-0.913)。

  • XGBoost、LightGBM、Random Forest和Ensemble Voting分列第二至第五位。

  • 值得注意的是,所有排名前五的模型NPV值均超过95%,这表明它们在识别低穿孔风险且可能适合继续保守治疗的患者方面具有出色的能力。

接着,研究团队对最佳模型进行SHAP分析。

结果显示,特征重要性从高到低依次为粪石大小、C反应蛋白、白细胞计数、阑尾壁厚度、患者年龄、症状持续时间、阑尾直径、降钙素原、体温、粪周脂肪索条。

根据预测的穿孔概率,患者被分为低风险(<30%)、中风险(30%-60%)和高风险(>60%)三种风险类别。

结果显示,58.9%的患者被归类为低风险,31.9%为中风险,9.2%为高风险。

研究团队发现,实际穿孔率在风险类别之间逐渐增加。

  • 低风险组为3.8%,中风险组为24.6%,高风险组为71.3%,而总体穿孔率为14.9%(由虚线参考线表示)。

这表明该模型能够有意义地分离具有不同临床结局的患者人群。

特征交互作用分析显示,粪石大小与C反应蛋白之间存在明显的乘法效应,当这两种变量都升高时,预测概率最高。

  • 对于粪石大小超过 10 毫米且 CRP 水平高于 100 毫克/升的患者,穿孔风险接近 90%。

  • 类似地,老年患者合并高白细胞计数时,穿孔风险显著升高;

  • 阑尾壁增厚(>4.5mm)合并阑尾直径增大(>12mm)时,同样观察到风险被进一步放大。

决策曲线分析(DCA)显示,Gradient Boosting和XGBoost 在 5% 至 40% 的阈值概率范围内始终实现了最高的净效益,这对应于急性阑尾炎管理中最常见的临床决策阈值范围。

  • 15%阈值下Gradient Boosting净收益约0.08,优于“全部治疗”和“全部不治疗”策略。

外部验证中,Gradient Boosting的AUC为0.909(95% CI 0.859-0.951),表明模型具有良好的泛化能力。

  • 在外部验证集的低风险组穿孔率0.0%,中风险组16.4%,高风险组74.1%。

综上所述,本研究通过LASSO筛选8个预测特征,比较20种机器学习算法,确定Gradient Boosting为最优模型,内部验证AUC达0.892,外部验证AUC达0.909,并借助SHAP、DCA、风险分层和特征交互作用分析验证了模型的可解释性与临床实用性。

老郑小评

今天分享的这篇研究,用到的大部分方法我们都比较熟悉,LASSO筛选变量、5折交叉验证加贝叶斯优化调参、构建机器学习预测模型、评估模型性能、SHAP分析、绘制DCA曲线等。

但一个核心问题绕不开:真的需要同时跑20种算法才能找到“最佳”模型吗?

20种算法跑完,最后只留下一个“冠军”,其余19个的贡献就被搁置了。而且换个数据集,这个冠军可能就变了。

在这种情况下,老郑建议试试超级学习者(Super Learner)——不是从一堆算法里挑一个,而是把多个基学习器结合起来,再用一个元学习器自动学习最优组合权重,理论上其性能不差于任何单一算法。

下次做预测模型,不妨考虑这条路。


关于郑老师团队及公众号

学统计就找郑老师团队,我们有全面的医学统计课程!

1.医院临床数据分析课程

临床试验(RCT)研究设计与数据分析;临床预测模型和基于R语言/Python的机器学习方法在临床预测模型中的应用(附赠全套代码);医院回顾性数据与真实世界临床研究,涵盖目标模拟试验(模拟RCT)、缺失数据填补下真实世界研究、倾向性评分方法(包括倾向性得分匹配、逆概率加权,重叠加权)等

2.纵向数据分析课程

重复测量资料分析方法培训;轨迹模型在纵向数据分析中的深度应用(全套R代码奉送)

3.公共数据库挖掘与分析课程

NHANES(美国国家健康和营养检查)公共数据库、GBD(全球疾病负担)公共数据库、七大老年健康数据库挖掘与分析课程;孟德尔随机化方法快速发表SCI初级班、高级班以及进阶攻略:整合网络药理学&单细胞测序

4.其他课程

零基础两天学会R语言;Meta分析培训课程,包含网状Meta内容;量表与中介研究数据分析培训班

26年预开课程:

剂量反应网状Meta分析(DR-NMA)、缺失数据预测模型、时依协变量模型与多状态模型在纵向数据中的应用、高级倾向性评分课程、机器学习在医学影像图片数据中的应用、HRS数据库应用与分析

需以上统计课程,请联系郑老师团队(微信:aq566665)

图片

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐