You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

导入SMOTE时遇ImportError:无法从sklearn.utils导入parse_version怎么解决?

解决ImportError: cannot import name 'parse_version' from 'sklearn.utils'的问题

这个错误源于imbalanced-learn(即imblearn)与scikit-learn版本不兼容:新版本scikit-learn已将parse_version从sklearn.utils迁移至sklearn.utils.version模块,但旧版imblearn仍在从原路径导入该方法。

以下是具体解决步骤:

  • 查看当前版本
    先确认已安装的imblearn和scikit-learn版本:

    pip show imbalanced-learn scikit-learn
    
  • 升级imbalanced-learn到兼容版本
    优先升级imblearn以适配当前scikit-learn版本,执行命令:

    pip install --upgrade imbalanced-learn
    

    注意:pip安装时的包名是imbalanced-learn,而非imblearn

  • 若升级后仍报错,降级scikit-learn
    如果受依赖限制无法升级imblearn,可降级scikit-learn到0.24.x版本(该版本中parse_version仍在sklearn.utils目录下):

    pip install scikit-learn==0.24.2
    
  • 验证修复
    重新运行导入语句:

    from imblearn.over_sampling import SMOTE
    

    无报错则问题解决。

内容的提问来源于stack exchange,提问作者Aneesh jayakala

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 12:02:32