ImportError:无法从“sklearn.utils.validation”导入名称“_deprecate_positional_args”
Posted
技术标签:
【中文标题】ImportError:无法从“sklearn.utils.validation”导入名称“_deprecate_positional_args”【英文标题】:ImportError: cannot import name '_deprecate_positional_args' from 'sklearn.utils.validation' 【发布时间】:2020-10-19 19:23:00 【问题描述】:当我尝试从 sklearn.utils.validation' 导入 deprecate_positional_args 函数时,我收到了这个导入错误:
ImportError: cannot import name '_deprecate_positional_args' from 'sklearn.utils.validation'
scikit-learn 版本为 0.21.3
【问题讨论】:
我遇到了同样的错误。你解决了吗? 【参考方案1】:在 Jupyter 环境中运行时,我遇到了同样的错误。通过运行!pip install -U imbalanced-learn
安装imbalanced-learn
然后重新启动运行时已解决。重新启动运行时是这里的关键。如果不重新启动,错误不会消失。
【讨论】:
重新启动确实是我在尝试解决此问题时所缺少的。谢谢。 无需其他安装 - 只需重新启动!谢谢!【参考方案2】:我通过升级scikit-learn解决了这个问题:
pip install --upgrade scikit-learn
【讨论】:
【参考方案3】:这是由用于训练模型和加载模型的 scikit-learn 版本之间的不匹配造成的。使用 sklearn.__version__
检查您的 scikit-learn 版本,并使用 pip install --upgrade scikit-learn==<version_number>
升级/降级其中一个软件包。
【讨论】:
【参考方案4】:如果您使用的是 Python 3.7 或更新版本,我认为这里的一些答案会起作用。由于工作场所的限制,我无法升级到更新的 Python 版本,而对我有用的是降级到 scikit-learn 0.23。
你可以通过命令来实现
pip install scikit-learn==0.23
或者,如果您使用的是 Jupyter Notebook:
import sys
!sys.executable -m pip install scikit-learn==0.23
【讨论】:
以上是关于ImportError:无法从“sklearn.utils.validation”导入名称“_deprecate_positional_args”的主要内容,如果未能解决你的问题,请参考以下文章
python aiorpc:“ImportError:无法从'aiorpc.server'导入名称'RPCServer'”
ImportError:无法从“变压器”导入名称“AutoModelWithLMHead”
ImportError:无法从“matplotlib.mlab”导入名称“PCA”
ImportError:无法从“sklearn.externals”导入名称“joblib”