开始使用免费开始使用

用于对比逻辑回归模型的 ROC 曲线

在 R 中可以使用 pROC 包轻松绘制 ROC 曲线。让我们看看本课程前面用到的 4 个逻辑回归模型的 ROC 曲线是否存在明显差异。先做个小提示:

  • predictions_logit 包含使用默认 logit 链接函数得到的违约概率(PD)预测,所含变量为 ageemp_catir_catloan_amnt
  • predictions_probit 包含使用 probit 链接函数得到的 PD 预测,所含变量为 ageemp_catir_catloan_amnt
  • predictions_cloglog 包含使用 cloglog 链接函数得到的 PD 预测,所含变量为 ageemp_catir_catloan_amnt
  • predictions_all_full 包含使用默认 logit 链接函数得到的 PD 预测,并包含数据集中全部 7 个变量。

您将先在同一张图上绘制这 4 个模型的 ROC 曲线。随后,再查看曲线下面积。

本练习是课程的一部分

R 中的信用风险建模

查看课程

练习说明

  • 在 R 控制台中加载 pROC 包。
  • 使用函数 roc(response, predictor) 为这 4 个逻辑回归模型构建 ROC 对象。请记住,响应变量是 test_set 中的贷款状态指标,可通过 test_set$loan_status 获取。
  • 使用前一步创建的对象绘制 ROC 曲线。若要在同一张图上绘制全部曲线,对第一条 ROC(ROC_logit)使用 plot(),对另外三个模型使用 [lines()](https://www.rdocumentation.org/packages/graphics/functions/lines 来将 ROC 曲线添加到同一图中)。
  • 使用 col 参数更改曲线颜色:将 ROC_probit 设为 "blue"ROC_cloglog 设为 "red"ROC_all_full 设为 "green"。注意,与视频中的说明相反,x 轴标签是 Specificity,而不是 "1-Specificity",因此该轴从左侧的 1 递减到右侧的 0。
  • 看起来链接函数对这里的 ROC 影响不大,而更好的 ROC 主要来自在模型中纳入更多变量。为更精确地比较 ROC 表现,请查看 AUC,使用函数 auc()

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Load the pROC-package


# Construct the objects containing ROC-information
ROC_logit <- roc(test_set$loan_status, predictions_logit)
ROC_probit <- 
ROC_cloglog <-
ROC_all_full <- 

# Draw all ROCs on one plot
plot(___)
lines(___, col=___)
lines(___, col=___)
lines(___, col=___)

# Compute the AUCs



编辑并运行代码