导入 scikit-learn 模块时出错
Error importing scikit-learn modules
我正在尝试从集群模块调用函数,如下所示:
import sklearn
db = sklearn.cluster.DBSCAN()
我收到以下错误:
AttributeError: 'module' object has no attribute 'cluster'
在 IPython 中完成制表符,我似乎可以访问 base、clone、externals、re、setup_module、sys 和 warning 模块。没有别的,尽管其他(包括集群)在 sklearn 目录中。
遵循以下 pbu 的建议并使用
from sklearn import cluster
我得到:
Traceback (most recent call last):
File "test.py", line 2, in <module>
from sklearn import cluster
File "C:\Python34\lib\site-packages\sklearn\cluster\__init__.py", line 6, in <module>
from .spectral import spectral_clustering, SpectralClustering
File "C:\Python34\lib\site-packages\sklearn\cluster\spectral.py", line 13, in <module>
from ..utils import check_random_state, as_float_array
File "C:\Python34\lib\site-packages\sklearn\utils\__init__.py", line 16, in <module>
from .class_weight import compute_class_weight, compute_sample_weight
File "C:\Python34\lib\site-packages\sklearn\utils\class_weight.py", line 7, in <module>
from ..utils.fixes import in1d
File "C:\Python34\lib\site-packages\sklearn\utils\fixes.py", line 318, in <module>
from scipy.sparse.linalg import lsqr as sparse_lsqr
File "C:\Python34\lib\site-packages\scipy\sparse\linalg\__init__.py", line 109, in <module>
from .isolve import *
File "C:\Python34\lib\site-packages\scipy\sparse\linalg\isolve\__init__.py", line 6, in <module>
from .iterative import *
File "C:\Python34\lib\site-packages\scipy\sparse\linalg\isolve\iterative.py", line 7, in <module>
from . import _iterative
ImportError: DLL load failed: The specified module could not be found.
我在 Windows 上使用 Python 3.4,scikit-learn 0.16.1。
将此行放在 python 文件的顶部
from sklearn import cluster
应该这样做:))
问题出在 scipy/numpy 安装上。我一直在使用(通常非常好!)来自 http://www.lfd.uci.edu/~gohlke/pythonlibs/. Uninstall/re-install from there made no difference, but installing with the official installers (linked from http://www.scipy.org/install.html 的非官方安装程序)成功了。
您可能不会使用 Numpy+MKL,而只会使用 Numpy。
我遇到了同样的问题,正在使用 MKL 重新安装 Numpy
pip install --upgrade --force-reinstall "numpy‑1.16.3+mkl‑cp37‑cp37m‑win32.whl"
已修复。
注意:将文件更新到最新版本,可能是 64 位 - 请参阅 the list of available Windows binaries
我正在使用 anaconda
在加载 Orange 或 PlotNine 时遇到与 OP 相同的错误。
我不记得这是什么时候开始发生的。
DependencyWalk 中缺少对 Anaconda3\Lib\site-packages\scipy\special\_ufuncs.cp36-win32.pyd
、libifcoremd.dll
和 libmmd.dll
的依赖性跟踪。在 anaconda 根目录中搜索它们,它们位于 ICC_RT 和一个版本的 MKL 包中。
将Anaconda3\pkgs\mkl-2017.0.3-0\Library\bin
添加到PATH,似乎修复了SciPy和NumPy相关的DLL加载失败,上面的包又开始工作了。
我仍然不知道如何正确解决这个问题。显然,缺点是 MKL 包可能会更新,版本可能会更改,路径也会更改。在这方面,它与添加非托管包一样不方便。
重新安装 ICC_RT 解决了我的问题,libmmd.dll
和相关的 dll 之后自动复制到 anaconda3/library/bin
,由 [= 自动添加到 PATH
18=] 命令。所有以前 numpy/scipy 相关的 cant load DLL
错误现在都消失了。
从错误日志看,scipy模块是最新的模块导入失败
File "C:\Python34\lib\site-packages\sklearn\utils\fixes.py", line 318, in <module>
from scipy.sparse.linalg import lsqr as sparse_lsqr
File "C:\Python34\lib\site-packages\scipy\sparse\linalg\__init__.py", line 109, in <module>
from .isolve import *
File "C:\Python34\lib\site-packages\scipy\sparse\linalg\isolve\__init__.py", line 6, in <module>
from .iterative import *
File "C:\Python34\lib\site-packages\scipy\sparse\linalg\isolve\iterative.py", line 7, in <module>
from . import _iterative
ImportError: DLL load failed: The specified module could not be found.
我有同样的错误,显示相同的日志,当我 uninstall/install scipy:
时问题就消失了
pip uninstall scipy
pip install scipy
对我来说,修复它的是这些命令:
pip uninstall sklearn
pip uninstall scikit-learn
pip uninstall scipy
pip install scipy
pip install scikit-learnhere
我有同样的问题并通过 installing/updating mkl 包解决了它:
conda install mkl
或
pip install mkl
为了获得完整信息,这还降级了以下软件包:
将更新以下软件包:
mkl: 2017.0.4-h6d528fc_0 defaults --> 2018.0.3-1 defaults
以下软件包将被降级:
numpy: 1.11.3-py34_0 defaults --> 1.10.1-py34_0 defaults
pandas: 0.19.2-np111py34_1 defaults --> 0.18.1-np110py34_0 defaults
scikit-learn: 0.18.1-np111py34_1 defaults --> 0.17-np110py34_1 defaults
scipy: 0.19.1-np111py34_0 defaults --> 0.16.0-np110py34_0 defaults
我努力想弄清楚这个问题;尝试从网站下载并安装(非官方)Numpy+MKL 库 (risky/tedious?)。
最终通过以下方式获得成功:
使用管理员权限登录命令提示符;如何在这里:https://superuser.com/questions/968214/open-cmd-as-admin-with-windowsr-shortcut
卸载 existing/tangled 版本的 Scipy & Numpy
pip uninstall scipy
pip uninstall numpy
全新安装 Scipy & Numpy
pip install scipy
pip install numpy
- 运行 Jupyter 笔记本;它对我有用。
消息ImportError: DLL 加载失败: 找不到指定的模块
通知无法识别和获取使用 scikit-learn 库所需的 DLL;全新安装 scipy/numpy 可能会更好地路由从 Jupyter notebook 代码调用的 DLL 连接。
下载 Microsoft Visual C++ 发行版
link : https://www.microsoft.com/en-in/download/details.aspx?id=53840
vc_redist.x64.exe
在您的计算机中安装并运行此.exe文件..此后将不会出现DLL导入模块错误
现在可以正常使用了:)
我正在尝试从集群模块调用函数,如下所示:
import sklearn
db = sklearn.cluster.DBSCAN()
我收到以下错误:
AttributeError: 'module' object has no attribute 'cluster'
在 IPython 中完成制表符,我似乎可以访问 base、clone、externals、re、setup_module、sys 和 warning 模块。没有别的,尽管其他(包括集群)在 sklearn 目录中。
遵循以下 pbu 的建议并使用
from sklearn import cluster
我得到:
Traceback (most recent call last):
File "test.py", line 2, in <module>
from sklearn import cluster
File "C:\Python34\lib\site-packages\sklearn\cluster\__init__.py", line 6, in <module>
from .spectral import spectral_clustering, SpectralClustering
File "C:\Python34\lib\site-packages\sklearn\cluster\spectral.py", line 13, in <module>
from ..utils import check_random_state, as_float_array
File "C:\Python34\lib\site-packages\sklearn\utils\__init__.py", line 16, in <module>
from .class_weight import compute_class_weight, compute_sample_weight
File "C:\Python34\lib\site-packages\sklearn\utils\class_weight.py", line 7, in <module>
from ..utils.fixes import in1d
File "C:\Python34\lib\site-packages\sklearn\utils\fixes.py", line 318, in <module>
from scipy.sparse.linalg import lsqr as sparse_lsqr
File "C:\Python34\lib\site-packages\scipy\sparse\linalg\__init__.py", line 109, in <module>
from .isolve import *
File "C:\Python34\lib\site-packages\scipy\sparse\linalg\isolve\__init__.py", line 6, in <module>
from .iterative import *
File "C:\Python34\lib\site-packages\scipy\sparse\linalg\isolve\iterative.py", line 7, in <module>
from . import _iterative
ImportError: DLL load failed: The specified module could not be found.
我在 Windows 上使用 Python 3.4,scikit-learn 0.16.1。
将此行放在 python 文件的顶部
from sklearn import cluster
应该这样做:))
问题出在 scipy/numpy 安装上。我一直在使用(通常非常好!)来自 http://www.lfd.uci.edu/~gohlke/pythonlibs/. Uninstall/re-install from there made no difference, but installing with the official installers (linked from http://www.scipy.org/install.html 的非官方安装程序)成功了。
您可能不会使用 Numpy+MKL,而只会使用 Numpy。
我遇到了同样的问题,正在使用 MKL 重新安装 Numpy
pip install --upgrade --force-reinstall "numpy‑1.16.3+mkl‑cp37‑cp37m‑win32.whl"
已修复。
注意:将文件更新到最新版本,可能是 64 位 - 请参阅 the list of available Windows binaries
我正在使用 anaconda
在加载 Orange 或 PlotNine 时遇到与 OP 相同的错误。
我不记得这是什么时候开始发生的。
DependencyWalk 中缺少对 Anaconda3\Lib\site-packages\scipy\special\_ufuncs.cp36-win32.pyd
、libifcoremd.dll
和 libmmd.dll
的依赖性跟踪。在 anaconda 根目录中搜索它们,它们位于 ICC_RT 和一个版本的 MKL 包中。
将Anaconda3\pkgs\mkl-2017.0.3-0\Library\bin
添加到PATH,似乎修复了SciPy和NumPy相关的DLL加载失败,上面的包又开始工作了。
我仍然不知道如何正确解决这个问题。显然,缺点是 MKL 包可能会更新,版本可能会更改,路径也会更改。在这方面,它与添加非托管包一样不方便。
重新安装 ICC_RT 解决了我的问题,libmmd.dll
和相关的 dll 之后自动复制到 anaconda3/library/bin
,由 [= 自动添加到 PATH
18=] 命令。所有以前 numpy/scipy 相关的 cant load DLL
错误现在都消失了。
从错误日志看,scipy模块是最新的模块导入失败
File "C:\Python34\lib\site-packages\sklearn\utils\fixes.py", line 318, in <module>
from scipy.sparse.linalg import lsqr as sparse_lsqr
File "C:\Python34\lib\site-packages\scipy\sparse\linalg\__init__.py", line 109, in <module>
from .isolve import *
File "C:\Python34\lib\site-packages\scipy\sparse\linalg\isolve\__init__.py", line 6, in <module>
from .iterative import *
File "C:\Python34\lib\site-packages\scipy\sparse\linalg\isolve\iterative.py", line 7, in <module>
from . import _iterative
ImportError: DLL load failed: The specified module could not be found.
我有同样的错误,显示相同的日志,当我 uninstall/install scipy:
时问题就消失了pip uninstall scipy
pip install scipy
对我来说,修复它的是这些命令:
pip uninstall sklearn
pip uninstall scikit-learn
pip uninstall scipy
pip install scipy
pip install scikit-learnhere
我有同样的问题并通过 installing/updating mkl 包解决了它:
conda install mkl
或
pip install mkl
为了获得完整信息,这还降级了以下软件包:
将更新以下软件包:
mkl: 2017.0.4-h6d528fc_0 defaults --> 2018.0.3-1 defaults
以下软件包将被降级:
numpy: 1.11.3-py34_0 defaults --> 1.10.1-py34_0 defaults
pandas: 0.19.2-np111py34_1 defaults --> 0.18.1-np110py34_0 defaults
scikit-learn: 0.18.1-np111py34_1 defaults --> 0.17-np110py34_1 defaults
scipy: 0.19.1-np111py34_0 defaults --> 0.16.0-np110py34_0 defaults
我努力想弄清楚这个问题;尝试从网站下载并安装(非官方)Numpy+MKL 库 (risky/tedious?)。
最终通过以下方式获得成功:
使用管理员权限登录命令提示符;如何在这里:https://superuser.com/questions/968214/open-cmd-as-admin-with-windowsr-shortcut
卸载 existing/tangled 版本的 Scipy & Numpy
pip uninstall scipy pip uninstall numpy
全新安装 Scipy & Numpy
pip install scipy pip install numpy
- 运行 Jupyter 笔记本;它对我有用。
消息ImportError: DLL 加载失败: 找不到指定的模块 通知无法识别和获取使用 scikit-learn 库所需的 DLL;全新安装 scipy/numpy 可能会更好地路由从 Jupyter notebook 代码调用的 DLL 连接。
下载 Microsoft Visual C++ 发行版
link : https://www.microsoft.com/en-in/download/details.aspx?id=53840
vc_redist.x64.exe
在您的计算机中安装并运行此.exe文件..此后将不会出现DLL导入模块错误
现在可以正常使用了:)