【Python】最新版PyTorch 1.11.0のインストール

【Python】最新版PyTorch 1.11.0のインストール サーバー

「Python 3.10にPyTorchをインストールできない・・・」
「PyTorch 1.11がサポートしているPythonのバージョンは?」

このような場合には、この記事の内容が参考となります。
この記事では、最新版のPythonに最新版のPyTorchをインストールする方法を解説しています。

本記事の内容

  • PyTorch 1.11はPython 3.10をサポートしているのか?
  • PyPI上の表記ミス
  • PyTorch 1.11.0のインストール
  • PyTorch 1.11.0の動作確認

それでは、上記に沿って解説していきます。

PyTorch 1.11はPython 3.10をサポートしているのか?

2022年3月11日にPyTorch 1.11.0がリリースされました。
PyTorch 1.10系は、Python 3.10がサポート対象外でした。

そのため、Python 3.10系にはPyTorch 1.10.2をインストールできませんでした。
インストールが失敗した様子は、次の記事でまとめています。

リリースされたばかりのPyTorch 1.11.0は、どうなのでしょうか?
果たして、Python 3.10をサポートしているのでしょうか?

PyTorch 1.11.0 リリースノート
https://github.com/pytorch/pytorch/releases/tag/v1.11.0

リリースノートでは、Python 3.10のサポートが記載されています。
よって、PyTorch 1.11はPython 3.10をサポートしていると言えます。

しかし、PyPIのページで確認した結果は以下の状態です。
https://pypi.org/project/torch/

この表記ミスについては、以下で説明します。

PyPI上の表記ミス

PyPI上でPython 3.10が記載されていないのは、setup.pyに原因があります。
setup.py上の下記コードで上手くPython 3.10が表記できないのでしょう。

この書き方なら、setup.pyを動かすPythonのバージョンに依存することになります。
コードを抜粋すると以下。

import sys

python_min_version = (3, 7, 0)
version_range_max = max(sys.version_info[1], 9) + 1

for i in range(python_min_version[1], version_range_max):
    print('Programming Language :: Python :: 3.{}'.format(i))

上記コードを各バージョンで動かした結果は、以下となります。

Python 3.10で動かした場合

Programming Language :: Python :: 3.7
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.9
Programming Language :: Python :: 3.10

Python 3.9で動かした場合

Programming Language :: Python :: 3.7
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.9

Python 3.8で動かした場合

Programming Language :: Python :: 3.7
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.9

上記のようになるのは、Python 3.9と3.8の場合はmaxが9になるからです。
その部分のコードは、以下。

max(sys.version_info[1], 9)

その場合、version_range_maxは「10」になります。
そうなると、Python 3.10は表記されません。

この結果より、PyPIではPython 3.9以下で動かした結果を表示しているのでしょう。
次のように変更すれば、Python 3.10が常時表示されるはずです。

max(sys.version_info[1], 10)

以上より、PyPI上の表記ミスはsetup.pyに原因があると言えます。
そして、PyPI上のPython 3.10がサポート対象外という記載は正しくありません。

よって、安心してPython 3.10にPyTorch 1.11.0をインストールしましょう。

PyTorch 1.11.0のインストール

Pythonのバージョンは、以下を利用します。

$ python -V
Python 3.10.2

インストール前の状況は、次の通りです。

$ pip list
Package    Version
---------- -------
pip        22.0.4
setuptools 60.9.3
wheel      0.36.2

インストールするのは、現時点で最新となる1.11.0となります。

インストール支援ツールより、下記コマンドを取得。

pip install torch==1.11.0+cpu torchvision==0.12.0+cpu torchaudio==0.11.0+cpu -f https://download.pytorch.org/whl/cpu/torch_stable.html

上記コマンドを実行した結果は、成功です。
どんなパッケージがインストールされたのかを確認します。

$ pip list
Package            Version
------------------ ----------
certifi            2021.10.8
charset-normalizer 2.0.12
idna               3.3
numpy              1.22.3
Pillow             9.0.1
pip                22.0.4
requests           2.27.1
setuptools         60.9.3
torch              1.11.0+cpu
torchaudio         0.11.0+cpu
torchvision        0.12.0+cpu
typing_extensions  4.1.1
urllib3            1.26.8
wheel              0.36.2

バージョン1.11.0だからと言って、過去バージョンと大きく変更はありません。
各パッケージのバージョンが異なる程度です。

以上、PyTorch 1.11.0のインストールを説明しました。
次は、PyTorch 1.11.0の動作確認を行います。

PyTorch 1.11.0の動作確認

PyTorchの動作確認用のコードです。
PyTorchのバージョンを表示します。

import torch

print(torch.__version__)

上記を実行した結果は、以下。

1.11.0+cpu

PyTorch 1.11.0を確認できました。
問題なくインストールができています。

以上、PyTorch 1.11.0の動作確認を説明しました。

タイトルとURLをコピーしました