WindowsにPythonとCDUA対応PyTorchをインストールする方法
概要
Windowsで機械学習を行う環境として、PythonとCUDAとPyTorchをインストールする方法について説明します。
環境
- Windows 22H2
- Python 3.11.4
- PyTorch 2.0.1+cu118
Pythonのインストール
機械学習のためにPythonとライブラリのPyTorchをインストールします。機械学習のためのライブラリとしては、PyTorchのほかにTensorFlowもありますが、WindowsではCUDAのサポートがなくなったため、GPUを利用した深層学習はできなくなりました。厳密にいえばWSLを利用すればよいのですが、セットアップが煩雑であまり好きではありません。
そこで、PythonとPyTorchの組み合わせで機械学習を行うことができる環境を用意します。
インストールするPythonについてPyTorchが対応しているバージョンをインストールする必要があります。対応するバージョンは、次のページから確認できます。
https://pypi.org/project/torch/
記事の執筆時点で確認したところ、対応しているPythonのバージョンの最新は3.11でした。そこでバージョン3.11をインストールすることにします。
Pythonのインストールには、ほとんど手間のかからないwingetを利用します。wingetはMicrosoftが公式に用意しているパッケージマネージャーです。これを使えば、コマンドひとつでインストール可能です。
インストールには、wingetを使うため、PowerShellまたはコマンドプロントを起動します。その後、次のコマンドを実行します。
winget install python.python.3.11
これで、Pythonのインストールは終わりです。
PyTorchとCUDAのインストール
次に、PyTorchとGPUでの深層学習を行うためにCUDAをインストールします。インストールには、Pythonのインストールと同様にPowerShellまたはコマンドプロントを使うので、起動します。この時、環境変数を読み込むために、一度ソフトウェアを閉じてからもう一度起動します。
PyTorchとCUDAについて、一緒にインストールすことができます。インストールのためのコマンドは、PyTorchの公式サイトから確認できます。
インストールしたいPyTorchやOSやCUDAのバージョンなどを指定することで、インストールのためのコマンドが表示されます。
今回、私が実行したコマンドは次です。CUDAのバージョンについて、利用可能な最新のものに変更しています。
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
何事もなければ、これでPythonとPyTorchとCUDAのインストールは終わりです。
動作確認
PythonやPyTorchがちゃんとインストールされているか、次のコマンドで確認できます。
最初に、Pythonの起動を確認します。
python3 または python
次に、Pythonのコードを実行してPyTorchを読み込むことが可能か確認します。
import torch
print(torch.cuda.is_available())
# True
Trueと表示されれば、GPUを認識しているということになります。
さいごに
wingetを使うことで、少しだけですが楽ができました。また、昔にTensorflowをインストールした時よりも、はまることもなくスムーズに進んだので良かったです。GPUのサポートなどもあるので、今後は何か理由がない限りTensorflowよりもPyTorchを利用するほうがよさそうです。