公众号
医学论文与统计分析公众号
扫码关注公众号

统计咨询
添加助教微信即可咨询
添加助教微信即可咨询

意见反馈
邮箱:17357190071@163.com
微信:aq566665

中国学者用9种机器学习算法构建可解释性临床预测模型

Administrator
发布于 2025-08-08 / 69 阅读
0
0

乳头状甲状腺癌(PTC)是内分泌系统中最常见的恶性肿瘤,占所有甲状腺癌病例的80%以上。虽然随着体检的普及,PTC的检出率明显升高,但少数患者会出现远处转移(DM),总体预后显著恶化,10年生存率也从90%下降至40%。

因此,找到一种有效的 DM 风险早期预测方法,对于制定个体化诊疗计划和改善预后具有重要意义。

2024年10月29日,中国学者在顶刊Lancet子刊《eClinicalMedicine》(医学一区top,IF=9.6)发表了一篇题为:“Development and validation of an interpretable machine learning model for predicting the risk of distant metastasis in papillary thyroid cancer: a multicenter study”的研究论文,旨在克服以往研究的不足,通过多中心队列研究,开发并验证可解释的机器学习(ML)模型,用于PTC患者DM的早期预测。

并且,为了促进模型在临床环境中的应用,最终的预测模型被集成到一个基于Shiny应用程序的web平台中。当提供最终模型中相关特征的值时,该应用程序返回PTC患者中DM的概率。

(如果你需要全文,请在医学论文与统计分析微信公众号后台回复关键词“pdf”。如果您对预测模型感兴趣的话,来看看我们的机器学习与预测模型服务吧,一对一指导!详情可咨询助教,微信号:aq566665)

数据收集与预处理

在这项回顾性研究中,研究团队收集了2013年6月至2023年5月期间,在云南省肿瘤医院(YCH)和昆明医科大学第一附属医院(KMU 1st AH)住院的甲状腺癌患者(≥14岁)的数据。

  • 来自YCH的1430例患者(训练集)中,207例(14%)患者发生DM;

  • 来自KMU 1st AH(验证集)的434例患者中,47例患者(11%)发生DM。

随后,研究者对数据进行预处理。

数据离群值,被定义为高于上四分位数加1.5倍四分位数间距或低于下四分位数减1.5倍四分位数间距的值。

  • 研究者使用箱形图检查连续变量数据的离群值。

  • 为了使每个数据离群点更接近主要数据的分布,每个数据离群点都被替换为两个极限之一。

对于缺失数据研究者使用“mice”包对缺失变量进行多重插补。此外,还对各种缺失值填补方法进行了敏感性分析。

大多数变量的数据分布在训练集和测试集之间具有可比性(大多数P值高于0.05)。

筛选变量

基于整个队列探讨了PTC患者发生DM的独立危险因素。经单因素Logistic回归和多因素logistic回归分析后,最终在整个队列 (训练集 + 测试集)确定了11个与PTC中DM风险独立相关的因素(即年龄、BMI、良性甲状腺疾病、肿瘤大小、RBC计数、MONO计数、PLR、TG水平、TPOAb水平、T分期和N分期)。

接着使用递归特征消除(RFE)法进行变量选择,定每个ML模型的最佳特征子集,以提高模型的预测性能和增加模型的稳定性。

  • RFE作为机器学习(ML)特征选择的主流方法,通过将不重要的特征移除,最终获得最佳特征组合,从而实现最佳模型性能。

  • 在整个RFE过程中,我们使用了10轮10折交叉验证来评估模型的性能,以确保变量选择过程的稳健性和模型的泛化能力

模型的开发与性能比较

研究者采用logistic回归(LR)、决策树(DT)、随机森林(RF)、k近邻(KNN)、支持向量机(SVM)、朴素贝叶斯(NB)、极端梯度增强(XGB)、随机梯度增强(SGBT)和神经网络(NNET)等9种ML模型预测PTC患者DM风险。

这些机器学习模型使用R版本4.3.1和“caret”(版本:6.0.94)包开发。“ caret ”是一个全面的包,为各种ML算法提供了统一的接口。

