如果我在处理不平衡的二元目标变量时使用欠采样来训练模型,那么预测方法会在假设数据集平衡的情况下计算概率。我该如何将这些概率转换为非平衡数据的实际概率?mlr包或其他包中是否实现了转换参数/函数?例如:
a <- data.frame(y=factor(sample(0:1, prob = c(0.1,0.9), replace=T, size=100)))
a$x <- as.numeric(a$y)+rnorm(n=100, sd=1)
task <- makeClassifTask(data=a, target="y", positive="0")
learner <- makeLearner("classif.binomial", predict.type="prob")
learner <- makeUndersampleWrapper(learner, usw.rate = 0.1, usw.cl = "1")
model <- train(learner, task, subset = 1:50)
pred <- predict(model, task, subset = 51:100)
head(pred$data)