スポンサーリンク

学習中のlossをグラフで表示するlivelossplotをPyTorchで動かす

Machine Learning

ディープラーニングの学習中にlossや正解率などを動的にグラフで表示したい場合は、livelossplotを用いると簡単に表示することができる。

livelossplotライブラリのインストールと読み込み

pipコマンドでlivelossplotライブラリをインストールし、importします。

!pip install livelossplot --quiet

from livelossplot import PlotLosses

lossとaccのサンプル作成

livelossplotで用いるためのlossと正解率(acc)をダミーで作成します。

import torch

# lossとaccのサンプル
loss = torch.exp(torch.arange(2, 0, -0.01))**2
val_loss = torch.exp(torch.arange(2, 0, -0.0095))**2.5

acc = 1-torch.exp(torch.arange(0, -2, -0.01))
val_acc = 1-torch.exp(torch.arange(0, -2, -0.0095))*1.2

livelossplotの使い方

lossやaccを、dictionary(ここではlogs)として保存し、liveloss.update()の引数にlogsを指定して、liveloss.send()するだけです。

epoch = 200

liveloss = PlotLosses()
for n in range(epoch):
    logs = {}
    logs['loss'] = loss[n]
    logs['val_loss'] = val_loss[n]

    logs['acc'] = acc[n]
    logs['val_acc'] = val_acc[n]


    liveloss.update(logs)
    liveloss.send()

関連記事、参考資料

コメント