web-dev-qa-db-ja.com

Windowsでは、「import tensorflow」を実行しても「_pywrap_tensorflow」という名前のモジュールは生成されませんエラー

Windowsでは、TensorFlowはimport tensorflowステートメントを実行した後に、以下のエラーの一方または両方を報告します。

  • No module named "_pywrap_tensorflow"
  • DLL load failed.
73
Barry Rosenberg

問題は私のためのcuDNNライブラリ - 私がcudnn-8.0-windows10-x64-v6.0を動作させていなかったにも関わらず - 私はcudnn-8.0-windows10-x64-v5.1を使用しました。

Win10 64とNvidia GTX780Mで動作する私のセットアップ:

  • システム/パスをチェックして、lib MSVCP140.DLLがあることを確認します - 入手できない場合は ここ
  • here - からpython 3.5.3-AMD64用のWindowsインストーラを実行します。おそらく動作しないので、新しいバージョンを試しないでください。
  • CUDA 8.0のcuDNN v5.1を here - から自分のusersフォルダの下に置くか、別の場所に置いてください(これはあなたのパスに必要です)
  • からCUDA 8.0 x86_64を入手してください -
  • CuDNNのlibsとpythonを指すようにPATH変数を設定します(pythonのパスはpythonのインストール中に追加する必要があります)。
  • PATHEXT変数に ".DLL"が含まれていることを確認してください。
  • あなたがtensorflow 1.3を使用しているなら、あなたはcudnn64_6.dll github.com/tensorflow/tensorflow/issues/7705 を使いたいです。

Windows 32を実行している場合は、上記のファイルの32ビットバージョンを必ず入手してください。

74
DropHit

私の場合、/ binフォルダの "cudnn64_6.dll"ファイルは、エラーを消すために "cudnn64_5.dll"に名前を変更する必要がありました。私は簡単にこれを理解するために2時間を費やし、そして私はその手紙の公式インストールガイドに従いました。これはpip(公式にサポートされている)とconda(コミュニティにサポートされている)によるインストールに当てはまります。

20
Vitaly

どちらのエラーも、TensorFlowが必要とするMSVCP140.DLLをシステムがインストールしていないことを示します。

このエラーを修正するには

  1. MSVCP140.DLL%PATH%変数に入っているかどうかを確認してください。
  2. MSVCP140.DLL%PATH%にない場合は、このDLLを含む Visual C++ 2015再配布可能 (x64バージョン)をインストールしてください。
13
Barry Rosenberg

私はAMD cpu上でWin 7 Pro 64-bitを持っていますが、gpuは持っていません。 https://www.tensorflow.org/install/install_windows にある「ネイティブpipを使ったインストール」の指示に従っていました。インストール手順は問題ありませんでしたが、tensorflowをインポートしようとすると悪名高いものが生成されました。

ImportError: '_pywrap_tensorflow_internal'という名前のモジュールはありません

これは、設定によっては関係のない多くの問題が発生する可能性がある状況の1つのように思われます。すべて同じエラーが発生します。

私の場合は、MSVCP140.DLLをインストールすることが答えでした。

(a)C:\ Windows\System43\MSVCP140.DLLのファイルがある場合、および(b)64ビットシステムの場合、さらにC:\ Windows\SysWOW64\MSVCP140がある場合は、既にMSVCP140.DLLがあります。 DLL.

私はそれを手動でインストールしましたが、これは不要でした(再配布可能ファイルはVisual C++開発全体ではなく、大きくはありません)。それをインストールするには、このスレッドの前半に掲載されているリンクを使用してください: Visual C++ 2015 redistributable

また、Pythonはデフォルトのインストールディレクトリを上書きしてC:\ Program Files以外の場所に配置することをお勧めします。Windowsはそこにファイルの書き込み保護を試みるため、後で問題が発生します。

8
JWG

CPUのみのテンソルフローの場合:


私はコマンドを使ってtensorflowをインストールしました:

pip3 install --upgrade tensorflow

これはtensorflow 1.7をインストールしました
しかし、python 3.6.5 AMD64を使ってテンソルフローをインポートすることはできませんでした:

import tensorflow as tf

それで、私は以下のコマンドを使ってテンソルフローバージョンを1.7から1.5に格下げしました:

pip3 install tensorflow==1.5

これにより、以前のバージョンがアンインストールされ、1.5がインストールされました。今それは働きます。

私の CPUはAVX命令をサポートしていないようですtensorflow 1.7に必要なset

システムフォルダにMSVCP140.DLLを、環境変数のPATHEXT変数に.DLLを入れました。

8
Rakibul Haq

cuDNNは私の問題を引き起こします。 PATH変数が機能しません。私は私のcuDNNフォルダの中のファイルを丁寧なCUDA 8.0フォルダ構造にコピーしなければなりません。

7
Chris Han

TensorFlowMSVCP140.DLLを必要とします。これはあなたのシステムにインストールされていないかもしれません。それを解決するには、端末を開くか、このリンクを貼り付けてください。

