分类模型的效果度量---R语言实现

分类模型的效果度量---R语言实现

之前我们介绍了连续型响应变量模型的评估方法(有包括RMSE,R^2之类的评估指标),这次我们介绍一下分类型响应变量模型的评估方法。

目    录

一、分类模型介绍

二、混淆矩阵

三.接受者操作特征(ROC)曲线

四、提升图

五、R语言实现

 


一、分类模型介绍

 分类模型一般产生两种类型的预测。和回归模型类似,分类模型产生一个连续数值预测,该预测通常是概率的形式(即任意样本从属于不同类别的概率预测值均在01之间,合计为1)。


二、混淆矩阵

 评估分类模型性能一个常用的方法是混淆矩阵(一张简单的观测类和预测类的交叉表)。如表1.1所示:

                               表1.1 二分类问题的混淆矩阵

        Table 1.1 The confusion matrix of binaryclassification problem

预测

观测

发生

不发生

发生

TP

FP

不发生

FN

TN

注:表格单元分别代表真阳性(TP),假阳性(FP),假阴性(FN),真阴性(TN)的数量。

      模型的准确度稳定在一个水平,通常会在灵敏度和特异度之间做一个权衡。一般而言,增加灵敏度会使特异度下降。能同时反应假阳性率和假阴性率的指标有Youden指数

  • 3
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用mlr包创建xgboost分类模型的步骤如下: 首先,需要导入所需的包和数据。导入mlr和xgboost这两个包,然后加载所需的数据集。 接下来,创建一个任务(Task),用于定义问题的类型和目标变量。 然后,定义一个学习者(Learn)。在这里,我们选择xgboost的学习者,为此使用makeLearner函数,并指定所需的参数。 接下来,我们可以定义一个参数空间(Parameter Space),以便在超参数调优过程中搜索最佳的超参数组合。这可以通过makeParamSet函数来完成,该函数允许我们指定每个超参数的范围和类型。 现在,我们可以创建一个交叉验证对象(cv),以便在训练过程中评估模型的性能。通过makeResampleDesc函数,我们可以选择交叉验证的类型和次数。 接下来,我们可以使用mlr的调参函数tuneParams来执行网格搜索和交叉验证。该函数允许我们指定要优化的性能度量、学习者、参数空间和交叉验证对象。调参函数将尝试不同的超参数组合,并使用交叉验证来评估每个组合的性能。 最后,我们可以使用tuneResult函数获取调参结果,并找到具有最佳性能的超参数组合。该函数将返回每个超参数组合的性能度量和参数值。 综上所述,使用mlr包可以方便地创建xgboost分类模型,并使用网格搜索和交叉验证来获取最佳超参数组合。以上所述的过程可以用以下代码实现: ```R # 导入所需包和数据 library(mlr) library(xgboost) # 加载数据集 data(iris) # 创建任务 task <- makeClassifTask(data = iris, target = "Species") # 定义学习者 lrn <- makeLearner("classif.xgboost", predict.type = "response") # 定义参数空间 param <- makeParamSet( makeNumericParam("eta", lower = 0.01, upper = 0.1), makeNumericParam("max_depth", lower = 1, upper = 10), makeNumericParam("gamma", lower = 0, upper = 1) ) # 创建交叉验证对象 cv <- makeResampleDesc("CV", iters = 5) # 执行网格搜索和交叉验证 result <- tuneParams( learner = lrn, task = task, resampling = cv, measure = acc, par.set = param, control = makeTuneControlRandom(maxit = 10) ) # 获取调参结果 best_params <- getBestPars(result) ``` 这样,我们就可以使用mlr包创建xgboost分类模型,并使用网格搜索和交叉验证来获取最佳的超参数组合。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值