我有 Kaggle 实践竞赛中的房屋数据,我正在使用 rpart 训练一个简单的第一个模型来预测销售价格。
该模型无法正确识别销售状况异常或预付款的销售。因此,我想增加这个在模型中显然被忽视的变量的重要性。
我假设这是通过使用“权重”参数来完成的,但如何使用该参数?如何确定我想要哪些变量具有更高的权重?
从文档中:
重量
可选外壳重量。
成本
非负成本向量,模型中的每个变量都有一个非负成本向量。所有变量默认为 1。这些是考虑分割时要应用的缩放比例,因此变量分割的改进除以其成本来决定选择哪个分割。
权重针对行(例如,为较小的类别赋予更高的权重),成本针对列。
应用权重参数的示例用法(不一定是定义权重的最佳方法):
positiveWeight = 1.0 / (nrow(subset(training, Y == TRUE)) / nrow(training))
negativeWeight = 1.0 / (nrow(subset(training, Y != TRUE)) / nrow(training))
modelWeights <- ifelse(training$Y== TRUE, positiveWeight, negativeWeight)
dtreeModel <- rpart(predFormula, training, weights = modelWeights)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9463 次 |
| 最近记录: |