欢迎访问诺维之舟医学科研平台,我们的课程比丁香园更香!
Language:

课程开发

医学预测模型SCI论文之机器学习算法实操-基于R| 课程介绍

时间:2024-09-24 21:11:40 阅读:31


医学预测模型SCI论文之机器学习算法实操-基于R

诺维医学科研官网:https://www.newboat.top 我们的课程比丁香园更香!

Bilibili:文章对应的讲解视频在此。熊大学习社 https://space.bilibili.com/475774512

微信公众号|Bilibili|抖音|小红书|知乎|全网同名:熊大学习社

医学资源网站,https://med.newboat.top/ ,内有医学离线数据库、数据提取、科研神器等高质量资料库,另有AI账号


课程相关资料:

(1)课程资料包括医学预测模型之机器学习算法应用-从选题到复现全部代码(多个机器学习模型预测和评估、ROC、重要性排序、SHAP解释模型)、课程数据和结果、对标文章、课程讲义、其他精品代码资料等。关注公众号“熊大学习社”,回复“ml2401”,获取课程资料链接。

(2)医学公共数据数据库学习训练营已开班,论文指导精英班学员可获取推荐审稿人信息,欢迎咨询课程助理!

了解详情|医学公共数据库学习训练营


(3)关注熊大学习社|诺维医学。您的一键三连是我最大的动力。

0 课程介绍

0.1 课程背景

聚焦CHARLS数据分析常见问题

  • (1)医学预测模型类SCI论文是什么样子的?

预测结局的特性分为:二分类、多分类、连续数据。本课程模拟选题是抑郁症预测模型,是二分类。

通常步骤:因子纳入;多个预测模型;ROC-AUC图;列线图;决策曲线;校正曲线;重要性排序;

  • (2)数据怎么准备?

自变量有连续变量和分类变量。分类变量转换成独热编码。

结局变量是二分类变量,保持不变。

  • (3)机器学习的R包有哪些?

机器学习框架,整合了多个机器学习包,提供统一的接口进行模型构建、训练和验证

tidymodels包|mlr3verse包|h2o等

  • (4)数据量(s)多少合适?变量(v)多少适合?有什么要求?

s > 11*v。比如3000个样本,其中300个患者。这里的话,300/11,变量最多在27。样本量较小时要注意这个问题。

  • (5)变量怎么选取?

逻辑回归,先单后多;Lasso回归。

  • (6)样本怎么选取?10500个样本,其中10000个正常,500个患者。需要处理吗?怎么处理?

这是数据平衡问题。首先,按照8:2分成训练集和测试集。然后对训练集(估计8000个正常和400个患者),选择上采样、下采样、合成样本、调整权重等方法。如合成采样,得到8000个正常和8000个患者。

  • (7)分类数据独热编码后参与预测模型,数据列的重要性如何解释,如Current_smoker_Yes和Current_smoker_No?

Current_smoker_Yes 的正 SHAP 值表明,吸烟者更有可能被预测为高风险抑郁症患者。同时,**Current_smoker_No** 也为正 SHAP 值,意味着不吸烟者对某些个体来说也可能增加预测风险,这可能与该特征和其他变量(如健康状况、生活习惯等)的相互作用有关。

当然,假设, Current_smoker_Yes 的 SHAP 值为正,则表示吸烟者更有可能被模型预测为抑郁症患者。而如果 Current_smoker_No 的 SHAP 值为负,则表明不吸烟与较低的抑郁症风险相关。这种对比体现了吸烟行为与抑郁症之间的相关性。

  • (8)机器学习算法除了课程讲到的9种还有哪些,能在tidymodels框架下使用吗?

tidymodels 通过 parsnip 包提供了统一的模型接口,并整合了众多 R 包,如 rangerglmnetxgboostkeras 等,支持多种机器学习算法。其覆盖的算法从传统的线性模型(线性回归lm、弹性网络glmnet、逻辑回归glm)、树模型(决策树、随机森林、梯度提升树、极端随机树、CART分类与回归)、集成学习模型(AdaBoost、XGBoost、LightGBM、Bagging)到神经网络(单层神经网络nnet、多层感知器keras)、贝叶斯模型、时间序列等,能够满足多种机器学习任务的需求。

  • (9)机器学习算法选取变量的共线性检查如何进行。

