从 imblearn 导入 RUSBoostClassifier 的问题

Problem with importing RUSBoostClassifier from imblearn

我无法在 this example

之后导入 RUSBoostClassifier
from imblearn.ensemble import RUSBoostClassifier

我收到以下错误:

ImportError                               Traceback (most recent call last)
<ipython-input-12-d0ff5157a81a> in <module>
----> 1 from imblearn.ensemble import RUSBoostClassifier
  2 from sklearn.datasets import make_classification
  3 
  4 X, y = make_classification(n_samples=1000, n_classes=3,
  5                            n_informative=4, weights=[0.2, 0.3, 0.5],

ImportError: cannot import name 'RUSBoostClassifier'

我不明白为什么!我可以轻松地使用 imblearn 中的其他模块,例如

from imblearn.under_sampling import RandomUnderSampler

from imblearn.over_sampling import SMOTE 

我用的是Jupyter笔记本,Python版本是3.6.6。我已经更新了 sklearn 包并在 link.

之后重新安装了 imblearn 包

有没有人知道如何解决这个问题?或者有直接在代码中使用此 class(源代码)的想法?

问题是 imblearn 包的版本。 0.4.3 版本支持 imblearn 的新模块,例如 RUSBoostClassifierBalancedRandomForestClassifierimblearn 包的版本可以用 !pip list 检查(感谢@desertnaut)。如果您使用的是旧版本,请将其完全删除(重新安装 imblearn 实际上对我没有帮助)。之后按照 this instruction 并在agin中安装它。在这种情况下,最新版本的 imblearn 将被添加到您的 anaconda 环境中。