利用训练函数和相应的方法参数构建模型,即:

  • LR (method = "glm “)

  • DT (method = ”rpart “)

  • RF (method = ”ranger “)

  • SVM (method = ”svmRadial “)

  • KNN (method = ” KNN “)

  • NB (method = ”naive_bayes “)

  • XGB (method = ”xgbTree “)

  • SGBT (method = ”gbm “)

  • NNET (method = ” NNET ")

为了优化预测模型,通过10轮10次交叉验证,结合“caret”包的默认超参数网格搜索,在最优特征子集上获得每个模型的最终超参数(Supplementary Table S5)。

最后,在训练集上使用最优特征子集和最终超参数(基于10轮10次内部交叉验证)对模型进行修正

模型性能比较

采用受试者工作特征曲线下面积(AUC)、敏感性、特异性、阳性预测值(PPV)、阴性预测值(NPV)、准确性、F1评分、Brier评分等常用评价指标评价模型的可靠性。

  • 使用ROC曲线分析评价其鉴别性能,并使用1000倍bootstrap法报告AUC及其偏倚校正的95%可信区间(CI)。

  • Brier评分(范围从0到1)用于计算估计风险与观测风险之间的差值,值越接近0表示校准能力越好,从而评价模型的校准性能

此外,采用Hosmer-Lemeshow检验来评估模型预测概率与观察结果之间的一致性,p值大于0.05通常表明模型与实际数据拟合良好。

对数损失(Log-Loss)用于计算实际标签与预测概率之间的差值,以衡量预测的准确性。

此外,使用校准曲线反映预测概率与实际结果的匹配情况。

采用DeLong检验确定不同模型的AUC值是否存在显著差异

使用综合判别改善指数(IDI)和净重分类改善指数(NRI)来评估新模型相对于基线模型的预测性能提升

进行决策曲线分析DCA以显示在不同阈值下使用模型来评估模型的临床价值的净效益

根据上述评价指标在训练集和测试集中的表现选择最佳的预测模型。

果表明,XGB模型在AUC和特异性方面表现最好,其次是RF和LR。

但在训练集和验证集中,RF模型表现最好。

  • 在训练集[AUC:0.913,95%置信区间(CI)(0.9075-0.9185)]和外部测试集[AUC:0.8996,95% CI(0.8483-0.9509)]中,RF模型准确预测了PTC患者的DM风险;

  • 校准曲线显示RF模型预测风险和观察风险之间高度一致;

  • 在关注PTC的DM部位的敏感性分析中,RF模型在预测“仅肺转移”方面表现出出色的性能,显示出高AUC、特异性、敏感性、F1评分和低Brier评分。

图1 9种机器学习(ML)模型在训练集和测试集中预测甲状腺乳头状癌(PTC)患者远处转移(DM)的性能

(A,B)ROC曲线分析;(C,D)校准曲线分析;(E,F)每个模型的评估度量的平行线图;(G,H)以及每个模型的DCA曲线

综上所述,RF 模型在训练集和测试集中的表现最好,因此被推荐为预测 PTC 中 DM 风险的首选模型,其次是 XGB 模型。

SHAP法进行模型解释

由于临床医生很难接受无法直接解释或根本无法解释的预测模型,我们使用SHAP方法通过计算每个变量对预测的贡献来解释最终模型的输出。这种可解释的方法提供了两种类型的解释:特征级别的模型的全局解释和个体级别的局部解释

全局解释描述了模型的整体功能。
SHAP汇总条形图(图A)所示,使用SHAP平均值来评估特征对模型的贡献,SHAP平均值按降序显示:肿瘤大小、TG水平、TPOAb水平、MLR和年龄是预测模型中最重要的五个特征。

此外,SHAP汇总点图(图B)直观地显示了每个特征对模型预测的影响方向和强度:肿瘤大小大、TG水平高、年龄大、肿瘤分期晚期(T3和T4)等特征显著增加了DM的风险。

SHAP 瀑布图(C)显示了每个特征对使用随机森林 (RF) 模型的第三名患者的预测结果的贡献。

此外,SHAP依赖图(图D)有助于了解单个特征如何影响预测模型的输出。将这11个特征的实际值与SHAP值进行对比,其中SHAP值大于零的特征对应于模型中的正预测。

先前我们简单介绍过如今SHAP在预测模型中的应用,感兴趣的不妨看一下之前的推文:

时代变了,“SHAP” 取代“列线图”,成为预测模型文章标题的重点

构建风险预测工具

为了促进模型在临床环境中的应用,最终的预测模型被集成到一个基于Shiny应用程序的web平台中。通过输入模型所需的11个特征的实际值,应用程序可以自动预测个体PTC患者患DM的风险。

该平台有助于临床医生早期识别高危患者,并为个性化患者治疗计划提供基础。

图2 可预测乳头状甲状腺癌(PTC)远处转移(DM)的网络计算器

闲来郑语

本研究从筛选变量到构建预测模型,再到模型性能评价,以及选择性能最好的模型应用于临床,研究设计流畅又严谨,统计分析方面也非常规范,这也是目前很多机器学习文章的套路,想做机器学习的朋友们可以借鉴!


评论

收银台

订单信息

应付金额 积分

模块介绍

请加我们助教二维码或加入Zstats使用群
Zstats交流群

Zstats交流群

助教二维码

联系助教

选择支付方式

请输入助教告诉您的积分券

如果不填写积分券,将直接使用当前余额支付

正在创建订单...

请稍候,正在为您生成支付订单

支付二维码

请使用扫描二维码完成支付

等待支付中...

二维码获取失败

支付二维码获取失败,请点击重新获取

正在处理余额支付...

请稍候,正在为您完成支付

正在处理充值并支付...

正在使用积分券兑换,然后完成支付 正在使用当前余额完成支付

支付成功!

您的订单已支付完成,页面将在 秒后自动关闭

支付失败

支付过程中出现错误,请重新选择支付方式

平台说明