web-dev-qa-db-ja.com

Python:tensorflow-gpuインポートエラー

これは、リンク上の次の質問から拡張された質問です。

python:tensorflow-gpuをインポートできません

Windows10マシンにtensorflow-gpuを実装しようとしています。私はこれ リンク が私にやるように言ったことに従った。私が持っています..

  1. CUDA8.0ツールキットが正常にインストールされました
  2. CuDNNv5.1が正常にインストールされました
  3. 追加された環境変数:CUDA_Home&path変数
  4. Anaconda3をインストールしました(以前はAnaconda3を使用していました)
  5. 次のコマンドを正常に実行しました

    >conda create -n tensorflow-gpu python=3.5.2
    >activate tensorflow-gpu
    >pip install tensorflow-gpu
    >activate tensorflow-gpu
    (tensorflow-gpu) >python
    >>>
    

ただし、テンソルフローをインポートしようとすると、

>>>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

何が問題を引き起こしているのかわかりません。 AMD ryzen 1700CPUとGTX1050 TiGPUを使用しています。たぶんそれらの1つが問題を引き起こしていますか?

更新:CPUを使用したテンソルフローは問題なく機能します。 GPUを搭載したものが問題の原因です

コマンドを使用すると思います

pip install tensorflow-gpu

tensorFlowの最新バージョンをインストールします。これは現在1.6のようなものです。私の経験から、最新バージョンはCUDA 9.0でのみ動作するようです。これには、cuDNN7.0.4または7.0.5が必要です。たとえば、次のコマンドを使用して、CUDA8.0で動作する特定のバージョンのTensorFlowをインストールできます。

pip install tensorflow-gpu==1.4

または、NVIDIAから古いバージョンのCUDAとcuDNNをダウンロードできます。これを行うには、最初にアカウントを作成する必要があります(心配しないでください、それは無料で本当に速いです)。

CUDAの古いバージョンはこちら: https://developer.nvidia.com/cuda-toolkit-archive

CuDNNの古いバージョンはこちら: https://developer.nvidia.com/rdp/cudnn-download

TensorFlow Webサイトは、CUDA 8.0をインストールするように指示されているため、更新することで対応できますが、TensorFlowバージョン1.4までしか機能しないと思います。

2
humbleHacker
  • このコマンドを使用しますconda install -c anaconda tensorflow-gpu
  • cuda toolkitcudnnをインストールし、すべての構成を行います
  • 上記のエラーを解決したい場合は、cudnn変数にPATHパスを追加してください
  • export PATHを使用するか、.bashrcに移動して、そこにPATH変数を設定できます。
1
Jai

ここでの問題は、tensorflowcudnn v6を探していることです。 tensorflow 1.4CUDA 8.0およびCUDNN 6と連携します。デフォルトでは、pipはtensorflow 1.5/1.6をインストールします。これにはCUDA 9.0CUDNN 6.0がWindowsに必要です。要件を確認してください ここ 。私の経験から、間違ったサブバージョン(つまり6.1)を使用すると問題が発生する可能性もあります。

1
D.Griffiths