引言
对训练集和验证集进行标准化 结合使用网格搜索交叉验证(CV)和手动微调,对五种机器学习算法进行了超参数选择
主要使用ROC曲线的AUC综合评估各模型性能
主要使用SHAP算法对特征进行识别
如果你需要全文,请公众号后台回复关键词“pdf”。如果您需要统计服务,郑老师的统计团队可以帮忙!详情可咨询助教,微信号:aq566665
数据收集与处理
在该项研究中,研究团队纳入了2018至2023年在厦门大学第一附属医院神经内科和心脏病科的住院患者。筛选了患者入院后首次检查的血常规和生化数据作为模型构建的特征,健康人则选择每年首次体检的数据。
去除缺失值率超50%的特征后,血常规筛选出22个特征,生化测试数据则筛选出28个。为确保每种CVD疾病的样本量足够,删除了样本少于100例的CVD疾病,同时删除了缺失特征比例大于50%的样本。
最终,使用25,794名健康人和32,822名患者构建模型。
图1 研究流程
机器学习算法的调整
五种机器学习算法超参数选择:
针对LR调整的参数为C、max_iter、penalty和solver; 对于RF,参数为max_depth、min_samples_leaf和n_estimators; 对于SVM,调整后的参数为C、gamma和kernel; 对于XGBoost,参数为colsample_bytree、gamma、learning_rate、max_depth、n_estimators和子样本; 对于DNN,调整后的参数包括激活、层数和每层神经元数。
模型性能的评价
图2 基于临床血液样本的CVD疾病预测模型构建
(A) 69个CVD疾病预测模型的AUC
五种机器学习方法使用不同数据的ROC曲线:(B)血常规联合生化检测;(C)血常规;(D)生化检测
为了进一步细分各种心血管疾病,研究团队基于XGBoost构建了69个模型。
结果表明,这些模型的AUC范围为0.5256至0.9267。其中,与其他CVD模型相比,区分扩张型心肌病(DCM)模型的性能最佳(AUC:0.9267)。
DCM的诊断主要取决于超声心动图和心脏磁共振,而不是血常规和生化检测。
图3 69个模型的AUC值
识别区分各心血管疾病的特异性指标
由于机器学习的黑箱原理,很难解释每个特征的贡献,因此在本研究中引入了SHAP算法。
什么是黑箱原理?
假设你有一个黑箱,放进去肉(输入)会出来香肠(输出),放进去面粉(输入)会出来馒头(输出),虽然你不知道这个过程是如何发生的,但可以通过不断输入-输出总结出规律,或者说是模型。
黑箱理论也是如此,它是把研究对象作为一个未知的黑箱,通过观察对象的输入、输出,以此来认识对象的功能特性,以及探索其内部结构和机理的一种科学方法。
SHAP算法如何运用?
就像我们不知道黑箱内部如何运作,那些机器学习模型内部运作机制同样复杂且难以解释,Shap可以量化特征对预测结果贡献。
SHAP算法通过分析所有可能的特征子集组合来评估每个特征对预测结果的影响,这意味着Shap值可以帮助我们理解模型是如何决策,即何种特征对预测结果的影响最为显著。
在该项研究中,每个特征的SHAP值由shap python包(版本0.44.0)计算。
图4 使用不同数据建立CVD疾病预测模型的前20个特征
红色代表高值,蓝色代表低值。如果SHAP值为正,则表示该特征对模型的积极影响,反之亦然。所有特性都按照重要性从上到下排列。
郑“叫兽”有话说
公众号后台回复关键词“pdf”,即可获取原文!更多关于临床预测模型与机器学习统计服务,请联系郑老师团队,助教微信:aq566665。
关于郑老师统计团队及公众号
③医学数据库NHANES、GBD、孟德尔随机化等挖掘发表级数据
④预测模型、GBD、NHANES医学数据库挖掘1对1 R语言指导