【问题标题】:What is the idiom for passing command line arguments to TensorFlow?将命令行参数传递给 TensorFlow 的习惯用法是什么?
【发布时间】:2017-06-04 13:57:20
【问题描述】:

TensorFlow 的Previous versionstf.app.flags 用于类似标志的命令:

flags = tf.app.flags
FLAGS = flags.FLAGS
flags.DEFINE_string('data_dir', '/tmp/data/', 'Directory for storing data')

但是recent versions 现在只有

import argparse
#...
FLAGS = None

无论何时出现此类代码,导入 argparse 但未在任何地方使用它(我能找到)。

之前大量使用tf.app.flags 似乎是在认可gflags architecture 作为一种用于TensorFlow 项目的习语。它的删除是否表明另一种方法现在是惯用的并且应该代替它使用?如果是,采用什么方法,是否有简单的建议迁移路径?

【问题讨论】:

    标签: tensorflow command-line-arguments gflags


    【解决方案1】:

    根据TF的一个commit 8018346,TF的维护者vrv回复:

    是的! tf.flags 是 Google 内部使用的东西,但有很多问题,我们建议尽可能使用 argparse。

    至于迁移,您可以签出完成任务的相同提交。

    【讨论】:

    • 优秀;太糟糕了;我费心学习gflags(如tf.flags)的唯一原因是TensorFlow使用了它们!
    猜你喜欢
    • 2020-01-14
    • 2010-12-11
    • 2015-06-09
    • 2017-10-22
    • 2019-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多