TensorFlow中Variable和get_variable之间的区别


问题内容

据我所知,它Variable是进行变量的默认操作,get_variable主要用于权重分配。

一方面,有人建议在需要变量时使用get_variable而不是原始Variable操作。另一方面,我get_variable在TensorFlow的官方文档和演示中仅看到了任何使用。

因此,我想了解有关如何正确使用这两种机制的一些经验法则。是否有任何“标准”原则?


问题答案:

我建议始终使用tf.get_variable(...)-如果您需要随时共享变量,例如在multi-gpu设置中(请参见multi-gpu
CIFAR示例),它将使您更轻松地重构代码。没有不利的一面。

tf.Variable是低级的。在某些时候tf.get_variable()不存在,因此某些代码仍使用低级方式。