Windows での,TensorFlow 2.9(GPU 対応可能), Keras, scikit-learn, Python 用 opencv-python, pillow, matplotlib, seaborn のインストール手順を説明する.
【目次】
【サイト内の関連ページ】
このWebページに記載しているプログラムは https://github.com/tensorflow/tensorflow#download-and-setup をもとに作成
参考 Web ページ
GPU は,グラフィックス・プロセッシング・ユニットの略で、コンピュータグラフィックス関連の機能,乗算や加算の並列処理の機能などがある. NVIDIA CUDA ツールキット は,NVIDIA社が提供している GPU 用のプラットフォームである.
インストール手順の説明
そのことについて,より詳しい説明は: 別ページで説明している.
NVIDIA CUDA ツールキットのアーカイブのページ: https://developer.nvidia.com/cuda-toolkit-archive
NVIDIA cuDNN のページ: https://developer.nvidia.com/cudnn
必ず,使用する NVIDIA CUDA ツールキットにあう NVIDIA cuDNN を使うこと.
Windows での追加の注意点
NVIDIA CUDA ツールキットの nvcc の動作に必要.
NVIDIA CUDA 11.7, 11.6 で使うWindows での Build Tools for Visual Studio 2022 のインストール: 別ページで説明している.
NVIDIA CUDA 11.5 などで使うWindows での Build Tools for Visual Studio 2019 のインストール: 別ページで説明している.
但し,最新版ではない NVIDIA CUDA ツールキットを使うときには, NVIDIA CUDA ツールキットのインストーラに同封のNVIDIA ドライバは古いので,問題があるので, 前準備として,NVIDIA ドライバのインストールを行うこと.
次のページから,最新版のNVIDIA ドライバのダウンロードできる (Windows, Linux):
他のウインドウを開いている場合,NVIDIA CUDA ツールキットのインストールが失敗する場合がある.
TensorFlow を使うので,https://pypi.org/project/tensorflow-gpu/#filesで,必要な Python のバージョンを確認しておくこと. 2022年1月時点では,Python 3.7 か 3.8 か 3.9
「NVIDIA CUDA ツールキット, NVIDIA cuDNN のバージョンは何でも良い」か? そして, 「TensorFlow, PyTorch のバージョンも何でも良い (あるいは,TensorFlow, PyTorch を使う予定はない)」か?
NVIDIA CUDA ツールキット11.7.0, NVIDIA cuDNN 8.4.1 (2022/06時点) を使う.
その根拠:
必ずしも,最新の NVIDIA CUDA ツールキット を使えるとは限らないので確認が必要.
古い版を使うことになる. 組み合わせに注意が必要である. そのことについての詳しい説明は: 別ページで説明している.
Build Tools for Visual Studio 2022 (ビルドツール for Visual Studio 2022)もしくはVisual Studio 2022 を,前もってインストールしておく.
Windows での Visual Studio 2022 のインストール: 別ページで説明している.
Build Tools for Visual Studio 2022 (ビルドツール for Visual Studio 2022) のインストール: 別ページで説明している.
Windows のスタートメニューで「設定」,「アプリ」と操作して,「NVIDIA ・・・」を削除
hwinfo (URL: https://www.hwinfo.com) を使って調べることができる.
あとで、NVIDIA CUDA ツールキットをインストールするので、そのときに、NVIDIA ドライバもインストールすることにする.次へ進む.
但し, NVIDIA CUDA ツールキットの古いバージョンを使う場合には,次のページから,最新のNVIDIA ドライバをダウンロードして,インストールする.
NVIDIA ドライバのダウンロードページ: https://www.nvidia.co.jp/Download/index.aspx?lang=jp
NVIDIA ドライバのインストールが必要な場合は,このときに,同時にインストールする
次のページからダウンロードし,インストールする.
NVIDIA CUDA ツールキットのページ: https://developer.nvidia.com/cuda-toolkit-archive
NVIDIA CUDA クイックスタートの公式ページ: https://docs.nvidia.com/cuda/cuda-quick-start-guide/index.html
管理者として実行した コマンドプロンプトで,次のコマンドを実行.
v11.7」のところは,実際にインストールされているバージョンを確認し,読み替えてください.
cd "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\bin" curl -O http://www.winimage.com/zLibDll/zlib123dllx64.zip call powershell -command "Expand-Archive zlib123dllx64.zip" copy zlib123dllx64\dll_x64\zlibwapi.dll .
Windows で 「Could not locate zlibwapi.dll. Please make sure it is in your library path!」と表示されるときの対処:
ここの説明を参考に ZLIB DLL をインストールする.
cuDNN のダウンロードのため.
「Join now」をクリック.その後,画面の指示に従う. 利用者本人が,電子メールアドレス,表示名,パスワード,生年月日を登録.利用条件等に合意.
「C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7」に展開(解凍)した場合は, すでに パスは通っているので,何もしなくてよい.
Windowsのコマンドプロンプトを開き,次のコマンドを実行.エラーメッセージが出ないことを確認.
where cudnn64_8.dll
システム環境変数 CUDNN_PATH の設定
管理者として実行した コマンドプロンプトで,次のコマンドを実行.
「C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7」は, 実際に展開(解凍)したディレクトリに読み替えること.
call powershell -command "[System.Environment]::SetEnvironmentVariable(\"CUDNN_PATH\", \"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\", \"Machine\")"
なお,Python 3.10 は, TensorFlow 2.9.1 (2022/6 時点の最新版) , PyTorch Stable (1.11.0) (2022/6 時点の最新の Stable 版) に対応している.
Python 3.10 の根拠:
次のページにより確認.
TensorFlow のタグのページ: https://github.com/tensorflow/tensorflow/tags で確認.
2022年3月時点では次の通りである.
2022年3月時点では次の通りである.
その根拠: https://pytorch.org/ に表示される https://download.pytorch.org/whl/lts/1.8/torch_lts.html, https://download.pytorch.org/whl/cu116/torch_stable.html で確認
Ubuntu で,システム Python 以外の Python をインストールしたい場合は pyenv が便利である: 別ページで説明している.
Python の公式ページ: http://www.python.org/
Python は,次のコマンドで起動できる.
システム Python を用いるときは,pip, setuptools の更新は次のコマンドで行う.
sudo apt -y update sudo apt -y install python3-pip python3-setuptools
pip は,次のコマンドで起動できる.
python -m pip install -U pip setuptools jupyterlab jupyter jupyter-console jupytext nteract_on_jupyter spyder
端末で,次のコマンドを実行.
sudo apt -y update sudo apt -y install python-is-python3 python3-dev python-dev-is-python3 python3-pip python3-setuptools python3-venv sudo pip3 uninstall ptyprocess sniffio terminado tornado jupyterlab jupyter jupyter-console jupytext nteract_on_jupyter spyder sudo apt -y install jupyter jupyter-qtconsole spyder3 sudo apt -y install python3-ptyprocess python3-sniffio python3-terminado python3-tornado sudo pip3 install -U jupyterlab jupyter jupyter-console jupytext nteract_on_jupyter
python --version
※ 「 python -m pip install ...」は,Python パッケージをインストールするためのコマンド.
python -m pip install -U pip setuptools
※ トラブルの可能性を減らすために,次の操作でアンインストールを行っておく.
python -m pip uninstall -y tensorflow tensorflow-cpu tensorflow-gpu tensorflow-text tf-models-official tf_slim tensorflow_datasets tensorflow-hub keras keras-tuner keras-visualizer
python -m pip install -U tensorflow tf-models-official tf_slim tensorflow_datasets tensorflow-hub keras keras-tuner keras-visualizer numpy pillow pydot matplotlib seaborn pandas scipy scikit-learn scikit-learn-intelex opencv-python opencv-contrib-python python -m pip install git+https://github.com/tensorflow/docs python -m pip install git+https://github.com/tensorflow/examples.git python -m pip install git+https://www.github.com/keras-team/keras-contrib.git
TensorFlow がインストールできたかを確認したい.
バージョン番号が表示されれば OK.下の図とは違うバージョンが表示されることがある.
python -c "import tensorflow as tf; print( tf.__version__ )"
次のようなメッセージが出た場合には,メッセージに従い, NVIDIA ドライバ,NVIDIA CUDA ツールキット, NVIDIA cuDNN のインストールを行う. 但し,GPU がない場合には,このメッセージを無視する.
pip show tensorflow
TensorFlow が GPU を認識できているかの確認は,端末で,次を実行して行う.
python -c "from tensorflow.python.client import device_lib; print(device_lib.list_local_devices())"
実行結果の中に,次のように「device_type: "GPU"」があれば,GPUが認識できている.エラーメッセージが出ていないことを確認しておくこと.
ここで,GPU があるのに,TensorFlow から認識されていないかもしれない. TensorFlow GPU 版が指定するバージョンの NVIDIA CUDA ツールキット,NVIDIA cuDNN がインストールされていないことが原因かも知れない.
TensorFlow 2.5 の GPU 版での,cuDNN のバージョンは 8.2,TensorFlow 2.4 の GPU 版での,cuDNN のバージョンは 8.0.5,TensorFlow 2.3, 2.2, 2.1 の GPU 版での,cuDNN のバージョンは 7.6.そして,TensorFlow 1.13 以上 TensorFlow 2.0 までの GPU 版での,cuDNN のバージョンは7.4 が良いようである.
Windows での NVIDIA ドライバ,NVIDIA CUDA ツールキット 11.7.0,NVIDIA cuDNN v8.4.1 のインストール: 別ページで説明している.
Windows で Python プログラムを動かす.
Python プログラムの実行
Python 開発環境(Jupyter Qt Console, Jupyter ノートブック (Jupyter Notebook), Jupyter Lab, Nteract, Spyder, PyCharm, PyScripterなど)も便利である.
Python 開発環境の説明: 別ページにまとめている.
結果として 「b'Hello, TensorFlow!'」のように表示されるので確認する.
import tensorflow as tf hello = tf.constant('Hello, TensorFlow!') print(hello)
結果として 「42」のように表示されるので確認する.
「tf.add(a, b)」と「a + b 」は,同じ結果になる
import tensorflow as tf a = tf.constant(10) b = tf.constant(32) print( tf.add(a, b) ) print( a + b )
結果として 「[[ 12.]]」のように表示されるので確認する.
import tensorflow as tf matrix1 = tf.constant([[3., 3.]]) matrix2 = tf.constant([[2.],[2.]]) print( tf.matmul(matrix1, matrix2) )