環境
- python: 3.6.8
- pytorch: 1.1.0
(注意)tensorboardが標準装備されているのは、pytorch 1.1.0からです。
インストール
python, pytorchはインストールされているものとします。
pip install tb-nightly
pip install future
コーティング
変数train_loss
とtrain_acc
にトレーニングのlossの値
とaccracyの値
が入っているとします。また、変数idx
に「何回目の記録か」が入っているとします。
from torch.utils.tensorboard import SummaryWriter
writer = SummaryWriter(log_dir=<logを書き込む場所>)
~色々~
writer.add_scalar('train_loss', train_loss, idx)
writer.add_scalar('train_acc', train_acc, idx)
これで、<logを書き込む場所>
の所にlogファイルが生成されます。
ちなみに僕は<logを書き込む場所>
を./logs/<modelのid>
みたいな感じにしています。
いざ、tensorboard
tensorboard --logdir <logを書き込んだ場所>
とすると、ローカルサーバーが立ち上がるので、chromeなどのブラウザにそのURLを打ち込むと立ち上がります。
ssh先でtensorboard
僕は研究室のサーバーにssh接続して計算させていますので、その場合は少し手順が必要になります。
下のようにオプションをつけてssh接続します。
ssh ユーザ名@サーバーのIPアドレス -L 6006:localhost:6006
6006はTensorBoardのポート番号です。
ログイン後に、ssh先で
tensorboard --logdir <logを書き込んだ場所>
とします。
そして、ローカルでlocalhost:6006
をブラウザなどで叩きます。
すると、
立ち上がります!