Windows 10+GPU+Anaconda 3+Pytorch+TensorFlow+Keras構成方法
6108 ワード
補足:TensorflowがGPUのコードをサポートしているかどうかをテストします.
配環境ということは本当によく見られるもので、packageの更新に伴い、これまでの配環境の経験が使えなくなったので、最近の配環境の曲がりくねった道を記録しておきます.
以前のブログWindows 10 GPU版Tensorflow構成チュートリアル+Anaconda 3+Jupyter Notebookは依然として使用できます.
#Windows 10+GPU+Anaconda 3+Pytorch+TensorFlow+Keras構成方法
最近では顔検出のためpytorchフレームワークに触れており,まず顔認識システムDface移植WIN 64環境詳細(GPU対応)を深く学習して配置した.しかし、このブロガーの経験も少し古く、私は彼のやり方では成功しなかった.成功した構成手順は、次のようにまとめられます.
####1.環境情報オペレーティングシステム:Windows 10 Anaconda 3バージョン:4.2.0 CUDAバージョン:8.0 cuDNNバージョン:5.1これらが既に構成されていると仮定し、なければWindows 10 GPU版Tensorflow構成チュートリアル+Anaconda 3+Jupyter Notebookを参照
####2.プロファイル(1)environment-win 64を準備する.yml Anaconda環境を作成するためのプロファイルをNotepad++で開き、ファイルの最初の行は自分の望むenvironment名を変更し、224行近くの3行のコードを切り取って別の場所に置くことができます.
次にymlファイルを保存します.主にcondaがこのいくつかのpackageをインストールすると
(2)pytorch-0.3.0-py36_0.3.0cu80.tar.bz 2パスワード:8 u 21このファイルは(1)の最初のpackageです.
####3.正式なインストール DOSで に入る. conda環境 の構成 DOSは に入る.ネットワーク接続を切断し、 ネットワークを切断する.
期間中にエラーが発生し、○○packageがインストールに成功しなかった場合、
####4.テストインストール結果はコマンドラインにあります
####5.GPU版TensorFlowをインストールする前にインストールしたpytorchはCUDA 8に依存する.0,これは我々がインストールしたGPU版tensorflowもCUDA版の要求を満たさなければならない.そうしないと、インストールが成功しても
これらのファイルが1つ欠けていると、ImportErrorのエラーが発生します.
コマンドラインでconda環境に入る
インストール中に
Anacondaが持参したpipダウンロードwhlファイルで生成されたキャッシュは自動的にクリアされず、後で再利用するために必要なwhlを見つけることができます.この場所では、AppDataは非表示フォルダであることに注意してください.
時々pipでpackageをインストールして
####6.インストールKerasもバージョンの更新により、Kerasの古いバージョンと新しいバージョンが大きく異なり、通常はKeras-2.1.6以上でエラーが発生します.
インストールを選択しました
2つ目はバージョンの違いがもたらす問題がAバージョンのKeras訓練である.h 5モデルファイルはBバージョンにインポートできないかもしれませんが、今のところ良い方法は見えません.バージョンに合わせてから訓練するしかありません.そうしないと、失敗する危険があります.
PS:tensorflowとCUDAバージョンのマッチングに関する研究は、この記事を見ることができます.
import tensorflow as tf
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
配環境ということは本当によく見られるもので、packageの更新に伴い、これまでの配環境の経験が使えなくなったので、最近の配環境の曲がりくねった道を記録しておきます.
以前のブログWindows 10 GPU版Tensorflow構成チュートリアル+Anaconda 3+Jupyter Notebookは依然として使用できます.
#Windows 10+GPU+Anaconda 3+Pytorch+TensorFlow+Keras構成方法
最近では顔検出のためpytorchフレームワークに触れており,まず顔認識システムDface移植WIN 64環境詳細(GPU対応)を深く学習して配置した.しかし、このブロガーの経験も少し古く、私は彼のやり方では成功しなかった.成功した構成手順は、次のようにまとめられます.
####1.環境情報オペレーティングシステム:Windows 10 Anaconda 3バージョン:4.2.0 CUDAバージョン:8.0 cuDNNバージョン:5.1これらが既に構成されていると仮定し、なければWindows 10 GPU版Tensorflow構成チュートリアル+Anaconda 3+Jupyter Notebookを参照
####2.プロファイル(1)environment-win 64を準備する.yml Anaconda環境を作成するためのプロファイルをNotepad++で開き、ファイルの最初の行は自分の望むenvironment名を変更し、224行近くの3行のコードを切り取って別の場所に置くことができます.
- pytorch=0.3.0=py36_0.3.0cu80
- vc=14.1=h21ff451_0
- vs2017_runtime=15.4.27004.2010=0
次にymlファイルを保存します.主にcondaがこのいくつかのpackageをインストールすると
PackageNotFoundError: Package not found xxxx
と間違えて報告され、いっそ取り除かれ、結果は影響しません.環境構成が完了したら、conda list
pip list
で後の2つのpackageが存在するかどうかを確認できます.(2)pytorch-0.3.0-py36_0.3.0cu80.tar.bz 2パスワード:8 u 21このファイルは(1)の最初のpackageです.
####3.正式なインストール
environment-win64.yml
所在ディレクトリconda env create -f environment-win64.yml
conda install numpy mkl cffi
pytorch-0.3.0-py36_0.3.0cu80.tar.bz2
ファイル所在ディレクトリconda install –offline pytorch-0.3.0-py36_0.3.0cu80.tar.bz2
期間中にエラーが発生し、○○packageがインストールに成功しなかった場合、
activate
は環境にpip
またはconda install
で再インストールされます.現在のバージョン番号がインストールできない場合は、バージョンを変更してもいいです.####4.テストインストール結果はコマンドラインにあります
activate
python
import torch
x = torch.Tensor([1.0])
xx = x.cuda()
print(xx)
#cuDNN TEST
from torch.backends import cudnn
print(cudnn.is_acceptable(xx))
True
に戻るとGPU版のPytorchのインストールに成功したことを証明します####5.GPU版TensorFlowをインストールする前にインストールしたpytorchはCUDA 8に依存する.0,これは我々がインストールしたGPU版tensorflowもCUDA版の要求を満たさなければならない.そうしないと、インストールが成功しても
InternalError:failed to create session
CUDA driver version is insufficient for CUDA runtime version
とエラーが発生する.2018-09-01 01:24:19.278049: E C:\tf_jenkins\workspace\rel-win\M\windows-gpu\PY\35\tensorflow\core\common_runtime\direct_session.cc:168] Internal: cudaGetDevice() failed. Status: CUDA driver version is insufficient for CUDA runtime version
Traceback (most recent call last):
File "", line 1, in
File "D:\Program Files\Anaconda3\envs\Anaconda3\lib\site-packages\tensorflow\python\client\session.py", line 1509, in __init__
super(Session, self).__init__(target, graph, config=config)
File "D:\Program Files\Anaconda3\envs\Anaconda3\lib\site-packages\tensorflow\python\client\session.py", line 628, in __init__
self._session = tf_session.TF_NewDeprecatedSession(opts, status)
File "D:\Program Files\Anaconda3\envs\Anaconda3\lib\site-packages\tensorflow\python\framework\errors_impl.py", line 473, in __exit__
c_api.TF_GetCode(self.status.status))
tensorflow.python.framework.errors_impl.InternalError: Failed to create session.
D:\Anaconda3\envs\pytorch-gpu\Lib\site-packages\tensorflow\python\platform\build_info.py
でこのバージョンのTensorFlowで採用されているCUDAバージョンを表示できますmsvcp_dll_name = 'msvcp140.dll'
cudart_dll_name = 'cudart64_90.dll'
cuda_version_number = '9.0'
nvcuda_dll_name = 'nvcuda.dll'
cudnn_dll_name = 'cudnn64_7.dll'
cudnn_version_number = '7'
これらのファイルが1つ欠けていると、ImportErrorのエラーが発生します.
tensorflow==1.5.0
以降のバージョンをインストールしてみます.サポートされているcudaは9.0です.そこで今回はtensorflow==1.2.0
をインストールすることにしました.また、1.2.0版のtensorflowにはこのbuild_info.py
ファイルはありません.コマンドラインでconda環境に入る
activate pytorch-gpu
pip install tensorflow-gpu==1.2.0
インストール中に
html5lib-0.9999999
またはmarkdown=2.6.9
のwheelがbuildできないなどのエラーが発生する可能性があります.私の方法はこのバージョンのwhlファイルをダウンロードして手動でインストールすることです.pip install xxx.whl
Anacondaが持参したpipダウンロードwhlファイルで生成されたキャッシュは自動的にクリアされず、後で再利用するために必要なwhlを見つけることができます.この場所では、AppDataは非表示フォルダであることに注意してください.
C:\Users\ \AppData\Local\pip\cache\wheels
時々pipでpackageをインストールして
pip OSError: [Errno 28] No space left on device
を報告して、それから私はC盤がもうすぐ彼にいっぱいになることを発見して、断固としていくつかcacheをクリアして、それでいいです.####6.インストールKerasもバージョンの更新により、Kerasの古いバージョンと新しいバージョンが大きく異なり、通常はKeras-2.1.6以上でエラーが発生します.
Traceback (most recent call last):
File "models.py", line 24, in
model = NIH()
File "models.py", line 19, in NIH
model.add(Activation('softmax'))
File "/home/eric/anaconda3/lib/python3.6/site-packages/keras/models.py", line 522, in add
output_tensor = layer(self.outputs[0])
File "/home/eric/anaconda3/lib/python3.6/site-packages/keras/engine/topology.py", line 619, in __call__
output = self.call(inputs, **kwargs)
File "/home/eric/anaconda3/lib/python3.6/site-packages/keras/layers/core.py", line 304, in call
return self.activation(inputs)
File "/home/eric/anaconda3/lib/python3.6/site-packages/keras/activations.py", line 29, in softmax
return K.softmax(x)
File "/home/eric/anaconda3/lib/python3.6/site-packages/keras/backend/tensorflow_backend.py", line 2963, in softmax
return tf.nn.softmax(x, axis=axis)
TypeError: softmax() got an unexpected keyword argument 'axis'
インストールを選択しました
pip install keras==2.1
2つ目はバージョンの違いがもたらす問題がAバージョンのKeras訓練である.h 5モデルファイルはBバージョンにインポートできないかもしれませんが、今のところ良い方法は見えません.バージョンに合わせてから訓練するしかありません.そうしないと、失敗する危険があります.
PS:tensorflowとCUDAバージョンのマッチングに関する研究は、この記事を見ることができます.