def f(tag_prefix): with summary_ops.create_file_writer(logdir).as_default(): default_output = summary_ops.write(tag_prefix + '_default', 1, step=0) with summary_ops.always_record_summaries(): on_output = summary_ops.write(tag_prefix + '_on', 1, step=0) with summary_ops.never_record_summaries(): off_output = summary_ops.write(tag_prefix + '_off', 1, step=0) return [default_output, on_output, off_output]
def testWrite_shouldRecordSummaries(self): logdir = self.get_temp_dir() with context.eager_mode(): with summary_ops.create_file_writer(logdir).as_default(): self.assertTrue(summary_ops.write('default_on', 1, step=0)) with summary_ops.always_record_summaries(): self.assertTrue(summary_ops.write('set_on', 1, step=0)) with summary_ops.never_record_summaries(): self.assertFalse(summary_ops.write('set_off', 1, step=0)) events = events_from_logdir(logdir) self.assertEqual(3, len(events)) self.assertEqual('default_on', events[1].summary.value[0].tag) self.assertEqual('set_on', events[2].summary.value[0].tag)
def all_metric_results(self, summary_logdir=None): """Computes results for all contained metrics. Args: summary_logdir: An optional string. If specified, metric results will be written as summaries to this directory. Returns: A `dict` mapping string names to tensors. """ if summary_logdir is None: with summary_ops.never_record_summaries(): return self._all_metric_results() else: def f(): with summary_ops.create_file_writer( summary_logdir).as_default(), summary_ops.always_record_summaries(): return self._all_metric_results() if context.executing_eagerly(): return f() else: return function.defun(f)()
def all_metric_results(self, summary_logdir=None): """Computes results for all contained metrics. Args: summary_logdir: An optional string. If specified, metric results will be written as summaries to this directory. Returns: A `dict` mapping string names to tensors. """ if summary_logdir is None: with summary_ops.never_record_summaries(): return self._all_metric_results() else: def f(): with summary_ops.create_file_writer(summary_logdir).as_default( ), summary_ops.always_record_summaries(): return self._all_metric_results() if context.executing_eagerly(): return f() else: return function.defun(f)()
def testWrite_shouldRecordSummaries_fromFunction(self): logdir = self.get_temp_dir() @def_function.function def f(tag_prefix): with summary_ops.create_file_writer(logdir).as_default(): default_output = summary_ops.write(tag_prefix + '_default', 1, step=0) with summary_ops.always_record_summaries(): on_output = summary_ops.write(tag_prefix + '_on', 1, step=0) with summary_ops.never_record_summaries(): off_output = summary_ops.write(tag_prefix + '_off', 1, step=0) return [default_output, on_output, off_output] with context.eager_mode(): self.assertAllEqual([True, True, False], f('default')) with summary_ops.always_record_summaries(): self.assertAllEqual([True, True, False], f('on')) with summary_ops.never_record_summaries(): self.assertAllEqual([False, True, False], f('off')) events = events_from_logdir(logdir) self.assertEqual(6, len(events)) self.assertEqual('default_default', events[1].summary.value[0].tag) self.assertEqual('default_on', events[2].summary.value[0].tag) self.assertEqual('on_default', events[3].summary.value[0].tag) self.assertEqual('on_on', events[4].summary.value[0].tag) self.assertEqual('off_on', events[5].summary.value[0].tag)