टेन्सरबोर्ड ट्यूटोरियल: टेन्सरफ्लो ग्राफ विज़ुअलाइज़ेशन

⚡ स्मार्ट सारांश

TensorBoard, TensorFlow ट्रेनिंग रन के लिए एक विज़ुअल फ्रंट एंड है, जो लॉस कर्व, मॉडल ग्राफ़, वेट हिस्टोग्राम और एम्बेडिंग को प्लॉट करता है। यह वॉकथ्रू एक एस्टीमेटर के साथ इवेंट फ़ाइलें लिखता है, फिर पोर्ट 6006 पर डैशबोर्ड खोलता है।

  • 🔘 पांच डैशबोर्ड: स्केलर्स, ग्राफ, डिस्ट्रीब्यूशन, हिस्टोग्राम और प्रोजेक्टर, ये सभी अलग-अलग प्रकार के सारांश पढ़ते हैं।
  • लॉग डायरेक्टरी: model_dir आर्गुमेंट यह तय करता है कि TensorFlow events.out.tfevents फ़ाइलें कहाँ लिखता है।
  • लॉन्च कमांड: tensorboard –logdir=PATH कमांड चलाएं, फिर किसी भी ब्राउज़र में http://localhost:6006 खोलें।
  • 🧪 सीखने की दर: एक अनियमित हानि वक्र उस दर का संकेत देता है जो मॉडल के अभिसरण के लिए बहुत अधिक है।
  • टेन्सरफ्लो 2: केरस टेंसरबोर्ड कॉलबैक मूल उदाहरण में दिखाए गए एस्टीमेटर लॉगिंग को प्रतिस्थापित करता है।
  • ⚠️ समस्या निवारण: एक खाली डैशबोर्ड का मतलब लगभग हमेशा यही होता है कि लॉग डायरेक्टरी का पाथ ट्रेनिंग रन से मेल नहीं खाता है।

टेन्सरबोर्ड ट्यूटोरियल: टेन्सरफ्लो ग्राफ विज़ुअलाइज़ेशन

टेंसरबोर्ड क्या है?

TensorBoard एक इंटरफ़ेस है जिसका उपयोग ग्राफ़ को देखने और मॉडल को समझने, डीबग करने और अनुकूलित करने के लिए अन्य उपकरणों के लिए किया जाता है। यह एक ऐसा उपकरण है जो मशीन लर्निंग वर्कफ़्लो के लिए माप और दृश्य प्रदान करता है। यह मदद करता है track मेट्रिक्स जैसे कि हानि और सटीकता, मॉडल ग्राफ की कल्पना करना, और एम्बेडिंग को निम्न-आयामी स्थानों में प्रोजेक्ट करना।

TensorBoard के साथ निम्नलिखित सुविधाएं उपलब्ध हैं: TensorFlow और यह एक छोटे स्थानीय वेब सर्वर के रूप में चलता है जो प्रशिक्षण कार्य द्वारा डिस्क पर लिखी गई इवेंट फ़ाइलों को पढ़ता है।

TensorBoard का उपयोग करके TensorFlow ग्राफ विज़ुअलाइज़ेशन का उदाहरण

नीचे दी गई छवि इस ट्यूटोरियल में आपके द्वारा बनाए जाने वाले टेंसरबोर्ड ग्राफ से ली गई है। यह मुख्य पैनल है:

टेन्सरबोर्ड स्केलर्स डैशबोर्ड प्रशिक्षित डीएनएन रिग्रेसर के औसत हानि वक्र को दर्शाता है।

नीचे दी गई तस्वीर से, आप TensorBoard ग्राफ़ विज़ुअलाइज़ेशन का पैनल देख सकते हैं। पैनल में अलग-अलग टैब होते हैं, जो मॉडल चलाते समय आपके द्वारा जोड़ी गई जानकारी के स्तर से जुड़े होते हैं।

