我們知道TensorBoard是Tensorflow中的一個強大的視覺化工具,它可以讓我們非常方便地記錄訓練loss波動情況。如果我們是其它深度學習框架使用者(如Pytorch),而想使用TensorBoard工具,可以安裝TensorBoard的封裝版本TensorBoardX:
pip install tensorboardx
具體使用方法如下:
from tensorboardX import SummaryWriter
writer = SummaryWriter('tensorboard/')
x = range(100)
for i in x:
writer.add_scalar('y=2x', i * 2, i,)
writer.add_scalar('y=x^2', i ** 2, i,)
writer.close()
然後再再當前路徑下會生成名稱為tensorboard
資料夾及對應的記錄檔案,我們再使用命令 tensorboard --logdir tensorboard
,可以看到對應輸出:
(base) ➜ Learn-Pytorch tensorboard --logdir tensorboard
NOTE: Using experimental fast data loading logic. To disable, pass
"--load_fast=false" and report issues on GitHub. More details:
https://github.com/tensorflow/tensorboard/issues/4784
I1126 18:06:12.417282 6209499136 plugin.py:429] Monitor runs begin
Serving TensorBoard on localhost; to expose to the network, use a proxy or pass --bind_all
TensorBoard 2.9.0 at http://localhost:6006/ (Press CTRL+C to quit)
此時只需要按照提醒開啟http://localhost:6006/
路徑即可檢視資料視覺化情況,如下所示:
如果我們想將圖片儲存為向量圖或者匯出csv/json檔案,可以點選右邊的Show data download links
選項,即可出現對應的匯出選項:
最後,需要提到的是,因為Tensorboard太常用了,所以在目前最新的Pytorch版本中已經直接整合進來了。所以,現在使用Tensorboard只需要直接匯入torch.utils.tensorboard
即可:
from torch.utils.tensorboard import SummaryWriter
x = range(100)
for i in x:
writer.add_scalar('y=2x', i * 2, i,)
writer.add_scalar('y=x^2', i ** 2, i,)
writer.close()