web-dev-qa-db-fra.com

ImportError: aucun module nommé 'tensorflow.python' avec tensorflow-gpu

Je voulais avoir le support gpu pour keras/tensorflow, c'est pourquoi j'ai installé tensorflow-gpu. J'ai donc installé tensorflow-gpu via pip:

installation de pip --upgrade tensorflow-gpu

Cela conduit à ceci:

from keras import backend as K
K.tensorflow_backend._get_available_gpus()
> []

Ensuite, j'ai trouvé cette réponse stackoverflow qui a déclaré que je devais désinstaller tensorflow après avoir installé tensorflow-gpu. Cela conduit à ceci:

Using TensorFlow backend.
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-1-3d00d838479b> in <module>()
----> 1 from keras import backend as K
      2 K.tensorflow_backend._get_available_gpus()

/raid/ntzioras/VirtualEnvironments/DeepLearning/lib/python3.4/site-packages/keras/__init__.py in <module>()
      1 from __future__ import absolute_import
      2 
----> 3 from . import utils
      4 from . import activations
      5 from . import applications

/raid/ntzioras/VirtualEnvironments/DeepLearning/lib/python3.4/site-packages/keras/utils/__init__.py in <module>()
      4 from . import data_utils
      5 from . import io_utils
----> 6 from . import conv_utils
      7 
      8 # Globally-importable utils.

/raid/ntzioras/VirtualEnvironments/DeepLearning/lib/python3.4/site-packages/keras/utils/conv_utils.py in <module>()
      7 from six.moves import range
      8 import numpy as np
----> 9 from .. import backend as K
     10 
     11 

/raid/ntzioras/VirtualEnvironments/DeepLearning/lib/python3.4/site-packages/keras/backend/__init__.py in <module>()
     82 Elif _BACKEND == 'tensorflow':
     83     sys.stderr.write('Using TensorFlow backend.\n')
---> 84     from .tensorflow_backend import *
     85 else:
     86     raise ValueError('Unknown backend: ' + str(_BACKEND))

/raid/ntzioras/VirtualEnvironments/DeepLearning/lib/python3.4/site-packages/keras/backend/tensorflow_backend.py in <module>()
      4 
      5 import tensorflow as tf
----> 6 from tensorflow.python.training import moving_averages
      7 from tensorflow.python.ops import tensor_array_ops
      8 from tensorflow.python.ops import control_flow_ops

ImportError: No module named 'tensorflow.python'

Réinstallation de tensorflow avec

installation de pip --upgrade tensorflow --no-cache

conduit à nouveau à un tableau vide pour les gpus avec le code ci-dessus.

Une idée sur comment réparer ça?

8
greece57

Cette solution a fonctionné pour moi:

Désinstallation des versions CPU et GPU de TensorFlow, puis installation uniquement de la version GPU de TensorFlow.

pip uninstall tensorflow
pip uninstall tensorflow-gpu

pip install tensorflow-gpu
6
Safwan