PLSDA 构建 ROC曲线

来源:互联网 发布:用户软件使用报告 编辑:程序博客网 时间:2024/06/14 05:33

plsda的计算使用R语言caret包中的plsda函数, 对数据进行pls后将回归预测值进行比较得到结果.

PLSDA判别后会有两列(列数等于分类数),常规计算没有使用贝叶斯
第一列的概率使用:
exp(col1_value)/(exp(col1_value)+ exp(col2_value))
第二列的概率使用:
exp(col2_value)/(exp(col1_value)+ exp(col2_value))

我们可以以第一列做为基础, 开始设置阈值, 随着阈值的变化真阳性率与假阳性率发生着变化, 这样就绘制出了ROC曲线.

参考:Scientific Reports 6, Article number: 19903 (2016)
doi:10.1038/srep19903

The prediction accuracy of the PLS-DA classification models was graphically represented using the Receiver Operating Characteristic (ROC) curve, using group probabilities obtained from PLS-DA analysis. The probabilities for each sample add up by definition to 1 (e.g. 0.8 for CIR and 0.2 for CLD). The probabilities can be considered as a range of cut-off for which individual sensitivities and specificities are calculated and represented in the ROC curve. The optimal cut-off is used (here 0.505) to obtain the sensitivity and specificity of the PLS-DA model. The area under the curve (AUC) of the ROC curve is an indicator of predictive performance: a value close to 1 indicates high predictive power of the classification model. The prediction accuracy was also calculated for the remaining 53 CLD patients (i.e. validation set 2).

https://www.researchgate.net/post/How_can_I_generate_a_ROC_curve_to_assess_my_PLS-DA_model
这里也有很多关于plsda绘制roc曲线的讨论.

1 0