【问题标题】:lazypredict.Supervised.LazyClassifier. ImportError: Cannot import name '_raise_dep_warning_if_not_pytest' from 'sklearn.utils.deprecation'lazypredict.Supervised.LazyClassifier。 ImportError:无法从“sklearn.utils.deprecation”导入名称“_raise_dep_warning_if_not_pytest”
【发布时间】:2021-07-22 02:12:08
【问题描述】:

我试过了:

from lazypredict.Supervised import LazyClassifier

但得到以下回溯:

---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-1-f518cae57501> in <module>
     10 from sklearn.linear_model import LogisticRegression
     11 from sklearn.ensemble import RandomForestClassifier
---> 12 from lazypredict.Supervised import LazyClassifier
     13 from sklearn.model_selection import GridSearchCV
     14 from sklearn.metrics import accuracy_score

~\AppData\Roaming\Python\Python38\site-packages\lazypredict\Supervised.py in <module>
     14 from sklearn.preprocessing import StandardScaler, OneHotEncoder, OrdinalEncoder
     15 from sklearn.compose import ColumnTransformer
---> 16 from sklearn.utils.testing import all_estimators
     17 from sklearn.base import RegressorMixin
     18 from sklearn.base import ClassifierMixin

S:\anaconda\lib\site-packages\sklearn\utils\testing.py in <module>
      5 from . import _testing  # type: ignore
      6 from ..externals._pep562 import Pep562
----> 7 from ..utils.deprecation import _raise_dep_warning_if_not_pytest
      8 
      9 deprecated_path = 'sklearn.utils.testing'

ImportError: cannot import name '_raise_dep_warning_if_not_pytest' from 'sklearn.utils.deprecation' (S:\anaconda\lib\site-packages\sklearn\utils\deprecation.py)

我正在使用 Jupyter 笔记本,并且已经尝试升级 scikit-learn。

【问题讨论】:

  • LazyClassifier 是 3rd 方包 (github.com/shankarpandala/lazypredict),它不是从 scikit-learn 导入的。
  • 你运行的是什么版本? (例如:pip freeze | grep "scikit-learn 和 pip freeze | grep lazypredict 的输出是什么)

标签: machine-learning scikit-learn classification


【解决方案1】:

这很可能是由lazypredict 和scikit-learn 的不兼容版本引起的。根据当前的 LazyPredict 需求文件,它需要scikit-learn==0.23.1。

这应该通过以下方式解决:

pip uninstall scikit-learn -y
pip install scikit-learn==0.23.1

【讨论】:

  • 我实际上不得不再次安装lazypredict。现在可以了。如您所说,可能是因为它们的两个版本不兼容。非常感谢!
【解决方案2】:

如果它对其他人有帮助,上述安装 scikit-learn 版本 0.23.1 的解决方案对我不起作用。我正在使用 Anaconda 并执行了conda update --all,然后运行了conda install scikit-learn-intelex,之后导入对我有用。

【讨论】:

    【解决方案3】:

    我的错误通过这样做解决了:

    !pip uninstall scikit-learn -y
    !pip install scikit-learn==0.24
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-01-22
      • 2021-06-30
      • 2020-10-19
      • 2018-08-13
      • 2015-01-26
      • 2020-10-10
      • 2020-02-12
      相关资源
      最近更新 更多