【環境構築】Ubuntu18.04+Python3.7でPyTorch1.2.0(PyTorch1.0.1)の開発環境を構築していく

目次

はじめに

こんにちは、がんがんです。インターンにてPyTorchの実験を行う開発環境を整える必要がありました。そのため、ブックマークにてまとめていたものを備忘録として改めてまとめておきこうと思います。

環境

  • Ubuntu 18.04 LTS
  • Python 3.7.4
  • CUDA 10.0
  • PyTorch 1.2.0(PyTorch 1.0.1に関しても書いてます)

参考

pyenvのインストール

環境を汚してしまうとあとで死に目にあうため、まずはpyenv環境を構築します。export先は.bashrcとするため、nanoコマンドから直接書き込んでも大丈夫です(参照が一部zshなので注意です)。

$ git clone https://github.com/yyuu/pyenv.git ~/.pyenv
$ git clone https://github.com/yyuu/pyenv-pip-rehash.git ~/.pyenv/plugins/pyenv-pip-rehash
$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
$ echo 'eval "$(pyenv init -)"' >> ~/.bashrc
$ source ~/.bashrc

pyenvのインストールが成功しているかを以下の確認してみましょう。

$ pyenv --version

anacondaのインストール

Python3.7anacondaをインストールしていきます。まずは必要なパッケージを先にインストールします。パッケージをインストールせずとも上手くいくこともありますが入れておいた方が念のためです。

$ sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev libpng-dev

anacondaのバージョンを確認してインストールします。

$ pyenv install -l | grep anaconda
$ pyenv install anaconda3-2019.07

Python3.7も一緒にインストールします。

$ pyenv install -l | grep 3.7
$ pyenv install 3.7.4

anacondaの仮想環境を構築

condaの仮想環境は以下のコマンドで作成することが可能です。

$ conda create -n <環境名> Python=x.x anaconda

今回作成したいのは以下の名前です。

$ conda create -n pth1.2.0 Python=3.7 anaconda

PyTorch(1.2.0)のインストール

PyTorchのインストールは公式ページからいけます。condaから行う場合、pipから行う場合のどちらも記載しておきます。

condaの場合

$ conda install pytorch torchvision cudatoolkit=10.0 -c pytorch

pipの場合(pip=pip3の場合)

$ pip3 install torch torchvision

PyTorch(1.0.1)のインストール

最新のPyTorchをインストールした場合、上手く動作しないことがあります。私の場合、TensorboardXの実行時にエラーがおき、原因はPyTorchのバージョンによるものである可能性が高かったです。TensorboardXのissuesについては貼っておきます。 https://github.com/lanpa/tensorboardX/issues/483

この場合、.whlファイルを直接インストールする必要があります。上記の環境でPyTorch=1.0.1をインストールする場合は以下のコマンドです。

$ pip3 install https://download.pytorch.org/whl/cu100/torch-1.0.1.post2-cp37-cp37m-linux_x86_64.whl

公式ではtorchvisionについてバージョン指定がありません。しかし、こちらについてもバージョンを合わせておくと後のエラーを防ぐことが可能です。

$ pip3 install torchvision=0.2.0

PyTorchの動作確認

PyTorchに関する確認

実際にインストール出来ているかを確認していきます。

$ python
>>> import torch
>>> torch.__version__
>>> x = torch.rand(5, 3)
>>> print(x)

cudaに関する確認

cudaに関する確認コマンドは以下の通りです。

# CUDAが有効かどうかの確認
>>> torch.cuda.is_available()
# デバイス名の確認
>>> torch.cuda.get_device_name(0)

おわりに

今回はUbuntu環境にてPyTorchの実行環境を構築しました。現在は研究室の環境でも同様の環境を作成しているところです。この備忘録を参考にしながら楽しんで環境を構築していこうと思います。