TensorBoard नेविगेशन बार जिसमें स्केलर्स, ग्राफ, डिस्ट्रीब्यूशन, हिस्टोग्राम और प्रोजेक्टर टैब शामिल हैं।

  • स्केलर: मॉडल प्रशिक्षण के दौरान विभिन्न उपयोगी जानकारी प्रदर्शित करें
  • रेखांकन: मॉडल दिखाएँ
  • हिस्टोग्राम: हिस्टोग्राम के साथ वज़न प्रदर्शित करें
  • वितरण: वजन का वितरण प्रदर्शित करें
  • प्रोजेक्टर: प्रमुख घटक विश्लेषण और टी-एसएनई एल्गोरिदम दिखाएँ। आयामी कमी के लिए उपयोग की जाने वाली तकनीक।

इस TensorBoard ट्यूटोरियल के दौरान, आप एक सरल प्रोग्राम को प्रशिक्षित करेंगे। ध्यान लगा के पढ़ना या सीखना यह एक मॉडल है, और इसके द्वारा उत्पन्न ग्राफ को नीचे से ऊपर की ओर पढ़ा जाता है।

ग्राफ को देखकर आप समझ सकते हैं कि मॉडल कैसे काम करता है। नीचे दिए गए स्क्रीनशॉट में क्रमांकित बैज इन चार चरणों को दर्शाते हैं:

  1. मॉडल में डेटा को पंक्तिबद्ध करें: बैच आकार के बराबर डेटा की मात्रा को मॉडल में पुश करें, अर्थात, प्रत्येक पुनरावृत्ति के बाद डेटा फ़ीड की संख्या
  2. डेटा को टेंसर में फीड करें
  3. मॉडल को प्रशिक्षित करें
  4. प्रशिक्षण के दौरान बैचों की संख्या प्रदर्शित करें। मॉडल को डिस्क पर सहेजें।

TensorBoard में TensorFlow ग्राफ, जिसमें इनपुट क्यू, dnn ब्लॉक और सेव ऑपरेशन के लिए क्रमांकित नोड्स हैं।

टेन्सरबोर्ड का मूल विचार यह है कि एक न्यूरल नेटवर्क एक ब्लैक बॉक्स की तरह व्यवहार कर सकता है, और आपको उस बॉक्स के अंदर क्या है, यह जानने के लिए एक उपकरण की आवश्यकता होती है। टेन्सरबोर्ड को नेटवर्क के भीतर गहराई से देखने के लिए एक टॉर्च की तरह समझें।

यह संचालनों के बीच निर्भरता को समझने में मदद करता है, भार की गणना कैसे की जाती है, हानि फ़ंक्शन और बहुत सी अन्य उपयोगी जानकारी प्रदर्शित करता है। जब आप इन सभी सूचनाओं को एक साथ लाते हैं, तो आपके पास डीबग करने और मॉडल को बेहतर बनाने के तरीके खोजने के लिए एक बढ़िया टूल होता है।

टेन्सरबोर्ड ग्राफ कितना उपयोगी हो सकता है, इसका अंदाजा लगाने के लिए नीचे दिए गए दो लॉस कर्व्स को देखें:

दो टेंसरबोर्ड लॉस कर्व्स को साथ-साथ दिखाया गया है, जो एक ऐसे मॉडल की तुलना करते हैं जो सीखता नहीं है और एक ऐसे मॉडल की जो अभिसरित होता है।

एक न्यूरल नेटवर्क यह तय करता है कि विभिन्न न्यूरॉन्स को कैसे जोड़ा जाए और मॉडल द्वारा किसी परिणाम की भविष्यवाणी करने से पहले कितनी परतों की आवश्यकता होती है। एक बार आर्किटेक्चर परिभाषित हो जाने के बाद, आपको न केवल मॉडल को प्रशिक्षित करने की आवश्यकता होती है, बल्कि एक ऐसे मेट्रिक की भी आवश्यकता होती है जो भविष्यवाणी की सटीकता को मापता है। उस मेट्रिक को लॉस फंक्शन कहा जाता है, और उद्देश्य इसे न्यूनतम करना होता है, जिसका सीधा सा मतलब है कि मॉडल कम से कम त्रुटियां करे।

