我試圖在ML引擎實驗中在列車和eval時間輸出一些彙總標量。 tf.summary.scalar('loss', loss)
正確地輸出了張量板上相同圖形上的訓練和評估的總體標量。但是,我也試圖在列車和eval時間輸出其他指標,並且它們僅在列車時間輸出。代碼緊接在tf.summary.scalar('loss', loss)
之後,但似乎不起作用。例如,以下代碼僅對TRAIN輸出,而不是EVAL。唯一的區別是,這些使用自定義的準確性功能,但它們正在爲列車ML引擎實驗eval tf.summary.scalar在張量板中不顯示
if mode in (Modes.TRAIN, Modes.EVAL):
loss = tf.contrib.legacy_seq2seq.sequence_loss(logits, outputs, weights)
tf.summary.scalar('loss', loss)
sequence_accuracy = sequence_accuracy(targets, predictions,weights)
tf.summary.scalar('sequence_accuracy', sequence_accuracy)
這會讓爲什麼損失將在tensorboard繪製兩個TRAIN & EVAL,而sequence_accuracy只畫出火車什麼意義?
這種行爲是否與我收到的警告有關「每次運行發現多個metagraph事件,用最新事件覆蓋metagraph」?
我有點困惑,因爲你說「它沒有在訓練模式下評估」,但是我面臨的問題是它是輸出訓練,它不是輸出的評估模式 - 這是一個錯字還是我通過查看培訓指標已經觀察到意想不到的行爲顯示在張量板上? – reese0106
另外,我想在eval_metric_ops之外做這件事的原因是我想要有一個單獨的圖表,顯示了在評估期間訓練時間和準確性期間的準確性,作爲潛在過度擬合的另一個標準,或者表明預測正在產生的一些跡象不同。例如,如果我正在用feed_previous = False訓練RNN,並且用feed_previous = True進行評估,我想了解訓練過程中feed_previous = False的準確性,並與feed_previous = True的eval進行比較。 – reese0106
我有點困惑,Estimator已經覆蓋了培訓和eval統計。 –