如何在PYTORCH中使用TENSORBOARD

2021-10-10 01:12:31 字數 2887 閱讀 9732

tensorboard是用於機器學習實驗的視覺化工具包。tensorboard允許跟蹤和視覺化指標,例如損失和準確性,視覺化模型圖,檢視直方圖,顯示影象等等。在本教程中,我們將介紹tensorboard的安裝,pytorch的基本用法以及如何視覺化在tensorboard ui中登入的資料。

安裝

$ conda install pytorch torchvision -c pytorch
or pip

$ pip install torch torchvision
在pytorch中使用tensorboard現在讓我們嘗試將tensorboard與pytorch一起使用!在記錄任何內容之前,我們需要建立乙個summarywriter例項。

import torch

from torch.utils.tensorboard import summarywriter

writer = summarywriter()

預設情況下將輸出到目錄./runs/

log scalars

在機器學習中,重要的是要了解關鍵指標,例如損失以及它們在培訓期間的變化。標量有助於節省每個訓練步驟的損失值或每個時期之後的準確性。

要記錄標量值,請使用 。例如,讓我們建立乙個簡單的線性回歸訓練,並使用add_scalar(tag,scalar_value,global_step=none,walltime=none)add_scalar

x = torch.arange(-5, 5, 0.1).view(-1, 1)

y = -5 * x + 0.1 * torch.randn(x.size())

​model = torch.nn.linear(1, 1)

criterion = torch.nn.mseloss()

optimizer = torch.optim.sgd(model.parameters(), lr = 0.1)

​def train_model(iter):

for epoch in range(iter):

y1 = model(x)

loss = criterion(y1, y)

writer.add_scalar("loss/train", loss, epoch)

optimizer.zero_grad()

loss.backward()

optimizer.step()

​train_model(10)

writer.flush()

呼叫flush()方法以確保所有未決事件均已寫入磁碟。

請參閱torch.utils.tensorboard教程 以找到更多可以登入的tensorboard視覺化型別。

如果不再需要摘要編寫器,請呼叫close()method。

writer.close()
執行tensorboard通過命令列安裝tensorboard以視覺化記錄的資料

$ pip install tensorboard
現在,啟動tensorboard,指定您在上面使用的根日誌目錄。引數logdir指向tensorboard將查詢其可以顯示的事件檔案的目錄。tensorboard將遞迴遍歷以logdir為根的目錄結構,以查詢。* tfevents。*檔案。

$ tensorboard --logdir=runs
轉到它提供的url或http://localhost:6006/

dashboard 顯示了損失和準確性在每個時期如何變化。還可以使用它來跟蹤訓練速度,學習率和其他標量值。在不同的訓練執行中比較這些指標有助於改善模型。

共享tensorboard dashboards

tensorboard.dev可讓您上載ml實驗結果並與任何人共享。使用tensorboard.dev託管,跟蹤和共享tensorboard dashboard。

安裝最新版本的tensorboard以使用uploader。

$ pip install tensorboard --upgrade
使用簡單的命令上傳和共享tensorboard。

$ tensorboard dev upload --logdir runs \

--name "my latest experiment" \ # optional

--description "****** comparison of several hyperparameters" # optional

需要幫助,請執行。$tensorboarddev--help注意:上傳的tensorboards是公開的,所有人都可以看到。不要上傳敏感資料。

通過終端提供的url實時檢視tensorboard。例如

如何在AndroidStudio中使用AIDL

本章節介紹如何在androidstudio中使用aidl 2.在aidl下建立乙個包,包裡建立乙個 aidl檔案,右鍵aidl new aidl aidl file 紅框就是建立完成後的樣子 3.在aidl檔案寫要被呼叫的方法,此方法不能有許可權修飾符 4.首先build下,然後建立乙個servic...

如何在Oracle中使用Sequence

sql server可以自增字段,但是oracle中在建表的時候可沒有這個選項,但是可以通過觸發器 trigger 或者序列 sequence 來實現,本文主要講述sequence。二者的區別oracle中自增字段的兩種方法的比較 trigger和sequence 建立sequence的語法很簡單,...

如何在Oracle中使用Sequence

sql server可以自增字段,但是oracle中在建表的時候可沒有這個選項,但是可以通過觸發器 trigger 或者序列 sequence 來實現,本文主要講述sequence。二者的區別oracle中自增字段的兩種方法的比較 trigger和sequence 在oracle中,沒有象ms sq...