प्रत्येक प्रशिक्षण एल्गोरिदम गणना को कई बार दोहराता है जब तक कि हानि एक सपाट रेखा तक नहीं पहुंच जाती। हानि को न्यूनतम करने के लिए एक लर्निंग रेट की भी आवश्यकता होती है, जो मॉडल के सीखने की गति है। यदि लर्निंग रेट बहुत अधिक निर्धारित कर दिया जाए, तो मॉडल को कुछ भी सीखने का समय नहीं मिलता: यही बाईं ओर का चार्ट है, जहां रेखा ऊपर-नीचे होती रहती है क्योंकि मॉडल अनुमान लगा रहा होता है। दाईं ओर का चार्ट दिखाता है कि पुनरावृत्तियों के दौरान हानि धीरे-धीरे कम होती जाती है जब तक कि वक्र सपाट नहीं हो जाता, जिसका अर्थ है कि मॉडल ने समाधान ढूंढ लिया है।

TensorBoard ऐसे मेट्रिक्स को विज़ुअलाइज़ करने और संभावित समस्याओं को उजागर करने के लिए एक बेहतरीन टूल है। एक न्यूरल नेटवर्क को समाधान खोजने में घंटों या सप्ताह लग सकते हैं, और TensorBoard प्रक्रिया के दौरान ही मेट्रिक्स को अपडेट करता रहता है। इसलिए, मॉडल के सही ढंग से प्रशिक्षित होने या न होने का पता लगाने के लिए आपको अंत तक प्रतीक्षा करने की आवश्यकता नहीं है: TensorBoard खोलें, प्रशिक्षण की प्रगति देखें और यदि आवश्यक हो तो उचित बदलाव करें।

TensorBoard का उपयोग कैसे करें?

इस अनुभाग में, आप सीखेंगे कि टर्मिनल से TensorBoard कैसे खोलें। macOS और कमांड लाइन से Windowsयहां मॉडल के बजाय टूल पर ध्यान केंद्रित किया गया है, इसलिए प्रशिक्षण कोड को जानबूझकर छोटा रखा गया है।

सबसे पहले, आपको उन लाइब्रेरीज़ को इम्पोर्ट करना होगा जिनका उपयोग आप प्रशिक्षण के दौरान करेंगे।

## Import the library
import tensorflow as tf
import numpy as np

आप डेटा बनाते हैं। यह 10000 पंक्तियों और 5 स्तंभों वाला एक ऐरे है।

X_train = (np.random.sample((10000,5)))
y_train =  (np.random.sample((10000,1)))
X_train.shape

उत्पादन

(10000, 5)

नीचे दिया गया कोड डेटा को रूपांतरित करता है और मॉडल बनाता है।

ध्यान दें कि लर्निंग रेट 0.1 के बराबर है। यदि आप इस रेट को अधिक मान पर बदलते हैं, तो मॉडल समाधान नहीं खोज पाएगा। ऊपर दिए गए चित्र के बाईं ओर यही हुआ है।

इस उदाहरण में TensorFlow एस्टीमेटर का उपयोग किया गया है, जो गणितीय गणनाओं को समाहित करने वाला उच्च-स्तरीय API है। एस्टीमेटर TensorFlow 1.x API का हिस्सा हैं, इसलिए नीचे दिए गए दोनों कोड स्निपेट 1.x इंस्टॉलेशन के तहत या इसके माध्यम से चलते हैं। tf.compat.v1 नाम स्थान।

लॉग फ़ाइलें बनाने के लिए, आपको पथ निर्दिष्ट करना होगा। यह आर्गुमेंट का उपयोग करके किया जाता है। model_dir.

नीचे दिए गए TensorBoard उदाहरण में, आप मॉडल को वर्किंग डायरेक्टरी के अंदर स्टोर करते हैं, यानी जहाँ आप नोटबुक या फ़ाइल स्टोर करते हैं। Python इस पथ के अंदर, TensorFlow train नाम का एक फ़ोल्डर बनाएगा और उसके अंदर linreg नाम का एक चाइल्ड फ़ोल्डर होगा।

feature_columns = [
      tf.feature_column.numeric_column('x', shape=X_train.shape[1:])]
DNN_reg = tf.estimator.DNNRegressor(feature_columns=feature_columns,
# Indicate where to store the log file    
     model_dir='train/linreg',    
     hidden_units=[500, 300],    
     optimizer=tf.train.ProximalAdagradOptimizer(      
          learning_rate=0.1,      
          l1_regularization_strength=0.001    
      )
)