C:\> pip install --upgrade https://storage.googleapis.com/tensorflow/windows/cpu/tensorflow-1.0.0-cp35-cp35m-win_AMD64.whl 

これはTensorFlowのCPUのみのバージョンをインストールすることです。

6
Fahtima

古いハードウェアで動く人のために:

あなたはtensorflow-gpu 1.6を使っているより古いCPUを持っていることにより、これと同じエラーを得るかもしれません。

あなたのcpuが2011年より前に作られたのなら、あなたのmax tensorflow-gpuのバージョンは1.5です。

Tensorflow 1.6はあなたのCPUのAVX命令を必要とします。ここで検証済み: Tensorflow Githubドキュメント

AVX対応CPU: Wiki AVX CPU

テンソルフローのために私のコンダ環境で私がしたこと:

pip install --ignore-installed --upgrade tensorflow-gpu==1.5
5
Jasen

試行錯誤し、VC++ 2015 RedistributablecuDNN DLL、およびその他すべての依存関係がPATHからアクセス可能であることを確認すると、Tensorflow GPUはPythonの3.5.2(これを書いている時点で)

Anacondaを使っているのであれば

  • conda create -n tensorflow-gpu python=3.5.2
  • activate tensorflow-gpu
  • pip install tensorflow-gpu

それからPythonインタプリタを開いて確認してください。

>>> import tensorflow as tf
>>> sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))

プロパティを持つデバイス0が見つかりました。
名前:GeForce 940M
メジャー:5マイナー:0
memoryClockRate(GHz)1.176
pciBusID 0000:06:00.0
総メモリ:2.00ギガバイト
空きメモリ:1.66GiB

クレジット: このきちんとしたガイド

4
Madhur

Tensorflowのバージョンごとに、異なるバージョンのCuDnnが必要です。 www.tensorflow.orgでは、彼らはインストールガイドでそれについて言及していませんでした!

私の場合はcuDNN 6を使用するtensorflowバージョン1.3を使用します。 https://github.com/tensorflow/tensorflow/releases

それらが一緒に一致する場合、あなたのtensorfowバージョンとcuDNNバージョンをチェックしてください。

それでもうまくいかない場合は、cuDNNのパス環境を設定してください。@Chris Hanのコメントを確認してください。

3
nguyenhoai890

私にとっての問題は、グラフィックカードの要件を満たしていないcuDNNライブラリでした。私はGTX980ti用に6.0バージョンをダウンロードしましたが、nvidiaウェブサイト上で推奨される計算能力は5.1( http://developer.nvidia.com/cuda-gpus )でしたので、5.1をダウンロードして6.0バージョンを置き換え私がしたようにすぐにそれが働き始めた。

3
Remus.A

あなたがWindowsにtensorflow GPUをインストールしようとしているなら、あなたは これ /簡単に面白いチュートリアルを見つけることができます。

注意:たとえばPyCharmを使用している場合は、インタプリタを作成したconda環境に変更する必要があります。

2
Wesam Na

Windowsシステムで この記事 に "DLL load failed"問題をトラブルシューティングするための一般的なアプローチを投稿しました。

  1. DLL依存関係アナライザー 依存関係 を使用して<Your Python Dir>\Lib\site-packages\tensorflow\python\_pywrap_tensorflow_internal.pydを分析し、欠けている正確なDLL(DLLの横に?で示される)を判別します。 .pydファイルのパスは、インストールしたTensorFlow 1.9 GPUのバージョンに基づいています。名前とパスが他のバージョンのTensorFlowで同じであるかどうかわかりません。

  2. 不足しているDLLの情報を探し、適切なパッケージをインストールして問題を解決してください。

2
GZ0

Windows上でPowershell/cmdを開いたままにしたくなるかもしれません。私は自分がPowershellを閉じて再び開くことを決心するまで妥当な時間を費やしました。

2
Victor Grego

私の答えは、私がwindows 10で以下を試してみたのと同じように、windows 10ユーザー向けです。anacondaを使用している場合は、すべて回避してanaconda-navigatorをインストールするだけです。コマンドを使用する

conda install -c anaconda anaconda-navigator

次に、コマンドプロンプトを使用して、コマンドを使用してナビゲータを起動できます。

anaconda-navigator

このコマンドを実行すると、仮想環境を作成し、python = 3.5.2で環境を作成し、guiを使用して検索ボックス内のモジュールを検索することによってモジュールtensorflow-gpuまたはtensorflowをインストールすることができます。あなたのために正しいcudaファイルをインストールする方法。アナコンダナビゲーターを使用するのが最も簡単な解決策です。

Anacondaを使用していない場合は、以下の点に注意してください。

tensorflow-gpu 1.3には、python 3.5.2、cuda development kit 8.0、およびcudaDNN 6.0が必要です。そのため、インストール時には必ずコマンドを実行してください。

pip install tensorflow-gpu==1.3

tensorflow-gpu 1.2.1以下にはpython 3.5.2、cuda development kit 8.0、およびcudaDNN 5.1が必要です。したがってインストール時には必ずコマンドを実行してください。

pip install tensorflow-gpu==1.2.1

以下は、上記の両方のプロセスで実行する必要がある手順です。パス変数の設定次のシステム変数が必要です。

CUDA_HOME = "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0"
CUDA_PATH = "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0"
CUDA_PATH_V8.0 = "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0"

あなたのPATHTEXTは他の拡張子と共に ".DLL"を含まなければなりません

".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.DLL"

またあなたのパスに次を追加

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\extras\CUPTI\libx64;
C:\Windows\SysWOW64;
C:\Windows\System32        

エラーが発生した場合は、mrryで以下のコードを実行するとダウンロードできます。このコードは設定を確認し、問題があるかどうかを確認します https://Gist.github.com/mrry/ee5dbcfdd045fa48a27d56664411d41c

参照: http://blog.nitishmutha.com/tensorflow/2017/01/22/TensorFlow-with-gpu-for-windows.html

上記の参考文献は非常に便利です。この回答に対する改善点についてコメントしてください。これが役立つことを願っています、ありがとう。

1
M2skills

私の2セント:

Windows 7にCUDA 8.0を正しくインストールしようとすると、たくさんの問題が発生しました。以前のバージョンがインストールされていてアップグレードしたいので、アンインストールしてCUDA 8.0(tensorflow 1.3用)をインストールしようとしました。インストールは毎回失敗し、私はCUDA 7.5にダウングレードしようとしました、そしてそれをインストールすることができましたが、テンソルフローに関する多くの問題を抱えていました(ここで説明されたPATH問題と同様)。短い話:私にとってうまくいったのは:

1)すべてのNVIDIAコンポーネントをアンインストールします(ディスプレイグラフィックスドライバを除く)。

