اكتب أحداث 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 تسريع).
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 عبارة عن حل مجاني يعتمد على السحابة يتيح لك تتبع تجاربك ومقارنتها وشرحها تلقائيًا. يضيف الكثير من الوظائف على رأس اللوح مثل إدارة مجموعات البيانات ، وتجارب الانتشار ، ورؤية الكود الذي يولد النتائج وأكثر من ذلك.
هذا يعمل خارج المربع ويتطلب فقط سطرًا إضافيًا من التعليمات البرمجية. انظر مثال رمز كامل في دفتر كولاب هذا

لإضافة المزيد من القراد للمنزلق (إظهار المزيد من سجل الصورة) ، تحقق من #44 أو TensorFlow/Tensorboard #1138