Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:tensorflow gpu导入错误_Python_Tensorflow_Tensorflow Gpu - Fatal编程技术网

Python:tensorflow gpu导入错误

Python:tensorflow gpu导入错误,python,tensorflow,tensorflow-gpu,Python,Tensorflow,Tensorflow Gpu,这是从链接上的以下问题延伸而来的问题: 我正试图在我的Windows10机器上实现tensorflow gpu。我按照这个命令去做。我有 已成功安装CUDA 8.0工具包 已成功安装cuDNN v5.1 添加环境变量:CUDA_Home和path变量 安装了Anaconda3(我以前使用的是Anaconda3) 已成功执行以下命令 >conda create -n tensorflow-gpu python=3.5.2 >activate tensorflow-gpu >pi

这是从链接上的以下问题延伸而来的问题:

我正试图在我的Windows10机器上实现tensorflow gpu。我按照这个命令去做。我有

  • 已成功安装CUDA 8.0工具包
  • 已成功安装cuDNN v5.1
  • 添加环境变量:CUDA_Home和path变量
  • 安装了Anaconda3(我以前使用的是Anaconda3)
  • 已成功执行以下命令

    >conda create -n tensorflow-gpu python=3.5.2
    >activate tensorflow-gpu
    >pip install tensorflow-gpu
    >activate tensorflow-gpu
    (tensorflow-gpu) >python
    >>>
    
  • 但是,如果我尝试导入tensorflow

    >>>import tensorflow as tf
    
    我收到以下错误消息

    Traceback (most recent call last):
      File "C:\Users\Froilan\Anaconda3\envs\tensorflow-gpu\lib\site-
    packages\tensorflow\python\platform\self_check.py", line 87, in preload_check
        ctypes.WinDLL(build_info.cudnn_dll_name)
      File "C:\Users\Froilan\Anaconda3\envs\tensorflow-gpu\lib\ctypes\__init__.py", line 347, in __init__
    self._handle = _dlopen(self._name, mode)
    OSError: [WinError 126] This specified module could not be found
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
      File "C:\Users\Froilan\Anaconda3\envs\tensorflow-gpu\lib\site-packages\tensorflow\__init__.py", line 24, in <module>
    from tensorflow.python import *
      File "C:\Users\Froilan\Anaconda3\envs\tensorflow-gpu\lib\site-packages\tensorflow\python\__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
      File "C:\Users\Froilan\Anaconda3\envs\tensorflow-gpu\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 30, in <module>
    self_check.preload_check()
      File "C:\Users\Froilan\Anaconda3\envs\tensorflow-gpu\lib\site-packages\tensorflow\python\platform\self_check.py", line 97, in preload_check
    % (build_info.cudnn_dll_name, build_info.cudnn_version_number))
    ImportError: Could not find 'cudnn64_6.dll'. TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable. Note that installing cuDNN is a separate step from installing CUDA, and this DLL is often found in a different directory from the CUDA DLLs. You may install the necessary DLL by downloading cuDNN 6 from this URL: https://developer.nvidia.com/cudnn
    
    回溯(最近一次呼叫最后一次):
    文件“C:\Users\Froilan\Anaconda3\envs\tensorflow gpu\lib\site-
    packages\tensorflow\python\platform\self\u check.py”,预加载检查中的第87行
    ctypes.windell(build\u info.cudnn\u dll\u name)
    文件“C:\Users\Froilan\Anaconda3\envs\tensorflow gpu\lib\ctypes\\ uuuuu init\uuuu.py”,第347行,在\uu init中__
    self.\u handle=\u dlopen(self.\u名称,模式)
    OSError:[WinError 126]找不到此指定模块
    在处理上述异常期间,发生了另一个异常:
    回溯(最近一次呼叫最后一次):
    文件“”,第1行,在
    文件“C:\Users\Froilan\Anaconda3\envs\tensorflow gpu\lib\site packages\tensorflow\\uuuuu init\uuuu.py”,第24行,在
    从tensorflow.python导入*
    文件“C:\Users\Froilan\Anaconda3\envs\tensorflow gpu\lib\site packages\tensorflow\python\\uuu init\uuuuuuuuuuuuuuuu.py”,第49行,在
    从tensorflow.python导入pywrap\u tensorflow
    文件“C:\Users\Froilan\Anaconda3\envs\tensorflow gpu\lib\site packages\tensorflow\python\pywrap\u tensorflow.py”,第30行,在
    自我检查。预加载检查()
    文件“C:\Users\Froilan\Anaconda3\envs\tensorflow gpu\lib\site packages\tensorflow\python\platform\self\u check.py”,第97行,预加载检查
    %(build_info.cudnn_dll_名称、build_info.cudnn_版本号))
    ImportError:找不到“cudnn64_6.dll”。TensorFlow要求将此DLL安装在%PATH%环境变量中命名的目录中。请注意,安装cuDNN与安装CUDA是一个单独的步骤,此DLL通常位于与CUDA DLL不同的目录中。您可以通过从以下URL下载cuDNN 6来安装必要的DLL:https://developer.nvidia.com/cudnn
    
    我不确定是什么导致了这个问题。我使用的是AMD ryzen 1700 CPU和GTX 1050 Ti GPU。也许是其中一个导致了问题

    更新:带有CPU的tensorflow工作正常。带GPU的是导致问题的原因

    • 使用此命令
      conda安装-c anaconda tensorflow gpu
    • 它为您安装
      cuda toolkit
      cudnn
      ,并执行所有配置
    • 如果要解决上述错误,请在
      path
      变量中添加
      cudnn
      路径
    • 您可以使用
      导出路径
      或转到
      .bashrc
      并在那里设置路径变量

      • 我相信使用命令

        pip install tensorflow-gpu
        
        安装TensorFlow的最新版本,目前类似于1.6。根据我的经验,最新版本似乎只适用于CUDA 9.0,而CUDA 9.0又需要cuDNN 7.0.4或7.0.5。 您可以安装将与CUDA 8.0一起使用的TensorFlow的特定版本,例如,使用以下命令:

        pip install tensorflow-gpu==1.4
        
        或者,您可以从NVIDIA下载旧版本的CUDA和cuDNN。要做到这一点,你必须先创建一个帐户(别担心,它是免费的,而且非常快)

        CUDA的旧版本如下:

        cuDNN的旧版本如下:


        TensorFlow网站可能需要更新,因为它仍然告诉您安装CUDA 8.0,但我认为这只适用于TensorFlow 1.4版。

        您这里的问题是
        TensorFlow
        正在寻找
        cudnn v6
        tensorflow 1.4
        CUDA 8.0
        CUDNN 6
        配合使用。默认情况下,pip将在Windows上安装需要CUDA 9.0和CUDNN 6.0的tensorflow 1.5/1.6。检查需求。根据我的经验,使用错误的子版本(即6.1)也会导致问题。

        如果使用该命令,我的显示器会变黑。我想这是因为CUDA 8.0使用的驱动程序。我已经看到,使用CUDA 8.0驱动程序可以断开显示器与GPU的连接。你知道如何“使用”特定的驱动程序吗?