首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >SMOTE -多类

SMOTE -多类
EN

Stack Overflow用户
提问于 2017-03-09 16:29:33
回答 1查看 2.5K关注 0票数 6

我正在应用SMOTE (DMwR包),因为我有一个类不平衡的问题。然而,我有三个类的结果,而不是两个。

该函数正确地对少数类进行过采样,但我没有遵循多数/中间类的行为(即,所有类别都包含不同的样本大小)。

比方说:

代码语言:javascript
代码运行次数:0
运行
复制
library(DMwR)

set.seed(1234)

train = data.frame(group=as.factor(rep(c(1,2,3),c(35,110,220))),
            score=rnorm(365,100))

train_resample <- SMOTE(group ~ ., train, perc.over = 400, perc.under=200)

table(train_resample$group)

#  1   2   3 
# 175  104 176

少数类是有意义的,35+(35*4) = 175。另外,剩余的样本也很清楚,140*200/100 = 280。但是,我不确定这个示例是如何分布在其余类上的。它保留了样本大小的顺序,但可能是随机的。

有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2020-04-03 16:31:31

您可以尝试UBL包中的SmoteClassif()函数。该函数允许您指定要对每个类进行欠采样或重采样的百分比。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42690284

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档