tf.GraphKeys 的使用

Bet*_*eta 1 tensorflow

在 tensorflow 中,有一个 class GraphKeys。我遇到了很多代码,它被使用过。但是它没有很好地解释这个类在 tensorflow 文档和代码中的用法,在那里它被使用了。

有人可以解释一下有什么用tf.GraphKey吗?

谢谢!

Ric*_*wth 5

据我所知,tf.GraphKeys是图中变量和操作的键集合的集合。用法(就像常见的 Python 字典一样)是检索变量和操作。

鉴于此,以下是tf.GraphKeys我遇到的一些子集:

  • GLOBAL_VARIABLESLOCAL_VARIABLES包含图的所有变量,需要在训练前进行初始化。tf.global_variables()返回列表中的全局变量,可用于tf.variables_initializer初始化。
  • 使用选项创建的变量trainable=True将被添加到训练过程中,TRAINABLE_VARIABLES并由任何优化器获取和更新tf.train
  • SUMMARIES包含由添加的所有摘要键tf.summaryscalarimagehistogramtext,等)。tf.summary.merge_all收集所有这些键并返回一个要运行并写入文件的操作,以便您可以在张量板上可视化它们。
  • 可以使用 将用于更新某些变量的自定义函数添加到UPDATE_OPS每次迭代中并单独运行sess.run(tf.get_collection(tf.GraphKeys.UPDATE_OPS))。在这种情况下,设置这些变量是trainable=False为了避免被梯度下降更新。
  • 您可以创建自己的集合tf.add_to_collection(some_name, var_or_op)并稍后检索变量或操作。您可以使用tf.get_collection()和调整scope.