将命令行参数传递给TensorFlow的习惯用法是什么?

时间:2017-06-04 13:57:21

标签: tensorflow command-line-arguments gflags

TensorFlow的

Previous versions使用tf.app.flags来执行诸如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项目的一种习惯的认可。它是否被删除表明另一种方法现在是惯用的并且应该用于它的位置?如果是这样,有什么方法,是否有简单的建议迁移路径?

1 个答案:

答案 0 :(得分:2)

根据TF的提交8018346,TF的维护者vrv回复说:

  

烨! tf.flags是在谷歌中使用但有一堆问题,我们建议尽可能使用argparse。

对于迁移,您可以签出完全完成任务的同一提交。