变量初选之后,要进行共线性检查VIF。

0.2 课程目标

对标一篇临床预测模型文章,进行模拟选题,复现医学预测模型的全流程研究过程。

  1. 对标论文:Application of Machine Learning Algorithms to Predict Acute Kidney Injury in Elderly Orthopedic Postoperative Patients (机器学习算法在老年骨科术后患者急性肾损伤预测中的应用)

对标论文的研究要点:(1)9种机器学习(XGBoost|Logistic|LightGBM|Random Forest|AdaBoost|Gaussian NB|MLP|SVM|KNN)选优;(2)基线表(训练集和验证集,P>0.05才好);(3)ROC曲线(9种;分训练集和验证集);(4)重要性排序(Random Forest);(5)逻辑回归(先单后多,训练集),这是关联性分析的常用方法;(6)列线图和校正曲线。

  1. 模拟选题:机器学习算法在美国人群抑郁症预测中的应用:NHANES 2009-2018

具体的研究思路:数据准备+机器学习算法实操+各模型结果对比。

0.3 课程设计

总课时约3小时。具体安排如下:

课程章节内容简介时间
0 课程介绍(25min)

0.1 课程背景带着问题去学习:10个问题。5min
0.2 课程目标对标文章,模拟选题,确定研究的内容。5min
0.3 课程设计课程章节介绍和分布5min
0.4 机器学习预测模型研究范式(1)研究结果图表
(2)评级指标。
(3)混淆矩阵。
10min
1 数据准备(35min)

1.1 变量选取(1)围绕研究对象,分类确定具体的变量名。
(2)代码实操,数据提取。
10min
1.2 基线表(抑郁症)(1)compareGroups包方法
(2)代码实操,数据合并。
10min
1.3 数据拆分和平衡处理(1)训练集和测试集划分。
(2)样本不平衡问题处理-基于上采样或合成采样smote。
(3)代码实操,数据拆分和平衡处理。
10min
1.4 基线表(训练集和测试集)(1)compareGroups包方法
(2)代码实操,数据合并。
5min
2 机器学习算法实操(70min)

2.1 Decision tree 决策树(1)Decision tree 决策树的知识讲解。
(2)代码实操。
(3)结果解读与论文撰写。
30min
2.2 Random forest 随机森林同上5min
2.3 XGBoost同上5min
2.4 弹性网络(含Lasso和岭回归)同上5min
2.5 SVM 支持向量机同上5min
2.6 MLP 单隐藏神经网络同上5min
2.7 Logistic regression 逻辑回归同上5min
2.8 LightGBM同上5min
2.9 KNN K近邻同上5min
3 各模型结果对比(45min)

3.1 各模型评价指标平行线图(1)各模型评价指标平行线图的知识讲解。
(2)代码实操。
(3)结果解读与论文撰写。
5min
3.2  各模型在训练集的误差指标图同上5min
3.3 各模型在测试集的误差指标图同上5min
3.4 各模型在训练集的ROC图同上同上5min
3.5 各模型在测试集的ROC图同上5min
3.6 各模型在测试集上的校准曲线同上5min
3.7 各模型在测试集上的DCA决策曲线同上5min
3.8  各模型交叉验证的各折指标点线图同上5min
3.9 各模型交叉验证的指标平均值图(带上下限)同上5min
4 课程小结(5min)(1)课程小结。
(2)学习扩展资料分享。
5min

0.4 机器学习预测模型研究范式

0.4.1 研究结果图表

基线2表(抑郁症;训练集和测试集)、单个模型4图(Figure 1 变量重要性排序;Figure 2 训练集和测试集ROC曲线;Figure 3 交叉验证结果;Figure 4 SHAP模型解释全变量)、多模型对比9图

0.4.2 评价指标

