通常情況下,我們在訓練網路時新增summary都是通過如下方式:
tf.scalar_summary(tags, values)
# ...
summary_op = tf.summary.merge_all()
summary_writer = tf.summary.filewriter(logdir, graph=sess.graph)
summary_str = sess.run(summary_op)
summary_writer.add_summary(summary_str, global_step)
當我們自己想新增其他資料到tensorboard的時候(例如驗證時的loss等),這種方式顯得太過繁瑣,其實我們可以通過如下方式新增自定義資料到tensorboard內顯示。
summary_writer = tf.summary.filewriter(logdir)
summary = tf.summary(value=[
tf.summary.value(tag="summary_tag"
, ******_value=0
), tf.summary.value(tag="summary_tag2"
, ******_value=1
),])
# x代表橫軸座標
summary_writer.add_summary(summary, x)
或者:
summary_writer = tf.summary.filewriter(logdir)
summary = tf.summary()
summary.value.add(tag="summary_tag"
, ******_value=0
)summary.value.add(tag="summary_tag2"
, ******_value=1
)# x代表橫軸座標
summary_writer.add_summary(summary, x)
注意,這裡的x只能是整數,如果是小數的話會自動轉為整數型別。
可以看到, 第一種方式的邏輯是首先向計算圖中新增記錄節點, 然後執行記錄節點, 最後將執行結果寫入日誌書寫器例項物件中, 第二種方式的邏輯是先例項化乙個tf.summary()類, 然後直接將執行結果(python variables)寫入日誌書寫器例項物件. 因此,與第一種方式相比, 第二種方式少了向計算圖中新增記錄節點和執行記錄節點的過程, 即sess.run(summary_op)的過程
下面給出一段完整的示例**
import
tensorflow as
tfsummary_writer = tf.summary.filewriter('/tmp/test'
)summary = tf.summary(value=[
tf.summary.value(tag="summary_tag"
, ******_value=0
), tf.summary.value(tag="summary_tag2"
, ******_value=1
),])
summary_writer.add_summary(summary, 1
)summary = tf.summary(value=[
tf.summary.value(tag="summary_tag"
, ******_value=1
), tf.summary.value(tag="summary_tag2"
, ******_value=3
),])
summary_writer.add_summary(summary, 2
)summary_writer.close()
顯示效果如下所示:
android自定義控制項新增自定義屬性
1 如果是自定義控制項,請在style.xml中或attrs.xml中宣告屬性 attr declare styleable 2 在theme中使用自定義的屬性,可以再多個主題中定義不同的屬性值 customize your theme here.color colorprimaryitem col...
新增自定義模板
模板 當增加一些,固定,特有組伺服器的時候,增加一些特定的監控專案,這些專案就可以加到自定義的模板裡,再將機器加到這個模板裡。每次增加類似的機器,就可以加到這個模板裡。思路 建立模板 名字自定義 模板要歸屬到模板組裡。也可以鏈結其他的模板。建立出的模板,所有的都為空。可以增加一些監控專案。可以在其他...
windows新增自定義選單到滑鼠右鍵
在使用windows過程中,我們需要經常需要使用特定程式開啟某些檔案,比如使用sublime開啟乙個bat檔案並修改它,但預設sublime可能並不在滑鼠右鍵裡,這時我們可以手動新增到右鍵中。1,執行regedit,開啟登錄檔編輯器,在hkey classses root shell 下,新建項命名...