Tensorflow ImportError:没有名为' _pywrap_tensorflow_internal'在Windows 10上

时间:2017-05-01 15:29:31

标签: python tensorflow

我正在使用Udacity进行自驾车课程。我在Windows 10中启动了一个公共环境,我可以运行tensorflow,但我想使用GPU。

我的GPU listed兼容(GTX 950M)。

我按照Windows 10上的tensorflow说明添加GPU:

https://www.tensorflow.org/install/install_windows

并下载并安装了cuda_8.0.61_win10

接下来我重新启动了我的环境。我查看它是否正在使用简单的python程序:

import tensorflow as tf

# Create TensorFlow object called tensor
hello_constant = tf.constant('Hello World!')

with tf.Session() as sess:
    # Run the tf.constant operation in the session
    output = sess.run(hello_constant)
    print(output)

执行得很好,如下:

(carnd-term1) D:\SelfDrivingCar\tensor-exp>python hello.py
b'Hello World!'

接下来我安装了tensorflow的gpu版本:

(carnd-term1) D:\SelfDrivingCar\CarND-Traffic-Sign-Classifier-Project>pip install tensorflow-gpu
Collecting tensorflow-gpu
  Downloading tensorflow_gpu-1.1.0-cp35-cp35m-win_amd64.whl (48.5MB)
    100% |################################| 48.6MB 16kB/s
Requirement already satisfied: six>=1.10.0 in d:\programdata\anaconda3\envs\carnd-term1\lib\site-packages (from tensorflow-gpu)
Requirement already satisfied: protobuf>=3.2.0 in d:\programdata\anaconda3\envs\carnd-term1\lib\site-packages (from tensorflow-gpu)
Requirement already satisfied: wheel>=0.26 in d:\programdata\anaconda3\envs\carnd-term1\lib\site-packages (from tensorflow-gpu)
Requirement already satisfied: werkzeug>=0.11.10 in d:\programdata\anaconda3\envs\carnd-term1\lib\site-packages (from tensorflow-gpu)
Requirement already satisfied: numpy>=1.11.0 in d:\programdata\anaconda3\envs\carnd-term1\lib\site-packages (from tensorflow-gpu)
Requirement already satisfied: setuptools in d:\programdata\anaconda3\envs\carnd-term1\lib\site-packages (from protobuf>=3.2.0->tensorflow-gpu)
Installing collected packages: tensorflow-gpu
Successfully installed tensorflow-gpu-1.1.0

我重新调试hello.py并获得以下内容

(carnd-term1) D:\SelfDrivingCar\tensor-exp>python hello.py
Traceback (most recent call last):
  File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 18, in swig_import_helper
    return importlib.import_module(mname)
  File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 986, in _gcd_import
  File "<frozen importlib._bootstrap>", line 969, in _find_and_load
  File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 666, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 577, in module_from_spec
  File "<frozen importlib._bootstrap_external>", line 906, in create_module
  File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
ImportError: DLL load failed: The specified module could not be found.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 41, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 21, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 20, in swig_import_helper
    return importlib.import_module('_pywrap_tensorflow_internal')
  File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
ImportError: No module named '_pywrap_tensorflow_internal'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "hello.py", line 1, in <module>
    import tensorflow as tf
  File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\__init__.py", line 24, in <module>
    from tensorflow.python import *
  File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\__init__.py", line 51, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 52, in <module>
    raise ImportError(msg)
ImportError: Traceback (most recent call last):
  File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 18, in swig_import_helper
    return importlib.import_module(mname)
  File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 986, in _gcd_import
  File "<frozen importlib._bootstrap>", line 969, in _find_and_load
  File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 666, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 577, in module_from_spec
  File "<frozen importlib._bootstrap_external>", line 906, in create_module
  File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
ImportError: DLL load failed: The specified module could not be found.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 41, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 21, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\site-packages\tensorflow\python\pywrap_tensorflow_internal.py", line 20, in swig_import_helper
    return importlib.import_module('_pywrap_tensorflow_internal')
  File "d:\ProgramData\Anaconda3\envs\carnd-term1\lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
ImportError: No module named '_pywrap_tensorflow_internal'


Failed to load the native TensorFlow runtime.

See https://www.tensorflow.org/install/install_sources#common_installation_problems

for some common reasons and solutions.  Include the entire stack trace
above this error message when asking for help.

我删除了环境并使用以下命令重复整个过程:

pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/windows/gpu/tensorflow_gpu-1.1.0-cp35-cp35m-win_amd64.whl

并得到了相同的结果。

以下不起作用(Cannot import Tensorflow for GPU on Windows 10),因为列出的目录中没有名为cudnn64_6.dll的文件。

为什么会出现导入错误?

1 个答案:

答案 0 :(得分:4)

你需要安装cudnn。目前仅正式支持5.1版。不知道在6.0中提到的6.0的重命名技巧:

Cannot import Tensorflow for GPU on Windows 10