เขียนเหตุการณ์ Tensorboard ด้วยการเรียกใช้ฟังก์ชั่นอย่างง่าย
การเปิดตัวปัจจุบัน (v2.6.2.2) ถูกทดสอบใน Anaconda3 ด้วย pytorch 1.11.0 / torchvision 0.12 / tensorboard 2.9.0
รองรับ scalar , image , figure , histogram , audio , text , graph , onnx_graph , embedding , pr_curve , mesh , hyper-parameters และ video สรุป
คำถามที่พบบ่อย
pip install tensorboardX
หรือสร้างจากแหล่งที่มา:
pip install 'git+https://github.com/lanpa/tensorboardX'
คุณสามารถเลือกติดตั้ง crc32c เพื่อเพิ่มความเร็ว
pip install crc32c
เริ่มต้นจาก TensorBoardX 2.1 คุณต้องติดตั้ง soundfile สำหรับฟังก์ชั่น add_audio() (200x Speedup)
pip install soundfile
python examples/demo.pytensorboard --logdir runs # demo.py
import torch
import torchvision . utils as vutils
import numpy as np
import torchvision . models as models
from torchvision import datasets
from tensorboardX import SummaryWriter
resnet18 = models . resnet18 ( False )
writer = SummaryWriter ()
sample_rate = 44100
freqs = [ 262 , 294 , 330 , 349 , 392 , 440 , 440 , 440 , 440 , 440 , 440 ]
for n_iter in range ( 100 ):
dummy_s1 = torch . rand ( 1 )
dummy_s2 = torch . rand ( 1 )
# data grouping by `slash`
writer . add_scalar ( 'data/scalar1' , dummy_s1 [ 0 ], n_iter )
writer . add_scalar ( 'data/scalar2' , dummy_s2 [ 0 ], n_iter )
writer . add_scalars ( 'data/scalar_group' , { 'xsinx' : n_iter * np . sin ( n_iter ),
'xcosx' : n_iter * np . cos ( n_iter ),
'arctanx' : np . arctan ( n_iter )}, n_iter )
dummy_img = torch . rand ( 32 , 3 , 64 , 64 ) # output from network
if n_iter % 10 == 0 :
x = vutils . make_grid ( dummy_img , normalize = True , scale_each = True )
writer . add_image ( 'Image' , x , n_iter )
dummy_audio = torch . zeros ( sample_rate * 2 )
for i in range ( x . size ( 0 )):
# amplitude of sound should in [-1, 1]
dummy_audio [ i ] = np . cos ( freqs [ n_iter // 10 ] * np . pi * float ( i ) / float ( sample_rate ))
writer . add_audio ( 'myAudio' , dummy_audio , n_iter , sample_rate = sample_rate )
writer . add_text ( 'Text' , 'text logged at step:' + str ( n_iter ), n_iter )
for name , param in resnet18 . named_parameters ():
writer . add_histogram ( name , param . clone (). cpu (). data . numpy (), n_iter )
# needs tensorboard 0.4RC or later
writer . add_pr_curve ( 'xoxo' , np . random . randint ( 2 , size = 100 ), np . random . rand ( 100 ), n_iter )
dataset = datasets . MNIST ( 'mnist' , train = False , download = True )
images = dataset . test_data [: 100 ]. float ()
label = dataset . test_labels [: 100 ]
features = images . view ( 100 , 784 )
writer . add_embedding ( features , metadata = label , label_img = images . unsqueeze ( 1 ))
# export scalar data to JSON for external processing
writer . export_scalars_to_json ( "./all_scalars.json" )
writer . close ()
ตอนนี้ TensorBoardX รองรับการเข้าสู่ระบบโดยตรงไปยัง Comet Comet เป็นโซลูชันบนคลาวด์ ฟรี ที่ช่วยให้คุณสามารถติดตามเปรียบเทียบและอธิบายการทดลองของคุณโดยอัตโนมัติ มันเพิ่มฟังก์ชั่นจำนวนมากที่ด้านบนของ tensorboard เช่นการจัดการชุดข้อมูลการทดลองที่แตกต่างเห็นรหัสที่สร้างผลลัพธ์และอื่น ๆ
สิ่งนี้ใช้งานได้นอกกรอบและต้องใช้รหัสเพิ่มเติม ดูตัวอย่างรหัสเต็มในสมุดบันทึก colab นี้

หากต้องการเพิ่มเห็บเพิ่มเติมสำหรับตัวเลื่อน (แสดงประวัติภาพเพิ่มเติม) ให้ตรวจสอบ #44 หรือ TensorFlow/Tensorboard #1138