当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python tf.compat.v1.summary.merge用法及代码示例


合并摘要。

用法

tf.compat.v1.summary.merge(
    inputs, collections=None, name=None
)

参数

  • inputs 包含序列化 Summary 协议缓冲区的 string Tensor 对象列表。
  • collections 图集合键的可选列表。新的摘要操作被添加到这些集合中。默认为 []
  • name 操作的名称(可选)。

返回

  • string 类型的标量 Tensor 。合并产生的序列化 Summary 协议缓冲区。

抛出

  • RuntimeError 如果在启用渴望模式的情况下调用。

迁移到 TF2

警告:这个 API 是为 TensorFlow v1 设计的。继续阅读有关如何从该 API 迁移到本机 TensorFlow v2 等效项的详细信息。见TensorFlow v1 到 TensorFlow v2 迁移指南有关如何迁移其余代码的说明。

此 API 与即刻执行或 tf.function 不兼容。要迁移到 TF2,可以完全省略此 API,因为在 TF2 中,单个摘要操作(如 tf.summary.scalar() )会直接写入默认摘要编写器(如果一个处于活动状态)。因此,没有必要合并摘要或手动将生成的合并摘要输出添加到编写器。请参阅下面显示的使用示例。

如需全面的 tf.summary 迁移指南,请遵循将 tf.summary 使用迁移到 TF 2.0。

TF1 & TF2 使用示例

TF1:

dist = tf.compat.v1.placeholder(tf.float32, [100])
tf.compat.v1.summary.histogram(name="distribution", values=dist)
writer = tf.compat.v1.summary.FileWriter("/tmp/tf1_summary_example")
summaries = tf.compat.v1.summary.merge_all()

sess = tf.compat.v1.Session()
for step in range(100):
  mean_moving_normal = np.random.normal(loc=step, scale=1, size=[100])
  summ = sess.run(summaries, feed_dict={dist:mean_moving_normal})
  writer.add_summary(summ, global_step=step)

特遣部队2:

writer = tf.summary.create_file_writer("/tmp/tf2_summary_example")
for step in range(100):
  mean_moving_normal = np.random.normal(loc=step, scale=1, size=[100])
  with writer.as_default(step=step):
    tf.summary.histogram(name='distribution', data=mean_moving_normal)

此操作创建一个 Summary 协议缓冲区,其中包含输入摘要中所有值的并集。

运行 Op 时,如果要合并的摘要中的多个值使用相同的标记,它会报告 InvalidArgument 错误。

相关用法


注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.compat.v1.summary.merge。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。