如何在gbm包中定义权重&类不平衡数据集的kappa统计量(gbm)

时间:2015-08-07 10:08:30

标签: r metrics gbm

我想找到一种方法来为插入符号包中的gbm定义权重。 “caret”包的“train”函数中有一个参数“weights”,但描述中写着“此参数只会影响允许大小写权重的模型”。根据我的理解,“gbm”确实支持定义权重,但我不知道定义权重的格式。它只是c(1,10) - 其中1是多数类,10是少数类?

第二个问题是关于Kappa统计数据。我读到Kappa对于类不平衡数据集来说是一个更好的性能指标,但却无法理解。我将理解为什么Kappa与类别不平衡数据集的ROC相比是一个更好的性能指标的一些指导。

感谢。

2 个答案:

答案 0 :(得分:1)

据我所知,gbm确实支持大小写权重,权重应该是数据帧长度的向量。如果您只使用两个课程,我相信您将 使用ROC。我不确定我是否有资格回答有关ROC与Kappa的问题,但here是2013年的一篇论文,研究了几个关于现实世界数据的指标的表现。一般的消失似乎是虽然kappa可能受到歪斜的影响(ROC似乎相对免疫),但ROC往往掩盖了糟糕的表现。

答案 1 :(得分:0)

在此article中,有一个使用weights的示例。 在你的情况下,它将类似于

data$weights <- ifelse(data$class == "major", 1, 10)

然后使用此列作为权重。