उत्पादन

INFO:tensorflow:Using default config.
INFO:tensorflow:Using config: {&#x27;_model_dir': 'train/linreg', '_tf_random_seed': None, '_save_summary_steps': 100, '_save_checkpoints_steps': None, '_save_checkpoints_secs': 600, '_session_config': None, '_keep_checkpoint_max': 5, '_keep_checkpoint_every_n_hours': 10000, '_log_step_count_steps': 100, '_train_distribute': None, '_service': None, '_cluster_spec': <tensorflow.python.training.server_lib.ClusterSpec object at 0x1818e63828>, '_task_type': 'worker', '_task_id': 0, '_global_id_in_cluster': 0, '_master': '', '_evaluation_master': '', '_is_chief': True, '_num_ps_replicas': 0, '_num_worker_replicas': 1}

इस TensorFlow ग्राफ विज़ुअलाइज़ेशन उदाहरण का अंतिम चरण मॉडल को प्रशिक्षित करना है। प्रशिक्षण के दौरान, TensorFlow मॉडल डायरेक्टरी में जानकारी लिखता है।

# Train the estimator
train_input = tf.estimator.inputs.numpy_input_fn(    
     x={"x": X_train},    
     y=y_train, shuffle=False,num_epochs=None)
DNN_reg.train(train_input,steps=3000)

उत्पादन

INFO:tensorflow:Calling model_fn.
INFO:tensorflow:Done calling model_fn.
INFO:tensorflow:Create CheckpointSaverHook.
INFO:tensorflow:Graph was finalized.
INFO:tensorflow:Running local_init_op.
INFO:tensorflow:Done running local_init_op.
INFO:tensorflow:Saving checkpoints for 1 into train/linreg/model.ckpt.
INFO:tensorflow:loss = 40.060104, step = 1
INFO:tensorflow:global_step/sec: 197.061
INFO:tensorflow:loss = 10.62989, step = 101 (0.508 sec)
INFO:tensorflow:global_step/sec: 172.487
INFO:tensorflow:loss = 11.255318, step = 201 (0.584 sec)
INFO:tensorflow:global_step/sec: 193.295
INFO:tensorflow:loss = 10.604872, step = 301 (0.513 sec)
INFO:tensorflow:global_step/sec: 175.378
INFO:tensorflow:loss = 10.090343, step = 401 (0.572 sec)
INFO:tensorflow:global_step/sec: 209.737
INFO:tensorflow:loss = 10.057928, step = 501 (0.476 sec)
INFO:tensorflow:global_step/sec: 171.646
INFO:tensorflow:loss = 10.460144, step = 601 (0.583 sec)
INFO:tensorflow:global_step/sec: 192.269
INFO:tensorflow:loss = 10.529617, step = 701 (0.519 sec)
INFO:tensorflow:global_step/sec: 198.264
INFO:tensorflow:loss = 9.100082, step = 801 (0.504 sec)
INFO:tensorflow:global_step/sec: 226.842
INFO:tensorflow:loss = 10.485607, step = 901 (0.441 sec)
INFO:tensorflow:global_step/sec: 152.929
INFO:tensorflow:loss = 10.052481, step = 1001 (0.655 sec)
INFO:tensorflow:global_step/sec: 166.745
INFO:tensorflow:loss = 11.320213, step = 1101 (0.600 sec)
INFO:tensorflow:global_step/sec: 161.854
INFO:tensorflow:loss = 9.603306, step = 1201 (0.619 sec)
INFO:tensorflow:global_step/sec: 179.074
INFO:tensorflow:loss = 11.110269, step = 1301 (0.556 sec)
INFO:tensorflow:global_step/sec: 202.776
INFO:tensorflow:loss = 11.929443, step = 1401 (0.494 sec)
INFO:tensorflow:global_step/sec: 144.161
INFO:tensorflow:loss = 11.951693, step = 1501 (0.694 sec)
INFO:tensorflow:global_step/sec: 154.144
INFO:tensorflow:loss = 8.620987, step = 1601 (0.649 sec)
INFO:tensorflow:global_step/sec: 151.094
INFO:tensorflow:loss = 10.666125, step = 1701 (0.663 sec)
INFO:tensorflow:global_step/sec: 193.644
INFO:tensorflow:loss = 11.0349865, step = 1801 (0.516 sec)
INFO:tensorflow:global_step/sec: 189.707
INFO:tensorflow:loss = 9.860596, step = 1901 (0.526 sec)
INFO:tensorflow:global_step/sec: 176.423
INFO:tensorflow:loss = 10.695, step = 2001 (0.567 sec)
INFO:tensorflow:global_step/sec: 213.066
INFO:tensorflow:loss = 10.426752, step = 2101 (0.471 sec)
INFO:tensorflow:global_step/sec: 220.975
INFO:tensorflow:loss = 10.594796, step = 2201 (0.452 sec)
INFO:tensorflow:global_step/sec: 219.289
INFO:tensorflow:loss = 10.4212265, step = 2301 (0.456 sec)
INFO:tensorflow:global_step/sec: 215.123
INFO:tensorflow:loss = 9.668612, step = 2401 (0.465 sec)
INFO:tensorflow:global_step/sec: 175.65
INFO:tensorflow:loss = 10.009649, step = 2501 (0.569 sec)
INFO:tensorflow:global_step/sec: 206.962
INFO:tensorflow:loss = 10.477722, step = 2601 (0.483 sec)
INFO:tensorflow:global_step/sec: 229.627
INFO:tensorflow:loss = 9.877638, step = 2701 (0.435 sec)
INFO:tensorflow:global_step/sec: 195.792
INFO:tensorflow:loss = 10.274586, step = 2801 (0.512 sec)
INFO:tensorflow:global_step/sec: 176.803
INFO:tensorflow:loss = 10.061047, step = 2901 (0.566 sec)
INFO:tensorflow:Saving checkpoints for 3000 into train/linreg/model.ckpt.
INFO:tensorflow:Loss for final step: 10.73032.

<tensorflow.python.estimator.canned.dnn.DNNRegressor at 0x1818e63630>

TensorFlow 2 पर यही काम Keras TensorBoard कॉलबैक द्वारा किया जाता है, जो बिना किसी एस्टीमेटर कोड के ग्राफ और प्रति-युग मैट्रिक्स लिखता है:

logdir = "logs/fit/" + datetime.now().strftime("%Y%m%d-%H%M%S")
tensorboard_callback = keras.callbacks.TensorBoard(log_dir=logdir)

model.fit(train_images, train_labels, epochs=5,
          callbacks=[tensorboard_callback])

रन समाप्त होने के बाद, लॉग डायरेक्टरी में एक चेकपॉइंट फ़ाइल होती है, graph.pbtxt फ़ाइल और एक या अधिक events.out.tfevents फाइलें — बिल्कुल वही जो TensorBoard पढ़ता है।

के लिए macOS उपयोगकर्ताओं

नीचे दिया गया फाइंडर व्यू वर्किंग डायरेक्टरी के अंदर बनाए गए नए ट्रेन/लिनरेग फोल्डर को दिखाता है।

macOS ट्रेन और लिनरेग लॉग फ़ोल्डरों को दर्शाने वाली फ़ाइल सूची जिसमें चेकपॉइंट, इवेंट्स और ग्राफ.pbtxt फ़ाइलें शामिल हैं।

के लिए Windows उपयोगकर्ताओं

On Windows वही फाइलें उसी पथ के अंतर्गत दिखाई देती हैं जिसे आपने model_dir को दिया था, जैसा कि एड्रेस बार में हाइलाइट किया गया है।

Windows ट्रेन लिनरेग फ़ोल्डर का एक्सप्लोरर दृश्य जिसमें टेन्सरफ्लो इवेंट और चेकपॉइंट फ़ाइलें शामिल हैं

समान इवेंट-फ़ाइल प्रारूप द्वारा निर्मित होता है PyTorchइसलिए डैशबोर्ड केवल टेन्सरफ्लो रन तक सीमित नहीं है।

अब जब आपने लॉग इवेंट लिख लिए हैं, तो आप TensorBoard खोल सकते हैं। TensorBoard डिफ़ॉल्ट रूप से पोर्ट 6006 पर चलता है (Jupyter (पोर्ट 8888 का उपयोग करता है)। टर्मिनल का उपयोग करें macOS या एनाकोंडा प्रॉम्प्ट पर Windows.

के लिए macOS उपयोगकर्ताओं

# Different for you
cd /Users/Guru99/tuto_TF
source activate hello-tf!

नोटबुक /Users/ पाथ में संग्रहीत है।Guru99/ट्यूटो_टीएफ

के लिए Windows उपयोगकर्ताओं

cd C:\Users\Admin\Anaconda3
activate hello-tf

नोटबुक पथ C:\Users\Admin\Anaconda3 में संग्रहीत है

TensorBoard लॉन्च करने के लिए, उस डायरेक्टरी से निम्न कमांड चलाएँ।

के लिए macOS उपयोगकर्ताओं

tensorboard --logdir=./train/linreg

के लिए Windows उपयोगकर्ताओं

tensorboard --logdir=.\train\linreg

इसके बाद TensorBoard को http://localhost:6006 पर उपलब्ध कराया जाता है।

झंडा यह क्या नियंत्रित करता है?
--logdir इवेंट फ़ाइलों को रखने वाली निर्देशिका। यही एकमात्र आवश्यक फ़्लैग है।
--port सेवा प्रदान करने के लिए पोर्ट। डिफ़ॉल्ट पोर्ट 6006 है; यदि पहले से चल रहे किसी सत्र में यह पोर्ट पहले से मौजूद है, तो इसे बदल दें।
--bind_all हर नेटवर्क इंटरफ़ेस पर सेवा प्रदान करें। TensorBoard डिफ़ॉल्ट रूप से केवल लोकलहोस्ट से जुड़ता है, इसलिए रिमोट एक्सेस के लिए इस फ़्लैग की आवश्यकता होती है, और इसे इसके साथ संयोजित नहीं किया जा सकता है। --host.
--reload_interval लॉग डायरेक्टरी को नए डेटा के लिए कितनी बार (सेकंडों में) पुनः स्कैन किया जाता है।
--logdir_spec अल्पविराम से अलग किए गए कई पथों को स्वीकार करने वाला लेगेसी फ़ॉलबैक; --logdir अब उस फॉर्म का समर्थन नहीं करता है।

RSI tensorboard dev सबकमांड अब काम नहीं करता: होस्ट की गई TensorBoard.dev सेवा 1 जनवरी 2024 को बंद हो गई। स्थानीय उपयोग अप्रभावित है।

कुछ मशीनों पर कंसोल लोकलहोस्ट के बजाय होस्ट नाम प्रिंट करता है, जैसा कि नीचे दिए गए एनाकोंडा प्रॉम्प्ट में दिखाया गया है। दोनों ही पते एक ही डैशबोर्ड खोलते हैं।

एनाकोंडा प्रॉम्प्ट पर टेन्सरबोर्ड कमांड चलाकर पोर्ट 6006 पर सर्वर का पता प्रिंट किया जा रहा है।

इस पते को कॉपी करके अपने पसंदीदा ब्राउज़र में पेस्ट करें। आपको नीचे दिखाया गया स्केलर्स डैशबोर्ड दिखाई देगा।

लॉग डायरेक्टरी सही ढंग से लोड होने के बाद TensorBoard Scalars डैशबोर्ड ब्राउज़र में खुल जाता है।

यदि आपको इसके बजाय कुछ इस तरह दिखाई दे:

TensorBoard त्रुटि पृष्ठ में लिखा है: कोई ग्राफ़ परिभाषा फ़ाइलें नहीं मिलीं

इसका मतलब है कि TensorBoard लॉग फ़ाइल नहीं ढूंढ पा रहा है। सुनिश्चित करें कि आप सही जगह पर इंगित कर रहे हैं। cd सही मार्ग पर जाने के लिए, या यह दोबारा जांच लें कि लॉग इवेंट वास्तव में बनाया गया था या नहीं। यदि नहीं बनाया गया था, तो प्रशिक्षण कोड को दोबारा चलाएँ।

यदि आप TensorBoard को बंद करना चाहते हैं, तो टर्मिनल विंडो में CTRL+C दबाएं।

सुझाव: वर्तमान वर्किंग डायरेक्टरी के लिए अपने एनाकोंडा प्रॉम्प्ट की जांच करें।

Anaconda प्रॉम्प्ट सक्रिय hello-tf वातावरण और वर्तमान कार्यशील निर्देशिका को दर्शाता है।

ऊपर दिए गए स्क्रीनशॉट में प्रॉम्प्ट C:\Users\Admin पर स्थित है, इसलिए लॉग फ़ाइल उसी फ़ोल्डर के अंतर्गत बनाई जानी चाहिए।

अक्सर पूछे जाने वाले प्रश्न

एक पूर्ण रन चेकपॉइंट इंडेक्स, एक या अधिक model.ckpt फ़ाइलें, एक graph.pbtxt फ़ाइल और कम से कम एक events.out.tfevents फ़ाइल छोड़ता है। TensorBoard केवल इवेंट फ़ाइलों को पढ़ता है; चेकपॉइंट इसलिए मौजूद होते हैं ताकि प्रशिक्षण वहीं से फिर से शुरू हो सके जहां वह रुका था।

हां. PyTorch जहाजों का सारांशWriter यह समान इवेंट-फ़ाइल प्रारूप उत्सर्जित करता है, इसलिए एक ही टेन्सरबोर्ड –logdir कमांड डैशबोर्ड को प्रदर्शित करता है। सर्वर में कुछ भी नहीं बदलता — केवल सारांश उत्पन्न करने वाली लाइब्रेरी बदलती है।

नहीं। होस्ट की गई सेवा 1 जनवरी 2024 को बंद हो गई और अब टेन्सरबोर्ड देव सबकमांड एक त्रुटि लौटाता है। परिणामों को साझा करने के लिए टेन्सरबोर्ड को गूगल कोलाब जैसे नोटबुक के अंदर चलाएँ, या चार्ट को CSV या JSON के रूप में निर्यात करें।

प्रत्येक रन को एक साझा पैरेंट के अंतर्गत अपना अलग सबफ़ोल्डर दें, फिर पैरेंट पर –logdir कमांड का उपयोग करें। प्रत्येक सबफ़ोल्डर बाईं ओर के पैनल में एक अलग रन के रूप में दिखाई देगा, और कर्व्स एक ही अक्ष पर प्रत्येक चेकबॉक्स के साथ खींचे जाएंगे।

ऑपरेशनल लेवल ग्राफ डिफ़ॉल्ट व्यू है और यह दर्शाता है कि TensorFlow प्रोग्राम को कैसे समझता है, इसे नीचे से ऊपर की ओर बनाया जाता है। keras टैग का चयन करने पर कॉन्सेप्चुअल ग्राफ पर स्विच हो जाता है, जो केवल मॉडल लेयर्स को दिखाता है और आपके डिज़ाइन के साथ इसकी तुलना करना आसान होता है।

स्वचालित स्कैनिंग से एक साथ दर्जनों रन तैयार होते हैं, इसलिए डैशबोर्ड एक सिंगल-रन मॉनिटर के बजाय एक तुलना उपकरण बन जाता है। HParams प्लगइन प्रत्येक कॉन्फ़िगरेशन को उसके मेट्रिक्स के साथ लॉग करता है, जिससे आप कर्व्स को एक-एक करके पढ़ने के बजाय ट्रायल्स को सॉर्ट कर सकते हैं।

गिटहब कोपिलॉट यह कॉलबैक और समरी-राइटर के लिए आवश्यक कोड का ड्राफ्ट जल्दी तैयार करता है। आउटपुट को ड्राफ्ट के रूप में मानें: इसमें अक्सर TensorFlow 1.x और 2.x API का मिश्रण होता है, इसलिए कोड चलाने से पहले प्रत्येक नाम को वर्तमान दस्तावेज़ से मिला लें।

या तो कोई इवेंट फ़ाइल नहीं लिखी गई है या –logdir को दिया गया पथ प्रशिक्षण कार्य द्वारा उपयोग किए गए पथ से मेल नहीं खाता है। पुष्टि करें कि उस फ़ोल्डर में events.out.tfevents फ़ाइल मौजूद है, और Windows TensorBoard को उसी ड्राइव लेटर से शुरू करें।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: