时间:2024-09-24 21:11:40 阅读:31
“
诺维医学科研官网:https://www.newboat.top 我们的课程比丁香园更香!
Bilibili:文章对应的讲解视频在此。熊大学习社 https://space.bilibili.com/475774512
微信公众号|Bilibili|抖音|小红书|知乎|全网同名:熊大学习社
医学资源网站,https://med.newboat.top/ ,内有医学离线数据库、数据提取、科研神器等高质量资料库,另有AI账号
课程相关资料:
(1)课程资料包括医学预测模型之机器学习算法应用-从选题到复现全部代码(多个机器学习模型预测和评估、ROC、重要性排序、SHAP解释模型)、课程数据和结果、对标文章、课程讲义、其他精品代码资料等。关注公众号“熊大学习社”,回复“ml2401
”,获取课程资料链接。
(2)医学公共数据数据库学习训练营已开班,论文指导精英班学员可获取推荐审稿人信息,欢迎咨询课程助理!
(3)关注熊大学习社|诺维医学。您的一键三连是我最大的动力。
聚焦CHARLS数据分析常见问题
预测结局的特性分为:二分类、多分类、连续数据。本课程模拟选题是抑郁症预测模型,是二分类。
通常步骤:因子纳入;多个预测模型;ROC-AUC图;列线图;决策曲线;校正曲线;重要性排序;
自变量有连续变量和分类变量。分类变量转换成独热编码。
结局变量是二分类变量,保持不变。
机器学习框架,整合了多个机器学习包,提供统一的接口进行模型构建、训练和验证
tidymodels包|mlr3verse包|h2o等
s > 11*v。比如3000个样本,其中300个患者。这里的话,300/11,变量最多在27。样本量较小时要注意这个问题。
逻辑回归,先单后多;Lasso回归。
这是数据平衡问题。首先,按照8:2分成训练集和测试集。然后对训练集(估计8000个正常和400个患者),选择上采样、下采样、合成样本、调整权重等方法。如合成采样,得到8000个正常和8000个患者。
Current_smoker_Yes
的正 SHAP 值表明,吸烟者更有可能被预测为高风险抑郁症患者。同时,**Current_smoker_No
** 也为正 SHAP 值,意味着不吸烟者对某些个体来说也可能增加预测风险,这可能与该特征和其他变量(如健康状况、生活习惯等)的相互作用有关。
当然,假设, Current_smoker_Yes
的 SHAP 值为正,则表示吸烟者更有可能被模型预测为抑郁症患者。而如果 Current_smoker_No
的 SHAP 值为负,则表明不吸烟与较低的抑郁症风险相关。这种对比体现了吸烟行为与抑郁症之间的相关性。
tidymodels
通过 parsnip
包提供了统一的模型接口,并整合了众多 R 包,如 ranger
, glmnet
, xgboost
, keras
等,支持多种机器学习算法。其覆盖的算法从传统的线性模型(线性回归lm、弹性网络glmnet、逻辑回归glm)、树模型(决策树、随机森林、梯度提升树、极端随机树、CART分类与回归)、集成学习模型(AdaBoost、XGBoost、LightGBM、Bagging)到神经网络(单层神经网络nnet、多层感知器keras)、贝叶斯模型、时间序列等,能够满足多种机器学习任务的需求。
变量初选之后,要进行共线性检查VIF。
对标一篇临床预测模型文章,进行模拟选题,复现医学预测模型的全流程研究过程。
对标论文的研究要点:(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)列线图和校正曲线。
具体的研究思路:数据准备+机器学习算法实操+各模型结果对比。
总课时约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 |
基线2表(抑郁症;训练集和测试集)、单个模型4图(Figure 1 变量重要性排序;Figure 2 训练集和测试集ROC曲线;Figure 3 交叉验证结果;Figure 4 SHAP模型解释全变量)、多模型对比9图
这是一个机器学习模型的评估结果,包含了一些常用的分类指标。这些指标的计算方法、含义以及它们的重要性介绍如下:
(TP + TN) / (TP + TN + FP + FN)
含义:预测正确的样本占总样本的比例。适合样本分布较为均衡的情况。(po - pe) / (1 - pe)
,其中 po
是观测的准确率,pe
是随机一致的概率。含义:考虑了随机猜测因素的分类一致性指标,适合于评估分类器的预测性能。TP / (TP + FN)
含义:在所有实际为正的样本中,正确预测为正的比例。衡量模型识别正样本的能力。TN / (TN + FP)
含义:在所有实际为负的样本中,正确预测为负的比例。衡量模型识别负样本的能力。TP / (TP + FP)
含义:在所有预测为正的样本中,实际为正的比例。衡量预测为正的准确性。TN / (TN + FN)
含义:在所有预测为负的样本中,实际为负的比例。衡量预测为负的准确性。(TP * TN - FP * FN) / sqrt((TP + FP) * (TP + FN) * (TN + FP) * (TN + FN))
含义:衡量二分类问题中分类的质量,值在 -1 到 +1 之间,+1 表示完美预测,0 表示随机预测,-1 表示完全错误的预测。Sensitivity + Specificity - 1
含义:在灵敏度和特异性之间寻找平衡,值越高,分类器的性能越好。(Sensitivity + Specificity) / 2
含义:在数据不平衡时,比传统的准确率更可靠的度量。(TP + FP) / (TP + TN + FP + FN)
含义:被分类器预测为正的比例。TP / (TP + FP)
含义:与 PPV 相同,在所有预测为正的样本中,实际为正的比例。TP / (TP + FN)
含义:与 Sensitivity 相同,在所有实际为正的样本中,正确预测为正的比例。2 * (Precision * Recall) / (Precision + Recall)
含义:精确率和召回率的调和平均值,权衡了这两个指标。在评价机器学习模型的表现时,指标的选择取决于具体问题和应用场景。以下是一些指导原则:
Balanced Accuracy
、MCC
、F-measure
和 ROC AUC
是更重要的指标。它们考虑了类别不平衡的问题。Recall
(灵敏度)和 F-measure
重要,用于关注召回率的应用,如医疗诊断。Specificity
重要,在寻找负样本的场景中,如垃圾邮件过滤。Accuracy
是一个基本的指标,但在类别不平衡时可能具有误导性。在这些情况下,ROC AUC
和 MCC
是更好的选择。总结来说,在不平衡数据集中,ROC AUC
、MCC
、Balanced Accuracy
、F-measure
和 Recall
是更重要的指标,而在平衡数据集的情况下,Accuracy
和 Precision
也具有很高的参考价值。
【TP、TN、FP、FN超级详细解析】https://blog.csdn.net/dongjinkun/article/details/109899733
(1)课程资料包括医学预测模型之机器学习算法应用-从选题到复现全部代码(多个机器学习模型预测和评估、ROC、重要性排序、SHAP解释模型)、课程数据和结果、对标文章、课程讲义、其他精品代码资料等。关注公众号“熊大学习社”,回复“ml2401
”,获取课程资料链接。
(2)医学公共数据数据库学习训练营已开班,论文指导精英班学员可获取推荐审稿人信息,欢迎咨询课程助理!
(3)数据提取和数据分析定制,具体扫码咨询课程助理。