import tensorflowを使用してtensorflowをインストールすると、dllファイルが見つからないというエラーが発生しました。多くのブログやスタックフローソリューションを調べたところ、バージョン番号のみが一致していませんでしたが、適切なバージョンが指定されていませんでした。正しいものなので、このガイドを手でピットを避けるように書いてください。ブラザーファンクションの指導と支援に改めて感謝します。
著者の環境:
python 版本3.6
tensorflow版本1.14
ImportError: Could not find 'cudart64_100.dll'
簡潔な答え:
-
エラーの種類と原因を注意深く分析します
-
独自のテンソルフローとCUDAバージョンを確認する
-
対応するバージョンを使用して問題を解決し、cudaとtfの適応、cudnnとcudaの適応、protobufとtfの適応を完了します。
1.エラーの種類の理由
問題は、cudaシステムのdllファイルのモジュールが見つからないことです。CUDA10.0をダウンロードする必要があるというプロンプトが表示され、最初にファイルがcudaのパスに存在するかどうかを確認します。パスを
介してC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA
cudaにアクセスします。 binディレクトリでcudart64_100.dll
モジュールを探します。ある
場合は、環境変数が追加されているかどうかを確認します。追加されていない場合は、cudaバージョンとtensorflowバージョンのマッチングの問題である可能性があります。
2.テンソルフローとCUDAバージョンを確認します
コマンドライン環境、最初に入力してpython --version
、あなたのPythonのバージョンが3.6であることを確認を
してからpip list
インストールしtensorflowのバージョンを確認する著者の独自のバージョンが1.14である。。
ではnvcc --version
CUDAのバージョンをチェックし、著者の以前のCUDAバージョンはV9.0.176です。
次のようにTesnsorflow公式ウェブサイト上で、対応するバージョン情報を探す:
あなたがいることがわかりますTensorflowバージョン> = 1.13、CUDAのバージョンのニーズは10.0であることをするとき、およびcudnnバージョン番号のニーズが7.4.1よりも大きくなるように、
ここで私が選びましたcudaバージョンをアンインストールしてtensorflowバージョンを適用
するにはC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA
パスを直接入力してフォルダーを削除し、環境変数を削除します。
高校生が作成したサーバーダウンロードリンクを見つけました。ここでのダウンロード速度は速くなります:
tensorflow関連のダウンロードリンク
3.対応するcudnn対応するcudaバージョンと一致します
cudaバージョンをインストールした後、jupyterを再度開いたimport tensorflow
ところ、成功しなかったことがわかり、見つからなかっ'cudnn64_7.dll'
たエラーが表示されました。
ImportError: Could not find 'cudnn64_7.dll'
このプロンプトは、cudnnモジュールのdllファイルが欠落していることを示しています。tensorflowバージョン1.13以降に対応するtensorflowドキュメントによると、cudnnはバージョン> 7.4.1である必要があり、cudnnバージョンとcudnnのディレクトリ構造をダウンロードします。次のとおりです。
ファイルをcudnnディレクトリに対応してcudaディレクトリに配置します。
4.対応するprotobuf対応するtfバージョンと一致します
この時点で、問題はないはずですimport tensorflow
。MMPを実行し続けましたが、スムーズに実行されず、プロンプト'descriptor'
エラーが表示されました。
ImportError: cannot import name 'descriptor'
stackflowで検索したところ、エラーの原因は、tfとproの間に依存関係があるため、protobufとtfのバージョンが対応していないことがわかりました。そこで、最初にproをアンインストールし、次にtfをアンインストールし、最後にtf、tfを再インストールします。自動的に修正されます依存関係プロがインストールされています。
途中でちょっとしたエピソードがありましたが、作者はvirtualenvのpy仮想環境を使っていたので、インストール後も'descriptor'
エラーが発生するので、ネイティブpy環境でテストしたところ、tfをインポートできることがわかりました。その理由は、システムがpy仮想環境でサイトパッケージを見つけられない可能性があるためです。仮想環境のpy-binの下のディレクトリを環境変数として設定し、通常どおり呼び出します。
最終結果は正常にインポートされます。