128 votes

ImportError dans l'importation depuis sklearn : ne peut pas importer le nom check_build

J'obtiens l'erreur suivante en essayant d'importer à partir de sklearn :

>>> from sklearn import svm

Traceback (most recent call last):
  File "<pyshell#17>", line 1, in <module>
   from sklearn import svm
  File "C:\Python27\lib\site-packages\sklearn\__init__.py", line 16, in <module>
   from . import check_build
ImportError: cannot import name check_build

J'utilise python 2.7, scipy-0.12.0b1 superpack, numpy-1.6.0 superpack, scikit-learn-0.11. J'ai une machine Windows 7

J'ai vérifié plusieurs réponses à ce problème, mais aucune d'entre elles ne donne une solution à cette erreur.

4voto

user2314737 Points 1671

J'ai eu le même problème sous Windows. Je l'ai résolu en installant Numpy+MKL à partir de http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy (il est recommandé d'installer numpy+mkl avant les autres paquets qui en dépendent) comme suggéré par cette réponse .

4voto

John McCurdy Points 41

J'ai eu des problèmes pour importer SKLEARN après avoir installé une nouvelle version 64bit de Python 3.4 depuis python.org.

Il s'est avéré que c'était le module SCIPY qui était défectueux, et qui a également échoué lorsque j'ai essayé d'"importer scipy".

La solution était de désinstaller scipy et de le réinstaller avec pip3 :

C:\> pip uninstall scipy

[lots of reporting messages deleted]

Proceed (y/n)? y
  Successfully uninstalled scipy-1.0.0

C:\Users\>pip3 install scipy

Collecting scipy
  Downloading scipy-1.0.0-cp36-none-win_amd64.whl (30.8MB)
    100% || 30.8MB 33kB/s
Requirement already satisfied: numpy>=1.8.2 in c:\users\johnmccurdy\appdata\loca
l\programs\python\python36\lib\site-packages (from scipy)
Installing collected packages: scipy
Successfully installed scipy-1.0.0

C:\Users>python
Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:54:40) [MSC v.1900 64 bit (AMD64)]
 on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import scipy
>>>
>>> import sklearn
>>>

3voto

Statham Points 1642

Si vous utilisez Anaconda 2.7 64 bit, essayez de

conda upgrade scikit-learn

et redémarrer le shell python, cela fonctionne pour moi.

Deuxième édition quand j'ai rencontré le même problème et l'ai résolu :

conda upgrade scikit-learn

fonctionne également pour moi

2voto

chross Points 61

Aucune des autres réponses n'a fonctionné pour moi. Après quelques bricolages, j'ai désinstallé sklearn :

pip uninstall sklearn

Puis j'ai supprimé le dossier sklearn d'ici : (adaptez le chemin à votre système et à la version de python)

C:\Users\%USERNAME%\AppData\Roaming\Python\Python36\site-packages

Et il l'a installé à partir de la roue de ce site : lien

L'erreur était là probablement à cause d'un conflit de version avec sklearn installé ailleurs.

2voto

Siddaram H Points 412

Pour moi, J'ai mis à jour le code existant dans une nouvelle configuration en installant Anaconda à partir de zéro avec la dernière version de python (3.7). Pour cela,

from sklearn import cross_validation, 
from sklearn.grid_search import GridSearchCV

à

from sklearn.model_selection import GridSearchCV,cross_validate

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X