はじめに
前回の記事[1]でtensorflowの環境を構築した。
pytorchも試してみたくなったのでやってみる。
環境構築といってもpipenvであたらしい仮想環境を作って必要なパッケージをインストールするだけ。
詳しく知りたい人は前回の記事[1]を見てください。
環境
Ubuntu20.04LTS
GPU Geforce RTX 2070 super
GPUドライバー 450.119.03
CUDA 11.0
cuDNN 8.0
python3.8.10
pipenv
pytorchのダウンロード
pytorch公式[2]に書いてあるコマンドを利用してダウンロード。
pipenvには探したところなかったのでpipでインストールした。
最新バージョンはCUDA11.0と合うものがないようだったので、pytorch1.8.0をダウンロード。
コマンドがそのまま書いてあるのでそれを打ち込むだけ。
pipでインストールするのでPipfileに反映されない点に注意。
ちなみにpipenvでインストールしたパッケージをpipenvで消すとpip listにも表示されなくなる。
これはpipenvがpipとvirtualenvの組み合わせだからだろう。
MNISTプログラムの作成
前回同様公式のは使わずこちらの記事[3]のプログラムを参考にする。
コピーして実行するもrequestsパッケージが足りないと言われたのでpipenvでインストール。
再度実行するとエラーが出た。
urllib.error.HTTPError: HTTP Error 503: Service Unavailable
要するにmnistのダウンロードサイトがなんか使えないらしい。
調べてみるとこのサイト[3]が見つかった。
サイトから直接ダウンロードしてデータを参照するパスを書き換えればいいらしい。
ダウンロードして解凍。
wget www.di.ens.fr/~lelarge/MNIST.tar.gz
tar -zxvf MNIST.tar.gz
このあと
train_set = MNIST('./', download=True,
transform=transforms.Compose([
transforms.ToTensor(),
]), train=True)
test_set = MNIST('./', download=True,
transform=transforms.Compose([
transforms.ToTensor(),
]), train=False)
のように./にパスを変更する。
実行してみるとうまくいった。
おわりに
とりあえずpytorchとtensorflowどちらも環境構築と動作確認は出来たので違いを本格的に理解していきたい。
それではまた!
参考文献
[1]:PyTorchでMNIST
[2]:INSTALLING PREVIOUS VERSIONS OF PYTORCH
[3]:HTTP Error when trying to download MNIST data