gpt4 book ai didi

R:xgboost绘制roc曲线

转载 作者:行者123 更新时间:2023-11-30 08:32:00 26 4
gpt4 key购买 nike

绘制 roc 曲线:

library(ROCR)
<data cleaning/scrubbing>
<train data>
.....
.....
rf.perf = performance(rf.prediction, "tpr", "fpr") #for RF
logit.perf = performance (logit.prediction, "tpr", "fpr") #for logistic reg
tree.perf = performance(tree.prediction, "tpr", "fpr") #for cart tree
...
plot(re.perf) #a RF roc curve

如果我想运行 xgboost 分类并随后绘制 roc:目标=“二进制:物流”

我对 xgboost 的参数感到困惑指标“auc”( CRAN manual 第 9 页),它说的是面积。如何用 tpr 和 fpr 绘制曲线进行模型比较?

我尝试在网络和 github 上搜索,最强调的是功能重要性图(针对 xgboost)。

谢谢

最佳答案

先说ROC曲线

The ROC curve is created by plotting the true positive rate (TPR) against the false positive rate (FPR) at various threshold settings.

在 python 中,可以轻松完成:

from sklearn import metrics
def buildROC(target_test,test_preds):
fpr, tpr, threshold = metrics.roc_curve(target_test, test_preds)
roc_auc = metrics.auc(fpr, tpr)
plt.title('Receiver Operating Characteristic')
plt.plot(fpr, tpr, 'b', label = 'AUC = %0.2f' % roc_auc)
plt.legend(loc = 'lower right')
plt.plot([0, 1], [0, 1],'r--')
plt.ylabel('True Positive Rate')
plt.xlabel('False Positive Rate')
plt.gcf().savefig('roc.png')

enter image description here

例如上图中,在一定的阈值下,以假阳性率 0.2 为代价,我们可以获得接近 0.96 - 0.97 的真阳性

A good documentation on ROC

关于R:xgboost绘制roc曲线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33518129/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com