38 votes

AttributeError : L'objet 'module' ne possède pas d'attribut 'computation'.

J'essaie d'utiliser Keras (Sequential) mais j'obtiens l'erreur suivante lorsque j'essaie de l'importer :

File "kaggle_titanic_keras.py", line 3, in <module>
    from keras.models import Sequential
  File "/anaconda/lib/python2.7/site-packages/keras/__init__.py", line 4, in <module>
    from . import applications
  File "/anaconda/lib/python2.7/site-packages/keras/applications/__init__.py", line 1, in <module>
    from .vgg16 import VGG16
  File "/anaconda/lib/python2.7/site-packages/keras/applications/vgg16.py", line 14, in <module>
    from ..models import Model
  File "/anaconda/lib/python2.7/site-packages/keras/models.py", line 14, in <module>
    from . import layers as layer_module
  File "/anaconda/lib/python2.7/site-packages/keras/layers/__init__.py", line 4, in <module>
    from ..engine import Layer
  File "/anaconda/lib/python2.7/site-packages/keras/engine/__init__.py", line 8, in <module>
    from .training import Model
  File "/anaconda/lib/python2.7/site-packages/keras/engine/training.py", line 24, in <module>
    from .. import callbacks as cbks
  File "/anaconda/lib/python2.7/site-packages/keras/callbacks.py", line 25, in <module>
    from tensorflow.contrib.tensorboard.plugins import projector
  File "/anaconda/lib/python2.7/site-packages/tensorflow/contrib/__init__.py", line 30, in <module>
    from tensorflow.contrib import factorization
  File "/anaconda/lib/python2.7/site-packages/tensorflow/contrib/factorization/__init__.py", line 24, in <module>
    from tensorflow.contrib.factorization.python.ops.gmm import *
  File "/anaconda/lib/python2.7/site-packages/tensorflow/contrib/factorization/python/ops/gmm.py", line 27, in <module>
    from tensorflow.contrib.learn.python.learn.estimators import estimator
  File "/anaconda/lib/python2.7/site-packages/tensorflow/contrib/learn/__init__.py", line 87, in <module>
    from tensorflow.contrib.learn.python.learn import *
  File "/anaconda/lib/python2.7/site-packages/tensorflow/contrib/learn/python/__init__.py", line 23, in <module>
    from tensorflow.contrib.learn.python.learn import *
  File "/anaconda/lib/python2.7/site-packages/tensorflow/contrib/learn/python/learn/__init__.py", line 25, in <module>
    from tensorflow.contrib.learn.python.learn import estimators
  File "/anaconda/lib/python2.7/site-packages/tensorflow/contrib/learn/python/learn/estimators/__init__.py", line 297, in <module>
    from tensorflow.contrib.learn.python.learn.estimators.dnn import DNNClassifier
  File "/anaconda/lib/python2.7/site-packages/tensorflow/contrib/learn/python/learn/estimators/dnn.py", line 29, in <module>
    from tensorflow.contrib.learn.python.learn.estimators import dnn_linear_combined
  File "/anaconda/lib/python2.7/site-packages/tensorflow/contrib/learn/python/learn/estimators/dnn_linear_combined.py", line 31, in <module>
    from tensorflow.contrib.learn.python.learn.estimators import estimator
  File "/anaconda/lib/python2.7/site-packages/tensorflow/contrib/learn/python/learn/estimators/estimator.py", line 49, in <module>
    from tensorflow.contrib.learn.python.learn.learn_io import data_feeder
  File "/anaconda/lib/python2.7/site-packages/tensorflow/contrib/learn/python/learn/learn_io/__init__.py", line 21, in <module>
    from tensorflow.contrib.learn.python.learn.learn_io.dask_io import extract_dask_data
  File "/anaconda/lib/python2.7/site-packages/tensorflow/contrib/learn/python/learn/learn_io/dask_io.py", line 26, in <module>
    import dask.dataframe as dd
  File "/anaconda/lib/python2.7/site-packages/dask/dataframe/__init__.py", line 3, in <module>
    from .core import (DataFrame, Series, Index, _Frame, map_partitions,
  File "/anaconda/lib/python2.7/site-packages/dask/dataframe/core.py", line 38, in <module>
    pd.computation.expressions.set_use_numexpr(False)
AttributeError: 'module' object has no attribute 'computation'

J'utilise Python 2.7, TensorFlow 1.1, Keras 2.0.3 et j'ai effectué une mise à niveau vers Pandas 0.20.1 hier, ce qui, je le soupçonne, est à l'origine du problème, mais le message d'erreur ne dit rien à ce sujet.

1 votes

Comment avez-vous mis à jour pandas ? êtes-vous sûr que votre python d'anaconda peut y accéder ?

1 votes

J'ai utilisé Conda et Pip. J'ai juste utilisé .__version__ pour vérifier la version de pandas à laquelle il accédait et j'ai obtenu la version 0.20.1.

5 votes

Ceci est dû à la nouvelle version de pandas (0.20.1). Une nouvelle version de dask est sortie vendredi pour corriger les problèmes liés à la nouvelle version de pandas. La mise à jour de dask vers la version 0.14.3 devrait corriger votre erreur.

90voto

SamudraYe Points 906

La mise à jour de dask vers 0.15.0 résoudra le problème.

mettre à jour cmd : conda update dask

entrée pip show dask affichera le message suivant

Name: dask
Version: 0.15.0
Summary: Parallel PyData with Task Scheduling
Home-page: http://github.com/dask/dask/
Author: Matthew Rocklin
Author-email: mrocklin@gmail.com
License: BSD
Location: c:\anaconda3\lib\site-packages
Requires:

6 votes

La mise à jour de dask a fonctionné pour moi. Cependant, je l'ai mis à jour via pip plutôt que conda : pip install --upgrade dask

2 votes

Nécessité de mettre à jour dask à > 0.15.3 selon problème des pandas 18355

18voto

user2897775 Points 629

Dask-0.14.3 fonctionne et élimine l'erreur d'importation

11voto

Greg Points 347

Je suis revenu à la version 0.19.2 de Pandas et le problème a été résolu.

4 votes

Je pense que la meilleure réponse est de mettre à jour dask comme indiqué ici : stackoverflow.com/a/44615129/1863542

9voto

user3599207 Points 81

La commande complète que j'utilise est

conda install pandas=0.19.2

et la réponse y pour rétrograder les pandas et ça a marché maintenant.

5voto

Cagg Points 104

J'avais installé les versions suivantes :

  • python 3.5
  • tensorflow 1.2.1
  • pandas 0.21
  • dask 0.15.3

et j'ai obtenu l'erreur suivante :

pd.core.computation.expressions.set_use_numexpr(False)
AttributeError: 'module' object has no attribute 'expressions'

J'ai rétrogradé en pandas 0.19.2 et dask 0.15.0 et le script python a bien fonctionné !

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