Это скрытая жемчужина! Вы можете предоставить ему список строк по вашему выбору, которые обозначают узел сводки, например.
tf.summary.scalar('learning_rate', p_lr, collections=['train'])
tf.summary.scalar('loss', t_loss, collections=['train', 'test'])
а затем получить сводки по их метке, например. вот так:
s_training = tf.summary.merge_all('train')
s_test = tf.summary.merge_all('test')
Я делаю это так, потому что мне часто нужно регистрировать дополнительную информацию на этапе проверки; в приведенном выше примере мне не нужно указывать значение для заполнителя скорости обучения p_lr
при оценке (и записи) точности, например, - или что-либо действительно, на что опирается часть вывода графика.
Предоставление (только) пользовательских категорий также имеет приятный побочный эффект, например, скрытие узла от Supervisor
. Если вы действительно хотите контролировать, когда именно вы пишете резюме (например, используя sv.summary_computed()
в случае Supervisor
), это простой способ.
person
sunside
schedule
30.01.2017