在TensorFlow图中初始化变量

时间:2017-01-30 18:24:40

标签: python tensorflow neural-network deep-learning tensorboard

我正在TensorFlow中开始一个交互式会话,在定义了所有我开始训练的变量后,评估网络。

这两个命令有什么区别:

  1. tf.global_variables_initializer().run()
  2. sess.run(tf.initialize_all_variables())
  3. 直到今天我使用了第二个命令,但最近我注意到了第一个命令。

    谢谢:)

1 个答案:

答案 0 :(得分:5)

这两个陈述是等价的:tf.global_variables_initializer()tf.initialize_all_variables()都返回tf.Operation,在运行时会初始化模型中的全局变量。当您创建sess.run()或位于operation.run()区块时,将操作传递到tf.InteractiveSession或致电with tf.Session():是等效的。

{@ 1}}函数已被弃用(并将从TensorFlow 1.0中删除),因为它的名称令人困惑:它没有初始化所有变量(即局部变量必须单独初始化,使用tf.initialize_all_variables()),它不会立即初始化变量(而是返回一个你必须自己运行的操作)。