这是一个机器学习模型的评估结果,包含了一些常用的分类指标。这些指标的计算方法、含义以及它们的重要性介绍如下:

  • Accuracy (准确率): 计算方法:(TP + TN) / (TP + TN + FP + FN)含义:预测正确的样本占总样本的比例。适合样本分布较为均衡的情况。
  • Kappa (Cohen's Kappa, 卡帕系数): 计算方法:(po - pe) / (1 - pe),其中 po 是观测的准确率,pe 是随机一致的概率。含义:考虑了随机猜测因素的分类一致性指标,适合于评估分类器的预测性能。
  • Sensitivity (sens, Recall, 灵敏度/召回率): 计算方法:TP / (TP + FN)含义:在所有实际为正的样本中,正确预测为正的比例。衡量模型识别正样本的能力。
  • Specificity (spec, 特异性): 计算方法:TN / (TN + FP)含义:在所有实际为负的样本中,正确预测为负的比例。衡量模型识别负样本的能力。
  • Positive Predictive Value (PPV, 精确率, precision): 计算方法:TP / (TP + FP)含义:在所有预测为正的样本中,实际为正的比例。衡量预测为正的准确性。
  • Negative Predictive Value (NPV, 负预测值): 计算方法:TN / (TN + FN)含义:在所有预测为负的样本中,实际为负的比例。衡量预测为负的准确性。
  • MCC (Matthews Correlation Coefficient, 马修斯相关系数): 计算方法:(TP * TN - FP * FN) / sqrt((TP + FP) * (TP + FN) * (TN + FP) * (TN + FN))含义:衡量二分类问题中分类的质量,值在 -1 到 +1 之间,+1 表示完美预测,0 表示随机预测,-1 表示完全错误的预测。
  • J_index (Youden's J Index, 约登指数): 计算方法:Sensitivity + Specificity - 1含义:在灵敏度和特异性之间寻找平衡,值越高,分类器的性能越好。
  • Balanced Accuracy (平衡准确率): 计算方法:(Sensitivity + Specificity) / 2含义:在数据不平衡时,比传统的准确率更可靠的度量。
  • Detection Prevalence (检测流行率): 计算方法:(TP + FP) / (TP + TN + FP + FN)含义:被分类器预测为正的比例。
  • Precision (精确率): 计算方法:TP / (TP + FP)含义:与 PPV 相同,在所有预测为正的样本中,实际为正的比例。
  • Recall (召回率, 灵敏度): 计算方法:TP / (TP + FN)含义:与 Sensitivity 相同,在所有实际为正的样本中,正确预测为正的比例。
  • F-measure (F1-score, F值): 计算方法:2 * (Precision * Recall) / (Precision + Recall)含义:精确率和召回率的调和平均值,权衡了这两个指标。
  • ROC AUC (Area Under the Receiver Operating Characteristic Curve, 曲线下面积): 计算方法:ROC 曲线下的面积。含义:衡量分类器区分正负样本的能力,值在 0.5 到 1 之间,越接近 1 表示性能越好。

在评价机器学习模型的表现时,指标的选择取决于具体问题和应用场景。以下是一些指导原则:

  • 不平衡数据集Balanced AccuracyMCCF-measure 和 ROC AUC 是更重要的指标。它们考虑了类别不平衡的问题。
  • 考虑正样本检测能力Recall(灵敏度)和 F-measure 重要,用于关注召回率的应用,如医疗诊断。
  • 考虑负样本检测能力Specificity 重要,在寻找负样本的场景中,如垃圾邮件过滤。
  • 总体性能Accuracy 是一个基本的指标,但在类别不平衡时可能具有误导性。在这些情况下,ROC AUC 和 MCC 是更好的选择。

总结来说,在不平衡数据集中,ROC AUCMCCBalanced AccuracyF-measure 和 Recall 是更重要的指标,而在平衡数据集的情况下,Accuracy 和 Precision 也具有很高的参考价值。

0.4.3 混淆矩阵

【TP、TN、FP、FN超级详细解析】https://blog.csdn.net/dongjinkun/article/details/109899733

课程小结

(1)课程资料包括医学预测模型之机器学习算法应用-从选题到复现全部代码(多个机器学习模型预测和评估、ROC、重要性排序、SHAP解释模型)、课程数据和结果、对标文章、课程讲义、其他精品代码资料等。关注公众号“熊大学习社”,回复“ml2401”,获取课程资料链接。

(2)医学公共数据数据库学习训练营已开班,论文指导精英班学员可获取推荐审稿人信息,欢迎咨询课程助理!

了解详情|医学公共数据库学习训练营

(3)数据提取和数据分析定制,具体扫码咨询课程助理。


上一篇:MIMIC数据库课程Day4: SCI论文复现完结篇 下一篇:没有了!