我想使用来自不平衡学习模块的RandomOverSampler函数对两个以上类的数据进行过采样。下面是我的代码,有三个类:

import numpy as np
from imblearn.over_sampling import RandomOverSampler

data = np.random.randn(30,5)
label = np.random.randint(3, size=30)

ros = RandomOverSampler(random_state=3)
data_res, label_res = ada.fit_sample(data, label)

运行后,将返回以下警告:
用户警告:目标类型应为二进制。warnings.warn('
目标类型应为二进制。“)
但是documentation说:
笔记
支持多类重采样。
我是不是缺了什么东西用在多类案件上了?如果这只针对二进制类,是否还有其他库或模块支持多类过采样?

最佳答案

我昨天也面临同样的情况,
我用conda安装了这个库,
我找到了文件->base.py
它与github上的最新版本有所不同。
所以我用github克隆了最新版本
https://github.com/scikit-learn-contrib/imbalanced-learn
然后,
一切都好!
你可以用多类井

关于python - 使用imblearn对多类数据进行过采样,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45527427/

10-10 08:08