首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >我应该什么时候初始化局部变量?

我应该什么时候初始化局部变量?
EN

Stack Overflow用户
提问于 2017-09-14 21:36:14
回答 1查看 632关注 0票数 3

我对tf.local_variables_initializer有点困惑。我不确定什么时候调用它。

我在其他人的代码中看到,他们只是大量使用调用,比如

代码语言:javascript
复制
init_op = tf.group(tf.global_variables_initializer(),
                   tf.local_variables_initializer())

是否应该在每个TF程序中都调用init_op?这是“懒惰”的TF风格的编程吗?

例如,考虑像input_string_producer这样的队列,它被指定为:

代码语言:javascript
复制
tf.input_string_producer(file_list, num_epochs=None)

不需要tf.local_variables_initializer()

但是,在指定实际的纪元数时

代码语言:javascript
复制
tf.input_string_producer(file_list,num_epochs=1)

实际上确实需要执行tf.local_variables_initializer()

程序员如何知道何时(或何时不)初始化这样的“隐藏”局部变量?FIFOQueue不应该初始化它自己的变量或者有类似queue.initializer的东西吗?

EN

回答 1

Stack Overflow用户

发布于 2017-09-14 23:42:51

对于本地tensorflow作业,您需要同时初始化本地和全局。对于分布式TensorFlow作业,主工作进程初始化local+global,而其余工作进程仅初始化本地。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46220643

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档