HP_*_*_17 13 python scikit-learn imblearn imbalanced-data
我正在使用 SMOTE 重新采样我的数据(多类)。
sm = SMOTE(random_state=1)
X_res, Y_res = sm.fit_resample(X_train, Y_train)
Run Code Online (Sandbox Code Playgroud)
但是,我收到此属性错误。任何人都可以帮忙吗?
VHS*_*VHS 17
简答
您需要升级scikit-learn到 0.23.1 版。
长答案
最新版本 0.7.0imbalanced-learn似乎对scikit-learnv0.23.1有未公开的依赖性。AttributeError: 'SMOTE' object has no attribute '_validate_data'如果您的scikit-learn值为 0.22 或更低,它会给您。
如果您使用的是Anaconda,安装scikit-learn0.23.1 版本可能会很棘手。conda update scikit-learn可能不会更新scikit-learn0.23 或更高版本,因为此时scikit-learnConda的最新版本是 0.22.1。如果您尝试使用conda install scikit-learn=0.23.1或安装它pip install scikit-learn==0.23.1,您将获得大量的兼容性检查并且安装可能不会很快。因此,scikit-learn在 Anaconda 中安装0.23.1 版本的最简单方法是使用最少的软件包创建一个新的虚拟环境,以便减少或没有冲突问题。然后,在新的虚拟环境中安装scikit-learn0.23.1 版和 0.7.0 版的imbalanced-learn.
conda create -n test python=3.7.6
conda activate test
pip install scikit-learn==0.23.1
pip install imbalanced-learn==0.7.0
Run Code Online (Sandbox Code Playgroud)
最后,您需要在新的虚拟环境中重新安装 IDE 才能使用这些包。
但是,一旦scikit-learn0.23.1 版本在 Conda 中可用并且没有兼容性问题,您就可以直接将其安装在基础环境中。
小智 6
第 1 步- 打开你的 jupyter 笔记本
步骤 2 - 输入 pip install --upgrade scikit-learn
第 3 步- 重新启动内核
按照原样执行所有步骤即可完成!(升级)
| 归档时间: |
|
| 查看次数: |
17664 次 |
| 最近记录: |