pytorch 可視化筆記3 TensorBoard 可視化圖片和網絡

環境配置開始有些問題(Pytorch1.4+tensorflow2.0+tensorboard2.0),顯示不出來,然後更新了下軟件能正常顯示。

修改後配置如下:

系統:Windows 10

Pytorch:1.4

tensorflow-gpu: 2.1.0

tensorboard: 2.1.1

import torch
import torchvision
from torch.utils.tensorboard import SummaryWriter
from torchvision import datasets, transforms

# 設置輸出文件目錄
writer = SummaryWriter('runs/test')

transform = transforms.Compose([transforms.ToTensor(), transforms.Normalize((0.5,), (0.5,))])
trainset = datasets.MNIST('./mnist_train', train=True, download=True, transform=transform)
trainloader = torch.utils.data.DataLoader(trainset, batch_size=64, shuffle=True)
model = torchvision.models.resnet50(False)
# Have ResNet model take in grayscale rather than RGB
model.conv1 = torch.nn.Conv2d(1, 64, kernel_size=7, stride=2, padding=3, bias=False)
images, labels = next(iter(trainloader))

grid = torchvision.utils.make_grid(images)
writer.add_image('images', grid, 0)
# 寫入圖像數據 
writer.add_graph(model, images)
# 寫入模型
writer.close()

熟悉Pytorch的應該知道使用Pytroch的dataset導入數據集的方式和下載到本地後的文件後的文件目錄,使用python下載有時候速度會比較慢,可以全部或部分粘貼下載地址到迅雷下載,下載好後拷貝到對應目錄。

下面顯示的是路徑設置爲 D:\workspace\pytorch\pytorch_tutorial\mnist 時生成的文件結構,自己只需要下載./MNIST/raw目錄下4個gz結尾的壓縮文件。

運行上面的代碼後,將創建兩個新目錄:mnist_train和runs。 -mnist_train包含MNIST數據集。-runs 包含tensorboard運行數據。

我們可以使用tensorboard,需要使用--logdir參數指定運行的存儲位置。

tensorboard --logdir=runs

訪問 http://localhost:6006/ TensorBoard應與MNIST圖像一起出現

TENSORBOARD模塊函數介紹:

torch.utils.tensorboard.writer.SummaryWriter(log_dir=None, comment='', purge_step=None, max_queue=10, flush_secs=120, filename_suffix='')
  • log_dir(string) - 保存目錄位置。默認值爲runs / CURRENT_DATETIME_HOSTNAME,每次運行後都會更改。使用分層文件夾結構輕鬆比較運行。例如,爲每個新實驗傳遞'runs / exp1','runs / exp2'等,以便比較它們。
  • comment(string) - 註釋log_dir後綴附加到默認值 log_dir。如果log_dir已分配,則此參數無效
add_scalar(tag, scalar_value, global_step=None, walltime=None)
# 增加一個標量數據
add_graph(model,input_to_model = None,verbose = False)
# 將模型添加到summary
add_figure(tag,figure,global_step = None,close = True,walltime = None)
# 將matplotlib圖形渲染爲圖像並將其添加到summary中
add_images(tag, img_tensor, global_step=None, walltime=None, dataformats='NCHW')
# 將batch圖像添加到summary中

 

參考文獻

https://zhuanlan.zhihu.com/p/79113234

https://pytorch.org/docs/stable/tensorboard.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章