Tensorboard在網絡訓練中的Logger使用方法

做爲神經網絡訓練中最常用的可視化工具,Tensorboard經常在Pytorch和Tensorflow框架中做爲可視化工具。但是其使用的確是有點繁瑣,所以開設了一個這樣的專題,用於總結見過的工程裏面的數據Logger設定方法。希望自己能夠通過積累慢慢掌握這個工具。

一、YOLO-Pytorch版中的Logger

在陳老師這裏做DAC比賽,讓我有機會把YOLO工程整個擼了一遍。此工程中的數據保存相對簡單,只使用了一個封裝好的類Logger。

代碼的utils文件夾下專門有一個logger.py文件完成類的書寫:

import tensorflow as tf

class Logger(object):
    def __init__(self, log_dir):
        """Create a summary writer logging to log_dir."""
        # 創建一個數據保存器,給定文件路徑
        self.writer = tf.summary.FileWriter(log_dir)

    def scalar_summary(self, tag, value, step):
        """Log a scalar variable."""
        # 保存標量,tag爲標籤,value是此次數值,step是時間節點
        summary = tf.Summary(value=[tf.Summary.Value(tag=tag, simple_value=value)])
        self.writer.add_summary(summary, step)

    def list_of_scalars_summary(self, tag_value_pairs, step):
        """Log scalar variables."""
        # 保存多個標量值,tag_value_pairs是tag和value做爲數據對存放在其中
        summary = tf.Summary(value=[tf.Summary.Value(tag=tag, simple_value=value) for tag, value in tag_value_pairs])
        self.writer.add_summary(summary, step)

 

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