2)CUDAツールキット8.0(およびパッチ)をダウンロードしてください。 https://developer.nvidia.com/cuda-downloads

3)CheckSum MD5(私はMS https://www.Microsoft.com/ja-jp/download/confirmation.aspx?id=11533 を使用しましたが、問題ありません)をチェックして、問題がないことを確認します(それは問題ありません)。私のWiFiルーターがどうやら)インストーラが正しくダウンロードされなかったことが数回起こった。

4)rootとしてCUDAツールキットインストーラーを実行します

5)cudnn 8.0 v6をダウンロードし、その場所をPATH変数 https://developer.nvidia.com/rdp/cudnn-download に追加します。

いくつかの頭痛を助け、救うことを願っています...

注:このスクリプトは私が問題をデバッグするのに大いに役立ちました! (ありがとう、mrry) https://Gist.github.com/mrry/ee5dbcfdd045fa48a27d56664411d41c

1
edgarbc

tensorflow 1.3は cuda 9.0 をまだサポートしていません。私は cuda 8.0 に格下げして、それでうまくいきます。

1
yichudu

私は私のために働いた解決策を提供しようとします。さまざまな問題がこの状況につながる可能性があります。

32ビットソフトウェアは64ビットOSで動作します。私は64ビットOSにanaconda-3(32ビット)をインストールしました。それは完全にうまくいっていました。私は自分のマシンにtensorflowをインストールすることにしましたが、最初はインストールされませんでした。私はtensorflowをインストールするためにconda環境を使っていて、このエラーを得ました。

解決策は 64ビットOSを実行している場合は64ビットanacondaをインストールし、32ビットOSの場合は32ビットanacondaをインストールする 。それから、Windows用のtensorflow Webサイト(anacondaインストール)で述べられている標準的な手順に従ってください。これは問題なくtensorflowをインストールすることを可能にしました。

1
coderredoc

TensorFlowリリース1.3.0では、Cudnn 5.0がこのエラーを出しているので、Cudnn 5.0の代わりにCudnn 6.0を使用する必要があります。パス変数をCudnn 6.0に追加することを忘れないでください。cudnn64_6.dllを使用すると、Tensorflowは正常に動作します。下のリンクを読んでください。 https://github.com/tensorflow/tensorflow/blob/master/RELEASE.md#release-130

1
Shivam Panwar

問題は私にとってcuDNNライブラリでした。 テストコード WindowsパスにcuDNN DLL(LIBファイルではない)のディレクトリ(おそらくbinフォルダ)を追加した後に実行できました。

参考のために、私はPIPと私のOSを使ってソースからTensorFlowをインストールしました:Windows 7とIDE:ビジュアルスタジオ2015。

1
Cloud Cho

見つかりませんでした。修正するために再配布可能なVisual C++ 2015をインストールします。

2019年にこの記事を見つけた人たちにとって、このエラーはPythonバージョン3.7がTensorFlowをサポートしていないためにも起こり得ます( https://www.tensorflow.org/install/pip を参照)。それで、Pythonのバージョンをチェックしてください。

python --version

3.6より大きい場合は、3.6にダウングレードする必要があります。アナコンダの場合:

conda install python=3.6

その後、TensorFlowをインストールしてください。

pip install tensorflow

ところで、私はGPUバージョンを持っていなかったので、私のケースではCUDA関連の問題はありませんでした。

0
Catalin Stoean