我在Anaconda Jupyter笔记本平台上使用python 3.6。我的电脑使用win 8.1作为操作系统。
我尝试使用以下代码行从sklearn导入PCA:
import sklearn
from sklearn import decomposition
from sklearn.decomposition import PCA
第三行返回一个模块错误:ModuleNotFoundError: No module named 'sklearn.utils._joblib'
奇怪的是,我在网上找不到任何关于这个错误的记录!如果能帮上忙我会很感激的。我复制了下面的完整错误消息:
---------------------------------------------------------------------------
ModuleNotFoundError Traceback (most recent call last)
<ipython-input-375-2e95ea83a366> in <module>()
1 import sklearn
----> 2 from sklearn import decomposition
3 from sklearn.decomposition import PCA
4 # Make an instance of the Model
5 pca = PCA(.95)
E:\Anaconda3\lib\site-packages\sklearn\decomposition\__init__.py in <module>()
9 from .incremental_pca import IncrementalPCA
10 from .kernel_pca import KernelPCA
---> 11 from .sparse_pca import SparsePCA, MiniBatchSparsePCA
12 from .truncated_svd import TruncatedSVD
13 from .fastica_ import FastICA, fastica
E:\Anaconda3\lib\site-packages\sklearn\decomposition\sparse_pca.py in <module>()
11 from ..linear_model import ridge_regression
12 from ..base import BaseEstimator, TransformerMixin
---> 13 from .dict_learning import dict_learning, dict_learning_online
14
15
E:\Anaconda3\lib\site-packages\sklearn\decomposition\dict_learning.py in <module>()
15
16 from ..base import BaseEstimator, TransformerMixin
---> 17 from ..utils._joblib import Parallel, delayed, effective_n_jobs
18 from ..externals.six.moves import zip
19 from ..utils import (check_array, check_random_state, gen_even_slices,
ModuleNotFoundError: No module named 'sklearn.utils._joblib'
发布于 2021-07-22 07:51:53
直接安装并导入joblib:
!pip install joblib
import joblib
发布于 2019-10-04 05:14:21
2019年5月,This comment on a PR提到他们想要抛弃它。
截至2019年6月,sklearn.utils._joblib
is no longer a thing。
很难说为什么这段代码在三月份不能工作,因为它仍然是supported the release
分析:您的环境中有旧版本。也许pip install -r requirements.txt
得到了你,覆盖了工作版本,或者其他什么东西。
建议:创建一个新的conda
环境,在该环境中重新安装sklearn和joblib (通过conda install scikit-learn joblib
),然后继续前进。
发布于 2019-05-14 15:24:44
我也有类似的问题,但它的描述是'No module named‘sklearn.exterals.joblib.parallel’。我反复安装和卸载sklearn和joblib,但都不起作用。最后,我在源包代码中对它进行了注释,从而解决了这个问题。
https://stackoverflow.com/questions/54965751
复制相似问题